Reference documentation for deal.II version 9.5.0
|
#include <deal.II/non_matching/quadrature_generator.h>
Public Types | |
using | AdditionalData = AdditionalQGeneratorData |
Public Member Functions | |
template<class VectorType > | |
DiscreteFaceQuadratureGenerator (const hp::QCollection< 1 > &quadratures1D, const DoFHandler< dim > &dof_handler, const VectorType &level_set, const AdditionalData &additional_data=AdditionalData()) | |
void | generate (const typename Triangulation< dim >::active_cell_iterator &cell, const unsigned int face_index) |
void | generate (const Function< dim > &level_set, const BoundingBox< dim > &box, const unsigned int face_index) |
const Quadrature< dim - 1 > & | get_inside_quadrature () const |
const Quadrature< dim - 1 > & | get_outside_quadrature () const |
const ImmersedSurfaceQuadrature< dim - 1, dim > & | get_surface_quadrature () const |
void | set_1D_quadrature (const unsigned int q_index) |
Private Attributes | |
std::unique_ptr< internal::DiscreteQuadratureGeneratorImplementation::CellWiseFunction< dim > > | reference_space_level_set |
QuadratureGenerator< dim - 1 > | quadrature_generator |
ImmersedSurfaceQuadrature< dim - 1, dim > | surface_quadrature |
This class generates the same type of immersed quadrature rules as those described in the FaceQuadratureGenerator class. The difference is that this class handles the case when the domain is a discrete level set function, i.e., when the level set function is described as a (DoFHandler, Vector) pair. The generate()-function of this class takes a cell in real space plus the respective face index and constructs the immersed quadrature rules in reference space over this face. These quadrature rules can then be obtained with one of the functions: get_inside_quadrature(), get_outside_quadrature(), and get_surface_quadrature().
Internally, the quadrature generation is done by transforming the discrete level set function from real space to reference space and using the same algorithm as in the FaceQuadratureGenerator class.
Definition at line 547 of file quadrature_generator.h.
using NonMatching::DiscreteFaceQuadratureGenerator< dim >::AdditionalData = AdditionalQGeneratorData |
Definition at line 550 of file quadrature_generator.h.
NonMatching::DiscreteFaceQuadratureGenerator< dim >::DiscreteFaceQuadratureGenerator | ( | const hp::QCollection< 1 > & | quadratures1D, |
const DoFHandler< dim > & | dof_handler, | ||
const VectorType & | level_set, | ||
const AdditionalData & | additional_data = AdditionalData() |
||
) |
Constructor, the discrete level set function is described by the incoming DoFHandler and Vector. Pointers to these are stored internally, so they must have a longer lifetime than the created this class. The hp::QCollection<1> and AdditionalData is passed to the QuadratureGenerator class.
Definition at line 1910 of file quadrature_generator.cc.
void NonMatching::DiscreteFaceQuadratureGenerator< dim >::generate | ( | const typename Triangulation< dim >::active_cell_iterator & | cell, |
const unsigned int | face_index | ||
) |
Construct immersed quadratures rules based on the discrete level set vector over the incoming face described by cell and face index.
Definition at line 1927 of file quadrature_generator.cc.
|
inherited |
Construct immersed quadratures rules for the incoming level set function on a given face of the BoundingBox.
To get the constructed quadratures, use the functions get_inside_quadrature(), get_outside_quadrature(), get_surface_quadrature().
Definition at line 1712 of file quadrature_generator.cc.
|
inherited |
Return the quadrature rule for the region \(\{x \in F : \psi(x) < 0 \}\) created in the previous call to generate(). Here, \(F\) is the face of the BoundingBox passed to generate().
Definition at line 1774 of file quadrature_generator.cc.
|
inherited |
Return the quadrature rule for the region \(\{x \in F : \psi(x) > 0 \}\) created in the previous call to generate(). Here, \(F\) is the face of the BoundingBox passed to generate().
Definition at line 1782 of file quadrature_generator.cc.
|
inherited |
Return the quadrature rule for the region \(\{x \in F : \psi(x) = 0 \}\) created in the previous call to generate(). Here, \(F\) is the face of the BoundingBox passed to generate().
Definition at line 1791 of file quadrature_generator.cc.
|
inherited |
Set which 1d-quadrature in the collection passed to the constructor should be used to create the immersed quadratures.
Definition at line 1765 of file quadrature_generator.cc.
|
private |
Function that describes our level set function in reference space.
Definition at line 583 of file quadrature_generator.h.
|
privateinherited |
Lower-dimensional quadrature generator used to build the quadratures over the face.
Definition at line 366 of file quadrature_generator.h.
|
privateinherited |
The same surface quadrature as created by the quadrature_generator, but having dim-dimensional normals.
Definition at line 372 of file quadrature_generator.h.