MFEM  v3.4
Finite element discretization library
Public Member Functions | Protected Member Functions | List of all members
mfem::BilinearFormIntegrator Class Reference

Abstract base class BilinearFormIntegrator. More...

#include <bilininteg.hpp>

Inherits mfem::NonlinearFormIntegrator.

Inherited by DomainIntegrator, mfem::ConvectionIntegrator, mfem::CurlCurlIntegrator, mfem::DerivativeIntegrator, mfem::DGDiffusionIntegrator, mfem::DGElasticityIntegrator, mfem::DGTraceIntegrator, mfem::DiffusionIntegrator, mfem::DiscreteInterpolator, mfem::DivDivIntegrator, mfem::ElasticityIntegrator, mfem::GroupConvectionIntegrator, mfem::InverseIntegrator, mfem::LumpedIntegrator, mfem::MassIntegrator, mfem::MixedScalarIntegrator, mfem::MixedScalarVectorIntegrator, mfem::MixedVectorIntegrator, mfem::NormalTraceJumpIntegrator, mfem::SumIntegrator, mfem::TraceJumpIntegrator, mfem::TransposeIntegrator, mfem::VectorCurlCurlIntegrator, mfem::VectorDiffusionIntegrator, mfem::VectorDivergenceIntegrator, mfem::VectorFECurlIntegrator, mfem::VectorFEDivergenceIntegrator, mfem::VectorFEMassIntegrator, mfem::VectorFEWeakDivergenceIntegrator, and mfem::VectorMassIntegrator.

Collaboration diagram for mfem::BilinearFormIntegrator:
[legend]

Public Member Functions

virtual void AssembleElementMatrix (const FiniteElement &el, ElementTransformation &Trans, DenseMatrix &elmat)
 Given a particular Finite Element computes the element matrix elmat. More...
 
virtual void AssembleElementMatrix2 (const FiniteElement &trial_fe, const FiniteElement &test_fe, ElementTransformation &Trans, DenseMatrix &elmat)
 
virtual void AssembleFaceMatrix (const FiniteElement &el1, const FiniteElement &el2, FaceElementTransformations &Trans, DenseMatrix &elmat)
 
virtual void AssembleFaceMatrix (const FiniteElement &trial_face_fe, const FiniteElement &test_fe1, const FiniteElement &test_fe2, FaceElementTransformations &Trans, DenseMatrix &elmat)
 
virtual void AssembleElementVector (const FiniteElement &el, ElementTransformation &Tr, const Vector &elfun, Vector &elvect)
 Perform the local action of the BilinearFormIntegrator. More...
 
virtual void AssembleElementGrad (const FiniteElement &el, ElementTransformation &Tr, const Vector &elfun, DenseMatrix &elmat)
 Assemble the local gradient matrix. More...
 
virtual void AssembleFaceGrad (const FiniteElement &el1, const FiniteElement &el2, FaceElementTransformations &Tr, const Vector &elfun, DenseMatrix &elmat)
 Assemble the local action of the gradient of the NonlinearFormIntegrator resulting from a face integral term. More...
 
virtual void ComputeElementFlux (const FiniteElement &el, ElementTransformation &Trans, Vector &u, const FiniteElement &fluxelem, Vector &flux, int with_coef=1)
 
virtual double ComputeFluxEnergy (const FiniteElement &fluxelem, ElementTransformation &Trans, Vector &flux, Vector *d_energy=NULL)
 
virtual ~BilinearFormIntegrator ()
 
- Public Member Functions inherited from mfem::NonlinearFormIntegrator
void SetIntRule (const IntegrationRule *ir)
 Prescribe a fixed IntegrationRule to use (when ir != NULL) or let the integrator choose (when ir == NULL). More...
 
void SetIntegrationRule (const IntegrationRule &irule)
 Prescribe a fixed IntegrationRule to use. More...
 
virtual void AssembleFaceVector (const FiniteElement &el1, const FiniteElement &el2, FaceElementTransformations &Tr, const Vector &elfun, Vector &elvect)
 Perform the local action of the NonlinearFormIntegrator resulting from a face integral term. More...
 
virtual double GetElementEnergy (const FiniteElement &el, ElementTransformation &Tr, const Vector &elfun)
 Compute the local energy. More...
 
virtual ~NonlinearFormIntegrator ()
 

Protected Member Functions

 BilinearFormIntegrator (const IntegrationRule *ir=NULL)
 
