BISICLES AMR ice sheet model  0.9
Public Member Functions | Static Public Member Functions | List of all members
BasalFriction Class Referenceabstract

#include <BasalFriction.H>

Inheritance diagram for BasalFriction:
Inheritance graph
[legend]

Public Member Functions

virtual ~BasalFriction ()
 virtual destructor More...
 
virtual BasalFrictionnew_basalFriction () const =0
 factory method More...
 
virtual void setBasalFriction (LevelData< FArrayBox > &a_betaSqr, LevelSigmaCS &a_coordSys, Real a_time, Real a_dt)=0
 compute basal friction coefficient beta^2 and place in a_betaSqr More...
 

Static Public Member Functions

static BasalFrictionparse (const char *a_prefix, const RealVect &a_domainSize)
 

Detailed Description

interface class encapsulating coefficient of basal friction (beta^2) for ice-sheet model This is a virtual base class – it is expected that specific cases will be derived from this

Constructor & Destructor Documentation

◆ ~BasalFriction()

virtual BasalFriction::~BasalFriction ( )
inlinevirtual

virtual destructor

References new_basalFriction(), parse(), and setBasalFriction().

Member Function Documentation

◆ new_basalFriction()

virtual BasalFriction* BasalFriction::new_basalFriction ( ) const
pure virtual

◆ parse()

BasalFriction * BasalFriction::parse ( const char *  a_prefix,
const RealVect &  a_domainSize 
)
static

◆ setBasalFriction()

virtual void BasalFriction::setBasalFriction ( LevelData< FArrayBox > &  a_betaSqr,
LevelSigmaCS a_coordSys,
Real  a_time,
Real  a_dt 
)
pure virtual

compute basal friction coefficient beta^2 and place in a_betaSqr

time and dt are included in case this is time-dependent. Units should usually be chosen so that the basal traction $\tau_b(\beta^2, u) $ is measured in Pascals when $u $ is measured in meters per year.

Parameters
a_betaSqrbasal friction coefficient beta^2 data
a_coordSysice sheet geometry
a_timecurrent time
a_dtcurrent time step

Implemented in PythonInterface::PythonBasalFriction, sinusoidalFriction, MultiLevelDataBasalFriction, constantFriction, LevelDataBasalFriction, zeroFriction, singularStreamFriction, twistyStreamFriction, CopyBasalFriction, GaussianBumpFriction, and FortranInterfaceBasalFriction.

Referenced by AmrIce::setBasalFriction(), ~BasalFriction(), constantFriction::~constantFriction(), and zeroFriction::~zeroFriction().


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