pyissm.model.classes.hydrology
Hydrology classes for ISSM.
Classes
|
ARMAPW hydrology class for ISSM. |
|
Dual Porous Continuum Equivalent (DC) hydrology class for ISSM. |
|
GlaDS hydrology class for ISSM. |
|
PISM hydrology class for ISSM. |
|
Shakti hydrology class for ISSM. |
|
Shreve hydrology class for ISSM. |
|
TWS hydrology class for ISSM. |
- class pyissm.model.classes.hydrology.armapw(other=None)
Bases:
manage_stateARMAPW hydrology class for ISSM.
This class contains the default parameters for the ARMA piecewise (armapw) hydrology model in the ISSM framework.
- Parameters:
other (any, optional) – Any other class object that contains common fields to inherit from. If values in
otherdiffer from default values, they will override the default values.
- num_basins
Number of different basins [unitless].
- Type:
int, default=0
- num_params
Number of different parameters in the piecewise-polynomial (1:intercept only, 2:with linear trend, 3:with quadratic trend, etc.).
- Type:
int, default=0
- num_breaks
Number of different breakpoints in the piecewise-polynomial (separating num_breaks+1 periods).
- Type:
int, default=0
- polynomialparams
Coefficients for the polynomial (const, trend, quadratic, etc.), dimensioned by basins, periods, and orders.
- Type:
numpy.ndarray, default=np.nan
- arma_timestep
Time resolution of the ARMA model [yr].
- Type:
float, default=0
- ar_order
Order of the autoregressive model [unitless].
- Type:
int, default=0
- ma_order
Order of the moving-average model [unitless].
- Type:
int, default=0
- arlag_coefs
Basin-specific vectors of AR lag coefficients [unitless].
- Type:
numpy.ndarray, default=np.nan
- malag_coefs
Basin-specific vectors of MA lag coefficients [unitless].
- Type:
numpy.ndarray, default=np.nan
- datebreaks
Dates at which the breakpoints in the piecewise polynomial occur (1 row per basin) [yr].
- Type:
numpy.ndarray, default=np.nan
- basin_id
Basin number assigned to each element [unitless].
- Type:
numpy.ndarray, default=np.nan
- monthlyfactors
Monthly multiplicative factor on the subglacial water pressure, specified per basin (size: [num_basins, 12]).
- Type:
numpy.ndarray, default=np.nan
- requested_outputs
Additional outputs requested.
- Type:
list, default=[‘default’]
Examples
>>> md.hydrology = pyissm.model.classes.hydrology.armapw()
- check_consistency(md, solution, analyses)
Check consistency of the [hydrology.armapw] parameters.
- Parameters:
md (
pyissm.model.Model) – The model object to check.solution (
str) – The solution name to check.analyses (list of
str) – List of analyses to check consistency for.
- Returns:
md – The model object with any consistency errors noted.
- Return type:
- marshall_class(fid, prefix, md=None)
Marshall [hydrology.armapw] parameters to a binary file.
- Parameters:
fid (
file object) – The file object to write the binary data to.prefix (
str) – Prefix string used for data identification in the binary file.md (
pyissm.model.Model, optional) – ISSM model object needed in some cases.
- Return type:
None
- class pyissm.model.classes.hydrology.dc(other=None)
Bases:
manage_stateDual Porous Continuum Equivalent (DC) hydrology class for ISSM.
This class contains the default parameters for the dual continuum (dc) hydrology model in the ISSM framework.
- Parameters:
other (any, optional) – Any other class object that contains common fields to inherit from. If values in
otherdiffer from default values, they will override the default values.
- water_compressibility
Compressibility of water [Pa^-1].
- Type:
float, default=5.04e-10
- isefficientlayer
Use efficient drainage system [1: true, 0: false].
- Type:
int, default=1
- penalty_factor
Exponent used in the penalisation method [dimensionless].
- Type:
int, default=3
- penalty_lock
Stabilize unstable constraints (default 0: no stabilization).
- Type:
int, default=0
- rel_tol
Tolerance for nonlinear iteration between layers [dimensionless].
- Type:
float, default=1.0e-06
- max_iter
Maximum number of nonlinear iterations.
- Type:
int, default=100
- steps_per_step
Number of hydrology steps per time step.
- Type:
int, default=1
- step_adapt
Adaptive sub-stepping [1: true, 0: false].
- Type:
int, default=0
- averaging
Averaging method for steps (0: Arithmetic, 1: Geometric, 2: Harmonic).
- Type:
int, default=0
- sedimentlimit_flag
Type of upper limit for the inefficient layer (0: none, 1: user, 2: hydrostatic, 3: normal stress).
- Type:
int, default=0
- sedimentlimit
User-defined upper limit for the inefficient layer [m].
- Type:
float, default=0
- transfer_flag
Transfer method between layers (0: none, 1: constant leakage).
- Type:
int, default=1
- unconfined_flag
Use unconfined scheme (0: confined only, 1: confined-unconfined).
- Type:
int, default=0
- leakage_factor
User-defined leakage factor [m].
- Type:
float, default=1.0e-10
- basal_moulin_input
Water flux at a given point [m3 s^-1].
- Type:
numpy.ndarray, default=np.nan
- requested_outputs
Additional outputs requested.
- Type:
list, default=[‘default’]
- spcsediment_head
Sediment water head constraints [m above MSL].
- Type:
numpy.ndarray, default=np.nan
- mask_thawed_node
Mask for thawed nodes (0: frozen).
- Type:
numpy.ndarray, default=np.nan
- sediment_transmitivity
Sediment transmissivity [m^2/s].
- Type:
float, default=8.0e-04
- sediment_compressibility
Sediment compressibility [Pa^-1].
- Type:
float, default=1.0e-08
- sediment_porosity
Sediment porosity [dimensionless].
- Type:
float, default=0.4
- sediment_thickness
Sediment thickness [m].
- Type:
float, default=20.0
- spcepl_head
EPL water head constraints [m above MSL].
- Type:
numpy.ndarray, default=np.nan
- mask_eplactive_node
Mask for active EPL nodes (1: active, 0: inactive).
- Type:
numpy.ndarray, default=np.nan
- epl_compressibility
EPL compressibility [Pa^-1].
- Type:
float, default=1.0e-08
- epl_porosity
EPL porosity [dimensionless].
- Type:
float, default=0.4
- epl_initial_thickness
EPL initial thickness [m].
- Type:
float, default=1.0
- epl_thick_comp
EPL thickness computation flag.
- Type:
int, default=1
- epl_max_thickness
EPL maximal thickness [m].
- Type:
float, default=5.0
- epl_conductivity
EPL conductivity [m^2/s].
- Type:
float, default=8.0e-02
- epl_colapse_thickness
EPL collapsing thickness [m] (computed as sediment_transmitivity / epl_conductivity).
- Type:
float
- eplflip_lock
Lock EPL activity to avoid flip-flopping (default 0: no stabilization).
- Type:
int, default=0
Examples
>>> md.hydrology = pyissm.model.classes.hydrology.dc()
- check_consistency(md, solution, analyses)
Check consistency of the [hydrology.dc] parameters.
- Parameters:
md (
pyissm.model.Model) – The model object to check.solution (
str) – The solution name to check.analyses (list of
str) – List of analyses to check consistency for.
- Returns:
md – The model object with any consistency errors noted.
- Return type:
- initialize(md)
Initialise [hydrology.dc] empty fields.
If current values of required fields are np.nan, they will be set to default required shapes/values and warnings will be issued.
Examples
>>> md.hydrology = pyissm.model.classes.hydrology.dc() # At this point, initial fields are np.nan # After calling initialize, they will be set to default shapes/values with warnings issued. >>> md.hydrology.initialize(md)
- marshall_class(fid, prefix, md=None)
Marshall [hydrology.dc] parameters to a binary file.
- Parameters:
fid (
file object) – The file object to write the binary data to.prefix (
str) – Prefix string used for data identification in the binary file.md (
pyissm.model.Model, optional) – ISSM model object needed in some cases.
- Return type:
None
- class pyissm.model.classes.hydrology.glads(other=None)
Bases:
manage_stateGlaDS hydrology class for ISSM.
This class contains the default parameters for the Glacier Drainage System (GlaDS) hydrology model in the ISSM framework.
- Parameters:
other (any, optional) – Any other class object that contains common fields to inherit from. If values in
otherdiffer from default values, they will override the default values.
- pressure_melt_coefficient
Pressure melt coefficient (c_t) [K Pa^-1].
- Type:
float, default=7.5e-8
- sheet_conductivity
Sheet conductivity (k) [m^(7/4) kg^(-1/2)].
- Type:
floator ndarray, default=np.nan
- cavity_spacing
Cavity spacing (l_r) [m].
- Type:
float, default=2.0
- bump_height
Typical bump height (h_r) [m].
- Type:
floator ndarray, default=np.nan
- omega
Transition parameter (omega) [].
- Type:
float, default=1./2000.
- sheet_alpha
First sheet-flow exponent (alpha_s) [].
- Type:
float, default=5.0/4.0
- sheet_beta
Second sheet-flow exponent (beta_s) [].
- Type:
float, default=3.0/2.0
- rheology_B_base
Ice rheology factor B at base of ice (B) [Pa s^(-1/3)].
- Type:
floator ndarray, default=np.nan
- isincludesheetthickness
Add rho_w*g*h in effective pressure calculation? 1: yes, 0: no.
- Type:
int, default=0
- creep_open_flag
Allow cavities to open by creep when N<0? 1: yes, 0: no.
- Type:
int, default=1
- ischannels
Allow for channels? True or False.
- Type:
bool, default=False
- channel_conductivity
Channel conductivity (k_c) [m^(3/2) kg^(-1/2)].
- Type:
float, default=5.e-2
- channel_sheet_width
Channel sheet width [m].
- Type:
float, default=2.0
- channel_alpha
First channel-flow exponent (alpha_c) [].
- Type:
float, default=5.0/4.0
- channel_beta
Second channel-flow exponent (beta_c) [].
- Type:
float, default=3.0/2.0
- spcphi
Hydraulic potential Dirichlet constraints [Pa].
- Type:
floatornumpy.ndarray, default=np.nan
- moulin_input
Moulin input (Q_s) [m^3/s].
- Type:
floatornumpy.ndarray, default=np.nan
- neumannflux
Water flux applied along the model boundary [m^2/s].
- Type:
floatornumpy.ndarray, default=np.nan
- englacial_void_ratio
Englacial void ratio (e_v).
- Type:
float, default=1.e-5
- requested_outputs
Additional outputs requested.
- Type:
list, default=[‘default’]
- melt_flag
User specified basal melt? 0: no (default), 1: use md.basalforcings.groundedice_melting_rate.
- Type:
int, default=0
- istransition
Use standard [0, default] or transition model [1].
- Type:
int, default=0
Examples
>>> md.hydrology = pyissm.model.classes.hydrology.glads()
- check_consistency(md, solution, analyses)
Check consistency of the [hydrology.glads] parameters.
- Parameters:
md (
pyissm.model.Model) – The model object to check.solution (
str) – The solution name to check.analyses (list of
str) – List of analyses to check consistency for.
- Returns:
md – The model object with any consistency errors noted.
- Return type:
- marshall_class(fid, prefix, md=None)
Marshall [hydrology.glads] parameters to a binary file.
- Parameters:
fid (
file object) – The file object to write the binary data to.prefix (
str) – Prefix string used for data identification in the binary file.md (
pyissm.model.Model, optional) – ISSM model object needed in some cases.
- Return type:
None
- class pyissm.model.classes.hydrology.pism(other=None)
Bases:
manage_statePISM hydrology class for ISSM.
This class contains the default parameters for the PISM hydrology model in the ISSM framework.
- Parameters:
other (any, optional) – Any other class object that contains common fields to inherit from. If values in
otherdiffer from default values, they will override the default values.
- drainage_rate
Fixed drainage rate [mm/yr].
- Type:
numpy.ndarray, default=np.nan
- watercolumn_max
Maximum water column height [m], recommended default: 2 m.
- Type:
float, default=np.nan
- requested_outputs
List of requested output variables.
- Type:
list, default=[‘default’]
Examples
>>> md.hydrology = pyissm.model.classes.hydrology.pism()
- check_consistency(md, solution, analyses)
Check consistency of the [hydrology.pism] parameters.
- Parameters:
md (
pyissm.model.Model) – The model object to check.solution (
str) – The solution name to check.analyses (list of
str) – List of analyses to check consistency for.
- Returns:
md – The model object with any consistency errors noted.
- Return type:
- marshall_class(fid, prefix, md=None)
Marshall [hydrology.pism] parameters to a binary file.
- Parameters:
fid (
file object) – The file object to write the binary data to.prefix (
str) – Prefix string used for data identification in the binary file.md (
pyissm.model.Model, optional) – ISSM model object needed in some cases.
- Return type:
None
- class pyissm.model.classes.hydrology.shakti(other=None)
Bases:
manage_stateShakti hydrology class for ISSM.
This class contains the default parameters for the Shakti hydrology model in the ISSM framework.
- Parameters:
other (any, optional) – Any other class object that contains common fields to inherit from. If values in
otherdiffer from default values, they will override the default values.
- head
Subglacial hydrology water head [m].
- Type:
floatornumpy.ndarray, default=np.nan
- gap_height
Height of gap separating ice from bed [m].
- Type:
floatornumpy.ndarray, default=np.nan
- gap_height_min
Minimum allowed gap height [m].
- Type:
float, default=1e-3
- gap_height_max
Maximum allowed gap height [m].
- Type:
float, default=1.0
- bump_spacing
Characteristic bedrock bump spacing [m].
- Type:
floatornumpy.ndarray, default=np.nan
- bump_height
Characteristic bedrock bump height [m].
- Type:
floatornumpy.ndarray, default=np.nan
- englacial_input
Liquid water input from englacial to subglacial system [m/yr].
- Type:
floatornumpy.ndarray, default=np.nan
- moulin_input
Liquid water input from moulins (at the vertices) to subglacial system [m^3/s].
- Type:
floatornumpy.ndarray, default=np.nan
- reynolds
Reynolds number.
- Type:
floatornumpy.ndarray, default=np.nan
- spchead
Water head constraints (NaN means no constraint) [m].
- Type:
floatornumpy.ndarray, default=np.nan
- neumannflux
Water flux applied along the model boundary [m^2/s].
- Type:
floatornumpy.ndarray, default=np.nan
- relaxation
Under-relaxation coefficient for nonlinear iteration.
- Type:
float, default=1
- storage
Englacial storage coefficient (void ratio).
- Type:
floatornumpy.ndarray, default=np.nan
- requested_outputs
Additional outputs requested.
- Type:
list, default=[‘default’]
Examples
>>> md.hydrology = pyissm.model.classes.hydrology.shakti()
- check_consistency(md, solution, analyses)
Check consistency of the [hydrology.shakti] parameters.
- Parameters:
md (
pyissm.model.Model) – The model object to check.solution (
str) – The solution name to check.analyses (list of
str) – List of analyses to check consistency for.
- Returns:
md – The model object with any consistency errors noted.
- Return type:
- marshall_class(fid, prefix, md=None)
Marshall [hydrology.shakti] parameters to a binary file.
- Parameters:
fid (
file object) – The file object to write the binary data to.prefix (
str) – Prefix string used for data identification in the binary file.md (
pyissm.model.Model, optional) – ISSM model object needed in some cases.
- Return type:
None
- class pyissm.model.classes.hydrology.shreve(other=None)
Bases:
manage_stateShreve hydrology class for ISSM.
This class contains the default parameters for the Shreve hydrology model in the ISSM framework.
- Parameters:
other (any, optional) – Any other class object that contains common fields to inherit from. If values in
otherdiffer from default values, they will override the default values.
- spcwatercolumn
Water thickness constraints (NaN means no constraint) [m].
- Type:
numpy.ndarray, default=np.nan
- stabilization
Artificial diffusivity (default: 1). Can be more than 1 to increase diffusivity.
- Type:
int, default=1
- requested_outputs
Additional outputs requested.
- Type:
list, default=[‘default’]
Examples
>>> md.hydrology = pyissm.model.classes.hydrology.shreve()
- check_consistency(md, solution, analyses)
Check consistency of the [hydrology.shreve] parameters.
- Parameters:
md (
pyissm.model.Model) – The model object to check.solution (
str) – The solution name to check.analyses (list of
str) – List of analyses to check consistency for.
- Returns:
md – The model object with any consistency errors noted.
- Return type:
- marshall_class(fid, prefix, md=None)
Marshall [hydrology.shreve] parameters to a binary file.
- Parameters:
fid (
file object) – The file object to write the binary data to.prefix (
str) – Prefix string used for data identification in the binary file.md (
pyissm.model.Model, optional) – ISSM model object needed in some cases.
- Return type:
None
- class pyissm.model.classes.hydrology.tws(other=None)
Bases:
manage_stateTWS hydrology class for ISSM.
This class contains the default parameters for the TWS (two water sheet) hydrology model in the ISSM framework.
- Parameters:
other (any, optional) – Any other class object that contains common fields to inherit from. If values in
otherdiffer from default values, they will override the default values.
- spcwatercolumn
Water thickness constraints (NaN means no constraint) [m].
- Type:
numpy.ndarray, default=np.nan
- requested_outputs
Additional outputs requested.
- Type:
list, default=[‘default’]
Examples
>>> md.hydrology = pyissm.model.classes.hydrology.tws()
- check_consistency(md, solution, analyses)
Check consistency of the [hydrology.tws] parameters.
- Parameters:
md (
pyissm.model.Model) – The model object to check.solution (
str) – The solution name to check.analyses (list of
str) – List of analyses to check consistency for.
- Returns:
md – The model object with any consistency errors noted.
- Return type:
- marshall_class(fid, prefix, md=None)
Marshall [hydrology.tws] parameters to a binary file.
- Parameters:
fid (
file object) – The file object to write the binary data to.prefix (
str) – Prefix string used for data identification in the binary file.md (
pyissm.model.Model, optional) – ISSM model object needed in some cases.
- Return type:
None