MappingQ1< dim, spacedim >::InternalData Class Reference

Inheritance diagram for MappingQ1< dim, spacedim >::InternalData:

Inheritance graph
[legend]

List of all members.

Public Member Functions

 InternalData (const unsigned int n_shape_functions)
double shape (const unsigned int qpoint, const unsigned int shape_nr) const
doubleshape (const unsigned int qpoint, const unsigned int shape_nr)
Tensor< 1, dim > derivative (const unsigned int qpoint, const unsigned int shape_nr) const
Tensor< 1, dim > & derivative (const unsigned int qpoint, const unsigned int shape_nr)
Tensor< 2, dim > second_derivative (const unsigned int qpoint, const unsigned int shape_nr) const
Tensor< 2, dim > & second_derivative (const unsigned int qpoint, const unsigned int shape_nr)
virtual unsigned int memory_consumption () const

Public Attributes

std::vector< doubleshape_values
std::vector< Tensor< 1, dim > > shape_derivatives
std::vector< Tensor< 2, dim > > shape_second_derivatives
std::vector< Tensor
< 2, spacedim > > 
covariant
std::vector< Tensor
< 2, spacedim > > 
contravariant
std::vector< std::vector
< Tensor< 1, spacedim > > > 
unit_tangentials
std::vector< std::vector
< Tensor< 1, spacedim > > > 
aux
std::vector< Point< spacedim > > mapping_support_points
Triangulation< dim, spacedim >
::cell_iterator 
cell_of_current_support_points
bool is_mapping_q1_data
unsigned int n_shape_functions


Detailed Description

template<int dim, int spacedim = dim>
class MappingQ1< dim, spacedim >::InternalData

Storage for internal data of d-linear transformation.

Constructor & Destructor Documentation

template<int dim, int spacedim = dim>
MappingQ1< dim, spacedim >::InternalData::InternalData ( const unsigned int  n_shape_functions  ) 

Constructor. Pass the number of shape functions.

Reimplemented in MappingQ< dim, spacedim >::InternalData.


Member Function Documentation

template<int dim, int spacedim = dim>
double MappingQ1< dim, spacedim >::InternalData::shape ( const unsigned int  qpoint,
const unsigned int  shape_nr 
) const

Shape function at quadrature point. Shape functions are in tensor product order, so vertices must be reordered to obtain transformation.

template<int dim, int spacedim = dim>
double& MappingQ1< dim, spacedim >::InternalData::shape ( const unsigned int  qpoint,
const unsigned int  shape_nr 
)

Shape function at quadrature point. See above.

template<int dim, int spacedim = dim>
Tensor<1,dim> MappingQ1< dim, spacedim >::InternalData::derivative ( const unsigned int  qpoint,
const unsigned int  shape_nr 
) const

Gradient of shape function in quadrature point. See above.

template<int dim, int spacedim = dim>
Tensor<1,dim>& MappingQ1< dim, spacedim >::InternalData::derivative ( const unsigned int  qpoint,
const unsigned int  shape_nr 
)

Gradient of shape function in quadrature point. See above.

template<int dim, int spacedim = dim>
Tensor<2,dim> MappingQ1< dim, spacedim >::InternalData::second_derivative ( const unsigned int  qpoint,
const unsigned int  shape_nr 
) const

Second derivative of shape function in quadrature point. See above.

template<int dim, int spacedim = dim>
Tensor<2,dim>& MappingQ1< dim, spacedim >::InternalData::second_derivative ( const unsigned int  qpoint,
const unsigned int  shape_nr 
)

Second derivative of shape function in quadrature point. See above.

template<int dim, int spacedim = dim>
virtual unsigned int MappingQ1< dim, spacedim >::InternalData::memory_consumption (  )  const [virtual]

Return an estimate (in bytes) or the memory consumption of this object.

Reimplemented from Mapping< dim, spacedim >::InternalDataBase.

Reimplemented in MappingQ< dim, spacedim >::InternalData.


Member Data Documentation

template<int dim, int spacedim = dim>
std::vector<double> MappingQ1< dim, spacedim >::InternalData::shape_values

Values of shape functions. Access by function shape.

Computed once.

template<int dim, int spacedim = dim>
std::vector<Tensor<1,dim> > MappingQ1< dim, spacedim >::InternalData::shape_derivatives

Values of shape function derivatives. Access by function derivative.

Computed once.

template<int dim, int spacedim = dim>
std::vector<Tensor<2,dim> > MappingQ1< dim, spacedim >::InternalData::shape_second_derivatives

Values of shape function second derivatives. Access by function second_derivative.

Computed once.

template<int dim, int spacedim = dim>
std::vector<Tensor<2,spacedim> > MappingQ1< dim, spacedim >::InternalData::covariant

Tensors of covariant transformation at each of the quadrature points. The matrix stored is the inverse of the Jacobian matrix, which itself is stored in the contravariant field of this structure.

Computed on each cell.

template<int dim, int spacedim = dim>
std::vector<Tensor<2,spacedim> > MappingQ1< dim, spacedim >::InternalData::contravariant

Tensors of contravariant transformation at each of the quadrature points. The contravariant matrix is the Jacobian of the transformation, i.e. $J_{ij}=dx_i/d\hat x_j$.

Computed on each cell.

template<int dim, int spacedim = dim>
std::vector<std::vector<Tensor<1,spacedim> > > MappingQ1< dim, spacedim >::InternalData::unit_tangentials

Unit tangential vectors. Used for the computation of boundary forms and normal vectors.

Filled once.

template<int dim, int spacedim = dim>
std::vector<std::vector<Tensor<1,spacedim> > > MappingQ1< dim, spacedim >::InternalData::aux

Auxiliary vectors for internal use.

template<int dim, int spacedim = dim>
std::vector<Point<spacedim> > MappingQ1< dim, spacedim >::InternalData::mapping_support_points

Stores the support points of the mapping shape functions on the cell_of_current_support_points.

template<int dim, int spacedim = dim>
Triangulation<dim,spacedim>::cell_iterator MappingQ1< dim, spacedim >::InternalData::cell_of_current_support_points

Stores the cell of which the mapping_support_points are stored.

template<int dim, int spacedim = dim>
bool MappingQ1< dim, spacedim >::InternalData::is_mapping_q1_data

Default value of this flag is true. If *this is an object of a derived class, this flag is set to false.

template<int dim, int spacedim = dim>
unsigned int MappingQ1< dim, spacedim >::InternalData::n_shape_functions

Number of shape functions. If this is a Q1 mapping, then it is simply the number of vertices per cell. However, since also derived classes use this class (e.g. the Mapping_Q() class), the number of shape functions may also be different.


The documentation for this class was generated from the following file:

deal.II documentation generated on Sat Aug 15 16:52:06 2009 by doxygen 1.5.9