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  int
75 
76  virtual
77  std::string
78  Lsm_DataName (const int& /*varIdx*/)
79  {
80  return dataname;
81  }
82 
83  virtual
84  std::string
85  Lsm_FluxName (const int& /*varIdx*/)
86  {
87  return fluxname;
88  }
89 
90  virtual
91  int
92  Lsm_DataIndex (std::string /*varname*/)
93  {
94  return (-1);
95  }
96 
97  virtual
98  int
99  Lsm_FluxIndex (std::string /*varname*/)
100  {
101  return (-1);
102  }
103 
104  private:
105  int m_lsm_size = 1;
106  amrex::Geometry m_lsm_geom;
107  std::string dataname = " ";
108  std::string fluxname = " ";
109 };
110 #endif
amrex::Real Real
Definition: ERF_ShocInterface.H:19
Definition: ERF_NullSurf.H:8
int m_lsm_size
Definition: ERF_NullSurf.H:105
virtual std::string Lsm_DataName(const int &)
Definition: ERF_NullSurf.H:78
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 int Lsm_Flux_Size()
Definition: ERF_NullSurf.H:74
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 void Copy_Micro_to_State(amrex::MultiFab &)
Definition: ERF_NullSurf.H:54
virtual void Define(SolverChoice &)
Definition: ERF_NullSurf.H:17
std::string fluxname
Definition: ERF_NullSurf.H:108
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 int Lsm_FluxIndex(std::string)
Definition: ERF_NullSurf.H:99
virtual void Update_Micro_Vars(amrex::MultiFab &)
Definition: ERF_NullSurf.H:42
virtual int Lsm_DataIndex(std::string)
Definition: ERF_NullSurf.H:92
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:106
virtual std::string Lsm_FluxName(const int &)
Definition: ERF_NullSurf.H:85
virtual int Lsm_Data_Size()
Definition: ERF_NullSurf.H:70
virtual void Update_State_Vars(amrex::MultiFab &)
Definition: ERF_NullSurf.H:46
std::string dataname
Definition: ERF_NullSurf.H:107
virtual amrex::Geometry Lsm_Geom()
Definition: ERF_NullSurf.H:66
virtual ~NullSurf()=default
Definition: ERF_DataStruct.H:123