Flow123d  release_2.2.0-23-g01927c6
Public Member Functions | Static Public Attributes | List of all members
FE_RT0< dim, spacedim > Class Template Reference

Raviart-Thomas element of order 0. More...

#include <fe_rt.hh>

Inheritance diagram for FE_RT0< dim, spacedim >:
Inheritance graph
[legend]
Collaboration diagram for FE_RT0< dim, spacedim >:
Collaboration graph
[legend]

Public Member Functions

 FE_RT0 ()
 Constructor. More...
 
double basis_value (const unsigned int i, const arma::vec::fixed< dim > &p) const
 The scalar variant of basis_vector must be implemented but may not be used. More...
 
arma::vec::fixed< dim > basis_grad (const unsigned int i, const arma::vec::fixed< dim > &p) const
 The scalar variant of basis_grad_vector must be implemented but may not be used. More...
 
arma::vec::fixed< dim > basis_vector (const unsigned int i, const arma::vec::fixed< dim > &p) const
 Returns the ith basis function evaluated at the point p. More...
 
arma::mat::fixed< dim, dim > basis_grad_vector (const unsigned int i, const arma::vec::fixed< dim > &p) const
 Returns the gradient of the ith basis function at the point p. More...
 
void compute_node_matrix ()
 Computes the conversion matrix from internal basis to shape functions. More...
 
FEInternalDatainitialize (const Quadrature< dim > &q, UpdateFlags flags)
 Calculates the data on the reference cell. More...
 
UpdateFlags update_each (UpdateFlags flags)
 Decides which additional quantities have to be computed for each cell. More...
 
virtual void fill_fe_values (const Quadrature< dim > &q, FEInternalData &data, FEValuesData< dim, spacedim > &fv_data)
 Computes the shape function values and gradients on the actual cell and fills the FEValues structure. More...
 
virtual ~FE_RT0 ()
 Destructor. More...
 
- Public Member Functions inherited from FiniteElement< dim, spacedim >
 FiniteElement ()
 Constructor. More...
 
void init ()
 Clears all internal structures. More...
 
const unsigned int n_dofs () const
 Returns the number of degrees of freedom needed by the finite element. More...
 
const unsigned int n_object_dofs (unsigned int object_dim, DofMultiplicity multiplicity)
 Returns the number of single dofs/dof pairs/triples/sextuples that lie on a single geometric entity of the dimension object_dim. More...
 
virtual const unsigned int polynomial_order () const
 Returns the maximum degree of space of polynomials contained in the finite element space. More...
 
const bool is_scalar () const
 Indicates whether the finite element function space is scalar or vectorial. More...
 
const std::vector< arma::vec::fixed< dim > > & get_generalized_support_points ()
 Returns either the generalized support points (if they are defined) or the unit support points. More...
 
virtual ~FiniteElement ()
 Destructor. More...
 

Static Public Attributes

static const unsigned int n_raw_functions = dim+1
 Number of raw basis functions. More...
 

Additional Inherited Members

- Protected Attributes inherited from FiniteElement< dim, spacedim >
unsigned int number_of_dofs
 Total number of degrees of freedom at one finite element. More...
 
unsigned int number_of_single_dofs [dim+1]
 Number of single dofs at one geometrical entity of the given dimension (point, line, triangle, tetrahedron). More...
 
unsigned int number_of_pairs [dim+1]
 Number of pairs of dofs at one geometrical entity of the given dimension (applicable to lines and triangles). More...
 
unsigned int number_of_triples [dim+1]
 Number of triples of dofs associated to one triangle. More...
 
unsigned int number_of_sextuples [dim+1]
 Number of sextuples of dofs associated to one triangle. More...
 
unsigned int order
 Polynomial order - to be possibly used in hp methods. More...
 
bool is_scalar_fe
 Indicator of scalar versus vectorial finite element. More...
 
arma::mat node_matrix
 Matrix that determines the coefficients of the raw basis functions from the values at the support points. More...
 
std::vector< arma::vec::fixed< dim > > unit_support_points
 Support points for Lagrangean finite elements. More...
 
std::vector< arma::vec::fixed< dim > > generalized_support_points
 Support points for non-Lagrangean finite elements. More...
 

Detailed Description

template<unsigned int dim, unsigned int spacedim>
class FE_RT0< dim, spacedim >

Raviart-Thomas element of order 0.

