MFEM  v4.5.2
Finite element discretization library
Public Member Functions | List of all members
mfem::VectorDomainLFGradIntegrator Class Reference

#include <lininteg.hpp>

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

Public Member Functions

 VectorDomainLFGradIntegrator (VectorCoefficient &QF)
 Constructs the domain integrator (Q, grad v) More...
 
virtual bool SupportsDevice () override
 Method probing for assembly on device. More...
 
virtual void AssembleDevice (const FiniteElementSpace &fes, const Array< int > &markers, Vector &b) override
 Method defining assembly on device. More...
 
virtual void AssembleRHSElementVect (const FiniteElement &el, ElementTransformation &Tr, Vector &elvect) override
 
virtual 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. More...
 
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)
 
- Public Member Functions inherited from mfem::DeltaLFIntegrator
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...
 
- Public Member Functions inherited from mfem::LinearFormIntegrator
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 ()
 

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. 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 inherited from mfem::DeltaLFIntegrator
DeltaCoefficientdelta
 
VectorDeltaCoefficientvec_delta
 
- Protected Attributes inherited from mfem::LinearFormIntegrator
const IntegrationRuleIntRule
 

Detailed Description

Class for domain integrator L(v) := (f, grad v), where f=(f1x,f1y,f1z,...,fnx,fny,fnz) and v=(v1,...,vn).

Definition at line 287 of file lininteg.hpp.

Constructor & Destructor Documentation

◆ VectorDomainLFGradIntegrator()

mfem::VectorDomainLFGradIntegrator::VectorDomainLFGradIntegrator ( VectorCoefficient QF)
inline

Constructs the domain integrator (Q, grad v)

Definition at line 296 of file lininteg.hpp.

Member Function Documentation

◆ AssembleDeltaElementVect()

void mfem::VectorDomainLFGradIntegrator::AssembleDeltaElementVect ( const FiniteElement fe,
ElementTransformation Trans,
Vector elvect 
)
overridevirtual

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.

Implements mfem::DeltaLFIntegrator.

Definition at line 370 of file lininteg.cpp.

◆ AssembleDevice()

void mfem::VectorDomainLFGradIntegrator::AssembleDevice ( const FiniteElementSpace fes,
const Array< int > &  markers,
Vector b 
)
overridevirtual

Method defining assembly on device.

Reimplemented from mfem::LinearFormIntegrator.

Definition at line 333 of file lininteg_domain_grad.cpp.

◆ AssembleRHSElementVect() [1/4]

void mfem::VectorDomainLFGradIntegrator::AssembleRHSElementVect ( const FiniteElement el,
ElementTransformation Tr,
Vector elvect 
)
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 328 of file lininteg.cpp.

◆ AssembleRHSElementVect() [2/4]

virtual void mfem::LinearFormIntegrator::AssembleRHSElementVect

Given a particular Finite Element and a transformation (Tr) computes the element vector, elvect.

◆ AssembleRHSElementVect() [3/4]

void mfem::LinearFormIntegrator::AssembleRHSElementVect

Definition at line 32 of file lininteg.cpp.

◆ AssembleRHSElementVect() [4/4]

void mfem::LinearFormIntegrator::AssembleRHSElementVect

Definition at line 26 of file lininteg.cpp.

◆ SupportsDevice()

virtual bool mfem::VectorDomainLFGradIntegrator::SupportsDevice ( )
inlineoverridevirtual

Method probing for assembly on device.

Reimplemented from mfem::LinearFormIntegrator.

Definition at line 299 of file lininteg.hpp.


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