BISICLES AMR ice sheet model
0.9
|
#include <CrevasseCalvingModel.H>
Public Types | |
enum | StressMeasure { FirstPrincipalStress, AlongFlowNormalStress, Trace, MAX_STRESS_MEASURE } |
![]() | |
enum | Stage { Initialization, PostVelocitySolve, PostThicknessAdvection, PostRegrid, MAX_STAGE } |
Public Member Functions | |
CrevasseCalvingModel (ParmParse &a_pp) | |
virtual | ~CrevasseCalvingModel () |
virtual void | computeRemnant (LevelData< FArrayBox > &a_remnant, const LevelData< FArrayBox > &a_stress, const LevelData< FArrayBox > &a_thck, const LevelData< FArrayBox > &a_usrf, const LevelData< FArrayBox > &a_hab, const LevelData< FArrayBox > &a_waterDepth, const LevelSigmaCS &a_coords)=0 |
virtual void | applyCriterion (LevelData< FArrayBox > &a_thickness, LevelData< FArrayBox > &a_calvedIce, LevelData< FArrayBox > &a_addedIce, LevelData< FArrayBox > &a_removedIce, LevelData< FArrayBox > &a_iceFrac, const AmrIce &a_amrIce, int a_level, Stage a_stage) |
virtual void | getWaterDepth (LevelData< FArrayBox > &a_waterDepth, const AmrIce &a_amrIce, int a_level) |
water depth for crevasse calving. More... | |
CrevasseCalvingModel (const CrevasseCalvingModel &a) | |
![]() | |
virtual | ~CalvingModel () |
virtual CalvingModel * | new_CalvingModel ()=0 |
factory method More... | |
virtual void | getCalvingRate (LevelData< FArrayBox > &a_calvingRate, const AmrIce &a_amrIce, int a_level) |
frontal ablation rate. More... | |
Protected Member Functions | |
void | computeStressMeasure (LevelData< FArrayBox > &a_stressMeasure, const AmrIce &a_amrIce, int a_level) |
Protected Attributes | |
SurfaceFlux * | m_waterDepth |
bool | m_includeBasalCrevasses |
Real | m_calvingZoneLength |
DomainEdgeCalvingModel * | m_domainEdgeCalvingModel |
StressMeasure | m_stressMeasure |
Additional Inherited Members | |
![]() | |
static void | updateCalvedIce (const Real &a_thck, const Real a_prevThck, const int a_mask, Real &a_added, Real &a_calved, Real &a_removed) |
static CalvingModel * | parseCalvingModel (const char *a_prefix) |
Calving models based on crevase depth computed from viscous stress CrevasseCalvingModel implements the methods common to all of these, and requires its subclasses to compute a remnnat given the stress. The remnant could be the remaining thickness of ice remnant = (thickness - crevasse depth)/thickness but could be any quantity where remnant = 0 indiciates full fracture and remnant > 0 is a partial fracture.
CrevasseCalvingModel::CrevasseCalvingModel | ( | ParmParse & | a_pp | ) |
|
virtual |
References m_domainEdgeCalvingModel, and m_waterDepth.
|
inline |
|
virtual |
Implements CalvingModel.
References DomainEdgeCalvingModel::applyCriterion(), computeRemnant(), computeStressMeasure(), AmrIce::dx(), AmrIce::geometry(), LevelSigmaCS::getFloatingMask(), LevelSigmaCS::getTopography(), getWaterDepth(), LevelSigmaCS::grids(), LevelSigmaCS::iceDensity(), m_calvingZoneLength, m_domainEdgeCalvingModel, CalvingModel::PostVelocitySolve, column_thermodynamics::rhoi, column_thermodynamics::rhoo, LevelSigmaCS::seaLevel(), CalvingModel::updateCalvedIce(), and LevelSigmaCS::waterDensity().
Referenced by getWaterDepth().
|
pure virtual |
Implemented in VdVCalvingModel, and BennCalvingModel.
Referenced by applyCriterion().
|
protected |
Calving models based on crevase depth computed from viscous stress CrevasseCalvingModel implements the methods common to all of these, and requires its subclasses to compute crevasse depth given the stress
References AlongFlowNormalStress, FirstPrincipalStress, AmrIce::geometry(), LevelSigmaCS::getH(), LevelSigmaCS::grids(), m_stressMeasure, MAX_STRESS_MEASURE, Trace, AmrIce::velocity(), and AmrIce::viscousTensor().
Referenced by applyCriterion(), and CrevasseCalvingModel().
|
virtual |
water depth for crevasse calving.
Reimplemented from CalvingModel.
References applyCriterion(), SurfaceFlux::evaluate(), and m_waterDepth.
Referenced by applyCriterion().
|
protected |
Referenced by applyCriterion(), and CrevasseCalvingModel().
|
protected |
Referenced by applyCriterion(), CrevasseCalvingModel(), and ~CrevasseCalvingModel().
|
protected |
Referenced by BennCalvingModel::computeRemnant(), VdVCalvingModel::computeRemnant(), and CrevasseCalvingModel().
|
protected |
Referenced by computeStressMeasure(), and CrevasseCalvingModel().
|
protected |
Referenced by CrevasseCalvingModel(), getWaterDepth(), and ~CrevasseCalvingModel().