MFEM  v3.1
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::TimeDependentOperator Class Reference

Base abstract class for time dependent operators: (x,t) -> f(x,t) More...

#include <operator.hpp>

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

Public Member Functions

 TimeDependentOperator (int n=0, double _t=0.0)
 
 TimeDependentOperator (int h, int w, double _t=0.0)
 
virtual double GetTime () const
 
virtual void SetTime (const double _t)
 
virtual void ImplicitSolve (const double dt, const Vector &x, Vector &k)
 
virtual ~TimeDependentOperator ()
 
- Public Member Functions inherited from mfem::Operator
 Operator (int s=0)
 Construct a square Operator with given size s (default 0) More...
 
 Operator (int h, int w)
 
int Height () const
 Get the height (size of output) of the Operator. Synonym with NumRows. More...
 
int NumRows () const
 
int Width () const
 Get the width (size of input) of the Operator. Synonym with NumCols. More...
 
int NumCols () const
 
virtual void Mult (const Vector &x, Vector &y) const =0
 Operator application. More...
 
virtual void MultTranspose (const Vector &x, Vector &y) const
 Action of the transpose operator. More...
 
virtual OperatorGetGradient (const Vector &x) const
 Evaluate the gradient operator at the point x. More...
 
void PrintMatlab (std::ostream &out, int n=0, int m=0)
 Prints operator with input size n and output size m in matlab format. More...
 
virtual ~Operator ()
 

Protected Attributes

double t
 
- Protected Attributes inherited from mfem::Operator
int height
 
int width
 

Detailed Description

Base abstract class for time dependent operators: (x,t) -> f(x,t)

Definition at line 68 of file operator.hpp.

Constructor & Destructor Documentation

mfem::TimeDependentOperator::TimeDependentOperator ( int  n = 0,
double  _t = 0.0 
)
inlineexplicit

Construct a "square" time dependent Operator y = f(x,t), where x and y have the same dimension 'n'.

Definition at line 76 of file operator.hpp.

mfem::TimeDependentOperator::TimeDependentOperator ( int  h,
int  w,
double  _t = 0.0 
)
inline

Construct a time dependent Operator y = f(x,t), where x and y have dimensions 'w' and 'h', respectively.

Definition at line 81 of file operator.hpp.

virtual mfem::TimeDependentOperator::~TimeDependentOperator ( )
inlinevirtual

Definition at line 97 of file operator.hpp.

Member Function Documentation

virtual double mfem::TimeDependentOperator::GetTime ( ) const
inlinevirtual

Definition at line 84 of file operator.hpp.

virtual void mfem::TimeDependentOperator::ImplicitSolve ( const double  dt,
const Vector x,
Vector k 
)
inlinevirtual

Solve the equation: k = f(x + dt*k, t), for the unknown k. This method allows for the abstract implementation of some time integration methods, including diagonal implicit Runge-Kutta (DIRK) methods and the backward Euler method in particular.

Definition at line 92 of file operator.hpp.

virtual void mfem::TimeDependentOperator::SetTime ( const double  _t)
inlinevirtual

Definition at line 86 of file operator.hpp.

Member Data Documentation

double mfem::TimeDependentOperator::t
protected

Definition at line 71 of file operator.hpp.


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