Line data Source code
1 0 : \cond NEVER 2 : Distributed under the MIT License. 3 : See LICENSE.txt for details. 4 : \endcond 5 : \mainpage Introduction 6 : 7 : \tableofcontents 8 : 9 : \htmlonly 10 : <p> 11 : <a 12 : href="https://github.com/sxs-collaboration/spectre/blob/develop/LICENSE.txt"><img 13 : src="https://img.shields.io/badge/license-MIT-blue.svg" 14 : alt="license" 15 : data-canonical-src="https://img.shields.io/badge/license-MIT-blue.svg" 16 : style="max-width:100%;"></a> 17 : 18 : <a href="https://en.wikipedia.org/wiki/C%2B%2B#Standardization" 19 : rel="nofollow"><img 20 : src="https://img.shields.io/badge/c%2B%2B-17-blue.svg" 21 : alt="Standard" 22 : data-canonical-src="https://img.shields.io/badge/c%2B%2B-17-blue.svg" 23 : style="max-width:100%;"></a> 24 : 25 : <a href="https://github.com/sxs-collaboration/spectre/actions" rel="nofollow"><img 26 : src="https://github.com/sxs-collaboration/spectre/workflows/Tests/badge.svg?branch=develop" 27 : alt="Build Status" 28 : data-canonical-src="https://github.com/sxs-collaboration/spectre/workflows/Tests/badge.svg?branch=develop" 29 : style="max-width:100%;"></a> 30 : 31 : <a href="https://codecov.io/gh/sxs-collaboration/spectre" rel="nofollow"><img 32 : src="https://codecov.io/gh/sxs-collaboration/spectre/graph/badge.svg?token=yyJ3uBPUE2" 33 : alt="codecov" 34 : data-canonical-src="https://codecov.io/gh/sxs-collaboration/spectre/graph/badge.svg?token=yyJ3uBPUE2" 35 : style="max-width:100%;"></a> 36 : 37 : </p> 38 : 39 : <img src="banner.png"/> 40 : \endhtmlonly 41 : 42 : # What is SpECTRE? {#intro_sec} 43 : 44 : SpECTRE is an open-source code for multi-scale, multi-physics problems in 45 : astrophysics and gravitational physics. It is based on high-order spectral 46 : finite element methods and massive parallelism. In the future, we hope that 47 : it can be applied to problems across discipline boundaries in fluid 48 : dynamics, geoscience, plasma physics, nuclear physics, and 49 : engineering. It runs at petascale and is designed for future exascale 50 : computers. 51 : 52 : SpECTRE is being developed in support of our collaborative Simulating 53 : eXtreme Spacetimes (SXS) research program into the multi-messenger 54 : astrophysics of black hole neutron star mergers, core-collapse supernovae, and 55 : gamma-ray bursts. 56 : 57 : ## Gallery 58 : 59 : For an overview of some of SpECTRE's features and some simulations performed 60 : with SpECTRE, visit the gallery: 61 : 62 : - Gallery: https://spectre-code.org/gallery 63 : 64 : ## Citing SpECTRE 65 : 66 : Please cite SpECTRE in any publications that make use of its code or data. Cite 67 : the latest version that you use in your publication. The DOI for this version 68 : is: 69 : 70 : - DOI: [\spectredoi](https://doi.org/\spectredoi) 71 : 72 : You can cite this BibTeX entry in your publication: 73 : 74 : \include citation.bib 75 : 76 : To aid reproducibility of your scientific results with SpECTRE, we recommend you 77 : keep track of the version(s) you used and report this information in your 78 : publication. We also recommend you supply the YAML input files and, if 79 : appropriate, any additional C++ code you wrote to compile SpECTRE executables as 80 : supplemental material to the publication. 81 : 82 : See our [publication policy](https://spectre-code.org/publication_policies.html) 83 : for more information. 84 : 85 : ## Navigating the Documentation {#navigate_documentation_sec} 86 : 87 : The SpECTRE documentation is organized into tutorials, developer guides, groups 88 : of related code, namespaces, and files for easier navigation. These can all be 89 : accessed by links in the menu bar at the top. 90 : 91 : - For instructions on **installing SpECTRE** on personal computers and clusters 92 : consult the \ref installation "Installation" and \ref installation_on_clusters 93 : "Installation on clusters" pages, respectively. See the 94 : \ref spectre_build_system "build system" page for how to configure SpECTRE. 95 : - If you are looking to **run simulations with SpECTRE** we recommend starting 96 : with the \ref tutorials "User Tutorials". The tutorials are designed to get 97 : users up and running with a simulation, as well as analyzing and visualizing 98 : the output. 99 : - For people looking to **contribute to SpECTRE** there are tutorials on the 100 : \ref dev_guide "Dev Guide" page. For instance, the dev guide details the \ref 101 : code_review_guide "code review guidelines", how to \ref writing_unit_tests 102 : "write unit tests", how to \ref writing_good_dox "write documentation", and 103 : also provides information about C++ and the philosophy behind SpECTRE 104 : development. 105 : - The [Code modules](modules.html) section contains groups of related code 106 : (managed through doxygen groups). For example, there is a group for all the 107 : data structures we use, a group for utility functions and classes, as well as 108 : groups for coordinate maps, domain creation, and many others. The 109 : [Code modules](modules.html) are designed to help developers discover existing 110 : functionality so that things are not re-implemented several times. 111 : - You can also get an overview of the code base by namespace by visiting the 112 : [Namespaces](namespaces.html) section. 113 : - To browse all files in the repository you can visit the 114 : [GitHub repository](https://github.com/sxs-collaboration/spectre) directly. 115 : 116 : ## Logos and visuals {#logos_and_visuals} 117 : 118 : You can find logos and other visuals (e.g. to put on slides) in various formats, 119 : colors, and sizes here: 120 : 121 : - [Logos and visuals](https://drive.google.com/drive/folders/1GEvVrXNqlGojr3NBf7RMFo6BzFmf9Ww7?usp=share_link)