PISM, A Parallel Ice Sheet Model
stable v2.1-1-g6902d5502 committed by Ed Bueler on 2023-12-20 08:38:27 -0800
|
A class implementing a primitive surface model. More...
#include <Simple.hh>
Public Member Functions | |
Simple (std::shared_ptr< const Grid > g, std::shared_ptr< atmosphere::AtmosphereModel > atmosphere) | |
Public Member Functions inherited from pism::surface::SurfaceModel | |
SurfaceModel (std::shared_ptr< const Grid > g) | |
SurfaceModel (std::shared_ptr< const Grid > g, std::shared_ptr< SurfaceModel > input) | |
SurfaceModel (std::shared_ptr< const Grid > g, std::shared_ptr< atmosphere::AtmosphereModel > atmosphere) | |
virtual | ~SurfaceModel ()=default |
void | init (const Geometry &geometry) |
void | update (const Geometry &geometry, double t, double dt) |
const array::Scalar & | accumulation () const |
Returns accumulation. More... | |
const array::Scalar & | layer_mass () const |
Returns mass held in the surface layer. More... | |
const array::Scalar & | layer_thickness () const |
Returns thickness of the surface layer. Could be used to compute surface elevation as a sum of elevation of the top surface of the ice and surface layer (firn, etc) thickness. More... | |
const array::Scalar & | liquid_water_fraction () const |
Returns the liquid water fraction of the ice at the top ice surface. More... | |
const array::Scalar & | mass_flux () const |
const array::Scalar & | melt () const |
Returns melt. More... | |
const array::Scalar & | runoff () const |
Returns runoff. More... | |
const array::Scalar & | temperature () const |
Public Member Functions inherited from pism::Component | |
Component (std::shared_ptr< const Grid > grid) | |
virtual | ~Component ()=default |
DiagnosticList | diagnostics () const |
TSDiagnosticList | ts_diagnostics () const |
std::shared_ptr< const Grid > | grid () const |
const Time & | time () const |
const Profiling & | profiling () const |
void | define_model_state (const File &output) const |
Define model state variables in an output file. More... | |
void | write_model_state (const File &output) const |
Write model state variables to an output file. More... | |
MaxTimestep | max_timestep (double t) const |
Reports the maximum time-step the model can take at time t. More... | |
Protected Member Functions | |
virtual void | init_impl (const Geometry &geometry) |
virtual void | update_impl (const Geometry &geometry, double t, double dt) |
const array::Scalar & | mass_flux_impl () const |
const array::Scalar & | temperature_impl () const |
const array::Scalar & | accumulation_impl () const |
const array::Scalar & | melt_impl () const |
const array::Scalar & | runoff_impl () const |
Protected Member Functions inherited from pism::surface::SurfaceModel | |
virtual const array::Scalar & | layer_mass_impl () const |
virtual const array::Scalar & | layer_thickness_impl () const |
virtual const array::Scalar & | liquid_water_fraction_impl () const |
virtual void | define_model_state_impl (const File &output) const |
The default (empty implementation). More... | |
virtual void | write_model_state_impl (const File &output) const |
The default (empty implementation). More... | |
virtual MaxTimestep | max_timestep_impl (double my_t) const |
virtual DiagnosticList | diagnostics_impl () const |
virtual TSDiagnosticList | ts_diagnostics_impl () const |
void | dummy_accumulation (const array::Scalar &smb, array::Scalar &result) |
void | dummy_melt (const array::Scalar &smb, array::Scalar &result) |
void | dummy_runoff (const array::Scalar &smb, array::Scalar &result) |
Protected Member Functions inherited from pism::Component | |
void | regrid (const std::string &module_name, array::Array &variable, RegriddingFlag flag=NO_REGRID_WITHOUT_REGRID_VARS) |
Protected Attributes | |
std::shared_ptr< array::Scalar > | m_mass_flux |
std::shared_ptr< array::Scalar > | m_temperature |
Protected Attributes inherited from pism::surface::SurfaceModel | |
std::shared_ptr< array::Scalar > | m_liquid_water_fraction |
std::shared_ptr< array::Scalar > | m_layer_mass |
std::shared_ptr< array::Scalar > | m_layer_thickness |
std::shared_ptr< array::Scalar > | m_accumulation |
std::shared_ptr< array::Scalar > | m_melt |
std::shared_ptr< array::Scalar > | m_runoff |
std::shared_ptr< SurfaceModel > | m_input_model |
std::shared_ptr< atmosphere::AtmosphereModel > | m_atmosphere |
Protected Attributes inherited from pism::Component | |
const std::shared_ptr< const Grid > | m_grid |
grid used by this component More... | |
const Config::ConstPtr | m_config |
configuration database used by this component More... | |
const units::System::Ptr | m_sys |
unit system used by this component More... | |
const Logger::ConstPtr | m_log |
logger (for easy access) More... | |
Additional Inherited Members | |
Protected Types inherited from pism::Component | |
enum | RegriddingFlag { REGRID_WITHOUT_REGRID_VARS , NO_REGRID_WITHOUT_REGRID_VARS } |
This flag determines whether a variable is read from the -regrid_file file even if it is not listed among variables in -regrid_vars . More... | |
Static Protected Member Functions inherited from pism::surface::SurfaceModel | |
static std::shared_ptr< array::Scalar > | allocate_layer_mass (std::shared_ptr< const Grid > grid) |
static std::shared_ptr< array::Scalar > | allocate_layer_thickness (std::shared_ptr< const Grid > grid) |
static std::shared_ptr< array::Scalar > | allocate_liquid_water_fraction (std::shared_ptr< const Grid > grid) |
static std::shared_ptr< array::Scalar > | allocate_mass_flux (std::shared_ptr< const Grid > grid) |
static std::shared_ptr< array::Scalar > | allocate_temperature (std::shared_ptr< const Grid > grid) |
static std::shared_ptr< array::Scalar > | allocate_accumulation (std::shared_ptr< const Grid > grid) |
static std::shared_ptr< array::Scalar > | allocate_melt (std::shared_ptr< const Grid > grid) |
static std::shared_ptr< array::Scalar > | allocate_runoff (std::shared_ptr< const Grid > grid) |
A class implementing a primitive surface model.
This is an "invisible" surface processes model which "passes through" information from the atmosphere above directly to the ice below the surface layers. It implements two modeling choices:
The second choice means that the upper boundary condition of the conservation of energy scheme for the ice fluid is exactly the 2m air temperature.