PISM, A Parallel Ice Sheet Model  stable v2.1.1 committed by Constantine Khrulev on 2024-12-04 13:36:58 -0900
Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
pism::bed::LingleClark Class Reference

A wrapper class around LingleClarkSerial. More...

#include <LingleClark.hh>

+ Inheritance diagram for pism::bed::LingleClark:

Public Member Functions

 LingleClark (std::shared_ptr< const Grid > g)
 
virtual ~LingleClark ()
 
const array::Scalartotal_displacement () const
 
const array::Scalarviscous_displacement () const
 
const array::Scalarelastic_displacement () const
 
const array::Scalarrelief () const
 
void step (const array::Scalar &ice_thickness, const array::Scalar &sea_level_elevation, double dt)
 
std::shared_ptr< array::Scalarelastic_load_response_matrix () const
 
- Public Member Functions inherited from pism::bed::BedDef
 BedDef (std::shared_ptr< const Grid > g)
 
virtual ~BedDef ()=default
 
void init (const InputOptions &opts, const array::Scalar &ice_thickness, const array::Scalar &sea_level_elevation)
 
void bootstrap (const array::Scalar &bed_elevation, const array::Scalar &bed_uplift, const array::Scalar &ice_thickness, const array::Scalar &sea_level_elevation)
 Initialize using provided bed elevation and uplift. More...
 
void update (const array::Scalar &ice_thickness, const array::Scalar &sea_level_elevation, double t, double dt)
 
const array::Scalarbed_elevation () const
 
const array::Scalaruplift () 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 Gridgrid () const
 
const Timetime () const
 
const Profilingprofiling () 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 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...
 
DiagnosticList diagnostics_impl () const
 
MaxTimestep max_timestep_impl (double t) const
 
void init_impl (const InputOptions &opts, const array::Scalar &ice_thickness, const array::Scalar &sea_level_elevation)
 
void bootstrap_impl (const array::Scalar &bed_elevation, const array::Scalar &bed_uplift, const array::Scalar &ice_thickness, const array::Scalar &sea_level_elevation)
 
void update_impl (const array::Scalar &ice_thickness, const array::Scalar &sea_level_elevation, double t, double dt)
 Update the Lingle-Clark bed deformation model. More...
 
- Protected Member Functions inherited from pism::bed::BedDef
virtual void apply_topg_offset (const std::string &filename)
 
void compute_uplift (const array::Scalar &bed, const array::Scalar &bed_last, double dt, array::Scalar &result)
 Compute bed uplift (dt is in seconds). More...
 
- Protected Member Functions inherited from pism::Component
virtual TSDiagnosticList ts_diagnostics_impl () const
 
void regrid (const std::string &module_name, array::Array &variable, RegriddingFlag flag=NO_REGRID_WITHOUT_REGRID_VARS)
 

Protected Attributes

array::Scalar m_total_displacement
 Total (viscous and elastic) bed displacement. More...
 
std::shared_ptr< petsc::Vecm_work0
 
array::Scalar m_relief
 Bed relief relative to the bed displacement. More...
 
array::Scalar m_load_thickness
 Ice-equivalent load thickness. More...
 
std::unique_ptr< LingleClarkSerialm_serial_model
 Serial viscoelastic bed deformation model. More...
 
std::shared_ptr< Gridm_extended_grid
 extended grid for the viscous plate displacement More...
 
std::shared_ptr< array::Scalarm_viscous_displacement
 Viscous displacement on the extended grid (part of the model state). More...
 
std::shared_ptr< petsc::Vecm_viscous_displacement0
 rank 0 storage using the extended grid More...
 
array::Scalar m_elastic_displacement
 Elastic bed displacement (part of the model state) More...
 
std::shared_ptr< petsc::Vecm_elastic_displacement0
 rank 0 storage for the elastic displacement More...
 
double m_t_last
 time of the last bed deformation update More...
 
double m_update_interval
 Update interval in seconds. More...
 
double m_t_eps
 Temporal resolution to use when checking whether it's time to update. More...
 
std::string m_time_name
 Name of the variable used to store the last update time. More...
 
- Protected Attributes inherited from pism::bed::BedDef
const int m_wide_stencil
 
array::Scalar2 m_topg
 current bed elevation More...
 
array::Scalar2 m_topg_last
 bed elevation at the time of the last update More...
 
array::Scalar m_uplift
 bed uplift rate More...
 
- Protected Attributes inherited from pism::Component
const std::shared_ptr< const Gridm_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...
 

Detailed Description

A wrapper class around LingleClarkSerial.

Definition at line 33 of file LingleClark.hh.


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