oggm_edu.MassBalance

oggm_edu.MassBalance#

class oggm_edu.MassBalance(ela, gradient, breakpoints=None, max_mb=None, hemisphere=None, density=None)#

Oggm Edu mass balance, used to construct the oggm_edu.Glacier. The mass balance can be constructed with either a single mass balance gradient resulting in a linear mass balance, or with multiple gradients - resulting in a non-linear mass balance profile.

Attributes:
elaint or float

Altitude of the equilibrium line altitude (m).

gradint or float or list

Gradient of the mass balance profile. Single scalar if linear or multiple scalars if non-linear. Unit: mm/m/yr

orig_ela_hint or float

Original equilibrium line altitude of the mass balance profile. Unit: m.

temp_biasfloat

Current temperature bias applied to the mass balance (unit: °C)

__init__(ela, gradient, breakpoints=None, max_mb=None, hemisphere=None, density=None)#

Initialise the mass balance from the ELA and the gradient. Optionally pass breakpoints in the case of multiple gradients.

Parameters:
elaint or float

Equilibrium line altitude of the mass balance. Units: m.

gradientint or float or array_like(int or float)

Mass balance gradient. Define the altitude relation of the mass balance. If array like with int/float, a mass balance with multiple gradients will be initialised.

breakpointsarray_like(int or float) (Optional)

Specify the altitude breakpoints between mass balance gradients.

Methods

__init__(ela, gradient[, breakpoints, ...])

Initialise the mass balance from the ELA and the gradient.

add_random_climate(duration, ...)

Append a random climate to future of the mass balance of the glacier.

add_temp_bias(temp_bias, duration[, noise])

Add a gradual temperature bias to the mass balance of the glacier.

get_annual_mb(heights[, year])

Get the annual mass balance.

get_annual_specific_mass_balance(fls, year)

Get annual specific mass balance from multiple flowlines.

get_ela([year])

Get the equilibrium line altitude for a given year.

get_monthly_mb(heights[, year])

Calculate the monthly mass balance for the glacier.

get_specific_mb([heights, widths, fls, year])

Specific mass balance for a given glacier geometry.

is_year_valid(year)

Checks if a given date year be simulated by this model.

reset()

Reset the mass balance to initial state.

reset_state()

Reset any internal state of the model.

Attributes

ela

Altitude of the equilibrium line altitude (m).

gradient

Mass balance altitude gradient, mm/m.

temp_bias

Current temperature bias applied to the mass balance (unit: °C)

temp_bias_series

Dataframe of historical and possible future temperature biases of the glacier.