[ VIGRA Homepage | Function Index | Class Index | Namespaces | File List | Main Page ]

| Polynomial< T > Class Template Reference Polynomials and root determination |

`#include <vigra/polynomial.hxx>`

Inheritance diagram for Polynomial< T >:

List of all members.

## Public Types

typedef BaseType::Complex | Complex
typedef T const * | const_iterator
typedef T * | iterator
typedef BaseType::Real | Real
typedef T | value_type

## Public Member Functions

Polynomial< T > | getDeflated (Real r) const
Polynomial< Complex > | getDeflated (Complex const &r) const
Polynomial< T > | getDerivative (unsigned int n=1) const
Polynomial & | operator= (Polynomial const &p)
| Polynomial (unsigned int order=0, double epsilon=1.0e-14)
| Polynomial (Polynomial const &p)
template<class ITER >
| Polynomial (ITER i, unsigned int order)
template<class ITER >
| Polynomial (ITER i, unsigned int order, double epsilon)

## Detailed Description

### template<class T>
class vigra::Polynomial< T >

Polynomial with internally managed array.

Most interesting functionality is inherited from vigra::PolynomialView.

See also:
  vigra::PolynomialView, vigra::StaticPolynomial, polynomialRoots()

#include <vigra/polynomial.hxx>
Namespace: vigra

## Member Typedef Documentation

typedef BaseType::Real Real

Scalar type associated with `RealPromote`

Reimplemented from PolynomialView< T >.

typedef BaseType::Complex Complex

Complex type associated with `RealPromote`

Reimplemented from PolynomialView< T >.

typedef T value_type

Coefficient type of the polynomial

Reimplemented from PolynomialView< T >.

typedef T* iterator

Iterator for the coefficient sequence

Reimplemented from PolynomialView< T >.

typedef T const* const_iterator

Const iterator for the coefficient sequence

Reimplemented from PolynomialView< T >.

## Constructor & Destructor Documentation

Polynomial | ( | unsigned int | order = `0`,
|  | double | epsilon = `1.0e-14`
| ) |  |

Construct polynomial with given `order` and all coefficients set to zero (they can be set later using `operator[]` or the iterators). `epsilon` (default: 1.0e-14) determines the precision of subsequent algorithms (especially root finding) performed on the polynomial.

Polynomial | ( | Polynomial< T > const & | p | ) |

Copy constructor

Polynomial | ( | ITER | i,
|  | unsigned int | order
| ) |  |

Construct polynomial by copying the given coefficient sequence.

Polynomial | ( | ITER | i,
|  | unsigned int | order,
|  | double | epsilon
| ) |  |

Construct polynomial by copying the given coefficient sequence. Set `epsilon` (default: 1.0e-14) as the precision of subsequent algorithms (especially root finding) performed on the polynomial.

## Member Function Documentation

Polynomial& operator= | ( | Polynomial< T > const & | p | ) |

Assigment

Polynomial<T> getDerivative | ( | unsigned int | n = `1` | ) | const

Construct new polynomial representing the derivative of this polynomial.

Polynomial<T> getDeflated | ( | Real | r | ) | const

Construct new polynomial representing this polynomial after deflation at the real root `r`.

Polynomial<Complex> getDeflated | ( | Complex const & | r | ) | const

Construct new polynomial representing this polynomial after deflation at the complex root `r`. The resulting polynomial will have complex coefficients, even if this polynomial had real ones.

The documentation for this class was generated from the following file:

- vigra/polynomial.hxx

© Ullrich Köthe (ullrich.koethe@iwr.uni-heidelberg.de) Heidelberg Collaboratory for Image Processing, University of Heidelberg, Germany | html generated using doxygen and Python vigra 1.9.0 (Tue Nov 6 2012)