19 #ifndef _PSTEMPERATUREINDEX_H_
20 #define _PSTEMPERATUREINDEX_H_
24 #include "pism/coupler/SurfaceModel.hh"
25 #include "pism/coupler/surface/localMassBalance.hh"
41 TemperatureIndex(std::shared_ptr<const Grid>
g, std::shared_ptr<atmosphere::AtmosphereModel> input);
const Time & time() const
High-level PISM I/O class.
Combines the max. time step with the flag indicating if a restriction is active. Makes is possible to...
The interface of PISM's surface models.
std::shared_ptr< array::Scalar > m_accumulation
total accumulation during the last time step
virtual const array::Scalar & accumulation_impl() const
virtual void init_impl(const Geometry &geometry)
virtual const array::Scalar & runoff_impl() const
virtual void update_impl(const Geometry &geometry, double t, double dt)
virtual const array::Scalar & melt_impl() const
virtual const array::Scalar & mass_flux_impl() const
const array::Scalar & snow_depth() const
array::Scalar m_snow_depth
snow depth (reset once a year)
virtual const array::Scalar & temperature_impl() const
std::shared_ptr< array::Forcing > m_air_temp_sd
standard deviation of the daily variability of the air temperature
std::unique_ptr< FaustoGrevePDDObject > m_faustogreve
if not NULL then user wanted fausto PDD stuff
double m_next_balance_year_start
const array::Scalar & air_temp_sd() const
double compute_next_balance_year_start(double time)
virtual MaxTimestep max_timestep_impl(double t) const
virtual ~TemperatureIndex()=default
double m_base_pddStdDev
K; daily amount of randomness.
array::Scalar m_mass_flux
cached surface mass balance rate
virtual void define_model_state_impl(const File &output) const
The default (empty implementation).
std::shared_ptr< array::Scalar > m_runoff
total runoff during the last time step
array::Scalar m_firn_depth
firn depth
std::shared_ptr< array::Scalar > m_melt
total melt during the last time step
virtual void write_model_state_impl(const File &output) const
The default (empty implementation).
std::shared_ptr< array::Scalar > m_temperature
virtual DiagnosticList diagnostics_impl() const
TemperatureIndex(std::shared_ptr< const Grid > g, std::shared_ptr< atmosphere::AtmosphereModel > input)
std::unique_ptr< LocalMassBalance > m_mbscheme
mass balance scheme to use
const array::Scalar & firn_depth() const
LocalMassBalance::DegreeDayFactors m_base_ddf
holds degree-day factors in location-independent case
A class implementing a temperature-index (positive degree-day) scheme to compute melt and runoff,...
std::map< std::string, Diagnostic::Ptr > DiagnosticList
A struct which holds degree day factors.