MFEM
v4.4.0
Finite element discretization library
|
Base class for Matrix Coefficients that optionally depend on time and space. More...
#include <coefficient.hpp>
Public Member Functions | |
MatrixCoefficient (int dim, bool symm=false) | |
Construct a dim x dim matrix coefficient. More... | |
MatrixCoefficient (int h, int w, bool symm=false) | |
Construct a h x w matrix coefficient. More... | |
virtual void | SetTime (double t) |
Set the time for time dependent coefficients. More... | |
double | GetTime () |
Get the time for time dependent coefficients. More... | |
int | GetHeight () const |
Get the height of the matrix. More... | |
int | GetWidth () const |
Get the width of the matrix. More... | |
int | GetVDim () const |
For backward compatibility get the width of the matrix. More... | |
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. More... | |
virtual void | EvalSymmetric (Vector &K, ElementTransformation &T, const IntegrationPoint &ip) |
(DEPRECATED) Evaluate a symmetric matrix coefficient. More... | |
virtual | ~MatrixCoefficient () |
Protected Attributes | |
int | height |
int | width |
double | time |
bool | symmetric |
Base class for Matrix Coefficients that optionally depend on time and space.
Definition at line 876 of file coefficient.hpp.
|
inlineexplicit |
Construct a dim x dim matrix coefficient.
Definition at line 885 of file coefficient.hpp.
|
inline |
Construct a h x w matrix coefficient.
Definition at line 889 of file coefficient.hpp.
|
inlinevirtual |
Definition at line 929 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 mfem::CrossCrossCoefficient, mfem::OuterProductCoefficient, mfem::InverseMatrixCoefficient, mfem::TransposeMatrixCoefficient, mfem::ScalarMatrixProductCoefficient, mfem::MatrixProductCoefficient, mfem::MatrixSumCoefficient, mfem::IdentityMatrixCoefficient, mfem::MatrixRestrictedCoefficient, mfem::MatrixArrayCoefficient, mfem::MatrixFunctionCoefficient, mfem::PWMatrixCoefficient, mfem::MatrixConstantCoefficient, HRHessianCoefficient, and HessianCoefficient.
|
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 925 of file coefficient.hpp.
|
inline |
Get the height of the matrix.
Definition at line 899 of file coefficient.hpp.
|
inline |
Get the time for time dependent coefficients.
Definition at line 896 of file coefficient.hpp.
|
inline |
For backward compatibility get the width of the matrix.
Definition at line 905 of file coefficient.hpp.
|
inline |
Get the width of the matrix.
Definition at line 902 of file coefficient.hpp.
|
inline |
Definition at line 908 of file coefficient.hpp.
|
inlinevirtual |
Set the time for time dependent coefficients.
Reimplemented in mfem::CrossCrossCoefficient, mfem::OuterProductCoefficient, mfem::InverseMatrixCoefficient, mfem::TransposeMatrixCoefficient, mfem::ScalarMatrixProductCoefficient, mfem::MatrixSumCoefficient, mfem::MatrixRestrictedCoefficient, mfem::MatrixArrayCoefficient, mfem::MatrixFunctionCoefficient, and mfem::PWMatrixCoefficient.
Definition at line 893 of file coefficient.hpp.
|
protected |
Definition at line 879 of file coefficient.hpp.
|
protected |
Definition at line 881 of file coefficient.hpp.
|
protected |
Definition at line 880 of file coefficient.hpp.
|
protected |
Definition at line 879 of file coefficient.hpp.