MFEM v4.7.0
Finite element discretization library
|
#include <mtop_integrators.hpp>
Public Member Functions | |
ParametricLinearDiffusion (BaseQFunction &qfunm) | |
virtual real_t | GetElementEnergy (const Array< const FiniteElement * > &el, const Array< const FiniteElement * > &pel, ElementTransformation &Tr, const Array< const Vector * > &elfun, const Array< const Vector * > &pelfun) override |
Computes the local energy. | |
virtual void | AssembleElementVector (const Array< const FiniteElement * > &el, const Array< const FiniteElement * > &pel, ElementTransformation &Tr, const Array< const Vector * > &elfun, const Array< const Vector * > &pelfun, const Array< Vector * > &elvec) override |
Computes the element's residual. | |
virtual void | AssembleElementGrad (const Array< const FiniteElement * > &el, const Array< const FiniteElement * > &pel, ElementTransformation &Tr, const Array< const Vector * > &elfun, const Array< const Vector * > &pelfun, const Array2D< DenseMatrix * > &elmats) override |
Computes the stiffness/tangent matrix. | |
virtual void | AssemblePrmElementVector (const Array< const FiniteElement * > &el, const Array< const FiniteElement * > &pel, ElementTransformation &Tr, const Array< const Vector * > &elfun, const Array< const Vector * > &alfun, const Array< const Vector * > &pelfun, const Array< Vector * > &elvec) override |
Public Member Functions inherited from mfem::ParametricBNLFormIntegrator | |
virtual void | AssembleFaceVector (const Array< const FiniteElement * > &el1, const Array< const FiniteElement * > &el2, const Array< const FiniteElement * > &pel1, const Array< const FiniteElement * > &pel2, FaceElementTransformations &Tr, const Array< const Vector * > &elfun, const Array< const Vector * > &pelfun, const Array< Vector * > &elvect) |
virtual void | AssemblePrmFaceVector (const Array< const FiniteElement * > &el1, const Array< const FiniteElement * > &el2, const Array< const FiniteElement * > &pel1, const Array< const FiniteElement * > &pel2, FaceElementTransformations &Tr, const Array< const Vector * > &elfun, const Array< const Vector * > &alfun, const Array< const Vector * > &pelfun, const Array< Vector * > &pelvect) |
virtual void | AssembleFaceGrad (const Array< const FiniteElement * > &el1, const Array< const FiniteElement * > &el2, const Array< const FiniteElement * > &pel1, const Array< const FiniteElement * > &pel2, FaceElementTransformations &Tr, const Array< const Vector * > &elfun, const Array< const Vector * > &pelfun, const Array2D< DenseMatrix * > &elmats) |
Assemble the local gradient matrix on faces of the elements. | |
virtual | ~ParametricBNLFormIntegrator () |
Provides implementation of an integrator for linear diffusion with parametrization provided by a density field. The setup is standard for topology optimization problems.
Definition at line 167 of file mtop_integrators.hpp.
|
inline |
Definition at line 170 of file mtop_integrators.hpp.
|
overridevirtual |
Computes the stiffness/tangent matrix.
Reimplemented from mfem::ParametricBNLFormIntegrator.
Definition at line 151 of file mtop_integrators.cpp.
|
overridevirtual |
Computes the element's residual.
Reimplemented from mfem::ParametricBNLFormIntegrator.
Definition at line 82 of file mtop_integrators.cpp.
|
overridevirtual |
Computes the product of the adjoint solution and the derivative of the residual with respect to the parametric fields.
Reimplemented from mfem::ParametricBNLFormIntegrator.
Definition at line 220 of file mtop_integrators.cpp.
|
overridevirtual |
Computes the local energy.
Reimplemented from mfem::ParametricBNLFormIntegrator.
Definition at line 17 of file mtop_integrators.cpp.