MFEM  v4.6.0
Finite element discretization library
Public Member Functions | Protected Attributes | List of all members
mfem::DGDirichletLFIntegrator Class Reference

#include <lininteg.hpp>

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

Public Member Functions

 DGDirichletLFIntegrator (Coefficient &u, const double s, const double k)
 
 DGDirichletLFIntegrator (Coefficient &u, Coefficient &q, const double s, const double k)
 
 DGDirichletLFIntegrator (Coefficient &u, MatrixCoefficient &q, const double s, const double k)
 
virtual void AssembleRHSElementVect (const FiniteElement &el, ElementTransformation &Tr, Vector &elvect)
 
virtual void AssembleRHSElementVect (const FiniteElement &el, FaceElementTransformations &Tr, Vector &elvect)
 
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::LinearFormIntegrator
virtual bool SupportsDevice () const
 Method probing for assembly on device. More...
 
virtual void AssembleDevice (const FiniteElementSpace &fes, const Array< int > &markers, Vector &b)
 Method defining assembly on device. More...
 
virtual void AssembleRHSElementVect (const FiniteElement &el1, const FiniteElement &el2, FaceElementTransformations &Tr, Vector &elvect)
 
virtual void SetIntRule (const IntegrationRule *ir)
 
const IntegrationRuleGetIntRule ()
 
virtual ~LinearFormIntegrator ()
 

Protected Attributes

CoefficientuD
 
CoefficientQ
 
MatrixCoefficientMQ
 
double sigma
 
double kappa
 
Vector shape
 
Vector dshape_dn
 
Vector nor
 
Vector nh
 
Vector ni
 
DenseMatrix dshape
 
DenseMatrix mq
 
DenseMatrix adjJ
 
- Protected Attributes inherited from mfem::LinearFormIntegrator
const IntegrationRuleIntRule
 

Additional Inherited Members

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

Detailed Description

Boundary linear integrator for imposing non-zero Dirichlet boundary conditions, to be used in conjunction with DGDiffusionIntegrator. Specifically, given the Dirichlet data u_D, the linear form assembles the following integrals on the boundary:

sigma < u_D, (Q grad(v)).n > + kappa < {h^{-1} Q} u_D, v >,

where Q is a scalar or matrix diffusion coefficient and v is the test function. The parameters sigma and kappa should be the same as the ones used in the DGDiffusionIntegrator.

Definition at line 536 of file lininteg.hpp.

Constructor & Destructor Documentation

◆ DGDirichletLFIntegrator() [1/3]

mfem::DGDirichletLFIntegrator::DGDirichletLFIntegrator ( Coefficient u,
const double  s,
const double  k 
)
inline

Definition at line 548 of file lininteg.hpp.

◆ DGDirichletLFIntegrator() [2/3]

mfem::DGDirichletLFIntegrator::DGDirichletLFIntegrator ( Coefficient u,
Coefficient q,
const double  s,
const double  k 
)
inline

Definition at line 550 of file lininteg.hpp.

◆ DGDirichletLFIntegrator() [3/3]

mfem::DGDirichletLFIntegrator::DGDirichletLFIntegrator ( Coefficient u,
MatrixCoefficient q,
const double  s,
const double  k 
)
inline

Definition at line 553 of file lininteg.hpp.

Member Function Documentation

◆ AssembleRHSElementVect() [1/5]

void mfem::DGDirichletLFIntegrator::AssembleRHSElementVect ( const FiniteElement el,
ElementTransformation Tr,
Vector elvect 
)
virtual

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

Implements mfem::LinearFormIntegrator.

Definition at line 776 of file lininteg.cpp.

◆ AssembleRHSElementVect() [2/5]

void mfem::DGDirichletLFIntegrator::AssembleRHSElementVect ( const FiniteElement el,
FaceElementTransformations Tr,
Vector elvect 
)
virtual

Reimplemented from mfem::LinearFormIntegrator.

Definition at line 782 of file lininteg.cpp.

◆ AssembleRHSElementVect() [3/5]

void mfem::LinearFormIntegrator::AssembleRHSElementVect

Definition at line 25 of file lininteg.cpp.

◆ AssembleRHSElementVect() [4/5]

virtual void mfem::LinearFormIntegrator::AssembleRHSElementVect

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

◆ AssembleRHSElementVect() [5/5]

void mfem::LinearFormIntegrator::AssembleRHSElementVect

Definition at line 31 of file lininteg.cpp.

Member Data Documentation

◆ adjJ

DenseMatrix mfem::DGDirichletLFIntegrator::adjJ
protected

Definition at line 545 of file lininteg.hpp.

◆ dshape

DenseMatrix mfem::DGDirichletLFIntegrator::dshape
protected

Definition at line 545 of file lininteg.hpp.

◆ dshape_dn

Vector mfem::DGDirichletLFIntegrator::dshape_dn
protected

Definition at line 544 of file lininteg.hpp.

◆ kappa

double mfem::DGDirichletLFIntegrator::kappa
protected

Definition at line 541 of file lininteg.hpp.

◆ MQ

MatrixCoefficient* mfem::DGDirichletLFIntegrator::MQ
protected

Definition at line 540 of file lininteg.hpp.

◆ mq

DenseMatrix mfem::DGDirichletLFIntegrator::mq
protected

Definition at line 545 of file lininteg.hpp.

◆ nh

Vector mfem::DGDirichletLFIntegrator::nh
protected

Definition at line 544 of file lininteg.hpp.

◆ ni

Vector mfem::DGDirichletLFIntegrator::ni
protected

Definition at line 544 of file lininteg.hpp.

◆ nor

Vector mfem::DGDirichletLFIntegrator::nor
protected

Definition at line 544 of file lininteg.hpp.

◆ Q

Coefficient * mfem::DGDirichletLFIntegrator::Q
protected

Definition at line 539 of file lininteg.hpp.

◆ shape

Vector mfem::DGDirichletLFIntegrator::shape
protected

Definition at line 544 of file lininteg.hpp.

◆ sigma

double mfem::DGDirichletLFIntegrator::sigma
protected

Definition at line 541 of file lininteg.hpp.

◆ uD

Coefficient* mfem::DGDirichletLFIntegrator::uD
protected

Definition at line 539 of file lininteg.hpp.


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