MFEM v4.7.0
Finite element discretization library
|
Abstract class for construction of IntegrationRules in cut elements. More...
#include <intrules_cut.hpp>
Public Member Functions | |
virtual void | SetOrder (int order) |
Change the order of the constructed IntegrationRule. | |
virtual void | SetLevelSetCoefficient (Coefficient &ls) |
Change the Coefficient whose zero level set specifies the cut. | |
virtual void | SetLevelSetProjectionOrder (int order) |
virtual void | GetSurfaceIntegrationRule (ElementTransformation &Tr, IntegrationRule &result)=0 |
Construct a cut-surface IntegrationRule. | |
virtual void | GetVolumeIntegrationRule (ElementTransformation &Tr, IntegrationRule &result, const IntegrationRule *sir=NULL)=0 |
Construct a cut-volume IntegrationRule. | |
virtual void | GetSurfaceWeights (ElementTransformation &Tr, const IntegrationRule &sir, Vector &weights)=0 |
Compute transformation quadrature weights for surface integration. | |
virtual | ~CutIntegrationRules () |
Destructor of CutIntegrationRules. | |
Protected Member Functions | |
CutIntegrationRules (int order, Coefficient &lvlset, int lsO=2) | |
Constructor to set up the generated cut IntegrationRules. | |
Protected Attributes | |
int | Order |
Order of the IntegrationRule. | |
Coefficient * | LvlSet |
The zero level set of this Coefficient defines the cut surface. | |
int | lsOrder |
Space order for the LS projection. | |
Abstract class for construction of IntegrationRules in cut elements.
Interface for construction of cut-surface and cut-volume IntegrationRules. The cut is specified by the zero level set of a given Coefficient.
Definition at line 29 of file intrules_cut.hpp.
|
inlineprotected |
Constructor to set up the generated cut IntegrationRules.
[in] | order | Order of the constructed IntegrationRule. |
[in] | lvlset | Coefficient whose zero level set specifies the cut. |
[in] | lsO | Polynomial degree for projecting the level-set Coefficient to a GridFunction, which is used to compute gradients and normals. |
Definition at line 46 of file intrules_cut.hpp.
|
inlinevirtual |
Destructor of CutIntegrationRules.
Definition at line 105 of file intrules_cut.hpp.
|
pure virtual |
Construct a cut-surface IntegrationRule.
Construct an IntegrationRule to integrate on the surface given by the already specified level set function, for the element given by Tr.
[in] | Tr | Specifies the IntegrationRule's associated mesh element. |
[out] | result | IntegrationRule on the cut-surface |
Implemented in mfem::MomentFittingIntRules.
|
pure virtual |
Compute transformation quadrature weights for surface integration.
Compute the transformation weights for integration over the cut-surface in reference space.
[in] | Tr | Specifies the IntegrationRule's associated element. |
[in] | sir | IntegrationRule defining the IntegrationPoints |
[out] | weights | Vector containing the transformation weights. |
Implemented in mfem::MomentFittingIntRules.
|
pure virtual |
Construct a cut-volume IntegrationRule.
Construct an IntegrationRule to integrate in the subdomain given by the positive values of the already specified level set function, for the element given by Tr.
[in] | Tr | Specifies the IntegrationRule's associated mesh element. |
[out] | result | IntegrationRule for the cut-volume |
[in] | sir | Corresponding IntegrationRule for the surface, which can be used to avoid computations. |
Implemented in mfem::MomentFittingIntRules.
|
inlinevirtual |
Change the Coefficient whose zero level set specifies the cut.
Reimplemented in mfem::MomentFittingIntRules.
Definition at line 56 of file intrules_cut.hpp.
|
virtual |
Change the polynomial degree for projecting the level set Coefficient to a GridFunction, which is used to compute local gradients and normals.
Reimplemented in mfem::MomentFittingIntRules.
Definition at line 28 of file intrules_cut.cpp.
|
virtual |
Change the order of the constructed IntegrationRule.
Reimplemented in mfem::MomentFittingIntRules.
Definition at line 22 of file intrules_cut.cpp.
|
protected |
Space order for the LS projection.
Definition at line 37 of file intrules_cut.hpp.
|
protected |
The zero level set of this Coefficient defines the cut surface.
Definition at line 35 of file intrules_cut.hpp.
|
protected |
Order of the IntegrationRule.
Definition at line 33 of file intrules_cut.hpp.