-
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