- Protected Member Functions inherited from mfem::NonlinearFormIntegrator
 NonlinearFormIntegrator (const IntegrationRule *ir=NULL)
 

Additional Inherited Members

- Protected Attributes inherited from mfem::NonlinearFormIntegrator
const IntegrationRuleIntRule
 

Detailed Description

Abstract base class BilinearFormIntegrator.

Definition at line 22 of file bilininteg.hpp.

Constructor & Destructor Documentation

◆ BilinearFormIntegrator()

mfem::BilinearFormIntegrator::BilinearFormIntegrator ( const IntegrationRule ir = NULL)
inlineprotected

Definition at line 25 of file bilininteg.hpp.

◆ ~BilinearFormIntegrator()

virtual mfem::BilinearFormIntegrator::~BilinearFormIntegrator ( )
inlinevirtual

Definition at line 83 of file bilininteg.hpp.

Member Function Documentation

◆ AssembleElementGrad()

virtual void mfem::BilinearFormIntegrator::AssembleElementGrad ( const FiniteElement el,
ElementTransformation Tr,
const Vector elfun,
DenseMatrix elmat 
)
inlinevirtual

Assemble the local gradient matrix.

Reimplemented from mfem::NonlinearFormIntegrator.

Definition at line 61 of file bilininteg.hpp.

◆ AssembleElementMatrix()

void mfem::BilinearFormIntegrator::AssembleElementMatrix ( const FiniteElement el,
ElementTransformation Trans,
DenseMatrix elmat 
)
virtual

◆ AssembleElementMatrix2()

void mfem::BilinearFormIntegrator::AssembleElementMatrix2 ( const FiniteElement trial_fe,
const FiniteElement test_fe,
ElementTransformation Trans,
DenseMatrix elmat 
)
virtual

◆ AssembleElementVector()

void mfem::BilinearFormIntegrator::AssembleElementVector ( const FiniteElement el,
ElementTransformation Tr,
const Vector elfun,
Vector elvect 
)
virtual

Perform the local action of the BilinearFormIntegrator.

Reimplemented from mfem::NonlinearFormIntegrator.

Reimplemented in mfem::VectorDiffusionIntegrator, and mfem::DiffusionIntegrator.

Definition at line 56 of file bilininteg.cpp.

◆ AssembleFaceGrad()

virtual void mfem::BilinearFormIntegrator::AssembleFaceGrad ( const FiniteElement el1,
const FiniteElement el2,
FaceElementTransformations Tr,
const Vector elfun,
DenseMatrix elmat 
)
inlinevirtual

Assemble the local action of the gradient of the NonlinearFormIntegrator resulting from a face integral term.

Reimplemented from mfem::NonlinearFormIntegrator.

Definition at line 66 of file bilininteg.hpp.

◆ AssembleFaceMatrix() [1/2]

void mfem::BilinearFormIntegrator::AssembleFaceMatrix ( const FiniteElement el1,
const FiniteElement el2,
FaceElementTransformations Trans,
DenseMatrix elmat 
)
virtual

◆ AssembleFaceMatrix() [2/2]

void mfem::BilinearFormIntegrator::AssembleFaceMatrix ( const FiniteElement trial_face_fe,
const FiniteElement test_fe1,
const FiniteElement test_fe2,
FaceElementTransformations Trans,
DenseMatrix elmat 
)
virtual

Abstract method used for assembling TraceFaceIntegrators in a MixedBilinearForm.

Reimplemented in mfem::NormalTraceJumpIntegrator, and mfem::TraceJumpIntegrator.

Definition at line 47 of file bilininteg.cpp.

◆ ComputeElementFlux()

virtual void mfem::BilinearFormIntegrator::ComputeElementFlux ( const FiniteElement el,
ElementTransformation Trans,
Vector u,
const FiniteElement fluxelem,
Vector flux,
int  with_coef = 1 
)
inlinevirtual

Reimplemented in mfem::CurlCurlIntegrator, and mfem::DiffusionIntegrator.

Definition at line 72 of file bilininteg.hpp.

◆ ComputeFluxEnergy()

virtual double mfem::BilinearFormIntegrator::ComputeFluxEnergy ( const FiniteElement fluxelem,
ElementTransformation Trans,
Vector flux,
Vector d_energy = NULL 
)
inlinevirtual

Reimplemented in mfem::CurlCurlIntegrator, and mfem::DiffusionIntegrator.

Definition at line 78 of file bilininteg.hpp.


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