BISICLES AMR ice sheet model  0.9
Public Member Functions | Protected Attributes | List of all members
HotspotFlux Class Reference

#include <HotspotFlux.H>

Inheritance diagram for HotspotFlux:
Inheritance graph
[legend]
Collaboration diagram for HotspotFlux:
Collaboration graph
[legend]

Public Member Functions

 HotspotFlux ()
 constructor More...
 
virtual ~HotspotFlux ()
 destructor More...
 
virtual SurfaceFluxnew_surfaceFlux ()
 factory method 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...
 
void setFluxVal (const Real &a_fluxVal)
 set flux value in meters/year More...
 
void setSpotLoc (Real a_radius, RealVect a_center)
 set location of (circular) hot spot More...
 
void setSpotLoc (RealVect a_radius, RealVect a_center)
 set location of (ellipsoid) hot spot More...
 
void setSpotTimes (Real a_startTime, Real a_stopTime)
 set start and stop times More...
 
- Public Member Functions inherited from SurfaceFlux
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...
 

Protected Attributes

Real m_fluxVal
 amount of flux in hot spot More...
 
RealVect m_radius
 radius of hot spot More...
 
RealVect m_center
 center of hot spot More...
 
Real m_startTime
 time at which hot spot turns on More...
 
Real m_stopTime
 time at which hot spot turns off More...
 
bool m_isValSet
 checks More...
 
bool m_isLocSet
 

Additional Inherited Members

- Static Public Member Functions inherited from SurfaceFlux
static SurfaceFluxparse (const char *a_prefix)
 assemble a SurfaceFlux* object from ParmParse inputs More...
 

Constructor & Destructor Documentation

◆ HotspotFlux()

HotspotFlux::HotspotFlux ( )

constructor

Referenced by new_surfaceFlux().

◆ ~HotspotFlux()

virtual HotspotFlux::~HotspotFlux ( )
inlinevirtual

Member Function Documentation

◆ new_surfaceFlux()

SurfaceFlux * HotspotFlux::new_surfaceFlux ( )
virtual

factory method

return a pointerto a new SurfaceFlux object

Implements SurfaceFlux.

References HotspotFlux(), m_center, m_fluxVal, m_isLocSet, m_isValSet, m_radius, m_startTime, and m_stopTime.

Referenced by ~HotspotFlux().

◆ setFluxVal()

void HotspotFlux::setFluxVal ( const Real &  a_fluxVal)

set flux value in meters/year

References m_fluxVal, and m_isValSet.

Referenced by SurfaceFlux::parse(), and ~HotspotFlux().

◆ setSpotLoc() [1/2]

void HotspotFlux::setSpotLoc ( Real  a_radius,
RealVect  a_center 
)

set location of (circular) hot spot

References m_center, m_isLocSet, and m_radius.

Referenced by SurfaceFlux::parse(), and ~HotspotFlux().

◆ setSpotLoc() [2/2]

void HotspotFlux::setSpotLoc ( RealVect  a_radius,
RealVect  a_center 
)

set location of (ellipsoid) hot spot

References m_center, m_isLocSet, and m_radius.

◆ setSpotTimes()

void HotspotFlux::setSpotTimes ( Real  a_startTime,
Real  a_stopTime 
)

set start and stop times

References m_startTime, and m_stopTime.

Referenced by SurfaceFlux::parse(), and ~HotspotFlux().

◆ surfaceThicknessFlux()

void HotspotFlux::surfaceThicknessFlux ( LevelData< FArrayBox > &  a_flux,
const AmrIceBase a_amrIce,
int  a_level,
Real  a_dt 
)
virtual

define source term for thickness evolution and place it in flux

dt is included in case one needs integrals or averages over a timestep. flux should be defined in meters/second in the current implementation.

Implements SurfaceFlux.

References AmrIceBase::dx(), m_center, m_fluxVal, m_radius, m_startTime, m_stopTime, and AmrIceBase::time().

Referenced by ~HotspotFlux().

Member Data Documentation

◆ m_center

RealVect HotspotFlux::m_center
protected

center of hot spot

Referenced by new_surfaceFlux(), setSpotLoc(), and surfaceThicknessFlux().

◆ m_fluxVal

Real HotspotFlux::m_fluxVal
protected

amount of flux in hot spot

Referenced by new_surfaceFlux(), setFluxVal(), and surfaceThicknessFlux().

◆ m_isLocSet

bool HotspotFlux::m_isLocSet
protected

Referenced by new_surfaceFlux(), and setSpotLoc().

◆ m_isValSet

bool HotspotFlux::m_isValSet
protected

checks

Referenced by new_surfaceFlux(), and setFluxVal().

◆ m_radius

RealVect HotspotFlux::m_radius
protected

radius of hot spot

Referenced by new_surfaceFlux(), setSpotLoc(), and surfaceThicknessFlux().

◆ m_startTime

Real HotspotFlux::m_startTime
protected

time at which hot spot turns on

Referenced by new_surfaceFlux(), setSpotTimes(), and surfaceThicknessFlux().

◆ m_stopTime

Real HotspotFlux::m_stopTime
protected

time at which hot spot turns off

Referenced by new_surfaceFlux(), setSpotTimes(), and surfaceThicknessFlux().


The documentation for this class was generated from the following files: