PISM, A Parallel Ice Sheet Model
stable v2.1-1-g6902d5502 committed by Ed Bueler on 2023-12-20 08:38:27 -0800
|
An alternative PDD implementation which simulates a random process to get the number of PDDs. More...
#include <localMassBalance.hh>
Classes | |
struct | Impl |
Public Types | |
enum | Kind { NOT_REPEATABLE = 0 , REPEATABLE = 1 } |
Public Member Functions | |
PDDrandMassBalance (Config::ConstPtr config, units::System::Ptr system, Kind kind) | |
virtual | ~PDDrandMassBalance () |
virtual unsigned int | get_timeseries_length (double dt) |
virtual void | get_PDDs (double dt_series, const std::vector< double > &S, const std::vector< double > &T, std::vector< double > &PDDs) |
Public Member Functions inherited from pism::surface::PDDMassBalance | |
PDDMassBalance (Config::ConstPtr config, units::System::Ptr system) | |
virtual | ~PDDMassBalance () |
void | get_snow_accumulation (const std::vector< double > &T, std::vector< double > &precip_rate) |
Extract snow accumulation from mixed (snow and rain) precipitation using the temperature time-series. More... | |
Changes | step (const DegreeDayFactors &ddf, double PDDs, double ice_thickness, double firn_depth, double snow_depth, double accumulation) |
Compute the surface mass balance at a location from the number of positive degree days and the accumulation amount in a time interval. More... | |
Public Member Functions inherited from pism::surface::LocalMassBalance | |
LocalMassBalance (Config::ConstPtr config, units::System::Ptr system) | |
virtual | ~LocalMassBalance ()=default |
std::string | method () const |
Protected Attributes | |
Impl * | m_impl |
Protected Attributes inherited from pism::surface::PDDMassBalance | |
bool | precip_as_snow |
interpret all the precipitation as snow (no rain) More... | |
bool | refreeze_ice_melt |
refreeze melted ice More... | |
double | Tmin |
the temperature below which all precipitation is snow More... | |
double | Tmax |
the temperature above which all precipitation is rain More... | |
double | pdd_threshold_temp |
threshold temperature for the PDD computation More... | |
Protected Attributes inherited from pism::surface::LocalMassBalance | |
std::string | m_method |
const Config::ConstPtr | m_config |
const units::System::Ptr | m_unit_system |
const double | m_seconds_per_day |
An alternative PDD implementation which simulates a random process to get the number of PDDs.
Uses a GSL random number generator. Significantly slower because new random numbers are generated for each grid point.
The way the number of positive degree-days are used to produce a surface mass balance is identical to the base class PDDMassBalance.
Definition at line 179 of file localMassBalance.hh.