-
Notifications
You must be signed in to change notification settings - Fork 13
Code design
Sam Reeve edited this page May 31, 2022
·
2 revisions
-
BoundaryCondition- Enums and implementations for velocity conditions
-
DenseLinearAlgebra- Per-thread batched linear algebra (e.g. BLAS/LAPACK)
-
Mesh- Cajita mesh management
-
ParticleInit- User-defined functors initialize particles in a
Cabana::AoSoA
- User-defined functors initialize particles in a
-
ProblemManager- Manages all problem data including grid fields and particles
- Provides key abstractions to give meaning to templates
-
Solver- Sets up the problem and manages devices (e.g. using GPUs vs. CPUs)
-
TimeIntegrator- The core physics kernels
-
VelocityInterpolation- Custom P2G/G2P operators for APIC