Reference documentation for deal.II version 9.2.0
|
#include <deal.II/base/polynomial.h>
Public Member Functions | |
LagrangeEquidistant (const unsigned int n, const unsigned int support_point) | |
Public Member Functions inherited from Polynomials::Polynomial< double > | |
Polynomial (const std::vector< double > &coefficients) | |
Polynomial (const unsigned int n) | |
Polynomial (const std::vector< Point< 1 >> &lagrange_support_points, const unsigned int evaluation_point) | |
Polynomial () | |
double | value (const double x) const |
void | value (const double x, std::vector< double > &values) const |
void | value (const double x, const unsigned int n_derivatives, double *values) const |
unsigned int | degree () const |
void | scale (const double factor) |
void | shift (const number2 offset) |
Polynomial< double > | derivative () const |
Polynomial< double > | primitive () const |
Polynomial< double > & | operator*= (const double s) |
Polynomial< double > & | operator*= (const Polynomial< double > &p) |
Polynomial< double > & | operator+= (const Polynomial< double > &p) |
Polynomial< double > & | operator-= (const Polynomial< double > &p) |
bool | operator== (const Polynomial< double > &p) const |
void | print (std::ostream &out) const |
void | serialize (Archive &ar, const unsigned int version) |
virtual std::size_t | memory_consumption () const |
Public Member Functions inherited from Subscriptor | |
Subscriptor () | |
Subscriptor (const Subscriptor &) | |
Subscriptor (Subscriptor &&) noexcept | |
virtual | ~Subscriptor () |
Subscriptor & | operator= (const Subscriptor &) |
Subscriptor & | operator= (Subscriptor &&) noexcept |
void | subscribe (std::atomic< bool > *const validity, const std::string &identifier="") const |
void | unsubscribe (std::atomic< bool > *const validity, const std::string &identifier="") const |
unsigned int | n_subscriptions () const |
template<typename StreamType > | |
void | list_subscribers (StreamType &stream) const |
void | list_subscribers () const |
template<class Archive > | |
void | serialize (Archive &ar, const unsigned int version) |
Static Public Member Functions | |
static std::vector< Polynomial< double > > | generate_complete_basis (const unsigned int degree) |
Static Public Member Functions inherited from Subscriptor | |
static ::ExceptionBase & | ExcInUse (int arg1, std::string arg2, std::string arg3) |
static ::ExceptionBase & | ExcNoSubscriber (std::string arg1, std::string arg2) |
Static Private Member Functions | |
static void | compute_coefficients (const unsigned int n, const unsigned int support_point, std::vector< double > &a) |
Additional Inherited Members | |
Protected Member Functions inherited from Polynomials::Polynomial< double > | |
void | transform_into_standard_form () |
Static Protected Member Functions inherited from Polynomials::Polynomial< double > | |
static void | scale (std::vector< double > &coefficients, const double factor) |
static void | shift (std::vector< double > &coefficients, const number2 shift) |
static void | multiply (std::vector< double > &coefficients, const double factor) |
Protected Attributes inherited from Polynomials::Polynomial< double > | |
std::vector< double > | coefficients |
bool | in_lagrange_product_form |
std::vector< double > | lagrange_support_points |
double | lagrange_weight |
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.
Definition at line 343 of file polynomial.h.
Polynomials::LagrangeEquidistant::LagrangeEquidistant | ( | const unsigned int | n, |
const unsigned int | support_point | ||
) |
Constructor. Takes the degree n
of the Lagrangian polynomial and the index support_point
of the support point. Fills the coefficients
of the base class Polynomial.
Definition at line 729 of file polynomial.cc.
|
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.
Definition at line 811 of file polynomial.cc.
|
staticprivate |
Compute the coefficients
of the base class Polynomial. This function is static
to allow to be called in the constructor.
Definition at line 753 of file polynomial.cc.