monarchs.physics.firn.firn_column.firn_column
- monarchs.physics.firn.firn_column.firn_column(cell, dt, dz, met_data, toggle_dict)
Perform the various processes applied to the firn each timestep where we don’t have exposed water at the surface.
The logic works as follows: Solve heat equation for firn
If surface temperature is above melting point of water (i,e melting takes place):
Determine the height change as a result of the melting
Regrid everything to take account for this deformation
Re-solve heat equation, now with fixed surface temperature
Calculate the amount of water added to the surface as a result of melt
Percolate that water down, taking into account any lids or lakes that may
have formed.
Otherwise: - Update cell temperature and continue.
- Parameters:
cell (numpy structured array) – Element of the model grid we are operating on.
dt (int) – Number of seconds in the current timestep [s]
dz (float) – Height of each vertical point in the cell. [m]
met_data (dict) – Dictionary containing the meteorological data for the current timestep. This contains the following keys:
- lw_infloat
Downwelling longwave radiation at the current timestep. [W m^-2]
- sw_infloat
Downwelling shortwave radiation at the current timestep. [W m^-2]
- air_tempfloat
Surface air temperature at the current timestep. [K]
- p_airfloat
Surface air pressure at the current timestep. [Pa]
- dew_point_temperaturefloat
Dewpoint temperature of the air at the surface at the current timestep. [K]
- windfloat
Wind speed at the surface at the current timestep. [m s^-1]
toggle_dict (dict) – Dictionary containing some switches that affect the running of the model.
- Return type:
None (amends cell inplace)