![]() |
MFEM v4.10.0
Finite element discretization library
|
#include <coefficient.hpp>
Public Member Functions | |
| 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 | Eval (DenseMatrix &K, ElementTransformation &T, const IntegrationPoint &ip)=0 |
| Evaluate the matrix coefficient in the element described by T at the point ip, storing the result in K. | |
| 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 | |
| int | height |
| int | width |
| real_t | time |
| bool | symmetric |
Base class for matrix-valued coefficients that optionally depend on time and space.
Definition at line 1060 of file coefficient.hpp.
|
inlineexplicit |
Construct a dim x dim matrix coefficient.
Definition at line 1069 of file coefficient.hpp.
|
inline |
Construct a h x w matrix coefficient.
Definition at line 1073 of file coefficient.hpp.
|
inlinevirtual |
Definition at line 1124 of file coefficient.hpp.
|
pure virtual |
Evaluate the matrix coefficient in the element described by T at the point ip, storing the result in K.
Implemented in HessianCoefficient, HRHessianCoefficient, mfem::CrossCrossCoefficient, mfem::ExponentialMatrixCoefficient, mfem::IdentityMatrixCoefficient, mfem::InverseMatrixCoefficient, mfem::MatrixArrayCoefficient, mfem::MatrixArrayVectorCoefficient, mfem::MatrixConstantCoefficient, mfem::MatrixFunctionCoefficient, mfem::MatrixProductCoefficient, mfem::MatrixRestrictedCoefficient, mfem::MatrixSumCoefficient, mfem::OuterProductCoefficient, mfem::PmlMatrixCoefficient, mfem::PWMatrixCoefficient, mfem::ScalarMatrixProductCoefficient, mfem::SymmetricMatrixCoefficient, mfem::SymmetricMatrixConstantCoefficient, mfem::SymmetricMatrixFunctionCoefficient, and mfem::TransposeMatrixCoefficient.
|
inlinevirtual |
(DEPRECATED) Evaluate a symmetric matrix coefficient.
Evaluate the upper triangular entries of the matrix coefficient in the symmetric case, similarly to Eval. Matrix entry (i,j) is stored in K[j - i + os_i] for 0 <= i <= j < width, os_0 = 0, os_{i+1} = os_i + width - i. That is, K = {M(0,0), ..., M(0,w-1), M(1,1), ..., M(1,w-1), ..., M(w-1,w-1) with w = width.
Reimplemented in mfem::MatrixFunctionCoefficient.
Definition at line 1120 of file coefficient.hpp.
|
inline |
Get the height of the matrix.
Definition at line 1083 of file coefficient.hpp.
|
inline |
Get the time for time dependent coefficients.
Definition at line 1080 of file coefficient.hpp.
|
inline |
For backward compatibility get the width of the matrix.
Definition at line 1089 of file coefficient.hpp.
|
inline |
Get the width of the matrix.
Definition at line 1086 of file coefficient.hpp.
|
inline |
Definition at line 1092 of file coefficient.hpp.
|
virtual |
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.
The stored entries use the same row/column convention as Eval(), unless transpose == true, in which case K^T is stored instead.
The vdim of the QuadratureFunction should be equal to the height times the width of the matrix.
Definition at line 696 of file coefficient.cpp.
|
inlinevirtual |
Set the time for time dependent coefficients.
Reimplemented in mfem::CrossCrossCoefficient, mfem::ExponentialMatrixCoefficient, mfem::InverseMatrixCoefficient, mfem::MatrixArrayCoefficient, mfem::MatrixArrayVectorCoefficient, mfem::MatrixFunctionCoefficient, mfem::MatrixRestrictedCoefficient, mfem::MatrixSumCoefficient, mfem::OuterProductCoefficient, mfem::PWMatrixCoefficient, mfem::ScalarMatrixProductCoefficient, mfem::SymmetricMatrixFunctionCoefficient, and mfem::TransposeMatrixCoefficient.
Definition at line 1077 of file coefficient.hpp.
|
protected |
Definition at line 1063 of file coefficient.hpp.
|
protected |
Definition at line 1065 of file coefficient.hpp.
|
protected |
Definition at line 1064 of file coefficient.hpp.
|
protected |
Definition at line 1063 of file coefficient.hpp.