[ VIGRA Homepage | Class Index | Function Index | File Index | Main Page ]
![]() |
PolynomialView Class Template Reference | ![]() |
---|
#include "vigra/polynomial.hxx"
Inheritance diagram for PolynomialView:
Public Types | |
typedef T | value_type |
typedef NumericTraits< T >::RealPromote | RealPromote |
typedef NumericTraits< RealPromote >::ValueType | Real |
typedef NumericTraits< RealPromote >::ComplexPromote | Complex |
typedef T * | iterator |
typedef T const * | const_iterator |
Public Methods | |
PolynomialView (T *coeffs, unsigned int order, double epsilon=1.0e-14) | |
T & | operator[] (unsigned int i) |
Access the coefficient of x^i. | |
T const & | operator[] (unsigned int i) const |
Access the coefficient of x^i. | |
template<class V> PromoteTraits< T, V >::Promote | operator() (V v) const |
void | differentiate (unsigned int n=1) |
void | deflate (T const &r, unsigned int multiplicity=1) |
void | forwardDeflate (T const &v) |
void | forwardBackwardDeflate (T v) |
void | backwardDeflate (T v) |
void | deflateConjugatePair (Complex const &v) |
void | minimizeOrder (double epsilon=0.0) |
void | normalize () |
iterator | begin () |
iterator | end () |
const_iterator | begin () const |
const_iterator | end () const |
unsigned int | size () const |
unsigned int | order () const |
double | epsilon () const |
void | setEpsilon (double eps) |
Detailed Description |
The coefficient type T
can be either a scalar or complex (compatible to std::complex
) type.
|
Complex type associated with Reimplemented in Polynomial, and StaticPolynomial. |
|
Const iterator for the coefficient sequence Reimplemented in Polynomial, and StaticPolynomial. |
|
Iterator for the coefficient sequence Reimplemented in Polynomial, and StaticPolynomial. |
|
Scalar type associated with Reimplemented in Polynomial, and StaticPolynomial. |
|
Promote type of |
|
Coefficient type of the polynomial Reimplemented in Polynomial, and StaticPolynomial. |
|
Construct from a coefficient array of given
The externally managed array must have length
coeffs[0] + x * coeffs[1] + x * x * coeffs[2] + ...
The coefficients are not copied, we only store a pointer to the array. |
|
Backward-deflate the polynomial at the root
The behavior of this function is undefined if |
|
Get const_iterator for the coefficient sequence. |
|
Get iterator for the coefficient sequence. |
|
Deflate the polynomial at the root
The behavior of this function is undefined if |
|
Deflate the polynomial with the complex conjugate roots The behavior of this function is undefined if these are not roots. |
|
Differentiate the polynomial |
|
Get end const_iterator for the coefficient sequence. |
|
Get end iterator for the coefficient sequence. |
|
Get requested precision for polynomial algorithms (especially root finding). |
|
Forward/backward eflate the polynomial at the root
The behavior of this function is undefined if |
|
Forward-deflate the polynomial at the root
The behavior of this function is undefined if |
|
Adjust the polynomial's order if the highest coefficients are near zero. The order is reduced as long as the absolute value does not exceed the given epsilon. |
|
Normalize the polynomial, i.e. dived by the highest coefficient. |
|
Evaluate the polynomial at the point
Multiplication must be defined between the types |
|
Get order of the polynomial. |
|
Set requested precision for polynomial algorithms (especially root finding). |
|
Get length of the coefficient sequence ( |
© Ullrich Köthe (koethe@informatik.uni-hamburg.de) |
html generated using doxygen and Python
|