ERF
Energy Research and Forecasting: An Atmospheric Modeling Code
ERF_NullSurf.H
Go to the documentation of this file.
1 #ifndef ERF_NULLSURF_H
2 #define ERF_NULLSURF_H
3 
4 #include <AMReX_MultiFabUtil.H>
5 #include <AMReX_Geometry.H>
6 #include <ERF_DataStruct.H>
7 
8 class NullSurf {
9 
10  public:
11  NullSurf () {}
12 
13  virtual ~NullSurf () = default;
14 
15  virtual
16  void
17  Define (SolverChoice& /*sc*/) { }
18 
19  virtual
20  void Init (const int& /*lev*/,
21  const amrex::MultiFab& /*cons_in*/,
22  const amrex::Geometry& /*geom*/,
23  const amrex::Real& /*dt_advance*/) { }
24 
25  virtual
26  void
27  Advance (const amrex::Real& /*dt_advance*/) { }
28 
29  virtual
30  void
31  Advance_With_State (const int& /*lev*/,
32  amrex::MultiFab& /*cons_in*/,
33  amrex::MultiFab& /*xvel_in*/,
34  amrex::MultiFab& /*yvel_in*/,
35  amrex::MultiFab* /*hfx3_out*/,
36  amrex::MultiFab* /*qfx3_out*/,
37  const amrex::Real& /*dt_advance*/,
38  const int& /*nstep*/) { }
39 
40  virtual
41  void
42  Update_Micro_Vars (amrex::MultiFab& /*cons_in*/) { }
43 
44  virtual
45  void
46  Update_State_Vars (amrex::MultiFab& /*cons_in*/) { }
47 
48  virtual
49  void
50  Copy_State_to_Micro (const amrex::MultiFab& /*cons_in*/) { }
51 
52  virtual
53  void
54  Copy_Micro_to_State (amrex::MultiFab& /*cons_in*/) { }
55 
56  virtual
57  amrex::MultiFab*
58  Lsm_Data_Ptr (const int& /*varIdx*/ ) { return nullptr; }
59 
60  virtual
61  amrex::MultiFab*
62  Lsm_Flux_Ptr (const int& /*varIdx*/ ) { return nullptr; }
63 
64  virtual
65  amrex::Geometry
66  Lsm_Geom ( ) { return m_lsm_geom; }
67 
68  virtual
69  int
71 
72  virtual
73  std::string
74  Lsm_VarName (const int& /*varIdx*/)
75  {
76  return varname;
77  }
78 
79  virtual
80  int
81  Lsm_VarIndex (std::string /*varname*/)
82  {
83  return (-1);
84  }
85 
86  private:
87  int m_lsm_size = 1;
88  amrex::Geometry m_lsm_geom;
89  std::string varname = " ";
90 };
91 #endif
amrex::Real Real
Definition: ERF_ShocInterface.H:16
Definition: ERF_NullSurf.H:8
int m_lsm_size
Definition: ERF_NullSurf.H:87
virtual void Copy_State_to_Micro(const amrex::MultiFab &)
Definition: ERF_NullSurf.H:50
virtual amrex::MultiFab * Lsm_Data_Ptr(const int &)
Definition: ERF_NullSurf.H:58
virtual void Advance_With_State(const int &, amrex::MultiFab &, amrex::MultiFab &, amrex::MultiFab &, amrex::MultiFab *, amrex::MultiFab *, const amrex::Real &, const int &)
Definition: ERF_NullSurf.H:31
virtual int Lsm_VarIndex(std::string)
Definition: ERF_NullSurf.H:81
virtual void Copy_Micro_to_State(amrex::MultiFab &)
Definition: ERF_NullSurf.H:54
virtual void Define(SolverChoice &)
Definition: ERF_NullSurf.H:17
virtual void Advance(const amrex::Real &)
Definition: ERF_NullSurf.H:27
virtual amrex::MultiFab * Lsm_Flux_Ptr(const int &)
Definition: ERF_NullSurf.H:62
virtual void Update_Micro_Vars(amrex::MultiFab &)
Definition: ERF_NullSurf.H:42
NullSurf()
Definition: ERF_NullSurf.H:11
virtual void Init(const int &, const amrex::MultiFab &, const amrex::Geometry &, const amrex::Real &)
Definition: ERF_NullSurf.H:20
amrex::Geometry m_lsm_geom
Definition: ERF_NullSurf.H:88
virtual std::string Lsm_VarName(const int &)
Definition: ERF_NullSurf.H:74
virtual int Lsm_Data_Size()
Definition: ERF_NullSurf.H:70
std::string varname
Definition: ERF_NullSurf.H:89
virtual void Update_State_Vars(amrex::MultiFab &)
Definition: ERF_NullSurf.H:46
virtual amrex::Geometry Lsm_Geom()
Definition: ERF_NullSurf.H:66
virtual ~NullSurf()=default
Definition: ERF_DataStruct.H:123