MFEM v4.7.0
Finite element discretization library
|
Base class for symmetric matrix coefficients that optionally depend on time and space. More...
#include <coefficient.hpp>
Public Member Functions | |
SymmetricMatrixCoefficient (int dimension) | |
Construct a dim x dim matrix coefficient. | |
int | GetSize () const |
Get the size of the matrix. | |
virtual void | ProjectSymmetric (QuadratureFunction &qf) |
Fill the QuadratureFunction qf by evaluating the coefficient at the quadrature points. | |
virtual void | Eval (DenseSymmetricMatrix &K, ElementTransformation &T, const IntegrationPoint &ip)=0 |
Evaluate the matrix coefficient in the element described by T at the point ip, storing the result as a symmetric matrix K. | |
virtual void | Eval (DenseMatrix &K, ElementTransformation &T, const IntegrationPoint &ip) |
Evaluate the matrix coefficient in the element described by T at the point ip, storing the result as a dense matrix K. | |
const DenseSymmetricMatrix & | GetMatrix () |
Return a reference to the constant matrix. | |
virtual | ~SymmetricMatrixCoefficient () |
Public Member Functions inherited from mfem::MatrixCoefficient | |
MatrixCoefficient (int dim, bool symm=false) | |
Construct a dim x dim matrix coefficient. | |
MatrixCoefficient (int h, int w, bool symm=false) | |
Construct a h x w matrix coefficient. | |
virtual void | SetTime (real_t t) |
Set the time for time dependent coefficients. | |
real_t | GetTime () |
Get the time for time dependent coefficients. | |
int | GetHeight () const |
Get the height of the matrix. | |
int | GetWidth () const |
Get the width of the matrix. | |
int | GetVDim () const |
For backward compatibility get the width of the matrix. | |
bool | IsSymmetric () const |
virtual void | Project (QuadratureFunction &qf, bool transpose=false) |
Fill the QuadratureFunction qf by evaluating the coefficient at the quadrature points. The matrix will be transposed or not according to the boolean argument transpose. | |
virtual void | EvalSymmetric (Vector &K, ElementTransformation &T, const IntegrationPoint &ip) |
(DEPRECATED) Evaluate a symmetric matrix coefficient. | |
virtual | ~MatrixCoefficient () |
Protected Attributes | |
DenseSymmetricMatrix | mat |
Internal matrix used when evaluating this coefficient as a DenseMatrix. | |
Protected Attributes inherited from mfem::MatrixCoefficient | |
int | height |
int | width |
real_t | time |
bool | symmetric |
Base class for symmetric matrix coefficients that optionally depend on time and space.
Definition at line 1426 of file coefficient.hpp.
|
inlineexplicit |
Construct a dim x dim matrix coefficient.
Definition at line 1433 of file coefficient.hpp.
|
inlinevirtual |
Definition at line 1470 of file coefficient.hpp.
|
virtual |
Evaluate the matrix coefficient in the element described by T at the point ip, storing the result as a dense matrix K.
This function allows the use of SymmetricMatrixCoefficient in situations where the symmetry is not taken advantage of.
Implements mfem::MatrixCoefficient.
Reimplemented in mfem::SymmetricMatrixConstantCoefficient, and mfem::SymmetricMatrixFunctionCoefficient.
Definition at line 828 of file coefficient.cpp.
|
pure virtual |
Evaluate the matrix coefficient in the element described by T at the point ip, storing the result as a symmetric matrix K.
Implemented in mfem::SymmetricMatrixConstantCoefficient, and mfem::SymmetricMatrixFunctionCoefficient.
|
inline |
Return a reference to the constant matrix.
Definition at line 1468 of file coefficient.hpp.
|
inline |
Get the size of the matrix.
Definition at line 1437 of file coefficient.hpp.
|
virtual |
Fill the QuadratureFunction qf by evaluating the coefficient at the quadrature points.
The vdim of the coefficient should be equal to height*(height+1)/2.
Definition at line 803 of file coefficient.cpp.
|
protected |
Internal matrix used when evaluating this coefficient as a DenseMatrix.
Definition at line 1430 of file coefficient.hpp.