include/pops/numerics/spatial/operators/cartesian_operator.hpp File ReferenceΒΆ
|
adc_cpp 0.3.0
Model-free C++23 core for coupled hyperbolic-elliptic systems on adaptive (AMR) meshes, with MPI and GPU (Kokkos) backends
|
cartesian_operator.hpp File Reference
Cartesian residual R = -div Fhat + S over the cells of a level (method of lines). More...
#include <pops/mesh/storage/fab2d.hpp>#include <pops/mesh/execution/for_each.hpp>#include <pops/mesh/geometry/geometry.hpp>#include <pops/mesh/storage/multifab.hpp>#include <pops/numerics/fv/numerical_flux.hpp>#include <pops/numerics/spatial/primitives/face_flux.hpp>#include <pops/numerics/spatial/primitives/positivity.hpp>#include <pops/numerics/spatial/primitives/state_access.hpp>#include <pops/numerics/spatial/primitives/wave_speed.hpp>
Include dependency graph for cartesian_operator.hpp:
This graph shows which files directly or indirectly include this file:Go to the source code of this file.
Classes | |
| struct | pops::detail::AssembleRhsKernel< Limiter, NumericalFlux, Model > |
| AssembleRhsKernel<Limiter,NumericalFlux,Model>: device kernel of the central residual of assemble_rhs. More... | |
| struct | pops::detail::AssembleRhsHllCachedKernel< Limiter, Model > |
AssembleRhsHllCachedKernel: kernel of the residual R = -div Fhat + S for the HLL flux with wave speeds PRE-COMPUTED per cell (scratch ws, 4 components). More... | |
Namespaces | |
| namespace | pops |
| namespace | pops::detail |
Functions | |
| template<class Limiter = NoSlope, class NumericalFlux = RusanovFlux, class Model > | |
| void | pops::assemble_rhs (const Model &model, const MultiFab &U, const MultiFab &aux, const Geometry &geom, MultiFab &R, bool recon_prim=false, Real pos_floor=Real(0)) |
| assemble_rhs<Limiter,NumericalFlux>: residual R = -div Fhat + S over all boxes. | |
| template<class Limiter = NoSlope, class Model > | |
| void | pops::assemble_rhs_hll_cached (const Model &model, const MultiFab &U, const MultiFab &aux, const Geometry &geom, MultiFab &R, MultiFab &cache, bool recon_prim=false, Real pos_floor=Real(0)) |
| assemble_rhs_hll_cached<Limiter>: residual R = -div Fhat + S at the HLL flux, wave speeds PRE-COMPUTED per cell (OPT-IN). | |
Detailed Description
Cartesian residual R = -div Fhat + S over the cells of a level (method of lines).
CONTRACT: the "PDE -> ODE system" arrow. The time integrator (time/) only knows R; it is unaware of the geometry and the reconstruction scheme.
- assemble_rhs<Limiter,NumericalFlux>: main entry point; residual + optional Fickian term.
- assemble_rhs_hll_cached<Limiter>: OPT-IN HLL path with the per-cell wave-speed cache (wave_speed.hpp); BIT-IDENTICAL to assemble_rhs<NoSlope, HLLFlux> with NoSlope.
Reconstruction (reconstruct_pp) and the structural ghost guard come from face_flux.hpp; the positivity role from positivity.hpp; the cache fill from wave_speed.hpp.
Generated by