15 #ifndef _LEVELDATATEMPERATUREIBC_H_ 16 #define _LEVELDATATEMPERATUREIBC_H_ 19 #include "ParmParse.H" 20 #include "NamespaceHeader.H" 29 RefCountedPtr<LevelData<FArrayBox> > m_bulkData;
30 Real m_defaultTemperature, m_defaultE;
31 bool m_dataIsInternalEnergy;
32 #if BISICLES_Z == BISICLES_LAYERED 33 RefCountedPtr<LevelData<FArrayBox> > m_surfaceData ;
34 RefCountedPtr<LevelData<FArrayBox> > m_basalHeatFlux ;
42 #
if BISICLES_Z == BISICLES_LAYERED
43 RefCountedPtr<LevelData<FArrayBox> > a_surfaceData,
44 RefCountedPtr<LevelData<FArrayBox> > a_basalHeatFlux,
46 const RealVect& a_dx,
const Real& a_defaultTemperature,
47 const bool& a_dataIsInternalEnergy );
59 virtual void define(
const ProblemDomain& a_domain,
73 int a_level, Real a_dt);
75 #if BISICLES_Z == BISICLES_LAYERED 77 LevelData<FArrayBox>& a_tillWaterDepth,
78 LevelData<FArrayBox>& a_surfaceE,
79 LevelData<FArrayBox>& a_basalE,
81 int a_level, Real a_dt);
83 #elif BISICLES_Z == BISICLES_FULLZ 84 #error BISICLES_FULLZ not implemented 97 MayDay::Error(
"invalid operator");
102 :m_bulkData(a_input.m_bulkData)
104 MayDay::Error(
"invalid operator");
109 #include "NamespaceFooter.H" Physical/domain initial and boundary conditions.
Definition: LevelDataTemperatureIBC.H:27
virtual void initializeIceInternalEnergy(LevelData< FArrayBox > &a_E, LevelData< FArrayBox > &a_tillWaterDepth, LevelData< FArrayBox > &a_surfaceE, LevelData< FArrayBox > &a_basalE, const AmrIceBase &a_amrIce, int a_level, Real a_dt)
Definition: LevelDataTemperatureIBC.cpp:171
LevelDataTemperatureIBC(RefCountedPtr< LevelData< FArrayBox > > a_bulkData, #if BISICLES_Z==BISICLES_LAYERED RefCountedPtr< LevelData< FArrayBox > > a_surfaceData, RefCountedPtr< LevelData< FArrayBox > > a_basalHeatFlux, #endif const RealVect &a_dx, const Real &a_defaultTemperature, const bool &a_dataIsInternalEnergy)
Constructor.
static LevelDataTemperatureIBC * parse(ParmParse &a_pp)
Definition: LevelDataTemperatureIBC.cpp:29
virtual void define(const ProblemDomain &a_domain, const Real &a_dx)
Define the object.
Definition: LevelDataTemperatureIBC.cpp:148
virtual ~LevelDataTemperatureIBC()
Destructor.
Definition: LevelDataTemperatureIBC.cpp:143
Partial implementation of IceInternalEnergyIBC, provides reflection (or periodic) boundary conditions...
Definition: IceInternalEnergyIBC.H:164
virtual void basalHeatFlux(LevelData< FArrayBox > &a_flux, const AmrIceBase &a_amrIce, int a_level, Real a_dt)
set a basal heat flux. units are Joules / Year
Definition: LevelDataTemperatureIBC.cpp:155
abstract base class for amr ice sheet models (AmrIce, AMRIceControl)
Definition: AmrIceBase.H:21
virtual LevelDataTemperatureIBC * new_internalEnergyIBC()
Factory method - this object is its own factory.
Definition: LevelDataTemperatureIBC.cpp:268