MFEM  v4.4.0
Finite element discretization library
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Pages
Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
mfem::DeltaLFIntegrator Class Referenceabstract

Abstract class for integrators that support delta coefficients. More...

#include <lininteg.hpp>

Inheritance diagram for mfem::DeltaLFIntegrator:
[legend]
Collaboration diagram for mfem::DeltaLFIntegrator:
[legend]

Public Member Functions

bool IsDelta () const
 Returns true if the derived class instance uses a delta coefficient. More...
 
void GetDeltaCenter (Vector &center)
 Returns the center of the delta coefficient. More...
 
virtual void AssembleDeltaElementVect (const FiniteElement &fe, ElementTransformation &Trans, Vector &elvect)=0
 Assemble the delta coefficient at the IntegrationPoint set in Trans which is assumed to map to the delta coefficient center. More...
 
- Public Member Functions inherited from mfem::LinearFormIntegrator
virtual void AssembleRHSElementVect (const FiniteElement &el, ElementTransformation &Tr, Vector &elvect)=0
 
virtual void AssembleRHSElementVect (const FiniteElement &el, FaceElementTransformations &Tr, Vector &elvect)
 
virtual void AssembleRHSElementVect (const FiniteElement &el1, const FiniteElement &el2, FaceElementTransformations &Tr, Vector &elvect)
 
virtual void SetIntRule (const IntegrationRule *ir)
 
const IntegrationRuleGetIntRule ()
 
virtual ~LinearFormIntegrator ()
 

Protected Member Functions

 DeltaLFIntegrator (Coefficient &q, const IntegrationRule *ir=NULL)
 This constructor should be used by derived classes that use a scalar DeltaCoefficient. More...
 
 DeltaLFIntegrator (VectorCoefficient &vq, const IntegrationRule *ir=NULL)
 This constructor should be used by derived classes that use a VectorDeltaCoefficient. More...
 
- Protected Member Functions inherited from mfem::LinearFormIntegrator
 LinearFormIntegrator (const IntegrationRule *ir=NULL)
 

Protected Attributes

DeltaCoefficientdelta
 
VectorDeltaCoefficientvec_delta
 
- Protected Attributes inherited from mfem::LinearFormIntegrator
const IntegrationRuleIntRule
 

Detailed Description

Abstract class for integrators that support delta coefficients.

Definition at line 51 of file lininteg.hpp.

Constructor & Destructor Documentation

mfem::DeltaLFIntegrator::DeltaLFIntegrator ( Coefficient q,
const IntegrationRule ir = NULL 
)
inlineprotected

This constructor should be used by derived classes that use a scalar DeltaCoefficient.

Definition at line 59 of file lininteg.hpp.

mfem::DeltaLFIntegrator::DeltaLFIntegrator ( VectorCoefficient vq,
const IntegrationRule ir = NULL 
)
inlineprotected

This constructor should be used by derived classes that use a VectorDeltaCoefficient.

Definition at line 66 of file lininteg.hpp.

Member Function Documentation

virtual void mfem::DeltaLFIntegrator::AssembleDeltaElementVect ( const FiniteElement fe,
ElementTransformation Trans,
Vector elvect 
)
pure virtual

Assemble the delta coefficient at the IntegrationPoint set in Trans which is assumed to map to the delta coefficient center.

Note
This method should be called for one mesh element only, including in parallel, even when the center of the delta coefficient is shared by multiple elements.

Implemented in mfem::VectorFEDomainLFDivIntegrator, mfem::VectorFEDomainLFCurlIntegrator, mfem::VectorFEDomainLFIntegrator, mfem::VectorDomainLFIntegrator, mfem::DomainLFGradIntegrator, and mfem::DomainLFIntegrator.

void mfem::DeltaLFIntegrator::GetDeltaCenter ( Vector center)
inline

Returns the center of the delta coefficient.

Definition at line 77 of file lininteg.hpp.

bool mfem::DeltaLFIntegrator::IsDelta ( ) const
inline

Returns true if the derived class instance uses a delta coefficient.

Definition at line 74 of file lininteg.hpp.

Member Data Documentation

DeltaCoefficient* mfem::DeltaLFIntegrator::delta
protected

Definition at line 54 of file lininteg.hpp.

VectorDeltaCoefficient* mfem::DeltaLFIntegrator::vec_delta
protected

Definition at line 55 of file lininteg.hpp.


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