BlockState Struct 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
|
pops::SystemBlockStore::BlockState Struct Reference
Compiled closures frozen at block add time (composite model + spatial scheme + time). More...
#include <system_block_store.hpp>
Collaboration diagram for pops::SystemBlockStore::BlockState:Public Attributes | |
| std::string | name |
| MultiFab | U |
| int | ncomp |
| int | substeps |
| bool | evolve |
| int | stride = 1 |
| double | gamma |
| std::function< void(MultiFab &, Real, int)> | advance |
| std::function< void(MultiFab &, MultiFab &)> | rhs_into |
| std::function< Real(const MultiFab &)> | max_speed |
| std::function< void(const MultiFab &, MultiFab &)> | add_poisson_rhs |
| VariableSet | cons_vars |
| VariableSet | prim_vars |
| CellConvert | prim_to_cons |
| CellConvert | cons_to_prim |
| std::shared_ptr< CondensedSchurSourceStepper > | schur |
| std::shared_ptr< PolarCondensedSchurSourceStepper > | schur_polar |
| double | schur_theta = 0.5 |
| int | schur_bz_comp = kAuxBaseComps |
| std::function< void(MultiFab &, Real)> | source_step |
| std::function< void(MultiFab &, Real, int)> | advance_masked |
| std::function< void(MultiFab &, Real, int)> | advance_eb |
| std::function< void(const MultiFab &, Real &, int &, int &)> | hotspot |
| std::function< Real(const MultiFab &)> | source_frequency |
| std::function< Real(const MultiFab &)> | stability_dt |
| std::function< void(MultiFab &)> | project |
| std::function< void(MultiFab &, MultiFab &)> | rhs_flux_only |
| std::map< std::string, std::function< void(const MultiFab &, MultiFab &)> > | named_poisson_rhs |
| std::function< void(MultiFab &, MultiFab &)> | source_only |
Detailed Description
Compiled closures frozen at block add time (composite model + spatial scheme + time).
Type-erased ONLY at the block list level; the kernel stays compiled. MEMBER ORDER FROZEN: install_block (python/system.cpp) and native_loader (push_dynamic / add_compiled_model) initialize this struct by positional AGGREGATE {name, U, ncomp, substeps, evolve, stride, gamma, advance, rhs_into, max_speed, add_poisson_rhs}; do not reorder these members nor insert any before add_poisson_rhs.
Member Data Documentation
◆ add_poisson_rhs
◆ advance
◆ advance_eb
◆ advance_masked
◆ cons_to_prim
| CellConvert pops::SystemBlockStore::BlockState::cons_to_prim |
◆ cons_vars
| VariableSet pops::SystemBlockStore::BlockState::cons_vars |
◆ evolve
| bool pops::SystemBlockStore::BlockState::evolve |
◆ gamma
| double pops::SystemBlockStore::BlockState::gamma |
◆ hotspot
◆ max_speed
◆ name
| std::string pops::SystemBlockStore::BlockState::name |
◆ named_poisson_rhs
| std::map<std::string, std::function<void(const MultiFab&, MultiFab&)> > pops::SystemBlockStore::BlockState::named_poisson_rhs |
◆ ncomp
| int pops::SystemBlockStore::BlockState::ncomp |
◆ prim_to_cons
| CellConvert pops::SystemBlockStore::BlockState::prim_to_cons |
◆ prim_vars
| VariableSet pops::SystemBlockStore::BlockState::prim_vars |
◆ project
| std::function<void(MultiFab&)> pops::SystemBlockStore::BlockState::project |
◆ rhs_flux_only
◆ rhs_into
◆ schur
| std::shared_ptr<CondensedSchurSourceStepper> pops::SystemBlockStore::BlockState::schur |
◆ schur_bz_comp
| int pops::SystemBlockStore::BlockState::schur_bz_comp = kAuxBaseComps |
◆ schur_polar
| std::shared_ptr<PolarCondensedSchurSourceStepper> pops::SystemBlockStore::BlockState::schur_polar |
◆ schur_theta
| double pops::SystemBlockStore::BlockState::schur_theta = 0.5 |
◆ source_frequency
◆ source_only
◆ source_step
◆ stability_dt
◆ stride
| int pops::SystemBlockStore::BlockState::stride = 1 |
◆ substeps
| int pops::SystemBlockStore::BlockState::substeps |
◆ U
| MultiFab pops::SystemBlockStore::BlockState::U |
The documentation for this struct was generated from the following file:
- include/pops/runtime/system/system_block_store.hpp
Generated by