|
DGtal 2.0.0
|
Aim: This class implements Lagrange basis functions and Lagrange interpolation. More...
#include <DGtal/math/LagrangeInterpolation.h>
Public Types | |
| typedef LagrangeInterpolation< TEuclideanRing > | Self |
| typedef TEuclideanRing | Ring |
| typedef DGtal::MPolynomial< 1, Ring > | Polynomial |
| The monovariate polynomial type. | |
| typedef std::size_t | Size |
Public Member Functions | |
| BOOST_CONCEPT_ASSERT ((concepts::CEuclideanRing< Ring >)) | |
| ~LagrangeInterpolation ()=default | |
| LagrangeInterpolation () | |
| LagrangeInterpolation (const std::vector< Ring > &xvalues) | |
| LagrangeInterpolation (const LagrangeInterpolation &other)=default | |
| LagrangeInterpolation (LagrangeInterpolation &&other)=default | |
| LagrangeInterpolation & | operator= (const LagrangeInterpolation &other)=default |
| LagrangeInterpolation & | operator= (LagrangeInterpolation &&other)=default |
| Size | size () const |
| Size | degree () const |
| Ring | denominator () const |
| void | init (const std::vector< Ring > &xvalues) |
| Polynomial | polynomial (const std::vector< Ring > &yvalues) |
| Polynomial | basis (Size i) const |
| void | selfDisplay (std::ostream &that_stream) const |
| bool | OK () const |
Protected Attributes | |
| std::vector< Ring > | myX |
| The vector of X-values (abscissa) | |
| Ring | myDeterminant |
| The determinant of the Vandermonde matrix corresponding to X-values. | |
| std::vector< Polynomial > | myLagrangeBasis |
| The Lagrange polynomial basis corresponding to X-values. | |
Aim: This class implements Lagrange basis functions and Lagrange interpolation.
Description of class 'LagrangeInterpolation'
| TEuclideanRing | any model of CEuclideanRing like int, double, etc. |
Definition at line 62 of file LagrangeInterpolation.h.
| typedef DGtal::MPolynomial< 1, Ring > DGtal::LagrangeInterpolation< TEuclideanRing >::Polynomial |
The monovariate polynomial type.
Definition at line 72 of file LagrangeInterpolation.h.
| typedef TEuclideanRing DGtal::LagrangeInterpolation< TEuclideanRing >::Ring |
Definition at line 68 of file LagrangeInterpolation.h.
| typedef LagrangeInterpolation< TEuclideanRing > DGtal::LagrangeInterpolation< TEuclideanRing >::Self |
Definition at line 67 of file LagrangeInterpolation.h.
| typedef std::size_t DGtal::LagrangeInterpolation< TEuclideanRing >::Size |
Definition at line 73 of file LagrangeInterpolation.h.
|
default |
Destructor.
|
inline |
Constructor. The object is invalid.
Definition at line 86 of file LagrangeInterpolation.h.
|
inline |
Constructs the Lagrange interpolation object with its x-values
| xvalues | the vector of X-values, corresponding to the abscissa where the interpolation will take place. |
Definition at line 94 of file LagrangeInterpolation.h.
|
default |
Copy constructor.
| other | the object to clone. |
|
default |
Move constructor.
| other | the object to clone. |
|
inline |
| i | any value between 0 included and size() excluded. |
Definition at line 199 of file LagrangeInterpolation.h.
Referenced by DGtal::LagrangeInterpolation< Integer >::selfDisplay().
| DGtal::LagrangeInterpolation< TEuclideanRing >::BOOST_CONCEPT_ASSERT | ( | (concepts::CEuclideanRing< Ring >) | ) |
|
inline |
Definition at line 132 of file LagrangeInterpolation.h.
|
inline |
Definition at line 138 of file LagrangeInterpolation.h.
|
inline |
Initializes the Lagrange interpolation object with its x-values, and computes the corresponding Lagrange Basis.
| xvalues | the vector of X-values, corresponding to the abscissa where the interpolation will take place. |
Definition at line 148 of file LagrangeInterpolation.h.
Referenced by DGtal::LagrangeInterpolation< Integer >::LagrangeInterpolation().
|
inline |
Checks the validity/consistency of the object.
Definition at line 224 of file LagrangeInterpolation.h.
|
default |
Assignment.
| other | the object to copy. |
|
default |
Move assignment.
| other | the object to move. |
|
inline |
| [in] | yvalues | the y-values corresponding to the current x-values, in the same order. |
Definition at line 182 of file LagrangeInterpolation.h.
|
inline |
Writes/Displays the object on an output stream.
| that_stream | the output stream where the object is written. |
Definition at line 212 of file LagrangeInterpolation.h.
Referenced by DGtal::operator<<().
|
inline |
Definition at line 126 of file LagrangeInterpolation.h.
Referenced by DGtal::LagrangeInterpolation< Integer >::basis(), DGtal::LagrangeInterpolation< Integer >::degree(), DGtal::LagrangeInterpolation< Integer >::init(), DGtal::LagrangeInterpolation< Integer >::polynomial(), and DGtal::LagrangeInterpolation< Integer >::selfDisplay().
|
protected |
The determinant of the Vandermonde matrix corresponding to X-values.
Definition at line 235 of file LagrangeInterpolation.h.
|
protected |
The Lagrange polynomial basis corresponding to X-values.
Definition at line 237 of file LagrangeInterpolation.h.
|
protected |
The vector of X-values (abscissa)
Definition at line 233 of file LagrangeInterpolation.h.