16 #include <AMReX_FArrayBox.H>
17 #include <AMReX_Geometry.H>
18 #include <AMReX_TableData.H>
19 #include <AMReX_MultiFabUtil.H>
48 using FabPtr = std::shared_ptr<amrex::MultiFab>;
75 Init (
const amrex::MultiFab& cons_in,
76 const amrex::BoxArray& grids,
77 const amrex::Geometry& geom,
78 const amrex::Real& dt_advance,
79 std::unique_ptr<amrex::MultiFab>& z_phys_nd,
80 std::unique_ptr<amrex::MultiFab>& detJ_cc)
override;
129 std::vector<int>& a_idx,
130 std::vector<std::string>& a_names)
const override
135 a_idx.push_back(4); a_names.push_back(
"RainAccum");
constexpr amrex::Real lfus
Definition: ERF_Constants.H:67
constexpr amrex::Real lsub
Definition: ERF_Constants.H:68
constexpr amrex::Real lcond
Definition: ERF_Constants.H:66
constexpr amrex::Real CONST_GRAV
Definition: ERF_Constants.H:21
Definition: ERF_Kessler.H:46
int zlo
Definition: ERF_Kessler.H:162
void Update_Micro_Vars(amrex::MultiFab &cons_in) override
Definition: ERF_Kessler.H:92
amrex::MultiFab * Qmoist_Ptr(const int &varIdx) override
Definition: ERF_Kessler.H:115
amrex::Vector< int > MicVarMap
Definition: ERF_Kessler.H:150
void Copy_State_to_Micro(const amrex::MultiFab &cons_in) override
Definition: ERF_InitKessler.cpp:64
int Qstate_Size() override
Definition: ERF_Kessler.H:125
bool doprecip
Definition: ERF_Kessler.H:168
amrex::Real m_fac_sub
Definition: ERF_Kessler.H:173
int Qmoist_Size() override
Definition: ERF_Kessler.H:122
virtual ~Kessler()=default
amrex::Geometry m_geom
Definition: ERF_Kessler.H:153
Kessler()
Definition: ERF_Kessler.H:52
amrex::MultiFab * m_detJ_cc
Definition: ERF_Kessler.H:178
void Define(SolverChoice &sc) override
Definition: ERF_Kessler.H:62
bool docloud
Definition: ERF_Kessler.H:168
amrex::Real m_fac_cond
Definition: ERF_Kessler.H:171
void Copy_Micro_to_State(amrex::MultiFab &cons_in) override
Definition: ERF_UpdateKessler.cpp:14
amrex::Real dt
Definition: ERF_Kessler.H:159
int zhi
Definition: ERF_Kessler.H:162
int nlev
Definition: ERF_Kessler.H:162
amrex::Array< FabPtr, MicVar_Kess::NumVars > mic_fab_vars
Definition: ERF_Kessler.H:181
amrex::Real m_gOcp
Definition: ERF_Kessler.H:174
amrex::MultiFab * m_z_phys_nd
Definition: ERF_Kessler.H:177
void Init(const amrex::MultiFab &cons_in, const amrex::BoxArray &grids, const amrex::Geometry &geom, const amrex::Real &dt_advance, std::unique_ptr< amrex::MultiFab > &z_phys_nd, std::unique_ptr< amrex::MultiFab > &detJ_cc) override
Definition: ERF_InitKessler.cpp:22
static constexpr amrex::Real CFL_MAX
Definition: ERF_Kessler.H:147
void AdvanceKessler(const SolverChoice &solverChoice)
Definition: ERF_Kessler.cpp:11
amrex::Real m_fac_fus
Definition: ERF_Kessler.H:172
int m_qstate_size
Definition: ERF_Kessler.H:144
std::shared_ptr< amrex::MultiFab > FabPtr
Definition: ERF_Kessler.H:48
void Advance(const amrex::Real &dt_advance, const SolverChoice &solverChoice) override
Definition: ERF_Kessler.H:106
void Update_State_Vars(amrex::MultiFab &cons_in) override
Definition: ERF_Kessler.H:99
amrex::BoxArray m_gtoe
Definition: ERF_Kessler.H:156
int m_qmoist_size
Definition: ERF_Kessler.H:141
void Qmoist_Restart_Vars(const SolverChoice &a_sc, std::vector< int > &a_idx, std::vector< std::string > &a_names) const override
Definition: ERF_Kessler.H:128
int m_axis
Definition: ERF_Kessler.H:165
Definition: ERF_NullMoist.H:8
Definition: ERF_Kessler.H:27
@ qp
Definition: ERF_Kessler.H:39
@ qcl
Definition: ERF_Kessler.H:37
@ tabs
Definition: ERF_Kessler.H:32
@ pres
Definition: ERF_Kessler.H:33
@ rho
Definition: ERF_Kessler.H:30
@ theta
Definition: ERF_Kessler.H:31
@ qt
Definition: ERF_Kessler.H:35
@ rain_accum
Definition: ERF_Kessler.H:41
@ NumVars
Definition: ERF_Kessler.H:42
@ qv
Definition: ERF_Kessler.H:36
Definition: ERF_DataStruct.H:82
amrex::Real c_p
Definition: ERF_DataStruct.H:618
bool do_precip
Definition: ERF_DataStruct.H:678
MoistureType moisture_type
Definition: ERF_DataStruct.H:664
bool do_cloud
Definition: ERF_DataStruct.H:677
int ave_plane
Definition: ERF_DataStruct.H:675