BISICLES AMR ice sheet model
0.9
|
Applies a flux inside a box and (optionally inside a time interval) and zero outside. More...
#include <ComplexSurfaceFlux.H>
Public Member Functions | |
BoxBoundedFlux (const RealVect &a_lo, const RealVect &a_hi, const Real &a_startTime, const Real &a_endTime, SurfaceFlux *a_fluxPtr) | |
virtual | ~BoxBoundedFlux () |
destructor More... | |
virtual SurfaceFlux * | new_surfaceFlux () |
factory method: return a pointer to a new SurfaceFlux object More... | |
virtual void | surfaceThicknessFlux (LevelData< FArrayBox > &a_flux, const AmrIceBase &a_amrIce, int a_level, Real a_dt) |
define source term for thickness evolution and place it in flux More... | |
![]() | |
virtual | ~SurfaceFlux () |
virtual destructor More... | |
virtual void | evaluate (LevelData< FArrayBox > &a_data, const AmrIceBase &a_amrIce, int a_level, Real a_dt) |
Sub-classes of this class turned out to be useful for various data apart from thickness fluxes... More... | |
Additional Inherited Members | |
![]() | |
static SurfaceFlux * | parse (const char *a_prefix) |
assemble a SurfaceFlux* object from ParmParse inputs More... | |
Applies a flux inside a box and (optionally inside a time interval) and zero outside.
Run-time configuration is carried out in SurfaceFlux::parse. If the string A.B.C.type = boxBoundedFlux
is found, then the expected form is:
A.B.C.lo = <float>,<float>
(minimum x,y values)A.B.C.hi = <float>,<float>
(maximum x,y values)A.B.C.time = <float>,<float>
(minimum,maximum time values , default all times)A.B.C.flux = <valid SurfaceFlux type>
|
inline |
References SurfaceFlux::new_surfaceFlux().
|
inlinevirtual |
destructor
References fortranInterfaceFlux::new_surfaceFlux(), and fortranInterfaceFlux::surfaceThicknessFlux().
|
virtual |
factory method: return a pointer to a new SurfaceFlux object
Implements SurfaceFlux.
Referenced by SurfaceFlux::parse().
|
virtual |
define source term for thickness evolution and place it in flux
a_flux | output flux data |
a_amrIce | reference to the ice sheet state |
a_level | mesh level of a_flux |
a_dt | current timestep |
a_dt is included in case one needs integrals or averages over a timestep. flux should be defined in meters per year in the current implementation.
Implements SurfaceFlux.
References AmrIceBase::dx(), fortranInterfaceFlux::fortranInterfaceFlux(), and AmrIceBase::time().