BISICLES AMR ice sheet model
0.9
|
simple basal friction resulting in a twisting ice stream More...
#include <twistyStreamFriction.H>
Public Member Functions | |
twistyStreamFriction () | |
constructor More... | |
twistyStreamFriction (const Real &a_betaVal, const RealVect &a_omega, const Real &m_magOffset, const Real &a_eps, const RealVect &a_domainSize) | |
virtual | ~twistyStreamFriction () |
destructor More... | |
virtual BasalFriction * | new_basalFriction () const |
factory method More... | |
virtual void | setBasalFriction (LevelData< FArrayBox > &a_betaSqr, LevelSigmaCS &a_coordSys, Real a_time, Real a_dt) |
define basal friction coefficient beta^2 and place in a_betaSqr More... | |
void | setParameters (const Real &a_betaVal, const RealVect &a_omega, const Real &a_magOffset, const Real &a_eps, const RealVect &a_domainSize) |
set friction value in Pa*a/m) More... | |
![]() | |
virtual | ~BasalFriction () |
virtual destructor More... | |
Public Attributes | |
Real | m_betaVal |
RealVect | m_omega |
Real | m_magOffset |
Real | m_eps |
RealVect | m_domainSize |
Additional Inherited Members | |
![]() | |
static BasalFriction * | parse (const char *a_prefix, const RealVect &a_domainSize) |
simple basal friction resulting in a twisting ice stream
beta^2 = betaVal*(1 + eps + sin(2*Pi*Omega[1]*y + offset))
where offset = magOffset*sin(2*Pi*Omega[0]*x)
twistyStreamFriction::twistyStreamFriction | ( | ) |
constructor
Referenced by new_basalFriction().
twistyStreamFriction::twistyStreamFriction | ( | const Real & | a_betaVal, |
const RealVect & | a_omega, | ||
const Real & | m_magOffset, | ||
const Real & | a_eps, | ||
const RealVect & | a_domainSize | ||
) |
|
virtual |
destructor
|
virtual |
factory method
return a pointer to a new BasalFriction object
Implements BasalFriction.
References m_betaVal, m_domainSize, m_eps, m_magOffset, m_omega, and twistyStreamFriction().
|
virtual |
define basal friction coefficient beta^2 and place in a_betaSqr
time and dt are included in case this is time-dependent. Units should be Pa*a/m (any conversion to mks units is internal to the AmrIce code)
Implements BasalFriction.
References LevelSigmaCS::dx(), m_betaVal, m_domainSize, m_eps, m_magOffset, and m_omega.
void twistyStreamFriction::setParameters | ( | const Real & | a_betaVal, |
const RealVect & | a_omega, | ||
const Real & | a_magOffset, | ||
const Real & | a_eps, | ||
const RealVect & | a_domainSize | ||
) |
set friction value in Pa*a/m)
References m_betaVal, m_domainSize, m_eps, m_magOffset, and m_omega.
Real twistyStreamFriction::m_betaVal |
Referenced by new_basalFriction(), setBasalFriction(), and setParameters().
RealVect twistyStreamFriction::m_domainSize |
Referenced by new_basalFriction(), setBasalFriction(), and setParameters().
Real twistyStreamFriction::m_eps |
Referenced by new_basalFriction(), setBasalFriction(), and setParameters().
Real twistyStreamFriction::m_magOffset |
Referenced by new_basalFriction(), setBasalFriction(), and setParameters().
RealVect twistyStreamFriction::m_omega |
Referenced by new_basalFriction(), setBasalFriction(), and setParameters().