PISM, A Parallel Ice Sheet Model  stable v2.1-1-g6902d5502 committed by Ed Bueler on 2023-12-20 08:38:27 -0800
Public Member Functions | Protected Member Functions | Protected Attributes | Private Attributes | List of all members
pism::energy::EnergyModel Class Referenceabstract

#include <EnergyModel.hh>

+ Inheritance diagram for pism::energy::EnergyModel:

Public Member Functions

 EnergyModel (std::shared_ptr< const Grid > grid, std::shared_ptr< const stressbalance::StressBalance > stress_balance)
 
void restart (const File &input_file, int record)
 
void bootstrap (const File &input_file, const array::Scalar &ice_thickness, const array::Scalar &surface_temperature, const array::Scalar &climatic_mass_balance, const array::Scalar &basal_heat_flux)
 Bootstrapping using heuristics. More...
 
void initialize (const array::Scalar &basal_melt_rate, const array::Scalar &ice_thickness, const array::Scalar &surface_temperature, const array::Scalar &climatic_mass_balance, const array::Scalar &basal_heat_flux)
 Initialize using formulas (for runs using synthetic data). More...
 
void update (double t, double dt, const Inputs &inputs)
 
const EnergyModelStatsstats () const
 
const array::Array3Denthalpy () const
 
const array::Scalarbasal_melt_rate () const
 Basal melt rate in grounded areas. (It is set to zero elsewhere.) More...
 
const std::string & stdout_flags () 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 MaxTimestep max_timestep_impl (double t) const
 
virtual void restart_impl (const File &input_file, int record)=0
 
virtual void bootstrap_impl (const File &input_file, const array::Scalar &ice_thickness, const array::Scalar &surface_temperature, const array::Scalar &climatic_mass_balance, const array::Scalar &basal_heat_flux)=0
 
virtual void initialize_impl (const array::Scalar &basal_melt_rate, const array::Scalar &ice_thickness, const array::Scalar &surface_temperature, const array::Scalar &climatic_mass_balance, const array::Scalar &basal_heat_flux)=0
 
virtual void update_impl (double t, double dt, const Inputs &inputs)=0
 
virtual void define_model_state_impl (const File &output) const =0
 The default (empty implementation). More...
 
virtual void write_model_state_impl (const File &output) const =0
 The default (empty implementation). More...
 
virtual DiagnosticList diagnostics_impl () const
 
virtual TSDiagnosticList ts_diagnostics_impl () const
 
void init_enthalpy (const File &input_file, bool regrid, int record)
 Initialize enthalpy by reading it from a file, or by reading temperature and liquid water fraction, or by reading the temperature field alone. More...
 
void regrid_enthalpy ()
 Regrid enthalpy from the -regrid_file. More...
 
- 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

array::Array3D m_ice_enthalpy
 
array::Array3D m_work
 
array::Scalar m_basal_melt_rate
 
EnergyModelStats m_stats
 
- 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...
 

Private Attributes

std::string m_stdout_flags
 
std::shared_ptr< const stressbalance::StressBalancem_stress_balance
 

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

Definition at line 75 of file EnergyModel.hh.


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