SourceInto< Model > Struct Template ReferenceΒΆ

adc_cpp: pops::detail::SourceInto< Model > Struct Template 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::detail::SourceInto< Model > Struct Template Reference

SOURCE-ONLY residual R <- S(U, aux) installed as the block's source_only closure (ADC-430). More...

#include <block_builder.hpp>

+ Collaboration diagram for pops::detail::SourceInto< Model >:

Public Member Functions

void operator() (MultiFab &U, MultiFab &R) const
 

Public Attributes

Model m
 
GridContext ctx
 

Detailed Description

template<class Model>
struct pops::detail::SourceInto< Model >

SOURCE-ONLY residual R <- S(U, aux) installed as the block's source_only closure (ADC-430).

The exact MIRROR of RhsInto on SourceFreeModel (which is flux without source): SourceInto is source without flux. Together they split the rhs_into residual -div F + S into its two halves. Bit-identical to the source term assemble_rhs adds (SAME m.source, SAME load_state / load_aux), but with no numerical-flux dispatch – so it is flux-template agnostic (a zero-flux MODEL adapter could not zero HLL/Roe, which recombine via wave_speeds, but skipping the flux entirely always gives exactly S). Cell-local: NO fill_ghosts (the source reads the valid cell only, unlike the flux divergence). HOST loop over the valid cells of each local fab (the kernel is device).

Member Function Documentation

◆ operator()()

template<class Model >
void pops::detail::SourceInto< Model >::operator() ( MultiFab U,
MultiFab R 
) const
inline
+ Here is the call graph for this function:

Member Data Documentation

◆ ctx

template<class Model >
GridContext pops::detail::SourceInto< Model >::ctx

◆ m

template<class Model >
Model pops::detail::SourceInto< Model >::m

The documentation for this struct was generated from the following file: