19 #ifndef PISM_SCALARFORCING_H
20 #define PISM_SCALARFORCING_H
25 #include <gsl/gsl_spline.h>
43 const std::string &option_prefix,
44 const std::string &variable_name,
45 const std::string &units,
46 const std::string &glaciological_units,
47 const std::string &long_name);
50 const std::string &filename,
51 const std::string &variable_name,
52 const std::string &units,
53 const std::string &glaciological_units,
54 const std::string &long_name,
59 double value(
double t)
const;
61 double average(
double t,
double dt)
const;
69 const std::string &filename,
70 const std::string &variable_name,
71 const std::string &units,
72 const std::string &glaciological_units,
73 const std::string &long_name,
76 double integral(
double a,
double b)
const;
ScalarForcing & operator=(const ScalarForcing &)
ScalarForcing(const ScalarForcing &other)
double average(double t, double dt) const
double value(double t) const
std::vector< double > m_times
std::vector< double > m_values
ScalarForcing(const Context &ctx, const std::string &option_prefix, const std::string &variable_name, const std::string &units, const std::string &glaciological_units, const std::string &long_name)
void initialize(const Context &ctx, const std::string &filename, const std::string &variable_name, const std::string &units, const std::string &glaciological_units, const std::string &long_name, bool periodic)
double integral(double a, double b) const