ERF
Energy Research and Forecasting: An Atmospheric Modeling Code
ERF_NullMoist.H
Go to the documentation of this file.
1 #ifndef ERF_NULLMOIST_H
2 #define ERF_NULLMOIST_H
3 
4 #include <AMReX_MultiFabUtil.H>
5 #include <AMReX_Geometry.H>
6 #include <ERF_DataStruct.H>
7 
8 class NullMoist {
9 
10 public:
11  NullMoist () {}
12 
13  virtual ~NullMoist () = default;
14 
15  virtual
16  void
17  Define (SolverChoice& /*sc*/) { }
18 
19  virtual
20  void Init (const amrex::MultiFab& /*cons_in*/,
21  const amrex::BoxArray& /*grids*/,
22  const amrex::Geometry& /*geom*/,
23  const amrex::Real& /*dt_advance*/,
24  std::unique_ptr<amrex::MultiFab>& /*z_phys_nd*/,
25  std::unique_ptr<amrex::MultiFab>& /*detJ_cc*/) { }
26 
27  virtual
28  void
29  Advance (const amrex::Real& /*dt_advance*/,
30  const SolverChoice& /*solverChoce*/) { }
31 
32  virtual
33  void
34  Update_Micro_Vars (amrex::MultiFab& /*cons_in*/) { }
35 
36  virtual
37  void
38  Update_State_Vars (amrex::MultiFab& /*cons_in*/,
39  const amrex::MultiFab& /*z_phys_nd*/) { }
40 
41  virtual
42  void
43  Copy_State_to_Micro (const amrex::MultiFab& /*cons_in*/) { }
44 
45  virtual
46  void
47  Copy_Micro_to_State (amrex::MultiFab& /*cons_in*/) { }
48 
49  virtual
50  amrex::MultiFab*
51  Qmoist_Ptr (const int& /*varIdx*/ ) { return nullptr; }
52 
53  virtual
54  int
56 
57  virtual
58  int
60 
61  virtual
62  int
64 
65  virtual
66  void
67  Qmoist_Restart_Vars ( const SolverChoice&, std::vector<int>& a_idx, std::vector<std::string>& a_names) const
68  {
69  a_idx.clear();
70  a_names.clear();
71  }
72 
73  virtual
74  void
75  GetPlotVarNames (amrex::Vector<std::string>& a_vec) const
76  {
77  a_vec.resize(0);
78  }
79 
80  virtual
81  void
82  GetPlotVar (const std::string& /* a_name */,
83  amrex::MultiFab& /* a_mf */ ) const
84  {
85  amrex::Abort("NullMoist::GetPlotVar() should never be called.");
86  }
87 
88  virtual
89  void
90  Set_dzmin (const amrex::Real /*dz_min*/) { }
91 
92  virtual
93  void
94  Set_RealWidth (const int /*real_width*/) { }
95 
96 
97 private:
98  int m_qmoist_size = 0;
101 };
102 
103 #endif
amrex::Real Real
Definition: ERF_ShocInterface.H:19
Definition: ERF_NullMoist.H:8
int m_qstate_moist_size
Definition: ERF_NullMoist.H:99
virtual void Copy_Micro_to_State(amrex::MultiFab &)
Definition: ERF_NullMoist.H:47
virtual amrex::MultiFab * Qmoist_Ptr(const int &)
Definition: ERF_NullMoist.H:51
virtual void GetPlotVar(const std::string &, amrex::MultiFab &) const
Definition: ERF_NullMoist.H:82
virtual void Set_dzmin(const amrex::Real)
Definition: ERF_NullMoist.H:90
int m_qmoist_size
Definition: ERF_NullMoist.H:98
virtual void Init(const amrex::MultiFab &, const amrex::BoxArray &, const amrex::Geometry &, const amrex::Real &, std::unique_ptr< amrex::MultiFab > &, std::unique_ptr< amrex::MultiFab > &)
Definition: ERF_NullMoist.H:20
virtual ~NullMoist()=default
virtual void Qmoist_Restart_Vars(const SolverChoice &, std::vector< int > &a_idx, std::vector< std::string > &a_names) const
Definition: ERF_NullMoist.H:67
virtual void Update_State_Vars(amrex::MultiFab &, const amrex::MultiFab &)
Definition: ERF_NullMoist.H:38
virtual void Set_RealWidth(const int)
Definition: ERF_NullMoist.H:94
NullMoist()
Definition: ERF_NullMoist.H:11
virtual int Qstate_NonMoist_Size()
Definition: ERF_NullMoist.H:63
virtual void Advance(const amrex::Real &, const SolverChoice &)
Definition: ERF_NullMoist.H:29
virtual void Define(SolverChoice &)
Definition: ERF_NullMoist.H:17
virtual void Copy_State_to_Micro(const amrex::MultiFab &)
Definition: ERF_NullMoist.H:43
virtual void GetPlotVarNames(amrex::Vector< std::string > &a_vec) const
Definition: ERF_NullMoist.H:75
int m_qstate_nonmoist_size
Definition: ERF_NullMoist.H:100
virtual int Qmoist_Size()
Definition: ERF_NullMoist.H:55
virtual void Update_Micro_Vars(amrex::MultiFab &)
Definition: ERF_NullMoist.H:34
virtual int Qstate_Moist_Size()
Definition: ERF_NullMoist.H:59
Definition: ERF_DataStruct.H:130