Reference documentation for deal.II version 9.3.3
|
#include <deal.II/matrix_free/mapping_data_on_the_fly.h>
Public Member Functions | |
MappingDataOnTheFly (const Mapping< dim > &mapping, const Quadrature< 1 > &quadrature, const UpdateFlags update_flags) | |
MappingDataOnTheFly (const Quadrature< 1 > &quadrature, const UpdateFlags update_flags) | |
void | reinit (typename ::Triangulation< dim >::cell_iterator cell) |
bool | is_initialized () const |
typename::Triangulation< dim >::cell_iterator | get_cell () const |
const ::FEValues< dim > & | get_fe_values () const |
const MappingInfoStorage< dim, dim, Number, VectorizedArrayType > & | get_data_storage () const |
const Quadrature< 1 > & | get_quadrature () const |
Private Attributes | |
typename::Triangulation< dim >::cell_iterator | present_cell |
FE_Nothing< dim > | fe_dummy |
::FEValues< dim > | fe_values |
const Quadrature< 1 > | quadrature_1d |
MappingInfoStorage< dim, dim, Number, VectorizedArrayType > | mapping_info_storage |
This class provides evaluated mapping information using standard deal.II information in a form that FEEvaluation and friends can use for vectorized access. Since no vectorization over cells is available with the DoFHandler/Triangulation cell iterators, the interface to FEEvaluation's vectorization model is to use VectorizedArray::n_array_element
copies of the same element. This interface is thus primarily useful for evaluating several operators on the same cell, e.g., when assembling cell matrices.
As opposed to the Mapping classes in deal.II, this class does not actually provide a boundary description that can be used to evaluate the geometry, but it rather provides the evaluated geometry from a given deal.II mapping (as passed to the constructor of this class) in a form accessible to FEEvaluation.
Definition at line 60 of file mapping_data_on_the_fly.h.
|
inline |
Constructor, similar to FEValues. Since this class only evaluates the geometry, no finite element has to be specified and the simplest element, FE_Nothing, is used internally for the underlying FEValues object.
Definition at line 163 of file mapping_data_on_the_fly.h.
|
inline |
Constructor. This constructor is equivalent to the other one except that it makes the object use a \(Q_1\) mapping (i.e., an object of type MappingQGeneric(1)) implicitly.
Definition at line 200 of file mapping_data_on_the_fly.h.
|
inline |
Initialize with the given cell iterator.
Definition at line 212 of file mapping_data_on_the_fly.h.
|
inline |
Return whether reinit() has been called at least once, i.e., a cell has been set.
Definition at line 251 of file mapping_data_on_the_fly.h.
|
inline |
Return a triangulation iterator to the current cell.
Definition at line 262 of file mapping_data_on_the_fly.h.
|
inline |
Return a reference to the underlying FEValues object that evaluates certain quantities (only mapping-related ones like Jacobians or mapped quadrature points are accessible, as no finite element data is actually used).
Definition at line 271 of file mapping_data_on_the_fly.h.
|
inline |
Return a reference to the underlying storage field of type MappingInfoStorage of the same format as the data fields in MappingInfo. This ensures compatibility with the precomputed data fields in the MappingInfo class.
Definition at line 280 of file mapping_data_on_the_fly.h.
|
inline |
Return a reference to 1D quadrature underlying this object.
Definition at line 290 of file mapping_data_on_the_fly.h.
|
private |
A cell iterator in case we generate the data on the fly to be able to check if we need to re-generate the information stored in this class.
Definition at line 133 of file mapping_data_on_the_fly.h.
|
private |
Dummy finite element object necessary for initializing the FEValues object.
Definition at line 139 of file mapping_data_on_the_fly.h.
|
private |
An underlying FEValues object that performs the (scalar) evaluation.
Definition at line 144 of file mapping_data_on_the_fly.h.
|
private |
Get 1D quadrature formula to be used for reinitializing shape info.
Definition at line 149 of file mapping_data_on_the_fly.h.
|
private |
The storage part created for a single cell and held in analogy to MappingInfo.
Definition at line 156 of file mapping_data_on_the_fly.h.