![]() |
MFEM v4.8.0
Finite element discretization library
|
A piecewise matrix-valued coefficient with the pieces keyed off the element attribute numbers. More...
#include <coefficient.hpp>
Public Member Functions | |
PWMatrixCoefficient (int dim, bool symm=false) | |
Constructs a piecewise matrix coefficient of dimension dim by dim. | |
PWMatrixCoefficient (int h, int w, bool symm=false) | |
Constructs a piecewise matrix coefficient of dimension h by w. | |
PWMatrixCoefficient (int dim, const Array< int > &attr, const Array< MatrixCoefficient * > &coefs, bool symm=false) | |
Construct the coefficient using arrays describing the pieces. | |
PWMatrixCoefficient (int h, int w, const Array< int > &attr, const Array< MatrixCoefficient * > &coefs, bool symm=false) | |
Construct the coefficient using arrays describing the pieces. | |
void | SetTime (real_t t) override |
Set the time for time dependent coefficients. | |
void | UpdateCoefficients (const Array< int > &attr, const Array< MatrixCoefficient * > &coefs) |
Replace a set of coefficients. | |
void | UpdateCoefficient (int attr, MatrixCoefficient &coef) |
Replace a single coefficient for a particular attribute. | |
void | ZeroCoefficient (int attr) |
Remove a single MatrixCoefficient for a particular attribute. | |
void | Eval (DenseMatrix &K, ElementTransformation &T, const IntegrationPoint &ip) override |
Evaluate the coefficient. | |
![]() | |
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 |
A piecewise matrix-valued coefficient with the pieces keyed off the element attribute numbers.
A value of zero will be returned for any missing attribute numbers.
This object will not assume ownership of any MatrixCoefficient objects passed to it. Consequently, the caller must ensure that the individual MatrixCoefficient objects are not deleted while this PWMatrixCoefficient is still in use.
Definition at line 1146 of file coefficient.hpp.
|
inlineexplicit |
Constructs a piecewise matrix coefficient of dimension dim by dim.
Definition at line 1175 of file coefficient.hpp.
|
inlineexplicit |
Constructs a piecewise matrix coefficient of dimension h by w.
Definition at line 1179 of file coefficient.hpp.
|
inline |
Construct the coefficient using arrays describing the pieces.
dim | - size of the square matrix-valued result |
attr | - an array of attribute numbers for each piece |
coefs | - the corresponding array of MatrixCoefficient pointers |
symm | - true if the result will be symmetric, false otherwise Any missing attributes or NULL coefficient pointers will result in a zero matrix being returned. |
Definition at line 1193 of file coefficient.hpp.
|
inline |
Construct the coefficient using arrays describing the pieces.
h | - height of the matrix-valued result |
w | - width of the matrix-valued result |
attr | - an array of attribute numbers for each piece |
coefs | - the corresponding array of MatrixCoefficient pointers |
symm | - true if the result will be symmetric, false otherwise Any missing attributes or NULL coefficient pointers will result in a zero matrix being returned for that attribute. |
Definition at line 1210 of file coefficient.hpp.
|
overridevirtual |
Evaluate the coefficient.
Implements mfem::MatrixCoefficient.
Definition at line 699 of file coefficient.cpp.
|
overridevirtual |
Set the time for time dependent coefficients.
Reimplemented from mfem::MatrixCoefficient.
Definition at line 685 of file coefficient.cpp.
void mfem::PWMatrixCoefficient::UpdateCoefficient | ( | int | attr, |
MatrixCoefficient & | coef ) |
Replace a single coefficient for a particular attribute.
Definition at line 668 of file coefficient.cpp.
|
inline |
Replace a set of coefficients.
Definition at line 1219 of file coefficient.hpp.
|
inline |
Remove a single MatrixCoefficient for a particular attribute.
Definition at line 1227 of file coefficient.hpp.