MFEM  v4.3.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 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...
 
void SetTime (double t)
 Set the time for time dependent coefficients. 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 603 of file coefficient.hpp.

Constructor & Destructor Documentation

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

Construct with a vector of dimension vdim_.

Definition at line 611 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 616 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 621 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 626 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 631 of file coefficient.hpp.

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

Definition at line 661 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 658 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 256 of file coefficient.cpp.

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

Definition at line 647 of file coefficient.hpp.

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

Return the associated scalar DeltaCoefficient.

Definition at line 641 of file coefficient.hpp.

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

Definition at line 646 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 638 of file coefficient.hpp.

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

Definition at line 250 of file coefficient.cpp.

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

Definition at line 643 of file coefficient.hpp.

Member Data Documentation

DeltaCoefficient mfem::VectorDeltaCoefficient::d
protected

Definition at line 607 of file coefficient.hpp.

Vector mfem::VectorDeltaCoefficient::dir
protected

Definition at line 606 of file coefficient.hpp.


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