Reference documentation for deal.II version Git 2e98021fd4 2020-10-20 17:25:20 -0400
\(\newcommand{\dealvcentcolon}{\mathrel{\mathop{:}}}\) \(\newcommand{\dealcoloneq}{\dealvcentcolon\mathrel{\mkern-1.2mu}=}\) \(\newcommand{\jump}[1]{\left[\!\left[ #1 \right]\!\right]}\) \(\newcommand{\average}[1]{\left\{\!\left\{ #1 \right\}\!\right\}}\)
Public Member Functions | Public Attributes | List of all members
MappingQ< dim, spacedim >::InternalData Class Reference

#include <deal.II/fe/mapping_q.h>

Inheritance diagram for MappingQ< dim, spacedim >::InternalData:
[legend]

Public Member Functions

 InternalData ()
 
virtual std::size_t memory_consumption () const override
 

Public Attributes

bool use_mapping_q1_on_current_cell
 
std::unique_ptr< typename MappingQGeneric< dim, spacedim >::InternalDatamapping_q1_data
 
std::unique_ptr< typename MappingQGeneric< dim, spacedim >::InternalDatamapping_qp_data
 
UpdateFlags update_each
 

Detailed Description

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

Storage for internal data of this mapping. See Mapping::InternalDataBase for an extensive description.

This includes data that is computed once when the object is created (in get_data()) as well as data the class wants to store from between the call to fill_fe_values(), fill_fe_face_values(), or fill_fe_subface_values() until possible later calls from the finite element to functions such as transform(). The latter class of member variables are marked as 'mutable'.

The current class uses essentially the same fields for storage as the MappingQGeneric class. Consequently, it inherits from MappingQGeneric::InternalData, rather than from Mapping::InternalDataBase. The principal difference to MappingQGeneric::InternalData is that MappingQ switches between \(Q_1\) and \(Q_p\) mappings depending on the cell we are on, so the internal data object needs to also store a pointer to an InternalData object that pertains to a \(Q_1\) mapping.

Definition at line 227 of file mapping_q.h.

Constructor & Destructor Documentation

◆ InternalData()

template<int dim, int spacedim>
MappingQ< dim, spacedim >::InternalData::InternalData ( )

Constructor.

Definition at line 41 of file mapping_q.cc.

Member Function Documentation

◆ memory_consumption()

template<int dim, int spacedim>
std::size_t MappingQ< dim, spacedim >::InternalData::memory_consumption ( ) const
overridevirtual

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

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

Definition at line 49 of file mapping_q.cc.

Member Data Documentation

◆ use_mapping_q1_on_current_cell

template<int dim, int spacedim = dim>
bool MappingQ< dim, spacedim >::InternalData::use_mapping_q1_on_current_cell
mutable

Flag that is set by the fill_fe_[[sub]face]_values function.

If this flag is true we are on an interior cell and the mapping_q1_data is used.

Definition at line 248 of file mapping_q.h.

◆ mapping_q1_data

template<int dim, int spacedim = dim>
std::unique_ptr<typename MappingQGeneric<dim, spacedim>::InternalData> MappingQ< dim, spacedim >::InternalData::mapping_q1_data

A pointer to a structure to store the information for the pure \(Q_1\) mapping that is, by default, used on all interior cells.

Definition at line 255 of file mapping_q.h.

◆ mapping_qp_data

template<int dim, int spacedim = dim>
std::unique_ptr<typename MappingQGeneric<dim, spacedim>::InternalData> MappingQ< dim, spacedim >::InternalData::mapping_qp_data

A pointer to a structure to store the information for the full \(Q_p\) mapping that is, by default, used on all boundary cells.

Definition at line 262 of file mapping_q.h.

◆ update_each

template<int dim, int spacedim = dim>
UpdateFlags Mapping< dim, spacedim >::InternalDataBase::update_each
inherited

A set of update flags specifying the kind of information that an implementation of the Mapping interface needs to compute on each cell or face, i.e., in Mapping::fill_fe_values() and friends.

This set of flags is stored here by implementations of Mapping::get_data(), Mapping::get_face_data(), or Mapping::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 Mapping::get_data() – or an implementation of that interface – need not be stored here because it has already been taken care of.)

Definition at line 642 of file mapping.h.


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