17#ifndef dealii_non_matching_mapping_info_h
18#define dealii_non_matching_mapping_info_h
43 template <
int dim,
int spacedim = dim>
69 const std::vector<Point<dim>> &
76 const ::internal::FEValuesImplementation::MappingRelatedData<dim,
135 template <
int dim,
int spacedim>
139 , update_flags(update_flags)
155 template <
int dim,
int spacedim>
162 std::vector<Point<dim>>(unit_points.begin(), unit_points.end());
163 compute_mapping_data_for_generic_points(cell, unit_points);
168 template <
int dim,
int spacedim>
169 const std::vector<Point<dim>> &
177 template <
int dim,
int spacedim>
178 const ::internal::FEValuesImplementation::MappingRelatedData<dim,
187 template <
int dim,
int spacedim>
196 template <
int dim,
int spacedim>
205 template <
int dim,
int spacedim>
214 mapping_q->fill_mapping_data_for_generic_points(cell,
216 update_flags_mapping,
223 mapping_cartesian->fill_mapping_data_for_generic_points(
224 cell, unit_points, update_flags_mapping, mapping_data);
233 std::vector<
Point<dim>>(unit_points.begin(), unit_points.end())),
234 update_flags_mapping);
236 mapping_data.initialize(unit_points.size(), update_flags_mapping);
238 for (
unsigned int q = 0; q < unit_points.size(); ++q)
239 mapping_data.jacobians[q] = fe_values.
jacobian(q);
241 for (
unsigned int q = 0; q < unit_points.size(); ++q)
244 for (
unsigned int q = 0; q < unit_points.size(); ++q)
const DerivativeForm< 1, dim, spacedim > & jacobian(const unsigned int quadrature_point) const
const Point< spacedim > & quadrature_point(const unsigned int q) const
const DerivativeForm< 1, spacedim, dim > & inverse_jacobian(const unsigned int quadrature_point) const
void reinit(const TriaIterator< DoFCellAccessor< dim, spacedim, level_dof_access > > &cell)
Abstract base class for mapping classes.
UpdateFlags get_update_flags() const
void compute_mapping_data_for_generic_points(const typename Triangulation< dim, spacedim >::cell_iterator &cell, const ArrayView< const Point< dim > > &unit_points)
::internal::FEValuesImplementation::MappingRelatedData< dim, spacedim > mapping_data
std::vector< Point< dim > > unit_points
const std::vector< Point< dim > > & get_unit_points() const
const UpdateFlags update_flags
const Mapping< dim, spacedim > & get_mapping() const
const SmartPointer< const Mapping< dim, spacedim > > mapping
MappingInfo(const Mapping< dim > &mapping, const UpdateFlags update_flags)
UpdateFlags update_flags_mapping
void reinit(const typename Triangulation< dim, spacedim >::cell_iterator &cell, const ArrayView< const Point< dim > > &unit_points)
const ::internal::FEValuesImplementation::MappingRelatedData< dim, spacedim > & get_mapping_data() const
#define DEAL_II_NAMESPACE_OPEN
#define DEAL_II_NAMESPACE_CLOSE
@ update_jacobians
Volume element.
@ update_inverse_jacobians
Volume element.
@ update_gradients
Shape function gradients.
@ update_quadrature_points
Transformed quadrature points.
@ update_default
No update.