Difference between revisions of "Choosing a Driver"
m (→Basic CarpetX, no subcycling in time) |
|||
| Line 26: | Line 26: | ||
== Basic CarpetX, no subcycling in time == | == Basic CarpetX, no subcycling in time == | ||
| − | This thornlist provides a basic cactus checkout, with CarpetX, and its required external libraries. It also includes | + | This thornlist provides a basic cactus checkout, with CarpetX, and its required external libraries. It also includes: |
# Spacetime evolution codes (CanudaX, Cottonmouth, Z4c) | # Spacetime evolution codes (CanudaX, Cottonmouth, Z4c) | ||
Revision as of 01:51, 19 August 2026
| Contents |
|---|
| Carpet Vs. CarpetX |
| Basic CarpetX, no subcycling in time |
| CarpetX with subcycling in time |
Carpet Vs. CarpetX
Currently there are two production drivers in the Einstein Toolkit: Carpet and CarpetX.
Carpet is a CPU based Adaptive Mesh Refinement (AMR) framework that has been a part of the Einstein Toolkit since 2006. It has seen extensive production use and should work out of the box when you get an official release of the Einstein Toolkit. If you are using Carpet, please see the official download and install instructions here.
CarpetX is a new AMR driver capable of running on CPUs and GPUs. It is ready for production use and is also a part of the Einstein Toolkit. However, when using CarpetX, a number of thorns that are required for fully featured numerical relativity simulations are not included in the official release. This requires a different thornlist(s) depending on which features are desired. This is because either thorns are still in development phase or some existing Carpet thorns are not compatible with CarpetX (yet).
For this reason, we are presenting a collection of thornlists for checking out various components required for fully featured simulations. This is a temporary solution and, in the future, such thornlists are expected to be no longer necessary once CarpetX thorns are included in the official release.
Basic CarpetX, no subcycling in time
This thornlist provides a basic cactus checkout, with CarpetX, and its required external libraries. It also includes:
- Spacetime evolution codes (CanudaX, Cottonmouth, Z4c)
- Spacetime evolution utilities (Initial data, puncture tracking, apparent horizon finding)
- GRMHD evolution code AsterX
1 # A basic Component list for the Einstein Toolkit <http://einsteintoolkit.org/>
2 # using CarpetX <https://github.com/EinsteinToolkit/CarpetX>
3 # $Revision$
4 # $Date$
5 # $HeadURL$
6
7 !CRL_VERSION = 1.0
8
9 !DEFINE ROOT = Cactus
10 !DEFINE ARR = $ROOT/arrangements
11 !DEFINE COMPONENTLIST_TARGET = $ROOT/thornlists/
12
13 # Cactus Flesh
14 !TARGET = $ROOT
15 !TYPE = git
16 !URL = https://bitbucket.org/cactuscode/cactus.git
17 !NAME = flesh
18 !CHECKOUT = .clang-format CONTRIBUTORS COPYRIGHT doc lib Makefile README.md src
19
20 # Simulation Factory
21 !TARGET = $ROOT
22 !TYPE = git
23 !URL = https://bitbucket.org/simfactory/simfactory2.git
24 !REPO_PATH = $1
25 !NAME = simfactory2
26 !CHECKOUT = ./simfactory
27
28 # Various Cactus utilities
29 !TARGET = $ROOT/utils
30 !TYPE = git
31 !URL = https://bitbucket.org/cactuscode/utilities.git
32 !REPO_PATH = $2
33 !CHECKOUT = ./ParameterFiles ./Scripts ./Syntax
34
35 # The GetComponents script
36 !TARGET = $ROOT/bin
37 !TYPE = git
38 !URL = https://github.com/gridaphobe/CRL.git
39 !CHECKOUT = GetComponents
40
41 # CactusDoc thorns
42 !TARGET = $ARR/CactusDoc
43 !TYPE = git
44 !URL = https://bitbucket.org/cactuscode/coredoc.git
45 !NAME = CoreDoc
46 !REPO_PATH = $1
47 !CHECKOUT = ./CoreDoc
48
49 # CactusBase thorns
50 !TARGET = $ARR
51 !TYPE = git
52 !URL = https://bitbucket.org/cactuscode/cactusbase.git
53 !REPO_PATH = $2
54 !CHECKOUT =
55 CactusBase/Boundary
56 CactusBase/CoordBase
57 CactusBase/Fortran
58 CactusBase/InitBase
59 CactusBase/IOUtil
60 CactusBase/SymBase
61 CactusBase/Time
62
63 # CactusTest thorns
64 !TARGET = $ARR
65 !TYPE = git
66 !URL = https://bitbucket.org/cactuscode/cactustest.git
67 !REPO_PATH = $2
68 !CHECKOUT = CactusTest/TestAllTypes
69 CactusTest/TestArrays
70 CactusTest/TestComplex
71 CactusTest/TestCoordinates
72 CactusTest/TestFortranCrayPointers
73 CactusTest/TestFortranDependencies1
74 CactusTest/TestFortranDependencies2
75 CactusTest/TestFpointerNULL
76 CactusTest/TestFreeF90
77 CactusTest/TestInclude1
78 CactusTest/TestInclude2
79 CactusTest/TestMath
80 CactusTest/TestPar
81 CactusTest/TestReduce
82 CactusTest/TestSchedule
83 CactusTest/TestStrings
84 CactusTest/TestTable
85 CactusTest/TestTimers
86 CactusTest/TestTypes
87
88 # CactusUtils thorns
89 !TARGET = $ARR
90 !TYPE = git
91 !URL = https://bitbucket.org/cactuscode/cactusutils.git
92 !REPO_PATH = $2
93 !CHECKOUT = CactusUtils/Accelerator CactusUtils/OpenCLRunTime
94 CactusUtils/Formaline
95 CactusUtils/MemSpeed
96 CactusUtils/NaNCatcher
97 CactusUtils/Nice
98 CactusUtils/NoMPI
99 CactusUtils/SystemStatistics
100 CactusUtils/SystemTopology
101 CactusUtils/TerminationTrigger
102 CactusUtils/TimerReport
103 CactusUtils/Trigger
104 CactusUtils/Vectors
105 CactusUtils/WatchDog
106
107 # Additional Cactus thorns
108 !TARGET = $ARR
109 !TYPE = git
110 !URL = https://github.com/EinsteinToolkit/$1-$2
111 !REPO_PATH = ../$1-$2
112 !CHECKOUT = ExternalLibraries/OpenBLAS ExternalLibraries/OpenCL ExternalLibraries/pciutils ExternalLibraries/PETSc
113 ExternalLibraries/ADIOS2
114 ExternalLibraries/AMReX
115 ExternalLibraries/BLAS
116 ExternalLibraries/Boost
117 ExternalLibraries/FFTW3
118 ExternalLibraries/GSL
119 ExternalLibraries/HDF5
120 ExternalLibraries/hwloc
121 ExternalLibraries/LAPACK
122 ExternalLibraries/libjpeg
123 ExternalLibraries/LORENE
124 ExternalLibraries/MPI
125 ExternalLibraries/NSIMD
126 ExternalLibraries/openPMD
127 ExternalLibraries/OpenSSL
128 ExternalLibraries/PAPI
129 ExternalLibraries/pthreads
130 ExternalLibraries/Silo
131 ExternalLibraries/ssht
132 ExternalLibraries/yaml_cpp
133 ExternalLibraries/zlib
134
135 # Kuibit post-processing tools for simulations
136 !TARGET = $ROOT/utils/Analysis
137 !TYPE = git
138 !URL = https://github.com/Sbozzolo/kuibit
139 !REPO_PATH = $2
140 !CHECKOUT = kuibit/docs kuibit/examples kuibit/kuibit kuibit/LICENSE kuibit/README.md
141
142 # Numerical
143 !TARGET = $ARR
144 !TYPE = git
145 !URL = https://bitbucket.org/cactuscode/numerical.git
146 !REPO_PATH= $2
147 !CHECKOUT =
148 Numerical/AEILocalInterp
149
150 # CarpetX thorns
151 !TARGET = $ARR
152 !TYPE = git
153 !URL = https://github.com/EinsteinToolkit/CarpetX.git
154 !REPO_PATH = $2
155 !CHECKOUT =
156 CarpetX/ADMBaseX
157 CarpetX/Algo
158 CarpetX/Arith
159 CarpetX/BoxInBox
160 CarpetX/CarpetX
161 CarpetX/CarpetXRegrid
162 CarpetX/CoordinatesX
163 CarpetX/Derivs
164 CarpetX/ErrorEstimator
165 CarpetX/FluxWaveToyX
166 CarpetX/HydroBaseX
167 CarpetX/Loop
168 CarpetX/MovingBoxToy
169 CarpetX/ODESolvers
170 CarpetX/PDESolvers
171 CarpetX/ParticlesX
172 CarpetX/PoissonX
173 CarpetX/SIMDWaveToyX
174 CarpetX/SpacetimeWaveToyX
175 CarpetX/StaggeredWaveToyX
176 CarpetX/TestArrayGroup
177 CarpetX/TestBoundaries
178 CarpetX/TestBoxInBox
179 CarpetX/TestDerivs
180 CarpetX/TestInterpolate
181 CarpetX/TestLoopX
182 CarpetX/TestNorms
183 CarpetX/TestODESolvers
184 CarpetX/TestODESolvers2
185 CarpetX/TestOutput
186 CarpetX/TestProlongate
187 CarpetX/TestSymmetries
188 CarpetX/TmunuBaseX
189 CarpetX/VGFWaveToyX
190 CarpetX/WaveToyX
191
192 # SpacetimeX thorns
193 !TARGET = $ARR
194 !TYPE = git
195 !URL = https://github.com/EinsteinToolkit/SpacetimeX.git
196 !REPO_PATH = $2
197 !CHECKOUT =
198 SpacetimeX/AHFinderDirect
199 SpacetimeX/BrillLindquist
200 SpacetimeX/Cowling
201 SpacetimeX/KerrSchildX
202 SpacetimeX/Multipole
203 SpacetimeX/NewRadX
204 SpacetimeX/PunctureTracker
205 SpacetimeX/Punctures
206 SpacetimeX/SphericalHarmonics
207 SpacetimeX/SphericalSurface
208 SpacetimeX/StaticTrumpet
209 SpacetimeX/TestNewRadX
210 SpacetimeX/TwoPuncturesX
211 SpacetimeX/Weyl
212 SpacetimeX/WeylScal4
213 SpacetimeX/Z4c
214
215 # Canuda -- CanudaX
216 !TARGET = $ARR
217 !TYPE = git
218 !URL = https://bitbucket.org/canuda/canudax.git
219 !REPO_PATH = $2
220 !CHECKOUT =
221 CanudaX/CanudaX_BSSNMoL
222 CanudaX/CanudaX_ExactID
223 CanudaX/CanudaX_NPScalars
224
225 # Cottonmouth
226 !TARGET = $ARR
227 !TYPE = git
228 !URL = https://github.com/EinsteinToolkit/Cottonmouth.git
229 !REPO_PATH= $2
230 !CHECKOUT =
231 Cottonmouth/CottonmouthBSSNOK4m
232 Cottonmouth/CottonmouthGaugeWaveID
233 Cottonmouth/CottonmouthLinearWaveID
234 Cottonmouth/CottonmouthZ4c4m
235
236 # AsterX
237 !TARGET = $ARR
238 !TYPE = git
239 !URL = https://github.com/EinsteinToolkit/AsterX.git
240 !REPO_PATH= $2
241 !CHECKOUT =
242 AsterX/AsterAnalysis
243 AsterX/AsterMasks
244 AsterX/AsterSeeds
245 AsterX/AsterUtils
246 AsterX/AsterX
247 AsterX/Con2PrimFactory
248 AsterX/EOSX
249 AsterX/ReconX
250 AsterX/TOVSolverX
251 AsterX/FishboneMoncriefIDX