#include <ortho_poly.h>
Inheritance diagram for Ortho_poly:
Public Member Functions | |
virtual | ~Ortho_poly () |
Destructor. | |
void | operator= (const Ortho_poly &) |
Assignment to another Ortho_poly. | |
int | n () const |
returns N, i.e. the maximum degree of the polynomials | |
virtual double | weight (double x) const =0 |
Weight function ![]() | |
virtual double | operator() (int i, double x) const =0 |
Value of the polynomial ![]() | |
virtual const Grid & | gauss_nodes () const =0 |
Gauss nodes. | |
virtual double | gauss_weight (int i) const =0 |
Gauss weights. | |
virtual double | gauss_gamma (int i) const =0 |
Gamma factor ![]() | |
virtual const Grid & | gauss_lobatto_nodes () const =0 |
Gauss-Lobatto nodes. | |
virtual double | gauss_lobatto_weight (int i) const =0 |
Gauss-Lobatto weights. | |
virtual double | gauss_lobatto_gamma (int i) const =0 |
Gamma factor ![]() | |
void | coef_interpolant_Gauss (double(*f)(double), double *cf) const |
Coefficients of the interpolant polynomial through the Gauss nodes. | |
void | coef_interpolant_GL (double(*f)(double), double *cf) const |
Coefficients of the interpolant polynomial through the Gauss-Lobatto nodes. | |
virtual void | coef_projection (double(*f)(double), double *cf) const =0 |
Coefficients of the expansion over the basis polynomials of the orthogonal projection on the space of polynomials of maximum degree N. | |
double | series (const double *a, double x) const |
Value of some expansion over the polynomials: ![]() | |
Protected Member Functions | |
Ortho_poly (const Ortho_poly &) | |
Copy constructor. | |
Ortho_poly (int ni) | |
Constructor to be used only by derived classes (hence protected). | |
Protected Attributes | |
const int | nn |
N = maximum degree of the polynomials | |
const Grid * | p_gauss_nodes |
Pointer on the Gauss nodes. | |
double * | p_gauss_weights |
Pointer on the Gauss weights. | |
double * | p_gauss_gamma |
Pointer on the gamma factors (squares of the polynomials with respect to the discrete scalar product associated with the Gauss nodes). | |
const Grid * | p_gauss_lobatto_nodes |
Pointer on the Gauss-Lobatto nodes. | |
double * | p_gauss_lobatto_weights |
Pointer on the Gauss-Lobatto weights. | |
double * | p_gauss_lobatto_gamma |
Pointer on the gamma factors (square of the polynomials with respect to the discrete scalar product associated with the Gauss-Lobatto nodes). |
() Storage of polynomials of an orthogonal family up to a given degree N. The class
Ortho_poly
is abstract: it cannot be instanciated.
Definition at line 52 of file ortho_poly.h.
|
Copy constructor.
Definition at line 56 of file ortho_poly.C. References p_gauss_gamma, p_gauss_lobatto_gamma, p_gauss_lobatto_nodes, p_gauss_lobatto_weights, p_gauss_nodes, and p_gauss_weights. |
|
Constructor to be used only by derived classes (hence protected).
Definition at line 72 of file ortho_poly.C. References p_gauss_gamma, p_gauss_lobatto_gamma, p_gauss_lobatto_nodes, p_gauss_lobatto_weights, p_gauss_nodes, and p_gauss_weights. |
|
Destructor.
Definition at line 91 of file ortho_poly.C. References p_gauss_gamma, p_gauss_lobatto_gamma, p_gauss_lobatto_nodes, p_gauss_lobatto_weights, p_gauss_nodes, and p_gauss_weights. |
|
Coefficients of the interpolant polynomial through the Gauss nodes.
Definition at line 128 of file ortho_poly.C. References gauss_nodes(), gauss_weight(), and nn. |
|
Coefficients of the interpolant polynomial through the Gauss-Lobatto nodes.
Definition at line 156 of file ortho_poly.C. References gauss_lobatto_nodes(), gauss_lobatto_weight(), and nn. |
|
Coefficients of the expansion over the basis polynomials of the orthogonal projection on the space of polynomials of maximum degree N.
Implemented in Chebyshev_poly, and Legendre_poly. |
|
Gamma factor
Implemented in Chebyshev_poly, and Legendre_poly. |
|
Gamma factor
Implemented in Chebyshev_poly, and Legendre_poly. |
|
Gauss-Lobatto nodes.
Implemented in Chebyshev_poly, and Legendre_poly. |
|
Gauss-Lobatto weights.
Implemented in Chebyshev_poly, and Legendre_poly. |
|
Gauss nodes.
Implemented in Chebyshev_poly, and Legendre_poly. |
|
Gauss weights.
Implemented in Chebyshev_poly, and Legendre_poly. |
|
returns N, i.e. the maximum degree of the polynomials
Definition at line 117 of file ortho_poly.C. References nn. |
|
Value of the polynomial
Implemented in Chebyshev_poly, and Legendre_poly. |
|
Assignment to another Ortho_poly.
Definition at line 106 of file ortho_poly.C. |
|
Value of some expansion over the polynomials:
Definition at line 184 of file ortho_poly.C. References nn. |
|
Weight function
Implemented in Chebyshev_poly, and Legendre_poly. |
|
N = maximum degree of the polynomials
Definition at line 57 of file ortho_poly.h. |
|
Pointer on the gamma factors (squares of the polynomials with respect to the discrete scalar product associated with the Gauss nodes).
Definition at line 71 of file ortho_poly.h. |
|
Pointer on the gamma factors (square of the polynomials with respect to the discrete scalar product associated with the Gauss-Lobatto nodes).
Definition at line 85 of file ortho_poly.h. |
|
Pointer on the Gauss-Lobatto nodes.
Definition at line 75 of file ortho_poly.h. |
|
Pointer on the Gauss-Lobatto weights.
Definition at line 79 of file ortho_poly.h. |
|
Pointer on the Gauss nodes.
Definition at line 61 of file ortho_poly.h. |
|
Pointer on the Gauss weights.
Definition at line 65 of file ortho_poly.h. |