MFEM
v4.5.2
Finite element discretization library

A piecewise vectorvalued coefficient with the pieces keyed off the element attribute numbers. More...
#include <coefficient.hpp>
Public Member Functions  
PWVectorCoefficient (int vd)  
Constructs a piecewise vector coefficient of dimension vd. More...  
PWVectorCoefficient (int vd, const Array< int > &attr, const Array< VectorCoefficient *> &coefs)  
Construct the coefficient using arrays describing the pieces. More...  
virtual void  SetTime (double t) 
Set the time for time dependent coefficients. More...  
void  UpdateCoefficients (const Array< int > &attr, const Array< VectorCoefficient *> &coefs) 
Replace a set of coefficients. More...  
void  UpdateCoefficient (int attr, VectorCoefficient &coef) 
Replace a single Coefficient for a particular attribute. More...  
void  ZeroCoefficient (int attr) 
Remove a single VectorCoefficient for a particular attribute. More...  
virtual void  Eval (Vector &V, ElementTransformation &T, const IntegrationPoint &ip) 
Evaluate the coefficient. More...  
virtual void  Eval (Vector &V, ElementTransformation &T, const IntegrationPoint &ip)=0 
Evaluate the vector coefficient in the element described by T at the point ip, storing the result in V. More...  
virtual void  Eval (DenseMatrix &M, ElementTransformation &T, const IntegrationRule &ir) 
Evaluate the vector coefficient in the element described by T at all points of ir, storing the result in M. More...  
Public Member Functions inherited from mfem::VectorCoefficient  
VectorCoefficient (int vd)  
Initialize the VectorCoefficient with vector dimension vd. More...  
double  GetTime () 
Get the time for time dependent coefficients. More...  
int  GetVDim () 
Returns dimension of the vector. More...  
virtual void  Eval (DenseMatrix &M, ElementTransformation &T, const IntegrationRule &ir) 
Evaluate the vector coefficient in the element described by T at all points of ir, storing the result in M. More...  
virtual void  Project (QuadratureFunction &qf) 
Fill the QuadratureFunction qf by evaluating the coefficient at the quadrature points. More...  
virtual  ~VectorCoefficient () 
Additional Inherited Members  
Protected Attributes inherited from mfem::VectorCoefficient  
int  vdim 
double  time 
A piecewise vectorvalued 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 VectorCoefficient objects passed to it. Consequently, the caller must ensure that the individual VectorCoefficient objects are not deleted while this PWVectorCoefficient is still in use.
Definition at line 537 of file coefficient.hpp.

inlineexplicit 
Constructs a piecewise vector coefficient of dimension vd.
Definition at line 566 of file coefficient.hpp.

inline 
Construct the coefficient using arrays describing the pieces.
vd   dimension of the vectorvalued result 
attr   an array of attribute numbers for each piece 
coefs   the corresponding array of VectorCoefficient pointers Any missing attributes or NULL coefficient pointers will result in a zero vector being returned for that attribute. 
Definition at line 578 of file coefficient.hpp.

virtual 
Evaluate the coefficient.
Implements mfem::VectorCoefficient.
Definition at line 298 of file coefficient.cpp.
void mfem::VectorCoefficient::Eval 
Evaluate the vector coefficient in the element described by T at all points of ir, storing the result in M.
The dimensions of M are GetVDim() by ir.GetNPoints() and they must be set by the implementation of this method.
The general implementation provided by the base class (using the Eval method for one IntegrationPoint at a time) can be overloaded for more efficient implementation.
Definition at line 222 of file coefficient.cpp.
virtual void mfem::VectorCoefficient::Eval 
Evaluate the vector coefficient in the element described by T at the point ip, storing the result in V.

virtual 
Set the time for time dependent coefficients.
Reimplemented from mfem::VectorCoefficient.
Definition at line 284 of file coefficient.cpp.
void mfem::PWVectorCoefficient::UpdateCoefficient  (  int  attr, 
VectorCoefficient &  coef  
) 
Replace a single Coefficient for a particular attribute.
Definition at line 276 of file coefficient.cpp.

inline 
Replace a set of coefficients.
Definition at line 586 of file coefficient.hpp.

inline 
Remove a single VectorCoefficient for a particular attribute.
Definition at line 594 of file coefficient.hpp.