The lowest order Raviart-Thomas finite element with linear basis functions and continuous normal components across element sides.

Definition at line 33 of file fe_rt.hh.

Constructor & Destructor Documentation

template<unsigned int dim, unsigned int spacedim>
FE_RT0< dim, spacedim >::FE_RT0 ( )

Constructor.

Definition at line 132 of file fe_rt.hh.

template<unsigned int dim, unsigned int spacedim>
virtual FE_RT0< dim, spacedim >::~FE_RT0 ( )
inlinevirtual

Destructor.

Definition at line 118 of file fe_rt.hh.

Member Function Documentation

template<unsigned int dim, unsigned int spacedim>
arma::vec::fixed< dim > FE_RT0< dim, spacedim >::basis_grad ( const unsigned int  i,
const arma::vec::fixed< dim > &  p 
) const
virtual

The scalar variant of basis_grad_vector must be implemented but may not be used.

Implements FiniteElement< dim, spacedim >.

Definition at line 166 of file fe_rt.hh.

template<unsigned int dim, unsigned int spacedim>
arma::mat::fixed< dim, dim > FE_RT0< dim, spacedim >::basis_grad_vector ( const unsigned int  i,
const arma::vec::fixed< dim > &  p 
) const
virtual

Returns the gradient of the ith basis function at the point p.

Parameters
iNumber of the basis function.
pPoint of evaluation.

Implements FiniteElement< dim, spacedim >.

Definition at line 186 of file fe_rt.hh.

Here is the caller graph for this function:

template<unsigned int dim, unsigned int spacedim>
double FE_RT0< dim, spacedim >::basis_value ( const unsigned int  i,
const arma::vec::fixed< dim > &  p 
) const
virtual

The scalar variant of basis_vector must be implemented but may not be used.

Implements FiniteElement< dim, spacedim >.

Definition at line 158 of file fe_rt.hh.

template<unsigned int dim, unsigned int spacedim>
arma::vec::fixed< dim > FE_RT0< dim, spacedim >::basis_vector ( const unsigned int  i,
const arma::vec::fixed< dim > &  p 
) const
virtual

Returns the ith basis function evaluated at the point p.

Parameters
iNumber of the basis function.
pPoint of evaluation.

Implements FiniteElement< dim, spacedim >.

Definition at line 173 of file fe_rt.hh.

Here is the caller graph for this function:

template<unsigned int dim, unsigned int spacedim>
void FE_RT0< dim, spacedim >::compute_node_matrix ( )
virtual

Computes the conversion matrix from internal basis to shape functions.

Initializes the node_matrix for computing the coefficients of the raw basis functions from values at support points. Since Raviart-Thomas element is not Lagrangean, the method has to be reimplemented.

Reimplemented from FiniteElement< dim, spacedim >.

Definition at line 194 of file fe_rt.hh.

Here is the caller graph for this function:

template<unsigned int dim, unsigned int spacedim>
void FE_RT0< dim, spacedim >::fill_fe_values ( const Quadrature< dim > &  q,
FEInternalData data,
FEValuesData< dim, spacedim > &  fv_data 
)
inlinevirtual

Computes the shape function values and gradients on the actual cell and fills the FEValues structure.

Parameters
qQuadrature.
dataThe precomputed finite element data on the reference cell.
fv_dataThe data to be computed.

Reimplemented from FiniteElement< dim, spacedim >.

Definition at line 298 of file fe_rt.hh.

template<unsigned int dim, unsigned int spacedim>
FEInternalData * FE_RT0< dim, spacedim >::initialize ( const Quadrature< dim > &  q,
UpdateFlags  flags 
)
virtual

Calculates the data on the reference cell.

Parameters
qQuadrature.
flagsFlags that indicate what quantities should be calculated.

Reimplemented from FiniteElement< dim, spacedim >.

Definition at line 232 of file fe_rt.hh.

template<unsigned int dim, unsigned int spacedim>
UpdateFlags FE_RT0< dim, spacedim >::update_each ( UpdateFlags  flags)
inlinevirtual

Decides which additional quantities have to be computed for each cell.

Reimplemented from FiniteElement< dim, spacedim >.

Definition at line 284 of file fe_rt.hh.

Member Data Documentation

template<unsigned int dim, unsigned int spacedim>
const unsigned int FE_RT0< dim, spacedim >::n_raw_functions = dim+1
static

Number of raw basis functions.

Definition at line 48 of file fe_rt.hh.


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