ChargeDensity Struct ReferenceΒΆ

adc_cpp: pops::ChargeDensity 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::ChargeDensity Struct Reference

Charge density f = q n. More...

#include <elliptic.hpp>

+ Collaboration diagram for pops::ChargeDensity:

Public Member Functions

template<class State >
POPS_HD Real rhs (const State &u) const
 

Public Attributes

Real q = 1
 
int c_rho = 0
 

Detailed Description

Charge density f = q n.

Elliptic right-hand side of the ion or electron block.

CONTRACT: pointwise ELLIPTIC brick, device-callable (POPS_HD), no global state. Reads only the density. Sign of q included (ion: q=+1, electron: q=-1).

ROLE-AWARE (audit sec.5): c_rho member, default = canonical layout (density in component 0), resolved by model_factory via TR::conservative_vars().index_of(Density). Canonical == default for every native transport -> STRICTLY bit-identical. int POD -> rhs stays device-clean.

Member Function Documentation

◆ rhs()

template<class State >
POPS_HD Real pops::ChargeDensity::rhs ( const State &  u) const
inline

Member Data Documentation

◆ c_rho

int pops::ChargeDensity::c_rho = 0

◆ q

Real pops::ChargeDensity::q = 1

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