Continuous1DFunction

class Continuous1DFunction : public OpenMM::TabulatedFunction

This is a TabulatedFunction that computes a continuous one dimensional function.

Public Functions

Continuous1DFunction(const std::vector<double> &values, double min, double max, bool periodic = false)

Create a Continuous1DFunction f(x) based on a set of tabulated values.

Parameters
  • values – the tabulated values of the function f(x) at uniformly spaced values of x between min and max. A natural cubic spline is used to interpolate between the tabulated values. The function is assumed to be zero for x < min or x > max.

  • min – the value of x corresponding to the first element of values

  • max – the value of x corresponding to the last element of values

  • periodic – whether the interpolated function is periodic

void getFunctionParameters(std::vector<double> &values, double &min, double &max) const

Get the parameters for the tabulated function.

Parameters
  • values[out] the tabulated values of the function f(x) at uniformly spaced values of x between min and max. A natural cubic spline is used to interpolate between the tabulated values. The function is assumed to be zero for x < min or x > max.

  • min[out] the value of x corresponding to the first element of values

  • max[out] the value of x corresponding to the last element of values

void setFunctionParameters(const std::vector<double> &values, double min, double max)

Set the parameters for the tabulated function.

Parameters
  • values – the tabulated values of the function f(x) at uniformly spaced values of x between min and max. A natural cubic spline is used to interpolate between the tabulated values. The function is assumed to be zero for x < min or x > max.

  • min – the value of x corresponding to the first element of values

  • max – the value of x corresponding to the last element of values

virtual Continuous1DFunction *Copy() const

Create a deep copy of the tabulated function.

Deprecated:

This will be removed in a future release.