SchurOperatorCoeffKernel 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
|
Coefficients of the tensor operator A_op = I + c rho B^{-1} ASSEMBLED per cell from the fluid state and the B_z field. More...
#include <schur_condensation.hpp>
Collaboration diagram for pops::detail::SchurOperatorCoeffKernel:Public Member Functions | |
| POPS_HD void | operator() (int i, int j) const |
Public Attributes | |
| ConstArray4 | s |
| fluid state | |
| ConstArray4 | bz |
| B_z field at the center. | |
| Array4 | ex |
| Array4 | ey |
| output: eps_x, eps_y (diagonal of A) | |
| Array4 | axy |
| Array4 | ayx |
| output: cross terms a_xy, a_yx | |
| Real | c |
| c = theta^2 dt^2 alpha | |
| Real | th_dt |
| theta * dt (for LorentzEliminator: w = th_dt * B_z, and binv depends only on w) | |
| int | c_rho |
| Density component. | |
Detailed Description
Coefficients of the tensor operator A_op = I + c rho B^{-1} ASSEMBLED per cell from the fluid state and the B_z field.
Writes eps_x, eps_y (diagonal) and a_xy, a_yx (cross) in component 0 of their respective MultiFab. NAMED functor (device-clean): captures Array4 handles (POD) + scalars. s: fluid state (reads rho = s(.,.,c_rho)); bz: B_z field at the center (reads B_z = bz(.,.,0)); c_rho: component of the Density role in the state; c: theta^2 dt^2 alpha; th_dt: theta dt (for w = theta dt B_z).
Member Function Documentation
◆ operator()()
|
inline |
Here is the call graph for this function:Member Data Documentation
◆ axy
| Array4 pops::detail::SchurOperatorCoeffKernel::axy |
◆ ayx
| Array4 pops::detail::SchurOperatorCoeffKernel::ayx |
output: cross terms a_xy, a_yx
◆ bz
| ConstArray4 pops::detail::SchurOperatorCoeffKernel::bz |
B_z field at the center.
◆ c
| Real pops::detail::SchurOperatorCoeffKernel::c |
c = theta^2 dt^2 alpha
◆ c_rho
| int pops::detail::SchurOperatorCoeffKernel::c_rho |
Density component.
◆ ex
| Array4 pops::detail::SchurOperatorCoeffKernel::ex |
◆ ey
| Array4 pops::detail::SchurOperatorCoeffKernel::ey |
output: eps_x, eps_y (diagonal of A)
◆ s
| ConstArray4 pops::detail::SchurOperatorCoeffKernel::s |
fluid state
◆ th_dt
| Real pops::detail::SchurOperatorCoeffKernel::th_dt |
theta * dt (for LorentzEliminator: w = th_dt * B_z, and binv depends only on w)
The documentation for this struct was generated from the following file:
- include/pops/coupling/schur/core/schur_condensation.hpp
Generated by