![]() |
MFEM
v4.2.0
Finite element discretization library
|
#include <bilininteg.hpp>
Public Member Functions | |
| VectorMassIntegrator () | |
| Construct an integrator with coefficient 1.0. More... | |
| VectorMassIntegrator (Coefficient &q, int qo=0) | |
| VectorMassIntegrator (Coefficient &q, const IntegrationRule *ir) | |
| VectorMassIntegrator (VectorCoefficient &q, int qo=0) | |
| Construct an integrator with diagonal coefficient q. More... | |
| VectorMassIntegrator (MatrixCoefficient &q, int qo=0) | |
| Construct an integrator with matrix coefficient q. More... | |
| virtual | ~VectorMassIntegrator () |
| int | GetVDim () const |
| void | SetVDim (int vdim) |
| 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 | AssemblePA (const FiniteElementSpace &fes) |
| Method defining partial assembly. More... | |
| virtual void | AssembleMF (const FiniteElementSpace &fes) |
| Method defining matrix-free assembly. More... | |
| virtual void | AssembleDiagonalPA (Vector &diag) |
| Assemble diagonal and add it to Vector diag. More... | |
| virtual void | AssembleDiagonalMF (Vector &diag) |
| Assemble diagonal and add it to Vector diag. More... | |
| virtual void | AddMultPA (const Vector &x, Vector &y) const |
| Method for partially assembled action. More... | |
| virtual void | AddMultMF (const Vector &x, Vector &y) const |
Public Member Functions inherited from mfem::BilinearFormIntegrator | |
| virtual void | AssemblePA (const FiniteElementSpace &trial_fes, const FiniteElementSpace &test_fes) |
| virtual void | AssemblePAInteriorFaces (const FiniteElementSpace &fes) |
| virtual void | AssemblePABoundaryFaces (const FiniteElementSpace &fes) |
| virtual void | AssembleDiagonalPA_ADAt (const Vector &D, Vector &diag) |
| Assemble diagonal of ADA^T (A is this integrator) and add it to diag. More... | |
| virtual void | AddMultTransposePA (const Vector &x, Vector &y) const |
| Method for partially assembled transposed action. More... | |
| virtual void | AssembleEA (const FiniteElementSpace &fes, Vector &emat, const bool add=true) |
| Method defining element assembly. More... | |
| virtual void | AddMultTransposeMF (const Vector &x, Vector &y) const |
| virtual void | AssembleEAInteriorFaces (const FiniteElementSpace &fes, Vector &ea_data_int, Vector &ea_data_ext, const bool add=true) |
| virtual void | AssembleEABoundaryFaces (const FiniteElementSpace &fes, Vector &ea_data_bdr, const bool add=true) |
| 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. Note that the default implementation in the base class is general but not efficient. More... | |
| virtual void | AssembleFaceVector (const FiniteElement &el1, const FiniteElement &el2, FaceElementTransformations &Tr, const Vector &elfun, Vector &elvect) |
| Perform the local action of the BilinearFormIntegrator resulting from a face integral term. Note that the default implementation in the base class is general but not efficient. 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, bool with_coef=true) |
| Virtual method required for Zienkiewicz-Zhu type error estimators. More... | |
| virtual double | ComputeFluxEnergy (const FiniteElement &fluxelem, ElementTransformation &Trans, Vector &flux, Vector *d_energy=NULL) |
| Virtual method required for Zienkiewicz-Zhu type error estimators. More... | |
| 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 double | GetElementEnergy (const FiniteElement &el, ElementTransformation &Tr, const Vector &elfun) |
| Compute the local energy. More... | |
| virtual | ~NonlinearFormIntegrator () |
Protected Attributes | |
| Coefficient * | Q |
| VectorCoefficient * | VQ |
| MatrixCoefficient * | MQ |
| Vector | pa_data |
| const DofToQuad * | maps |
| Not owned. More... | |
| const GeometricFactors * | geom |
| Not owned. More... | |
| int | dim |
| int | ne |
| int | nq |
| int | dofs1D |
| int | quad1D |
| CeedData * | ceedDataPtr |
Protected Attributes inherited from mfem::NonlinearFormIntegrator | |
| const IntegrationRule * | IntRule |
Additional Inherited Members | |
Protected Member Functions inherited from mfem::BilinearFormIntegrator | |
| BilinearFormIntegrator (const IntegrationRule *ir=NULL) | |
Protected Member Functions inherited from mfem::NonlinearFormIntegrator | |
| NonlinearFormIntegrator (const IntegrationRule *ir=NULL) | |
Class for integrating the bilinear form a(u,v) := (Q u, v), where u=(u1,...,un) and v=(v1,...,vn); ui and vi are defined by scalar FE through standard transformation.
Definition at line 2135 of file bilininteg.hpp.
|
inline |
Construct an integrator with coefficient 1.0.
Definition at line 2159 of file bilininteg.hpp.
|
inline |
Construct an integrator with scalar coefficient q. If possible, save memory by using a scalar integrator since the resulting matrix is block diagonal with the same diagonal block repeated.
Definition at line 2164 of file bilininteg.hpp.
|
inline |
Definition at line 2166 of file bilininteg.hpp.
|
inline |
Construct an integrator with diagonal coefficient q.
Definition at line 2170 of file bilininteg.hpp.
|
inline |
Construct an integrator with matrix coefficient q.
Definition at line 2174 of file bilininteg.hpp.
|
inlinevirtual |
Definition at line 2178 of file bilininteg.hpp.
Perform the action of integrator on the input x and add the result to the output y. Both x and y are E-vectors, i.e. they represent the element-wise discontinuous version of the FE space.
This method can be called only after the method AssembleMF() has been called.
Reimplemented from mfem::BilinearFormIntegrator.
Definition at line 46 of file bilininteg_vecmass_mf.cpp.
Method for partially assembled action.
Perform the action of integrator on the input x and add the result to the output y. Both x and y are E-vectors, i.e. they represent the element-wise discontinuous version of the FE space.
This method can be called only after the method AssemblePA() has been called.
Reimplemented from mfem::BilinearFormIntegrator.
Definition at line 370 of file bilininteg_vecmass.cpp.
|
virtual |
Assemble diagonal and add it to Vector diag.
Reimplemented from mfem::BilinearFormIntegrator.
Definition at line 60 of file bilininteg_vecmass_mf.cpp.
|
virtual |
Assemble diagonal and add it to Vector diag.
Reimplemented from mfem::BilinearFormIntegrator.
Definition at line 530 of file bilininteg_vecmass.cpp.
|
virtual |
Given a particular Finite Element computes the element matrix elmat.
Reimplemented from mfem::BilinearFormIntegrator.
Definition at line 1138 of file bilininteg.cpp.
|
virtual |
Compute the local matrix representation of a bilinear form a(u,v) defined on different trial (given by u) and test (given by v) spaces. The rows in the local matrix correspond to the test dofs and the columns – to the trial dofs.
Reimplemented from mfem::BilinearFormIntegrator.
Definition at line 1219 of file bilininteg.cpp.
|
virtual |
Method defining matrix-free assembly.
Used with BilinearFormIntegrators that have different spaces.The result of fully matrix-free assembly is stored internally so that it can be used later in the methods AddMultMF() and AddMultTransposeMF().
Reimplemented from mfem::BilinearFormIntegrator.
Definition at line 25 of file bilininteg_vecmass_mf.cpp.
|
virtual |
Method defining partial assembly.
The result of the partial assembly is stored internally so that it can be used later in the methods AddMultPA() and AddMultTransposePA().
Reimplemented from mfem::BilinearFormIntegrator.
Definition at line 25 of file bilininteg_vecmass.cpp.
|
inline |
Definition at line 2183 of file bilininteg.hpp.
|
inline |
Definition at line 2184 of file bilininteg.hpp.
|
protected |
Definition at line 2155 of file bilininteg.hpp.
|
protected |
Definition at line 2152 of file bilininteg.hpp.
|
protected |
Definition at line 2152 of file bilininteg.hpp.
|
protected |
Not owned.
Definition at line 2151 of file bilininteg.hpp.
|
protected |
Not owned.
Definition at line 2150 of file bilininteg.hpp.
|
protected |
Definition at line 2147 of file bilininteg.hpp.
|
protected |
Definition at line 2152 of file bilininteg.hpp.
|
protected |
Definition at line 2152 of file bilininteg.hpp.
|
protected |
Definition at line 2149 of file bilininteg.hpp.
|
protected |
Definition at line 2145 of file bilininteg.hpp.
|
protected |
Definition at line 2152 of file bilininteg.hpp.
|
protected |
Definition at line 2146 of file bilininteg.hpp.
1.8.5