deal.II version GIT relicensing-2167-g9622207b8f 2024-11-21 12:40:00+00:00
|
#include <deal.II/fe/fe_enriched.h>
Classes | |
struct | EnrichmentValues |
Public Member Functions | |
InternalData (std::unique_ptr< typename FESystem< dim, spacedim >::InternalData > fesystem_data) | |
FiniteElement< dim, spacedim >::InternalDataBase & | get_fe_data (const unsigned int base_no) const |
internal::FEValuesImplementation::FiniteElementRelatedData< dim, spacedim > & | get_fe_output_object (const unsigned int base_no) const |
virtual std::size_t | memory_consumption () const |
Public Attributes | |
std::unique_ptr< typename FESystem< dim, spacedim >::InternalData > | fesystem_data |
std::vector< std::vector< EnrichmentValues > > | enrichment |
UpdateFlags | update_each |
A class to hold internal data needed for evaluation of this FE at quadrature points.
Definition at line 446 of file fe_enriched.h.
FE_Enriched< dim, spacedim >::InternalData::InternalData | ( | std::unique_ptr< typename FESystem< dim, spacedim >::InternalData > | fesystem_data | ) |
Constructor. Is used inside setup_data to wrap FESystem's internal data object. The former is called from get_data, get_subface_data and get_face_data which FE_Enriched has to implement.
Since FESystem::get_data(), FESystem::get_face_data() and FESystem::get_subface_data() just create an object and return a pointer to it (i.e. they don't retain ownership), we store the cast result in a std::unique_ptr to indicate that InternalData owns the object.
Definition at line 1054 of file fe_enriched.cc.
FiniteElement< dim, spacedim >::InternalDataBase & FE_Enriched< dim, spacedim >::InternalData::get_fe_data | ( | const unsigned int | base_no | ) | const |
Give read-access to the pointer to a InternalData
of the
base element of FESystem's data. base_no
th
Definition at line 1062 of file fe_enriched.cc.
internal::FEValuesImplementation::FiniteElementRelatedData< dim, spacedim > & FE_Enriched< dim, spacedim >::InternalData::get_fe_output_object | ( | const unsigned int | base_no | ) | const |
Give read-access to the pointer to an object into which the base_no
th base element will write its output when calling FiniteElement::fill_fe_values() and similar functions.
Definition at line 1071 of file fe_enriched.cc.
|
virtualinherited |
Return an estimate (in bytes) for the memory consumption of this object.
std::unique_ptr<typename FESystem<dim, spacedim>::InternalData> FE_Enriched< dim, spacedim >::InternalData::fesystem_data |
Aggregate FESystem's internal data. It is used every time we call FESystem's fill_fe_values() and alike.
Definition at line 494 of file fe_enriched.h.
|
mutable |
For each FE used in enrichment (base number i
) and each enrichment function (base multiplicity j
), enrichment_values[i][j]
will be used to store possibly requested values, gradients and hessians of enrichment function j
.
The variable is made mutable as InternalData's provided to fill_fe_values and alike are const.
Definition at line 511 of file fe_enriched.h.
|
inherited |
A set of update flags specifying the kind of information that an implementation of the FiniteElement interface needs to compute on each cell or face, i.e., in FiniteElement::fill_fe_values() and friends.
This set of flags is stored here by implementations of FiniteElement::get_data(), FiniteElement::get_face_data(), or FiniteElement::get_subface_data(), and is that subset of the update flags passed to those functions that require re-computation on every cell. (The subset of the flags corresponding to information that can be computed once and for all already at the time of the call to FiniteElement::get_data() – or an implementation of that interface – need not be stored here because it has already been taken care of.)