Difference between revisions of "Choosing a Driver"
| Line 1: | Line 1: | ||
| + | {| class="wikitable" style="float: right; margin: 0 0 1em 1em; width: 200px;" | ||
| + | ! style="background: #f2f2f2; text-align: center;" | Navigation | ||
| + | |- | ||
| + | |||
| + | | [[#Basic CarpetX, no subcycling in time|Basic]] | ||
| + | |- | ||
| + | |||
| + | |} | ||
== Carpet Vs. CarpetX == | == Carpet Vs. CarpetX == | ||
Revision as of 01:44, 19 August 2026
| Navigation |
|---|
| Basic |
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 checkouts, with CarpetX, its required external libraries
1 # A basic Component list for the Einstein Toolkit <http://einsteintoolkit.org/> using CarpetX <https://github.com/EinsteinToolkit/CarpetX>
2 # $Revision$
3 # $Date$
4 # $HeadURL$
5
6 !CRL_VERSION = 1.0
7
8 !DEFINE ROOT = Cactus
9 !DEFINE ARR = $ROOT/arrangements
10 !DEFINE COMPONENTLIST_TARGET = $ROOT/thornlists/
11
12 # Cactus Flesh
13 !TARGET = $ROOT
14 !TYPE = git
15 !URL = https://bitbucket.org/cactuscode/cactus.git
16 !NAME = flesh
17 !CHECKOUT = .clang-format CONTRIBUTORS COPYRIGHT doc lib Makefile README.md src
18
19 # Simulation Factory
20 !TARGET = $ROOT
21 !TYPE = git
22 !URL = https://bitbucket.org/simfactory/simfactory2.git
23 !REPO_PATH = $1
24 !NAME = simfactory2
25 !CHECKOUT = ./simfactory
26
27 # Various Cactus utilities
28 !TARGET = $ROOT/utils
29 !TYPE = git
30 !URL = https://bitbucket.org/cactuscode/utilities.git
31 !REPO_PATH = $2
32 !CHECKOUT = ./ParameterFiles ./Scripts ./Syntax
33
34 # The GetComponents script
35 !TARGET = $ROOT/bin
36 !TYPE = git
37 !URL = https://github.com/gridaphobe/CRL.git
38 !CHECKOUT = GetComponents
39
40 # CactusDoc thorns
41 !TARGET = $ARR/CactusDoc
42 !TYPE = git
43 !URL = https://bitbucket.org/cactuscode/coredoc.git
44 !NAME = CoreDoc
45 !REPO_PATH = $1
46 !CHECKOUT = ./CoreDoc
47
48 # CactusBase thorns
49 !TARGET = $ARR
50 !TYPE = git
51 !URL = https://bitbucket.org/cactuscode/cactusbase.git
52 !REPO_PATH = $2
53 !CHECKOUT =
54 CactusBase/Boundary
55 CactusBase/CoordBase
56 CactusBase/Fortran
57 CactusBase/InitBase
58 CactusBase/IOUtil
59 CactusBase/SymBase
60 CactusBase/Time
61
62 # CactusTest thorns
63 !TARGET = $ARR
64 !TYPE = git
65 !URL = https://bitbucket.org/cactuscode/cactustest.git
66 !REPO_PATH = $2
67 !CHECKOUT = CactusTest/TestAllTypes
68 CactusTest/TestArrays
69 CactusTest/TestComplex
70 CactusTest/TestCoordinates
71 CactusTest/TestFortranCrayPointers
72 CactusTest/TestFortranDependencies1
73 CactusTest/TestFortranDependencies2
74 CactusTest/TestFpointerNULL
75 CactusTest/TestFreeF90
76 CactusTest/TestInclude1
77 CactusTest/TestInclude2
78 CactusTest/TestMath
79 CactusTest/TestPar
80 CactusTest/TestReduce
81 CactusTest/TestSchedule
82 CactusTest/TestStrings
83 CactusTest/TestTable
84 CactusTest/TestTimers
85 CactusTest/TestTypes
86
87 # CactusUtils thorns
88 !TARGET = $ARR
89 !TYPE = git
90 !URL = https://bitbucket.org/cactuscode/cactusutils.git
91 !REPO_PATH = $2
92 !CHECKOUT = CactusUtils/Accelerator CactusUtils/OpenCLRunTime
93 CactusUtils/Formaline
94 CactusUtils/MemSpeed
95 CactusUtils/NaNCatcher
96 CactusUtils/Nice
97 CactusUtils/NoMPI
98 CactusUtils/SystemStatistics
99 CactusUtils/SystemTopology
100 CactusUtils/TerminationTrigger
101 CactusUtils/TimerReport
102 CactusUtils/Trigger
103 CactusUtils/Vectors
104 CactusUtils/WatchDog
105
106 # Additional Cactus thorns
107 !TARGET = $ARR
108 !TYPE = git
109 !URL = https://github.com/EinsteinToolkit/$1-$2
110 !REPO_PATH = ../$1-$2
111 !CHECKOUT = ExternalLibraries/OpenBLAS ExternalLibraries/OpenCL ExternalLibraries/pciutils ExternalLibraries/PETSc
112 ExternalLibraries/ADIOS2
113 ExternalLibraries/AMReX
114 ExternalLibraries/BLAS
115 ExternalLibraries/Boost
116 ExternalLibraries/FFTW3
117 ExternalLibraries/GSL
118 ExternalLibraries/HDF5
119 ExternalLibraries/hwloc
120 ExternalLibraries/LAPACK
121 ExternalLibraries/libjpeg
122 ExternalLibraries/LORENE
123 ExternalLibraries/MPI
124 ExternalLibraries/NSIMD
125 ExternalLibraries/openPMD
126 ExternalLibraries/OpenSSL
127 ExternalLibraries/PAPI
128 ExternalLibraries/pthreads
129 ExternalLibraries/Silo
130 ExternalLibraries/ssht
131 ExternalLibraries/yaml_cpp
132 ExternalLibraries/zlib
133
134 # Kuibit post-processing tools for simulations
135 !TARGET = $ROOT/utils/Analysis
136 !TYPE = git
137 !URL = https://github.com/Sbozzolo/kuibit
138 !REPO_PATH = $2
139 !CHECKOUT = kuibit/docs kuibit/examples kuibit/kuibit kuibit/LICENSE kuibit/README.md
140
141 # Numerical
142 !TARGET = $ARR
143 !TYPE = git
144 !URL = https://bitbucket.org/cactuscode/numerical.git
145 !REPO_PATH= $2
146 !CHECKOUT =
147 Numerical/AEILocalInterp
148
149 # CarpetX thorns
150 !TARGET = $ARR
151 !TYPE = git
152 !URL = https://github.com/EinsteinToolkit/CarpetX.git
153 !REPO_PATH = $2
154 !CHECKOUT =
155 CarpetX/ADMBaseX
156 CarpetX/Algo
157 CarpetX/Arith
158 CarpetX/BoxInBox
159 CarpetX/CarpetX
160 CarpetX/CarpetXRegrid
161 CarpetX/CoordinatesX
162 CarpetX/Derivs
163 CarpetX/ErrorEstimator
164 CarpetX/FluxWaveToyX
165 CarpetX/HydroBaseX
166 CarpetX/Loop
167 CarpetX/MovingBoxToy
168 CarpetX/ODESolvers
169 CarpetX/PDESolvers
170 CarpetX/ParticlesX
171 CarpetX/PoissonX
172 CarpetX/SIMDWaveToyX
173 CarpetX/SpacetimeWaveToyX
174 CarpetX/StaggeredWaveToyX
175 CarpetX/TestArrayGroup
176 CarpetX/TestBoundaries
177 CarpetX/TestBoxInBox
178 CarpetX/TestDerivs
179 CarpetX/TestInterpolate
180 CarpetX/TestLoopX
181 CarpetX/TestNorms
182 CarpetX/TestODESolvers
183 CarpetX/TestODESolvers2
184 CarpetX/TestOutput
185 CarpetX/TestProlongate
186 CarpetX/TestSymmetries
187 CarpetX/TmunuBaseX
188 CarpetX/VGFWaveToyX
189 CarpetX/WaveToyX
190
191 # SpacetimeX thorns
192 !TARGET = $ARR
193 !TYPE = git
194 !URL = https://github.com/EinsteinToolkit/SpacetimeX.git
195 !REPO_PATH = $2
196 !CHECKOUT =
197 SpacetimeX/AHFinderDirect
198 SpacetimeX/BrillLindquist
199 SpacetimeX/Cowling
200 SpacetimeX/KerrSchildX
201 SpacetimeX/Multipole
202 SpacetimeX/NewRadX
203 SpacetimeX/PunctureTracker
204 SpacetimeX/Punctures
205 SpacetimeX/SphericalHarmonics
206 SpacetimeX/SphericalSurface
207 SpacetimeX/StaticTrumpet
208 SpacetimeX/TestNewRadX
209 SpacetimeX/TwoPuncturesX
210 SpacetimeX/Weyl
211 SpacetimeX/WeylScal4
212 SpacetimeX/Z4c
213
214 # Canuda -- CanudaX
215 !TARGET = $ARR
216 !TYPE = git
217 !URL = https://bitbucket.org/canuda/canudax.git
218 !REPO_PATH = $2
219 !CHECKOUT =
220 CanudaX/CanudaX_BSSNMoL
221 CanudaX/CanudaX_ExactID
222 CanudaX/CanudaX_NPScalars
223
224 # Cottonmouth
225 !TARGET = $ARR
226 !TYPE = git
227 !URL = https://github.com/EinsteinToolkit/Cottonmouth.git
228 !REPO_PATH= $2
229 !CHECKOUT =
230 Cottonmouth/CottonmouthBSSNOK4m
231 Cottonmouth/CottonmouthGaugeWaveID
232 Cottonmouth/CottonmouthLinearWaveID
233 Cottonmouth/CottonmouthZ4c4m
234
235 # AsterX
236 !TARGET = $ARR
237 !TYPE = git
238 !URL = https://github.com/EinsteinToolkit/AsterX.git
239 !REPO_PATH= $2
240 !CHECKOUT =
241 AsterX/AsterAnalysis
242 AsterX/AsterMasks
243 AsterX/AsterSeeds
244 AsterX/AsterUtils
245 AsterX/AsterX
246 AsterX/Con2PrimFactory
247 AsterX/EOSX
248 AsterX/ReconX
249 AsterX/TOVSolverX
250 AsterX/FishboneMoncriefIDX