MFEM  v4.3.0
Finite element discretization library
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Pages
Public Member Functions | Protected Attributes | List of all members
mfem::TMOP_Combo_QualityMetric Class Reference

Abstract class used to define combination of metrics with constant coefficients. More...

#include <tmop.hpp>

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

Public Member Functions

virtual void AddQualityMetric (TMOP_QualityMetric *tq, double wt=1.0)
 
virtual void SetTargetJacobian (const DenseMatrix &Jtr_)
 Specify the reference-element -> target-element Jacobian matrix for the point of interest. More...
 
virtual double EvalW (const DenseMatrix &Jpt) const
 Evaluate the strain energy density function, W = W(Jpt). More...
 
virtual void EvalP (const DenseMatrix &Jpt, DenseMatrix &P) const
 Evaluate the 1st Piola-Kirchhoff stress tensor, P = P(Jpt). More...
 
virtual void AssembleH (const DenseMatrix &Jpt, const DenseMatrix &DS, const double weight, DenseMatrix &A) const
 Evaluate the derivative of the 1st Piola-Kirchhoff stress tensor and assemble its contribution to the local gradient matrix 'A'. More...
 
- Public Member Functions inherited from mfem::TMOP_QualityMetric
 TMOP_QualityMetric ()
 
virtual ~TMOP_QualityMetric ()
 
virtual int Id () const
 Return the metric ID. More...
 
- Public Member Functions inherited from mfem::HyperelasticModel
 HyperelasticModel ()
 
virtual ~HyperelasticModel ()
 
void SetTransformation (ElementTransformation &Ttr_)
 

Protected Attributes

Array< TMOP_QualityMetric * > tmop_q_arr
 
Array< double > wt_arr
 
- Protected Attributes inherited from mfem::TMOP_QualityMetric
const DenseMatrixJtr
 
- Protected Attributes inherited from mfem::HyperelasticModel
ElementTransformationTtr
 

Additional Inherited Members

- Protected Member Functions inherited from mfem::TMOP_QualityMetric
void SetTransformation (ElementTransformation &)
 The method SetTransformation() is hidden for TMOP_QualityMetrics, because it is not used. More...
 

Detailed Description

Abstract class used to define combination of metrics with constant coefficients.

Definition at line 78 of file tmop.hpp.

Member Function Documentation

virtual void mfem::TMOP_Combo_QualityMetric::AddQualityMetric ( TMOP_QualityMetric tq,
double  wt = 1.0 
)
inlinevirtual

Definition at line 85 of file tmop.hpp.

void mfem::TMOP_Combo_QualityMetric::AssembleH ( const DenseMatrix Jpt,
const DenseMatrix DS,
const double  weight,
DenseMatrix A 
) const
virtual

Evaluate the derivative of the 1st Piola-Kirchhoff stress tensor and assemble its contribution to the local gradient matrix 'A'.

Parameters
[in]JptRepresents the target->physical transformation Jacobian matrix.
[in]DSGradient of the basis matrix (dof x dim).
[in]weightQuadrature weight coefficient for the point.
[in,out]ALocal gradient matrix where the contribution from this point will be added.

Computes weight * d(dW_dxi)_d(xj) at the current point, for all i and j, where x1 ... xn are the FE dofs. This function is usually defined using the matrix invariants and their derivatives.

Implements mfem::TMOP_QualityMetric.

Definition at line 46 of file tmop.cpp.

void mfem::TMOP_Combo_QualityMetric::EvalP ( const DenseMatrix Jpt,
DenseMatrix P 
) const
virtual

Evaluate the 1st Piola-Kirchhoff stress tensor, P = P(Jpt).

Parameters
[in]JptRepresents the target->physical transformation Jacobian matrix.
[out]PThe evaluated 1st Piola-Kirchhoff stress tensor.

Implements mfem::TMOP_QualityMetric.

Definition at line 33 of file tmop.cpp.

double mfem::TMOP_Combo_QualityMetric::EvalW ( const DenseMatrix Jpt) const
virtual

Evaluate the strain energy density function, W = W(Jpt).

Parameters
[in]JptRepresents the target->physical transformation Jacobian matrix.

Implements mfem::TMOP_QualityMetric.

Definition at line 23 of file tmop.cpp.

virtual void mfem::TMOP_Combo_QualityMetric::SetTargetJacobian ( const DenseMatrix Jtr_)
inlinevirtual

Specify the reference-element -> target-element Jacobian matrix for the point of interest.

The specified Jacobian matrix, Jtr, can be used by metrics that cannot be written just as a function of the target->physical Jacobian matrix, Jpt.

Reimplemented from mfem::TMOP_QualityMetric.

Definition at line 91 of file tmop.hpp.

Member Data Documentation

Array<TMOP_QualityMetric *> mfem::TMOP_Combo_QualityMetric::tmop_q_arr
protected

Definition at line 81 of file tmop.hpp.

Array<double> mfem::TMOP_Combo_QualityMetric::wt_arr
protected

Definition at line 82 of file tmop.hpp.


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