Since the SPolynomial is a Function, the derivatives
can be obtained as well.
The parameter interface (see
FunctionParam class),
is used to provide an interface to the
Fitting classes.
This class is in general used implicitly by the SPolynomial
class only.
Makes a polynomial of the given order, with all coeficcients set to
zero.
Make this a copy of other (deep copy).
Destructor
Comparisons.
SPolynomials are equal if they are of the same order
Give name of function
Set the which'th coefficient to value.
Returns the dimension of function
Prerequisite
Etymology
A 1-dimensional Scaled Polynomial's parameters.
Synopsis
A SPolynomial is described by a set of coefficients;
its fundamental operation is evaluating itself at some "x".
The number of coefficients is the order of the polynomial plus one,
plus three, describing a height, center and width. These three parameters
are the first three, and have default values of 1, 0, 1.
Example
SPolynomial<Float> pf(3); // Third order polynomial - coeffs 0 by default
pf.setCoefficient(1, 1.0);
pf[5] = 2.0;
pf.setCoefficient(3, 3.0); // 3x^3 + 2x^2 + x
pf(2); // == 34
Template Type Argument Requirements (T)
Thrown Exceptions
To Do
Member Description
SPolynomialParam()
Constructs a zero'th order polynomial, with a coeficcient of 0.0.
explicit SPolynomialParam(uInt order)
SPolynomialParam(const SPolynomialParam<T> &other)
template <class W> SPolynomialParam(const SPolynomialParam<W> &other) : Function<T>(other)
SPolynomialParam<T> &operator=(const SPolynomialParam<T> &other)
~SPolynomialParam()
Bool operator==(const SPolynomialParam<T> &other) const
Bool operator!=(const SPolynomialParam<T> &other) const
virtual const String &name() const
uInt order() const
What is the order of the polynomial, i.e. maximum exponent of "x".
T coefficient(uInt which) const
What is the which'th coefficient of the polynomial. For an nth
degree polynomial, which varies between zero and n.
Vector<T> coefficients() const
Return all the coefficients as a vector.
void setCoefficient(uInt which, const T value)
void setCoefficients(const Vector<T> &coefficients)
Set all the coefficients at once, throw away all existing coefficients.
virtual uInt ndim() const