34 t3dmix2_s(
bx,
state,
state_rhs,
diff2,
Hz,
pm,
pn,
msku,
mskv,
dt_lev,
ncomp);
36 t3dmix2_geo(
bx,
state,
state_rhs,
diff2,
Hz, z_r,
pm,
pn,
msku,
mskv,
dt_lev,
ncomp,
N);
71 Box
xbx(
bx);
xbx.surroundingNodes(0);
72 Box
ybx(
bx);
ybx.surroundingNodes(1);
85 FX(
i,
j,
k,n) =
cff * (
Hz(
i,
j,
k) +
Hz(
i-1,
j,
k)) * (
state_rhs(
i,
j,
k,n)-
state_rhs(
i-1,
j,
k,n));
94 FE(
i,
j,
k,n) =
cff * (
Hz(
i,
j,
k) +
Hz(
i,
j-1,
k)) * (
state_rhs(
i,
j,
k,n) -
state_rhs(
i,
j-1,
k,n));
143 Box
xbx(
bx);
xbx.surroundingNodes(0);
144 Box
ybx(
bx);
ybx.surroundingNodes(1);
145 Box
zbx(
bx);
zbx.surroundingNodes(2);
177 ParallelFor(
makeSlab(
grow(
bx,IntVect(1,1,0)),2,0),
ncomp, [=]
AMREX_GPU_DEVICE (
int i,
int j,
int ,
int n)
179 dTdz(
i,
j,0,n) = Real(0.0);
181 FS(
i,
j,0,n) = Real(0.0);
182 FS(
i,
j,
N+1,n) = Real(0.0);
199 Real(0.5)*(std::min(
dZdx(
i,
j,
k,n),Real(0.0))*
202 std::max(
dZdx(
i,
j,
k,n),Real(0.0))*
213 Real(0.5)*(std::min(
dZde(
i,
j,
k,n),Real(0.0))*
216 std::max(
dZde(
i,
j,
k,n),Real(0.0))*
constexpr amrex::Real two
constexpr amrex::Real one
mf_h setVal(geomdata.ProbHi(2))
void t3dmix2(const amrex::Box &bx, const amrex::Array4< amrex::Real > &state, const amrex::Array4< amrex::Real > &state_rhs, const amrex::Array4< amrex::Real const > &diff2, const amrex::Array4< amrex::Real const > &Hz, const amrex::Array4< amrex::Real const > &z_r, const amrex::Array4< amrex::Real const > &pm, const amrex::Array4< amrex::Real const > &pn, const amrex::Array4< amrex::Real const > &msku, const amrex::Array4< amrex::Real const > &mskv, const amrex::Real dt_lev, const int ncomp, const int N)
Wrapper for harmonic diffusivity for tracers.
static SolverChoice solverChoice
Container for algorithmic choices.
void t3dmix2_geo(const amrex::Box &bx, const amrex::Array4< amrex::Real > &state, const amrex::Array4< amrex::Real > &state_rhs, const amrex::Array4< amrex::Real const > &diff2, const amrex::Array4< amrex::Real const > &Hz, const amrex::Array4< amrex::Real const > &z_r, const amrex::Array4< amrex::Real const > &pm, const amrex::Array4< amrex::Real const > &pn, const amrex::Array4< amrex::Real const > &msku, const amrex::Array4< amrex::Real const > &mskv, const amrex::Real dt_lev, const int ncomp, const int N)
Harmonic diffusivity for tracers along geopotential surfaces.
void t3dmix2_s(const amrex::Box &bx, const amrex::Array4< amrex::Real > &state, const amrex::Array4< amrex::Real > &state_rhs, const amrex::Array4< amrex::Real const > &diff2, const amrex::Array4< amrex::Real const > &Hz, const amrex::Array4< amrex::Real const > &pm, const amrex::Array4< amrex::Real const > &pn, const amrex::Array4< amrex::Real const > &msku, const amrex::Array4< amrex::Real const > &mskv, const amrex::Real dt_lev, const int ncomp)
Harmonic diffusivity for tracers along S-coordinate level surfaces.
HarmonicMixingType harmonic_mixing_type