Feel++  0.92.0
Feel::dyna::Jacobi< T > Class Template Reference

1D Jacobi polynomial More...

#include <jacobi.hpp>

List of all members.

Public Types

Typedefs
typedef T value_type
typedef Jacobi< T > self_type

Public Member Functions

Constructors, destructor
 Jacobi (uint16_type N, value_type a=value_type(0.0), value_type b=value_type(0.0))
 Jacobi (Jacobi const &p)
 ~Jacobi ()
Operator overloads
self_typeoperator= (self_type const &p)
value_type operator() (value_type const &x) const
Accessors
uint16_type degree () const
Mutators
void setDegree (uint16_type N)
Methods
value_type value (value_type const &x) const
value_type derivate (value_type const &x) const

Detailed Description

template<typename T = double>
class Feel::dyna::Jacobi< T >

1D Jacobi polynomial

(excerpt from Karniadakis/Sherwin Appendix A) Jacobi polynomials $ P^{\alpha,beta}_n(x)$ are a family of polynomial to the singular Sturm-Liouville problem. A significant feature of these polynomials is that they are orthogonal in the interval $[-1,1]$ with respect to the function $(1-x)^\alpha(1+x)^\beta (\alpha,\beta > -1)$

Several functions related to the one-dimensional jacobi polynomials: Evaluation, evaluation of derivatives, plus computation of the roots via Newton's method.

Author:
Christophe Prud'homme
See also:
Karniadakis and Sherwin "Spectral/hp element methods for CFD"

Constructor & Destructor Documentation

template<typename T = double>
Feel::dyna::Jacobi< T >::Jacobi ( uint16_type  N,
value_type  a = value_type( 0.0 ),
value_type  b = value_type( 0.0 ) 
) [inline]

default values for a and b give the special case of Legendre polynomials


Member Function Documentation

template<typename T >
Jacobi< T >::value_type Feel::dyna::Jacobi< T >::operator() ( value_type const &  x) const

Evaluates the nth jacobi polynomial with weight parameters a,b at a point x. Recurrence relations implemented from the pseudocode given in Karniadakis and Sherwin, Appendix B

a and b are defaulted to 0 and the Jacobi polynomial is then the Legendre polynomial

Parameters:
xpoint for polynomial evaluation
Returns:
the value of the jacobi polynomial at x

Referenced by Feel::dyna::Jacobi< T >::value().

template<typename T = double>
value_type Feel::dyna::Jacobi< T >::value ( value_type const &  x) const [inline]

Evaluates the nth jacobi polynomial with weight parameters a,b at a point x. Recurrence relations implemented from the pseudocode given in Karniadakis and Sherwin, Appendix B

a and b are defaulted to 0 and the Jacobi polynomial is then the Legendre polynomial

Parameters:
xpoint for polynomial evaluation
Returns:
the value of the jacobi polynomial at x

References Feel::dyna::Jacobi< T >::operator()().