MFEM  v4.4.0
Finite element discretization library
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Pages
Public Member Functions | Protected Attributes | List of all members
mfem::VectorDeltaCoefficient Class Reference

Vector coefficient defined by a scalar DeltaCoefficient and a constant vector direction. More...

#include <coefficient.hpp>

Inheritance diagram for mfem::VectorDeltaCoefficient:
[legend]
Collaboration diagram for mfem::VectorDeltaCoefficient:
[legend]

Public Member Functions

 VectorDeltaCoefficient (int vdim_)
 Construct with a vector of dimension vdim_. More...
 
 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) More...
 
 VectorDeltaCoefficient (const Vector &dir_, double x, double s)
 Construct with a Vector object representing the direction and a delta function scaled by s and centered at (x,0.0,0.0) More...
 
 VectorDeltaCoefficient (const Vector &dir_, double x, double y, double s)
 Construct with a Vector object representing the direction and a delta function scaled by s and centered at (x,y,0.0) More...
 
 VectorDeltaCoefficient (const Vector &dir_, double x, double y, double z, double s)
 Construct with a Vector object representing the direction and a delta function scaled by s and centered at (x,y,z) More...
 
void SetTime (double t)
 Set the time for internally stored coefficients. More...
 
void SetDeltaCoefficient (const DeltaCoefficient &d_)
 Replace the associated DeltaCoefficient with a new DeltaCoefficient. More...
 
DeltaCoefficientGetDeltaCoefficient ()
 Return the associated scalar DeltaCoefficient. More...
 
void SetScale (double s)
 
void SetDirection (const Vector &d_)
 
void SetDeltaCenter (const Vector &center)
 
void GetDeltaCenter (Vector &center)
 
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. More...
 
virtual void Eval (Vector &V, ElementTransformation &T, const IntegrationPoint &ip)
 A VectorDeltaFunction cannot be evaluated. Calling this method will cause an MFEM error, terminating the application. More...
 
virtual ~VectorDeltaCoefficient ()
 
- 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 ~VectorCoefficient ()
 

Protected Attributes

Vector dir
 
DeltaCoefficient d
 
- Protected Attributes inherited from mfem::VectorCoefficient
int vdim
 
double time
 

Detailed Description

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 779 of file coefficient.hpp.

Constructor & Destructor Documentation

mfem::VectorDeltaCoefficient::VectorDeltaCoefficient ( int  vdim_)
inline

Construct with a vector of dimension vdim_.

Definition at line 787 of file coefficient.hpp.

mfem::VectorDeltaCoefficient::VectorDeltaCoefficient ( const Vector dir_)
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 792 of file coefficient.hpp.

mfem::VectorDeltaCoefficient::VectorDeltaCoefficient ( const Vector dir_,
double  x,
double  s 
)
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 797 of file coefficient.hpp.

mfem::VectorDeltaCoefficient::VectorDeltaCoefficient ( const Vector dir_,
double  x,
double  y,
double  s 
)
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 802 of file coefficient.hpp.

mfem::VectorDeltaCoefficient::VectorDeltaCoefficient ( const Vector dir_,
double  x,
double  y,
double  z,
double  s 
)
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 807 of file coefficient.hpp.

virtual mfem::VectorDeltaCoefficient::~VectorDeltaCoefficient ( )
inlinevirtual

Definition at line 840 of file coefficient.hpp.

Member Function Documentation

virtual void mfem::VectorDeltaCoefficient::Eval ( Vector V,
ElementTransformation T,
const IntegrationPoint ip 
)
inlinevirtual

A VectorDeltaFunction cannot be evaluated. Calling this method will cause an MFEM error, terminating the application.

Implements mfem::VectorCoefficient.

Definition at line 837 of file coefficient.hpp.

void mfem::VectorDeltaCoefficient::EvalDelta ( Vector V,
ElementTransformation T,
const IntegrationPoint ip 
)
virtual

Return the specified direction vector multiplied by the value returned by DeltaCoefficient::EvalDelta() of the associated scalar DeltaCoefficient.

Definition at line 476 of file coefficient.cpp.

void mfem::VectorDeltaCoefficient::GetDeltaCenter ( Vector center)
inline

Definition at line 826 of file coefficient.hpp.

DeltaCoefficient& mfem::VectorDeltaCoefficient::GetDeltaCoefficient ( )
inline

Return the associated scalar DeltaCoefficient.

Definition at line 820 of file coefficient.hpp.

void mfem::VectorDeltaCoefficient::SetDeltaCenter ( const Vector center)
inline

Definition at line 825 of file coefficient.hpp.

void mfem::VectorDeltaCoefficient::SetDeltaCoefficient ( const DeltaCoefficient d_)
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 817 of file coefficient.hpp.

void mfem::VectorDeltaCoefficient::SetDirection ( const Vector d_)

Definition at line 470 of file coefficient.cpp.

void mfem::VectorDeltaCoefficient::SetScale ( double  s)
inline

Definition at line 822 of file coefficient.hpp.

void mfem::VectorDeltaCoefficient::SetTime ( double  t)
virtual

Set the time for internally stored coefficients.

Reimplemented from mfem::VectorCoefficient.

Definition at line 464 of file coefficient.cpp.

Member Data Documentation

DeltaCoefficient mfem::VectorDeltaCoefficient::d
protected

Definition at line 783 of file coefficient.hpp.

Vector mfem::VectorDeltaCoefficient::dir
protected

Definition at line 782 of file coefficient.hpp.


The documentation for this class was generated from the following files: