40 template<
unsigned int dim,
unsigned int spacedim>
47 jacobians.resize(size);
50 determinants.resize(size);
54 JxW_values.resize(size);
57 inverse_jacobians.resize(size);
63 shape_values.resize(size);
67 shape_vectors.resize(size);
75 shape_gradients.resize(size);
79 shape_grad_vectors.resize(size);
87 normal_vectors.resize(size);
94 template<
unsigned int dim,
unsigned int spacedim>
96 : mapping(NULL), quadrature(NULL), fe(NULL), mapping_data(NULL), fe_data(NULL)
102 template<
unsigned int dim,
unsigned int spacedim>
110 template<
unsigned int dim,
unsigned int spacedim>
127 template<
unsigned int dim,
unsigned int spacedim>
140 template<
unsigned int dim,
unsigned int spacedim>
147 this->
allocate(_mapping, _quadrature, _fe, _flags);
156 template<
unsigned int dim,
unsigned int spacedim>
160 this->
data.present_cell = &cell;
163 this->
mapping->fill_fe_values(cell,
181 template<
unsigned int dim,
unsigned int spacedim>
190 this->
allocate(_mapping, *q, _fe, _flags);
192 for (
unsigned int sid = 0; sid < RefElement<dim>::n_sides; sid++)
194 for (
unsigned int pid = 0; pid < RefElement<dim>::n_side_permutations; pid++)
206 template<
unsigned int dim,
unsigned int spacedim>
209 for (
unsigned int sid=0; sid<RefElement<dim>::n_sides; sid++)
211 for (
unsigned int pid=0; pid<RefElement<dim>::n_side_permutations; pid++)
224 template<
unsigned int dim,
unsigned int spacedim>
228 this->
data.present_cell = &cell;
230 unsigned int pid = cell->permutation_idx_[sid];
233 this->
mapping->fill_fe_side_values(cell,
UpdateFlags
Enum type UpdateFlags indicates which quantities are to be recomputed on each finite element cell...
Transformed quadrature weight for cell sides.
Determinant of the Jacobian.
MappingInternalData * mapping_data
Precomputed mapping data.
UpdateFlags update_each(UpdateFlags flags)
Determine quantities to be recomputed on each cell.
FEValuesBase()
Default constructor.
Class FEValues calculates finite element data on the actual cells such as shape function values...
FEValuesData< dim, spacedim > data
Data computed by the mapping and finite element.
FEInternalData * fe_data
Precomputed finite element data.
Base class for quadrature rules on simplices in arbitrary dimensions.
virtual ~FESideValues()
Destructor.
Transformed quadrature points.
Abstract class for the mapping between reference and actual cell.
FiniteElement< dim, spacedim > * fe
The used finite element.
Basic definitions of numerical quadrature rules.
const Quadrature< dim-1 > * sub_quadrature
Quadrature for the integration on the element sides.
Shape function gradients.
MappingInternalData * side_mapping_data[RefElement< dim >::n_sides][RefElement< dim >::n_side_permutations]
Quadrature< dim > side_quadrature[RefElement< dim >::n_sides][RefElement< dim >::n_side_permutations]
Quadrature< dim > * quadrature
The quadrature rule used to calculate integrals.
Class Mapping calculates data related to the mapping of the reference cell to the actual cell...
void allocate(unsigned int size, UpdateFlags flags, bool is_scalar=true)
Resize the data arrays.
FEInternalData * side_fe_data[RefElement< dim >::n_sides][RefElement< dim >::n_side_permutations]
FEValues(Mapping< dim, spacedim > &_mapping, Quadrature< dim > &_quadrature, FiniteElement< dim, spacedim > &_fe, UpdateFlags _flags)
Constructor.
void reinit(ElementFullIter &cell, unsigned int sid)
Update cell-dependent data (gradients, Jacobians etc.)
Mapping< dim, spacedim > * mapping
The mapping from the reference cell to the actual cell.
const unsigned int size() const
Returns number of quadrature points.
void reinit(ElementFullIter &cell)
Update cell-dependent data (gradients, Jacobians etc.)
Calculates finite element data on the actual cell.
#define OLD_ASSERT_EQUAL(a, b)
Abstract class for description of finite elements.
FESideValues(Mapping< dim, spacedim > &_mapping, Quadrature< dim-1 > &_sub_quadrature, FiniteElement< dim, spacedim > &_fe, UpdateFlags flags)
Constructor.
Abstract class for the description of a general finite element on a reference simplex in dim dimensio...
Base class for FEValues and FESideValues.
void allocate(Mapping< dim, spacedim > &_mapping, Quadrature< dim > &_quadrature, FiniteElement< dim, spacedim > &_fe, UpdateFlags flags)
Allocates space for computed data.
Transformed quadrature weights.
Calculates finite element data on a side.