![]() |
MFEM v4.10.0
Finite element discretization library
|
Vector coefficient defined by a scalar DeltaCoefficient and a constant vector direction. More...
#include <coefficient.hpp>
Public Member Functions | |
| VectorDeltaCoefficient (int vdim_) | |
| Construct with a vector of dimension vdim_. | |
| VectorDeltaCoefficient (const Vector &dir_) | |
| Construct with a Vector object representing the direction and a unit delta function centered at (0.0,0.0,0.0) | |
| VectorDeltaCoefficient (const Vector &dir_, real_t x, real_t s) | |
| Construct with a Vector object representing the direction and a delta function scaled by s and centered at (x,0.0,0.0) | |
| VectorDeltaCoefficient (const Vector &dir_, real_t x, real_t y, real_t s) | |
| Construct with a Vector object representing the direction and a delta function scaled by s and centered at (x,y,0.0) | |
| VectorDeltaCoefficient (const Vector &dir_, real_t x, real_t y, real_t z, real_t s) | |
| Construct with a Vector object representing the direction and a delta function scaled by s and centered at (x,y,z) | |
| void | SetTime (real_t t) override |
| Set the time for internally stored coefficients. | |
| void | SetDeltaCoefficient (const DeltaCoefficient &d_) |
| Replace the associated DeltaCoefficient with a new DeltaCoefficient. | |
| DeltaCoefficient & | GetDeltaCoefficient () |
| Return the associated scalar DeltaCoefficient. | |
| void | SetScale (real_t s) |
| void | SetDirection (const Vector &d_) |
| void | SetDeltaCenter (const Vector ¢er) |
| void | GetDeltaCenter (Vector ¢er) |
| virtual void | EvalDelta (Vector &V, ElementTransformation &T, const IntegrationPoint &ip) |
| Return the specified direction vector multiplied by the value returned by DeltaCoefficient::EvalDelta() of the associated scalar DeltaCoefficient. | |
| void | Eval (Vector &V, ElementTransformation &T, const IntegrationPoint &ip) override |
| A VectorDeltaFunction cannot be evaluated. Calling this method will cause an MFEM error, terminating the application. | |
| virtual | ~VectorDeltaCoefficient () |
| 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. | |
Public Member Functions inherited from mfem::VectorCoefficient | |
| VectorCoefficient (int vd) | |
| Initialize the VectorCoefficient with vector dimension vd. | |
| real_t | GetTime () |
| Get the time for time dependent coefficients. | |
| int | GetVDim () |
| Returns dimension of the vector. | |
| virtual void | Project (QuadratureFunction &qf) |
| Fill the QuadratureFunction qf by evaluating the coefficient at the quadrature points. | |
| virtual | ~VectorCoefficient () |
Protected Attributes | |
| Vector | dir |
| DeltaCoefficient | d |
Protected Attributes inherited from mfem::VectorCoefficient | |
| int | vdim |
| real_t | time |
Vector coefficient defined by a scalar DeltaCoefficient and a constant vector direction.
WARNING this cannot be used as a normal coefficient. The usual Eval method is disabled.
Definition at line 962 of file coefficient.hpp.
|
inline |
Construct with a vector of dimension vdim_.
Definition at line 970 of file coefficient.hpp.
|
inline |
Construct with a Vector object representing the direction and a unit delta function centered at (0.0,0.0,0.0)
Definition at line 975 of file coefficient.hpp.
|
inline |
Construct with a Vector object representing the direction and a delta function scaled by s and centered at (x,0.0,0.0)
Definition at line 980 of file coefficient.hpp.
|
inline |
Construct with a Vector object representing the direction and a delta function scaled by s and centered at (x,y,0.0)
Definition at line 985 of file coefficient.hpp.
|
inline |
Construct with a Vector object representing the direction and a delta function scaled by s and centered at (x,y,z)
Definition at line 990 of file coefficient.hpp.
|
inlinevirtual |
Definition at line 1023 of file coefficient.hpp.
|
virtual |
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.
Reimplemented from mfem::VectorCoefficient.
Definition at line 615 of file coefficient.cpp.
|
inlineoverridevirtual |
A VectorDeltaFunction cannot be evaluated. Calling this method will cause an MFEM error, terminating the application.
Implements mfem::VectorCoefficient.
Definition at line 1020 of file coefficient.hpp.
|
virtual |
Return the specified direction vector multiplied by the value returned by DeltaCoefficient::EvalDelta() of the associated scalar DeltaCoefficient.
Definition at line 652 of file coefficient.cpp.
|
inline |
Definition at line 1009 of file coefficient.hpp.
|
inline |
Return the associated scalar DeltaCoefficient.
Definition at line 1003 of file coefficient.hpp.
|
inline |
Definition at line 1008 of file coefficient.hpp.
|
inline |
Replace the associated DeltaCoefficient with a new DeltaCoefficient.
The new DeltaCoefficient cannot have a specified weight Coefficient, i.e. DeltaCoefficient::Weight() should return NULL.
Definition at line 1000 of file coefficient.hpp.
| void mfem::VectorDeltaCoefficient::SetDirection | ( | const Vector & | d_ | ) |
Definition at line 646 of file coefficient.cpp.
|
inline |
Definition at line 1005 of file coefficient.hpp.
|
overridevirtual |
Set the time for internally stored coefficients.
Reimplemented from mfem::VectorCoefficient.
Definition at line 640 of file coefficient.cpp.
|
protected |
Definition at line 966 of file coefficient.hpp.
|
protected |
Definition at line 965 of file coefficient.hpp.