|
Reference documentation for deal.II version 9.2.0
|
\(\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\}}\)
Go to the documentation of this file.
17 #ifndef dealii_matrix_free_mapping_info_h
18 #define dealii_matrix_free_mapping_info_h
43 namespace MatrixFreeFunctions
113 template <
int structdim,
116 typename VectorizedArrayType>
121 "Type of Number and of VectorizedArrayType do not match.");
243 spacedim *(spacedim + 1) / 2,
293 template <
typename StreamType>
315 template <
int dim,
typename Number,
typename VectorizedArrayType>
328 const ::Triangulation<dim> & tria,
329 const std::vector<std::pair<unsigned int, unsigned int>> &cells,
330 const FaceInfo<VectorizedArrayType::size()> & faces,
331 const std::vector<unsigned int> & active_fe_index,
347 const ::Triangulation<dim> & tria,
348 const std::vector<std::pair<unsigned int, unsigned int>> &cells,
349 const FaceInfo<VectorizedArrayType::size()> & faces,
350 const std::vector<unsigned int> &active_fe_index,
375 template <
typename StreamType>
423 std::vector<MappingInfoStorage<dim, dim, Number, VectorizedArrayType>>
467 const ::Triangulation<dim> & tria,
468 const std::vector<std::pair<unsigned int, unsigned int>> &cells,
478 const ::Triangulation<dim> & tria,
479 const std::vector<std::pair<unsigned int, unsigned int>> &cells,
480 const std::vector<unsigned int> &active_fe_index,
489 const ::Triangulation<dim> & tria,
490 const std::vector<std::pair<unsigned int, unsigned int>> &cells,
501 const ::Triangulation<dim> & tria,
502 const std::vector<std::pair<unsigned int, unsigned int>> &cells,
523 template <
int,
typename,
bool,
typename>
526 template <
int dim,
typename Number,
typename VectorizedArrayType>
531 const unsigned int quad_no)
538 template <
int dim,
typename Number,
typename VectorizedArrayType>
544 const unsigned int quad_no)
564 template <
typename Number,
575 const std::vector<Number> &v2)
const;
583 const Tensor<1, VectorizedArrayType::size(), Number> &t1,
584 const Tensor<1, VectorizedArrayType::size(), Number> &t2)
const;
593 const Tensor<1, dim,
Tensor<1, VectorizedArrayType::size(), Number>>
595 const Tensor<1, dim,
Tensor<1, VectorizedArrayType::size(), Number>>
605 const Tensor<2, dim,
Tensor<1, VectorizedArrayType::size(), Number>>
607 const Tensor<2, dim,
Tensor<1, VectorizedArrayType::size(), Number>>
625 template <
int structdim,
628 typename VectorizedArrayType>
633 for (
unsigned int i = 0; i < descriptor.size(); ++i)
634 if (n_q_points == descriptor[i].n_q_points)
641 template <
int dim,
typename Number,
typename VectorizedArrayType>
644 const unsigned int cell_no)
const
647 return cell_type[cell_no];
void initialize(const ::Triangulation< dim > &tria, const std::vector< std::pair< unsigned int, unsigned int >> &cells, const FaceInfo< VectorizedArrayType::size()> &faces, const std::vector< unsigned int > &active_fe_index, const Mapping< dim > &mapping, const std::vector<::hp::QCollection< 1 >> &quad, const UpdateFlags update_flags_cells, const UpdateFlags update_flags_boundary_faces, const UpdateFlags update_flags_inner_faces, const UpdateFlags update_flags_faces_by_cells)
std::size_t memory_consumption() const
SmartPointer< const Mapping< dim > > mapping
std::vector< MappingInfoStorage< dim, dim, Number, VectorizedArrayType > > cell_data
UpdateFlags update_flags_inner_faces
void compute_mapping_q(const ::Triangulation< dim > &tria, const std::vector< std::pair< unsigned int, unsigned int >> &cells, const std::vector< FaceToCellTopology< VectorizedArrayType::size()>> &faces)
static UpdateFlags compute_update_flags(const UpdateFlags update_flags, const std::vector<::hp::QCollection< 1 >> &quad=std::vector<::hp::QCollection< 1 >>())
std::array< AlignedVector< Number >, structdim > tensor_quadrature_weights
AlignedVector< Tensor< 1, spacedim, VectorizedArrayType > > normal_vectors
std::vector< MappingInfoStorage< dim - 1, dim, Number, VectorizedArrayType > > face_data
@ update_default
No update.
AlignedVector< Point< spacedim, VectorizedArrayType > > quadrature_points
Quadrature< 1 > quadrature_1d
UpdateFlags update_flags_cells
#define AssertIndexRange(index, range)
AlignedVector< unsigned int > quadrature_point_offsets
static const MappingInfoStorage< dim - 1, dim, Number, VectorizedArrayType > * get(const MappingInfo< dim, Number, VectorizedArrayType > &mapping_info, const unsigned int quad_no)
UpdateFlags update_flags_boundary_faces
FPArrayComparator(const Number scaling)
void initialize(const Quadrature< 1 > &quadrature_1d, const UpdateFlags update_flags_inner_faces=update_default)
UpdateFlags update_flags_faces_by_cells
void print_memory_consumption(StreamType &out, const TaskInfo &task_info) const
AlignedVector< Tensor< 1, spacedim, VectorizedArrayType > > normals_times_jacobians[2]
std::vector< QuadratureDescriptor > descriptor
GeometryType get_cell_type(const unsigned int cell_chunk_no) const
AlignedVector< VectorizedArrayType > JxW_values
#define DEAL_II_NAMESPACE_OPEN
void initialize_faces_by_cells(const ::Triangulation< dim > &tria, const std::vector< std::pair< unsigned int, unsigned int >> &cells, const Mapping< dim > &mapping)
void initialize_faces(const ::Triangulation< dim > &tria, const std::vector< std::pair< unsigned int, unsigned int >> &cells, const std::vector< FaceToCellTopology< VectorizedArrayType::size()>> &faces, const Mapping< dim > &mapping)
Quadrature< structdim > quadrature
static const MappingInfoStorage< dim, dim, Number, VectorizedArrayType > * get(const MappingInfo< dim, Number, VectorizedArrayType > &mapping_info, const unsigned int quad_no)
unsigned int quad_index_from_n_q_points(const unsigned int n_q_points) const
AlignedVector< Tensor< 1, spacedim *(spacedim+1)/2, Tensor< 1, spacedim, VectorizedArrayType > > > jacobian_gradients[2]
bool operator()(const std::vector< Number > &v1, const std::vector< Number > &v2) const
AlignedVector< Number > quadrature_weights
std::vector< GeometryType > face_type
AlignedVector< unsigned int > data_index_offsets
AlignedVector< Tensor< 2, spacedim, VectorizedArrayType > > jacobians[2]
#define DEAL_II_NAMESPACE_CLOSE
std::size_t memory_consumption() const
void initialize_cells(const ::Triangulation< dim > &tria, const std::vector< std::pair< unsigned int, unsigned int >> &cells, const std::vector< unsigned int > &active_fe_index, const Mapping< dim > &mapping)
::Table< 2, unsigned int > face_orientations
std::vector< GeometryType > cell_type
std::vector< MappingInfoStorage< dim - 1, dim, Number, VectorizedArrayType > > face_data_by_cells
std::size_t memory_consumption() const
void update_mapping(const ::Triangulation< dim > &tria, const std::vector< std::pair< unsigned int, unsigned int >> &cells, const FaceInfo< VectorizedArrayType::size()> &faces, const std::vector< unsigned int > &active_fe_index, const Mapping< dim > &mapping)
void print_memory_consumption(StreamType &out, const TaskInfo &task_info) const