AdiniPoly Class Reference

#include <adinipoly.h>

List of all members.

Public Member Functions

 AdiniPoly ()
void compute (const Point< 2 > &unit_point, std::vector< double > &values, std::vector< Tensor< 1, 2 > > &grads, std::vector< Tensor< 2, 2 > > &grad_grads) const
double compute_value (const unsigned int i, const Point< 2 > &p) const
Tensor< 1, 2 > compute_grad (const unsigned int i, const Point< 2 > &p) const
Tensor< 2, 2 > compute_grad_grad (const unsigned int i, const Point< 2 > &p) const
Tensor< 2, 2 > compute_grad_grad_2 (const unsigned int i, const Point< 2 > &p) const

Private Attributes

Table< 2, doublecoef
Table< 2, doubledx
Table< 2, doubledy
Table< 2, doubledxx
Table< 2, doubledyy
Table< 2, doubledxy


Detailed Description

Polynomial space $P(T) = P_3(T) \oplus \lin \left\{x_1x_2^3,x_1^3x_2\right\}.$ for the FE_Adini element.

Author:
Bärbel Janssen, 2007

Constructor & Destructor Documentation

AdiniPoly::AdiniPoly (  ) 

Constructor for the polynomials of the described space


Member Function Documentation

void AdiniPoly::compute ( const Point< 2 > &  unit_point,
std::vector< double > &  values,
std::vector< Tensor< 1, 2 > > &  grads,
std::vector< Tensor< 2, 2 > > &  grad_grads 
) const

Computes the value and the first and second derivatives of each polynomial at unit_point.

The size of the vectors must either be equal 0 or equal n(). In the first case, the function will not compute these values, i.e. you indicate what you want to have computed by resizing those vectors which you want filled.

If you need values or derivatives of all polynomials then use this function, rather than using any of the compute_value(), compute_grad() or compute_grad_grad() functions, see below, in a loop over all polynomials.

double AdiniPoly::compute_value ( const unsigned int  i,
const Point< 2 > &  p 
) const

Computes the value of the ith polynomial at unit_point.

Consider using compute() instead.

Tensor< 1, 2 > AdiniPoly::compute_grad ( const unsigned int  i,
const Point< 2 > &  p 
) const

Computes the gradient of the ith polynomial at unit_point.

Consider using compute() instead.

Tensor< 2, 2 > AdiniPoly::compute_grad_grad ( const unsigned int  i,
const Point< 2 > &  p 
) const

Computes the second derivative (grad_grad) of the ith polynomial at unit_point.

Consider using compute() instead.

Tensor< 2, 2 > AdiniPoly::compute_grad_grad_2 ( const unsigned int  i,
const Point< 2 > &  p 
) const


Member Data Documentation

Table<2, double> AdiniPoly::coef [private]

Store the coefficients of the polynominals in the order $1,x,y,x^2,y^2,xy,x^3,y^3,xy^2,x^2y,x^3y,xy^3$

Table<2, double> AdiniPoly::dx [private]

Table<2, double> AdiniPoly::dy [private]

Table<2, double> AdiniPoly::dxx [private]

Table<2, double> AdiniPoly::dyy [private]

Table<2, double> AdiniPoly::dxy [private]


The documentation for this class was generated from the following files:
Generated on Thu Oct 9 14:52:45 2008 for Additional Finite Elements for deal.II by  doxygen 1.5.3