PolarSchurRhsAssembleKernel 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::detail::PolarSchurRhsAssembleKernel Struct Reference
rhs_polar(i,j) = lap_polar(i,j) (= Lap_polar phi^n) + g * div_polar F, second-order centered POLAR divergence of a vector field F = (F_r, F_theta) at the center (ghosts filled). More...
#include <polar_condensed_schur_source_stepper.hpp>
Collaboration diagram for pops::detail::PolarSchurRhsAssembleKernel:Public Member Functions | |
| POPS_HD void | operator() (int i, int j) const |
Public Attributes | |
| ConstArray4 | lap |
| Lap_polar phi^n (positive sign, A=I) | |
| ConstArray4 | fr |
| ConstArray4 | ft |
| flux F at the center (ghosts filled) | |
| Array4 | rhs |
| output: condensed right-hand side (L_int sign) | |
| Real | g |
| theta dt alpha | |
| Real | half_idr |
| Real | half_idth |
| 1/(2 dr), 1/(2 dtheta) | |
| Real | r_min |
| Real | dr |
| for r_cell(i), r_cell(i+-1) | |
Detailed Description
rhs_polar(i,j) = lap_polar(i,j) (= Lap_polar phi^n) + g * div_polar F, second-order centered POLAR divergence of a vector field F = (F_r, F_theta) at the center (ghosts filled).
g = theta dt alpha. div_polar F = (1/r_i) [ (r_{i+1} F_r(i+1) - r_{i-1} F_r(i-1)) / (2 dr)
- (F_th(i,j+1) - F_th(i,j-1)) / (2 dtheta) ]. The POSITIVE sign of div (and of lap) is the opposite of the Cartesian schur convention: we solve L_int = +div(A grad phi) = rhs_polar = -rhs_schur (cf. header, sign convention). NAMED functor.
Member Function Documentation
◆ operator()()
|
inline |
Member Data Documentation
◆ dr
| Real pops::detail::PolarSchurRhsAssembleKernel::dr |
for r_cell(i), r_cell(i+-1)
◆ fr
| ConstArray4 pops::detail::PolarSchurRhsAssembleKernel::fr |
◆ ft
| ConstArray4 pops::detail::PolarSchurRhsAssembleKernel::ft |
flux F at the center (ghosts filled)
◆ g
| Real pops::detail::PolarSchurRhsAssembleKernel::g |
theta dt alpha
◆ half_idr
| Real pops::detail::PolarSchurRhsAssembleKernel::half_idr |
◆ half_idth
| Real pops::detail::PolarSchurRhsAssembleKernel::half_idth |
1/(2 dr), 1/(2 dtheta)
◆ lap
| ConstArray4 pops::detail::PolarSchurRhsAssembleKernel::lap |
Lap_polar phi^n (positive sign, A=I)
◆ r_min
| Real pops::detail::PolarSchurRhsAssembleKernel::r_min |
◆ rhs
| Array4 pops::detail::PolarSchurRhsAssembleKernel::rhs |
output: condensed right-hand side (L_int sign)
The documentation for this struct was generated from the following file:
- include/pops/coupling/schur/source/polar_condensed_schur_source_stepper.hpp
Generated by