#include <fe_adini.h>
Public Member Functions | |
FE_Adini () | |
virtual std::string | get_name () const |
Protected Member Functions | |
virtual FiniteElement< 2 > * | clone () const |
virtual void | fill_fe_values (const Mapping< 2 > &mapping, const Triangulation< 2 >::cell_iterator &cell, const Quadrature< 2 > &quadrature, Mapping< 2 >::InternalDataBase &mapping_internal, Mapping< 2 >::InternalDataBase &fe_internal, FEValuesData< 2 > &data) const |
virtual void | fill_fe_face_values (const Mapping< 2 > &mapping, const Triangulation< 2 >::cell_iterator &cell, const unsigned int face_no, const Quadrature< 1 > &quadrature, Mapping< 2 >::InternalDataBase &mapping_internal, Mapping< 2 >::InternalDataBase &fe_internal, FEValuesData< 2 > &data) const |
virtual void | fill_fe_subface_values (const Mapping< 2 > &mapping, const Triangulation< 2 >::cell_iterator &cell, const unsigned int face_no, const unsigned int sub_no, const Quadrature< 1 > &quadrature, Mapping< 2 >::InternalDataBase &mapping_internal, Mapping< 2 >::InternalDataBase &fe_internal, FEValuesData< 2 > &data) const |
virtual UpdateFlags | update_each (const UpdateFlags flags) const |
Private Member Functions | |
std::vector < unsigned int > | get_dpo_vector () |
void | initialize_support_points () |
Therefore a polynomial space of dim = 12 is needed. The associated space is implemented in AdiniPoly.
This yiels discontinuous, but not discontinuous differentiable global functions.
One has to be careful using this element. On rectangular elements no problems occur. The class MyMappingQ1 provides a transformation onto parallelograms.
The numbering of the degrees of freedom is as follows. The numbering begins at the first corner with the degree of freedom associated with the value, then degrees of freedom for and
follow.
FE_Adini::FE_Adini | ( | ) |
Constructor
std::string FE_Adini::get_name | ( | ) | const [virtual] |
Return a string that uniquely identifies a finite element. This class returns FE_Adini
.
Implements FiniteElement< dim >.
FiniteElement< 2 > * FE_Adini::clone | ( | ) | const [protected, virtual] |
clone
function instead of a copy constructor.
This function is needed by the constructors of FESystem
.
Implements FiniteElement< dim >.
void FE_Adini::fill_fe_values | ( | const Mapping< 2 > & | mapping, | |
const Triangulation< 2 >::cell_iterator & | cell, | |||
const Quadrature< 2 > & | quadrature, | |||
Mapping< 2 >::InternalDataBase & | mapping_internal, | |||
Mapping< 2 >::InternalDataBase & | fe_internal, | |||
FEValuesData< 2 > & | data | |||
) | const [protected, virtual] |
virtual void FE_Adini::fill_fe_face_values | ( | const Mapping< 2 > & | mapping, | |
const Triangulation< 2 >::cell_iterator & | cell, | |||
const unsigned int | face_no, | |||
const Quadrature< 1 > & | quadrature, | |||
Mapping< 2 >::InternalDataBase & | mapping_internal, | |||
Mapping< 2 >::InternalDataBase & | fe_internal, | |||
FEValuesData< 2 > & | data | |||
) | const [protected, virtual] |
virtual void FE_Adini::fill_fe_subface_values | ( | const Mapping< 2 > & | mapping, | |
const Triangulation< 2 >::cell_iterator & | cell, | |||
const unsigned int | face_no, | |||
const unsigned int | sub_no, | |||
const Quadrature< 1 > & | quadrature, | |||
Mapping< 2 >::InternalDataBase & | mapping_internal, | |||
Mapping< 2 >::InternalDataBase & | fe_internal, | |||
FEValuesData< 2 > & | data | |||
) | const [protected, virtual] |
UpdateFlags FE_Adini::update_each | ( | const UpdateFlags | flags | ) | const [protected, virtual] |
Determine the values that need to be computed on the unit cell to be able to compute all values required by flags
.
For the purpuse of this function, refer to the documentation in FiniteElement.
Reimplemented from FE_Poly< AdiniPoly, 2 >.
Only for internal use. Its full name is get_dofs_per_object_vector
function and it creates the dofs_per_object
vector that is needed within the constructor to be passed to the constructor of FiniteElementData
.
void FE_Adini::initialize_support_points | ( | ) | [private] |
Initialize the unit_support_points
field of the FiniteElement class. Called from the constructor.