deal.II version GIT relicensing-6834-g5b78e6bcdf 2026-10-01 11:20:01+00:00
\(\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\}}\)
Loading...
Searching...
No Matches
Public Member Functions | Static Public Member Functions | Private Member Functions | Private Attributes | List of all members
QProjector< dim >::DataSetDescriptor Class Reference

Class storing the offset index into a Quadrature rule created by project_to_all_faces() or project_to_all_subfaces(). More...

#include <deal.II/base/qprojector.h>

Detailed Description

template<int dim>
class QProjector< dim >::DataSetDescriptor

Class storing the offset index into a Quadrature rule created by project_to_all_faces() or project_to_all_subfaces().

The functions QProjector::project_to_all_faces() and QProjector::project_to_all_subfaces() each combine all quadrature rules (i.e., all possible combinations of face, subface, and combined orientation) into a single Quadrature object. DataSetDescriptor implements the correct indexing for extracting from that Quadrature rule the correct index for those values.

Definition at line 203 of file qprojector.h.

Public Member Functions

 DataSetDescriptor ()
 
 operator unsigned int () const
 

Static Public Member Functions

static DataSetDescriptor cell ()
 
static DataSetDescriptor face (const ReferenceCell< dim > &reference_cell, const unsigned int face_no, const types::geometric_orientation combined_orientation, const unsigned int n_quadrature_points)
 
static DataSetDescriptor face (const ReferenceCell< dim > &reference_cell, const unsigned int face_no, const types::geometric_orientation combined_orientation, const hp::QCollection< dim - 1 > &quadrature)
 
static DataSetDescriptor subface (const ReferenceCell< dim > &reference_cell, const unsigned int face_no, const unsigned int subface_no, const types::geometric_orientation combined_orientation, const unsigned int n_quadrature_points, const internal::SubfaceCase< dim > ref_case=internal::SubfaceCase< dim >::case_isotropic)
 

Private Member Functions

 DataSetDescriptor (const unsigned int dataset_offset)
 

Private Attributes

const unsigned int dataset_offset
 

Constructor & Destructor Documentation

◆ DataSetDescriptor() [1/2]

template<int dim>
QProjector< dim >::DataSetDescriptor::DataSetDescriptor ( )
inline

Default constructor. This doesn't do much except generating an invalid index, since you didn't give a valid descriptor of the cell, face, or subface you wanted.

Definition at line 306 of file qprojector.h.

◆ DataSetDescriptor() [2/2]

template<int dim>
QProjector< dim >::DataSetDescriptor::DataSetDescriptor ( const unsigned int  dataset_offset)
inlineprivate

This is the real constructor, but it is private and thus only available to the static member functions above.

Definition at line 299 of file qprojector.h.

Member Function Documentation

◆ cell()

template<int dim>
QProjector< dim >::DataSetDescriptor QProjector< dim >::DataSetDescriptor::cell ( )
static

Static function to generate the offset of a cell. Since we only have one cell per quadrature object, this offset is of course zero, but we carry this function around for consistency with the other static functions.

Definition at line 314 of file qprojector.h.

◆ face() [1/2]

template<int dim>
QProjector< dim >::DataSetDescriptor QProjector< dim >::DataSetDescriptor::face ( const ReferenceCell< dim > &  reference_cell,
const unsigned int  face_no,
const types::geometric_orientation  combined_orientation,
const unsigned int  n_quadrature_points 
)
static

Static function to generate an offset object for a given face of a cell with the given combined face orientation.

n_quadrature_points is the number of quadrature points the lower-dimensional face quadrature formula (the one that has been projected onto the faces) has.

Definition at line 401 of file qprojector.cc.

◆ face() [2/2]

template<int dim>
QProjector< dim >::DataSetDescriptor QProjector< dim >::DataSetDescriptor::face ( const ReferenceCell< dim > &  reference_cell,
const unsigned int  face_no,
const types::geometric_orientation  combined_orientation,
const hp::QCollection< dim - 1 > &  quadrature 
)
static

Compute an offset object for the given face number and orientation, taking into account the possibility of different quadrature rules being used on each face.

Definition at line 422 of file qprojector.cc.

◆ subface()

template<int dim>
QProjector< dim >::DataSetDescriptor QProjector< dim >::DataSetDescriptor::subface ( const ReferenceCell< dim > &  reference_cell,
const unsigned int  face_no,
const unsigned int  subface_no,
const types::geometric_orientation  combined_orientation,
const unsigned int  n_quadrature_points,
const internal::SubfaceCase< dim >  ref_case = internal::SubfaceCase<dim>::case_isotropic 
)
static

Static function to generate an offset object for a given subface of a cell with the given combined face orientation. This function of course is only allowed if dim>=2, and the orientation is ignored if the space dimension equals 2.

n_quadrature_points denotes the number of quadrature points the lower-dimensional face quadrature formula (the one that has been projected onto the faces) has.

Through the last argument anisotropic refinement can be respected.

Definition at line 446 of file qprojector.cc.

◆ operator unsigned int()

template<int dim>
QProjector< dim >::DataSetDescriptor::operator unsigned int ( ) const
inline

Conversion operator to an integer denoting the offset of the first element of this dataset in the set of quadrature formulas all projected onto faces and subfaces. This conversion operator allows us to use offset descriptor objects in place of integer offsets.

Definition at line 322 of file qprojector.h.

Member Data Documentation

◆ dataset_offset

template<int dim>
const unsigned int QProjector< dim >::DataSetDescriptor::dataset_offset
private

Store the integer offset for a given cell, face, or subface.

Definition at line 281 of file qprojector.h.


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