![]() |
MFEM v4.8.0
Finite element discretization library
|
Matrix coefficient defined row-wise by an array of vector coefficients. Rows that are not set will evaluate to zero. The matrix coefficient is stored as an array indexing the rows of the matrix. More...
#include <coefficient.hpp>
Public Member Functions | |
MatrixArrayVectorCoefficient (int dim) | |
Construct a coefficient matrix of dimensions dim * dim. The actual coefficients still need to be added with Set(). | |
void | SetTime (real_t t) override |
Set the time for internally stored coefficients. | |
VectorCoefficient * | GetCoeff (int i) |
Get the vector coefficient located at the i-th row of the matrix. | |
void | Set (int i, VectorCoefficient *c, bool own=true) |
Set the coefficient located at the i-th row of the matrix. By this will take ownership of the Coefficient passed in, but this can be overridden with the own parameter. | |
void | SetOwnership (int i, bool own) |
Set ownership of the i'th coefficient. | |
bool | GetOwnership (int i) const |
Get ownership of the i'th coefficient. | |
void | Eval (int i, Vector &V, ElementTransformation &T, const IntegrationPoint &ip) |
void | Eval (DenseMatrix &K, ElementTransformation &T, const IntegrationPoint &ip) override |
Evaluate the matrix coefficient ip. | |
virtual | ~MatrixArrayVectorCoefficient () |
![]() | |
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. | |
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 () |
Additional Inherited Members | |
![]() | |
int | height |
int | width |
real_t | time |
bool | symmetric |
Matrix coefficient defined row-wise by an array of vector coefficients. Rows that are not set will evaluate to zero. The matrix coefficient is stored as an array indexing the rows of the matrix.
Definition at line 1353 of file coefficient.hpp.
|
explicit |
Construct a coefficient matrix of dimensions dim * dim. The actual coefficients still need to be added with Set().
Definition at line 927 of file coefficient.cpp.
|
virtual |
Definition at line 958 of file coefficient.cpp.
|
overridevirtual |
Evaluate the matrix coefficient ip.
Implements mfem::MatrixCoefficient.
Definition at line 983 of file coefficient.cpp.
void mfem::MatrixArrayVectorCoefficient::Eval | ( | int | i, |
Vector & | V, | ||
ElementTransformation & | T, | ||
const IntegrationPoint & | ip ) |
Evaluate coefficient located at the i-th row of the matrix using integration point ip.
Definition at line 966 of file coefficient.cpp.
|
inline |
Get the vector coefficient located at the i-th row of the matrix.
Definition at line 1368 of file coefficient.hpp.
|
inline |
Get ownership of the i'th coefficient.
Definition at line 1379 of file coefficient.hpp.
void mfem::MatrixArrayVectorCoefficient::Set | ( | int | i, |
VectorCoefficient * | c, | ||
bool | own = true ) |
Set the coefficient located at the i-th row of the matrix. By this will take ownership of the Coefficient passed in, but this can be overridden with the own parameter.
Definition at line 948 of file coefficient.cpp.
|
inline |
Set ownership of the i'th coefficient.
Definition at line 1376 of file coefficient.hpp.
|
overridevirtual |
Set the time for internally stored coefficients.
Reimplemented from mfem::MatrixCoefficient.
Definition at line 939 of file coefficient.cpp.