PISM, A Parallel Ice Sheet Model
stable v2.1.1 committed by Constantine Khrulev on 2024-12-04 13:36:58 -0900
|
#include <NullTransport.hh>
Public Member Functions | |
NullTransport (std::shared_ptr< const Grid > g) | |
virtual | ~NullTransport ()=default |
Public Member Functions inherited from pism::hydrology::Hydrology | |
Hydrology (std::shared_ptr< const Grid > g) | |
virtual | ~Hydrology ()=default |
void | restart (const File &input_file, int record) |
void | bootstrap (const File &input_file, const array::Scalar &ice_thickness) |
void | init (const array::Scalar &W_till, const array::Scalar &W, const array::Scalar &P) |
void | update (double t, double dt, const Inputs &inputs) |
const array::Scalar & | till_water_thickness () const |
Return the effective thickness of the water stored in till. More... | |
const array::Scalar & | subglacial_water_thickness () const |
Return the effective thickness of the transportable basal water layer. More... | |
const array::Scalar & | overburden_pressure () const |
const array::Scalar & | surface_input_rate () const |
const array::Vector & | flux () const |
const array::Scalar & | mass_change () const |
const array::Scalar & | mass_change_at_grounded_margin () const |
const array::Scalar & | mass_change_at_grounding_line () const |
const array::Scalar & | mass_change_at_domain_boundary () const |
const array::Scalar & | mass_change_due_to_conservation_error () const |
const array::Scalar & | mass_change_due_to_input () const |
const array::Scalar & | mass_change_due_to_lateral_flow () 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 | restart_impl (const File &input_file, int record) |
virtual void | bootstrap_impl (const File &input_file, const array::Scalar &ice_thickness) |
virtual void | init_impl (const array::Scalar &W_till, const array::Scalar &W, const array::Scalar &P) |
virtual MaxTimestep | max_timestep_impl (double t) const |
virtual void | update_impl (double t, double dt, const Inputs &inputs) |
Solves an implicit step of a highly-simplified ODE. More... | |
void | diffuse_till_water (double dt) |
Protected Member Functions inherited from pism::hydrology::Hydrology | |
virtual std::map< std::string, Diagnostic::Ptr > | diagnostics_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... | |
void | compute_overburden_pressure (const array::Scalar &ice_thickness, array::Scalar &result) const |
Update the overburden pressure from ice thickness. More... | |
void | compute_surface_input_rate (const array::CellType &mask, const array::Scalar *surface_input_rate, array::Scalar &result) |
void | compute_basal_melt_rate (const array::CellType &mask, const array::Scalar &basal_melt_rate, array::Scalar &result) |
void | enforce_bounds (const array::CellType &cell_type, const array::Scalar *no_model_mask, double max_thickness, double ocean_water_thickness, array::Scalar &water_thickness, array::Scalar &grounded_margin_change, array::Scalar &grounding_line_change, array::Scalar &conservation_error_change, array::Scalar &no_model_mask_change) |
Correct the new water thickness based on boundary requirements. 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) |
Private Member Functions | |
void | initialization_message () const |
Private Attributes | |
bool | m_diffuse_tillwat |
double | m_diffusion_time |
double | m_diffusion_distance |
double | m_tillwat_max |
double | m_tillwat_decay_rate |
array::Scalar1 | m_Wtill_old |
The PISM minimal model has till, but water that exceeds the capacity of the till is not conserved. There is no model for lateral transport.
This is the minimum functional derived class. It updates till water thickness. It implements a version of the "undrained plastic bed" model of [Tulaczyketal2000b], but with non-conserved drainage.
This model can give no meaningful report on conservation errors.
This talk illustrates a "till-can" metaphor applicable to this model: http://www2.gi.alaska.edu/snowice/glaciers/iceflow/bueler-igs-fairbanks-june2012.pdf
Definition at line 40 of file NullTransport.hh.