Public Member Functions | |
LagrangeEquidistant (const unsigned int n, const unsigned int support_point) | |
Static Public Member Functions | |
static std::vector< Polynomial < double > > | generate_complete_basis (const unsigned int degree) |
Static Private Member Functions | |
static std::vector< double > | compute_coefficients (const unsigned int n, const unsigned int support_point) |
Lagrange polynomials with equidistant interpolation points in [0,1]. The polynomial of degree n
has got n+1
interpolation points. The interpolation points are sorted in ascending order. This order gives an index to each interpolation point. A Lagrangian polynomial equals to 1 at its `support point', and 0 at all other interpolation points. For example, if the degree is 3, and the support point is 1, then the polynomial represented by this object is cubic and its value is 1 at the point x=1/3
, and zero at the point x=0
, x=2/3
, and x=1
. All the polynomials have polynomial degree equal to degree
, but together they span the entire space of polynomials of degree less than or equal degree
.
The Lagrange polynomials are implemented up to degree 10.
Polynomials::LagrangeEquidistant::LagrangeEquidistant | ( | const unsigned int | n, | |
const unsigned int | support_point | |||
) |
Constructor. Takes the degree n
of the Lagrangian polynom and the index support_point
of the support point. Fills the coefficients
of the base class Polynomial.
static std::vector<Polynomial<double> > Polynomials::LagrangeEquidistant::generate_complete_basis | ( | const unsigned int | degree | ) | [static] |
Return a vector of polynomial objects of degree degree
, which then spans the full space of polynomials up to the given degree. The polynomials are generated by calling the constructor of this class with the same degree but support point running from zero to degree
. This function may be used to initialize the TensorProductPolynomials and PolynomialSpace classes.
static std::vector<double> Polynomials::LagrangeEquidistant::compute_coefficients | ( | const unsigned int | n, | |
const unsigned int | support_point | |||
) | [static, private] |
Computes the coefficients
of the base class Polynomial. This function is static
to allow to be called in the constructor.