57 #include <type_traits> 65 template<
int PolySize>
69 template<
int PolySize>
81 template<
int PolySize>
84 public VectorSpace<Polynomial<PolySize>, scalar, PolySize>
86 static_assert(PolySize > 0,
"Size must be positive (non-zero)");
110 explicit Polynomial(
const scalar coeffs[PolySize]);
136 scalar
value(
const scalar
x)
const;
142 scalar
integral(
const scalar x1,
const scalar x2)
const;
146 intPolyType
integral(
const scalar intConstant = 0.0)
const;
154 friend Ostream& operator<< <PolySize>
Polynomial< PolySize+1 > intPolyType
bool logActive() const
Return true if the log term is active.
Polynomial< PolySize > polyType
An Istream is an abstract base class for all input systems (streams, files, token lists etc)...
scalar integral(const scalar x1, const scalar x2) const
Return integral between two values.
Polynomial()
Construct null, with all coefficients = 0.0.
A class for handling words, derived from string.
scalar value(const scalar x) const
Return polynomial value.
An Ostream is an abstract base class for all output systems (streams, files, token lists...
word name(const complex &)
Return a string representation of a complex.
Polynomial templated on size (order):
scalar logCoeff() const
Return the log coefficient.
polyType integralMinus1(const scalar intConstant=0.0) const
Return integral coefficients when lowest order is -1.
scalar derivative(const scalar x) const
Return derivative of the polynomial at the given x.