![]() |
MFEM v4.9.0
Finite element discretization library
|
Class for domain integration \( L(v) := (f, v) \). More...
#include <lininteg.hpp>
Classes | |
| struct | Kernels |
Public Types | |
| using | AssembleKernelType |
| args: vdim, ne, d1d, q1d, map_type, markers, B, detJ, W, coeff, y | |
Public Member Functions | |
| DomainLFIntegrator (Coefficient &QF, int a=2, int b=0) | |
| DomainLFIntegrator (Coefficient &QF, const IntegrationRule *ir) | |
| Constructs a domain integrator with a given Coefficient. | |
| bool | SupportsDevice () const override |
| Method probing for assembly on device. | |
| void | AssembleDevice (const FiniteElementSpace &fes, const Array< int > &markers, Vector &b) override |
| Method defining assembly on device. | |
| void | AssembleRHSElementVect (const FiniteElement &el, ElementTransformation &Tr, Vector &elvect) override |
| void | AssembleDeltaElementVect (const FiniteElement &fe, ElementTransformation &Trans, Vector &elvect) override |
| Assemble the delta coefficient at the IntegrationPoint set in Trans which is assumed to map to the delta coefficient center. | |
| MFEM_REGISTER_KERNELS (AssembleKernels, AssembleKernelType,(int, int, int)) | |
| parameters: use DIM, T_D1D, T_Q1D | |
| virtual void | AssembleRHSElementVect (const FiniteElement &el, FaceElementTransformations &Tr, Vector &elvect) |
| virtual void | AssembleRHSElementVect (const FiniteElement &el1, const FiniteElement &el2, FaceElementTransformations &Tr, Vector &elvect) |
Public Member Functions inherited from mfem::DeltaLFIntegrator | |
| bool | IsDelta () const |
| Returns true if the derived class instance uses a delta coefficient. | |
| void | GetDeltaCenter (Vector ¢er) |
| Returns the center of the delta coefficient. | |
Public Member Functions inherited from mfem::LinearFormIntegrator | |
| virtual | ~LinearFormIntegrator () |
Public Member Functions inherited from mfem::Integrator | |
| Integrator (const IntegrationRule *ir=NULL) | |
| Create a new Integrator, optionally providing a prescribed quadrature rule to use in assembly. | |
| virtual void | SetIntRule (const IntegrationRule *ir) |
| Prescribe a fixed IntegrationRule to use, or set to null to let the integrator choose an appropriate rule. | |
| void | SetIntegrationRule (const IntegrationRule &ir) |
| Prescribe a fixed IntegrationRule to use. Sets the NURBS patch integration rule to null. | |
| void | SetNURBSPatchIntRule (NURBSMeshRules *pr) |
| Sets an integration rule for use on NURBS patches. | |
| bool | HasNURBSPatchIntRule () const |
| Check if a NURBS patch integration rule has been set. | |
| const IntegrationRule * | GetIntRule () const |
| Directly return the IntRule pointer (possibly null) without checking for NURBS patch rules or falling back on a default. | |
| const IntegrationRule * | GetIntegrationRule () const |
| Equivalent to GetIntRule, but retained for backward compatibility with applications. | |
Static Public Member Functions | |
| template<int DIM, int D1D, int Q1D> | |
| static void | AddSpecialization () |
Additional Inherited Members | |
Protected Member Functions inherited from mfem::DeltaLFIntegrator | |
| DeltaLFIntegrator (Coefficient &q, const IntegrationRule *ir=NULL) | |
| This constructor should be used by derived classes that use a scalar DeltaCoefficient. | |
| DeltaLFIntegrator (VectorCoefficient &vq, const IntegrationRule *ir=NULL) | |
| This constructor should be used by derived classes that use a VectorDeltaCoefficient. | |
Protected Member Functions inherited from mfem::LinearFormIntegrator | |
| LinearFormIntegrator (const IntegrationRule *ir=NULL) | |
Protected Member Functions inherited from mfem::Integrator | |
| const IntegrationRule * | GetIntegrationRule (const FiniteElement &trial_fe, const FiniteElement &test_fe, const ElementTransformation &trans) const |
| Returns an integration rule based on the arguments and internal state of the Integrator object. | |
| const IntegrationRule * | GetIntegrationRule (const FiniteElement &el, const ElementTransformation &trans) const |
| Returns an integration rule based on the arguments and internal state. (Version for identical trial_fe and test_fe) | |
| virtual const IntegrationRule * | GetDefaultIntegrationRule (const FiniteElement &trial_fe, const FiniteElement &test_fe, const ElementTransformation &trans) const |
| Subclasses should override to choose a default integration rule. | |
Protected Attributes inherited from mfem::DeltaLFIntegrator | |
| DeltaCoefficient * | delta |
| VectorDeltaCoefficient * | vec_delta |
Protected Attributes inherited from mfem::Integrator | |
| const IntegrationRule * | IntRule |
| NURBSMeshRules * | patchRules = nullptr |
Class for domain integration \( L(v) := (f, v) \).
Definition at line 107 of file lininteg.hpp.
args: vdim, ne, d1d, q1d, map_type, markers, B, detJ, W, coeff, y
Definition at line 141 of file lininteg.hpp.
| mfem::DomainLFIntegrator::DomainLFIntegrator | ( | Coefficient & | QF, |
| int | a = 2, | ||
| int | b = 0 ) |
Constructs a domain integrator with a given Coefficient the old default was a = 1, b = 1 for simple elliptic problems a = 2, b = -2 is OK
Definition at line 38 of file lininteg.cpp.
| mfem::DomainLFIntegrator::DomainLFIntegrator | ( | Coefficient & | QF, |
| const IntegrationRule * | ir ) |
Constructs a domain integrator with a given Coefficient.
Definition at line 44 of file lininteg.cpp.
|
inlinestatic |
Definition at line 151 of file lininteg.hpp.
|
overridevirtual |
Assemble the delta coefficient at the IntegrationPoint set in Trans which is assumed to map to the delta coefficient center.
Implements mfem::DeltaLFIntegrator.
Definition at line 83 of file lininteg.cpp.
|
overridevirtual |
Method defining assembly on device.
Reimplemented from mfem::LinearFormIntegrator.
|
overridevirtual |
Given a particular Finite Element and a transformation (Tr) computes the element right hand side element vector, elvect.
Implements mfem::LinearFormIntegrator.
Definition at line 51 of file lininteg.cpp.
|
virtual |
Reimplemented from mfem::LinearFormIntegrator.
Definition at line 48 of file lininteg.cpp.
|
virtual |
Reimplemented from mfem::LinearFormIntegrator.
Definition at line 51 of file lininteg.cpp.
| mfem::DomainLFIntegrator::MFEM_REGISTER_KERNELS | ( | AssembleKernels | , |
| AssembleKernelType | , | ||
| (int, int, int) | ) |
parameters: use DIM, T_D1D, T_Q1D
|
inlineoverridevirtual |
Method probing for assembly on device.
Reimplemented from mfem::LinearFormIntegrator.
Definition at line 121 of file lininteg.hpp.