MFEM
v4.2.0
Finite element discretization library
|
Matrix coefficient defined as -a k x k x, for a vector k and scalar a. More...
#include <coefficient.hpp>
Public Member Functions | |
CrossCrossCoefficient (double A, VectorCoefficient &K) | |
CrossCrossCoefficient (Coefficient &A, VectorCoefficient &K) | |
void | SetAConst (double A) |
Reset the scalar factor as a constant. More... | |
double | GetAConst () const |
Return the scalar factor. More... | |
void | SetACoef (Coefficient &A) |
Reset the scalar factor. More... | |
Coefficient * | GetACoef () const |
Return the scalar factor. More... | |
void | SetKCoef (VectorCoefficient &K) |
Reset the vector factor. More... | |
VectorCoefficient * | GetKCoef () const |
Return the vector factor. More... | |
virtual void | Eval (DenseMatrix &M, ElementTransformation &T, const IntegrationPoint &ip) |
Evaluate the matrix coefficient at ip. More... | |
Public Member Functions inherited from mfem::MatrixCoefficient | |
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... | |
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 | EvalSymmetric (Vector &K, ElementTransformation &T, const IntegrationPoint &ip) |
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. More... | |
virtual | ~MatrixCoefficient () |
Additional Inherited Members | |
Protected Attributes inherited from mfem::MatrixCoefficient | |
int | height |
int | width |
double | time |
bool | symmetric |
Matrix coefficient defined as -a k x k x, for a vector k and scalar a.
This coefficient returns \(a * (|k|^2 I - k \otimes k)\), where I is the identity matrix and \(\otimes\) indicates the outer product. This can be evaluated for vectors of any dimension but in three dimensions it corresponds to computing the cross product with k twice.
Definition at line 1522 of file coefficient.hpp.
mfem::CrossCrossCoefficient::CrossCrossCoefficient | ( | double | A, |
VectorCoefficient & | K | ||
) |
mfem::CrossCrossCoefficient::CrossCrossCoefficient | ( | Coefficient & | A, |
VectorCoefficient & | K | ||
) |
Definition at line 700 of file coefficient.cpp.
|
virtual |
Evaluate the matrix coefficient at ip.
Implements mfem::MatrixCoefficient.
Definition at line 706 of file coefficient.cpp.
|
inline |
Return the scalar factor.
Definition at line 1543 of file coefficient.hpp.
|
inline |
Return the scalar factor.
Definition at line 1538 of file coefficient.hpp.
|
inline |
Return the vector factor.
Definition at line 1548 of file coefficient.hpp.
|
inline |
Reset the scalar factor.
Definition at line 1541 of file coefficient.hpp.
|
inline |
Reset the scalar factor as a constant.
Definition at line 1536 of file coefficient.hpp.
|
inline |
Reset the vector factor.
Definition at line 1546 of file coefficient.hpp.