Moertel  Development
 All Classes Namespaces Files Functions Enumerations Friends Pages
Public Types | Protected Attributes | List of all members
MOERTEL::Function Class Referenceabstract

A virtual class to form a shape function of some type. More...

#include <mrtr_function.H>

Inheritance diagram for MOERTEL::Function:
Inheritance graph
[legend]

Public Types

enum  FunctionType {
  func_none, func_Constant1D, func_Linear1D, func_DualLinear1D,
  func_LinearTri, func_DualLinearTri, func_ConstantTri, func_BiLinearQuad,
  func_DualBiLinearQuad
}
 Type of function. More...
 

Public Member Functions

 Function (int outlevel, MOERTEL::Function::FunctionType type)
 Constructor. More...
 
 Function (const MOERTEL::Function &old)
 Copy-Constructor. More...
 
virtual ~Function ()
 Destructor.
 
virtual MOERTEL::FunctionClone () const =0
 Clone method. More...
 
int OutLevel ()
 Return the level of output written to stdout ( 0 - 10 )
 
MOERTEL::Function::FunctionType Type () const
 Return the function type.
 
virtual bool EvaluateFunction (const MOERTEL::Segment &seg, const double *xi, double *val, const int valdim, double *deriv)=0
 Evaluate the function and derivatives at a given local coordinate. More...
 

Protected Attributes

MOERTEL::Function::FunctionType type_
 
int outputlevel_
 

Detailed Description

A virtual class to form a shape function of some type.

A virtual class to form a shape function of some type

Date
Last update do Doxygen: 20-March-06
Author
Glen Hansen (gahan.nosp@m.se@s.nosp@m.andia.nosp@m..gov)

Member Enumeration Documentation

Type of function.

Parameters
func_none: default value
func_Constant1D: Constant function on a 1D Segment
func_Linear1D: Linear function on a 1D Segment
func_DualLinear1D: Dual linear function on a 1D Segment
func_LinearTri: Linear function on a 3-noded triangle
func_DualLinearTri: Dual linear function on a 3-noded triangle
func_ConstantTri: Constant function on a 3-noded triangle

Constructor & Destructor Documentation

MOERTEL::Function::Function ( int  outlevel,
MOERTEL::Function::FunctionType  type 
)
inline

Constructor.

Constructs an instance of this base class.

Parameters
outlevel: Level of output information written to stdout ( 0 - 10 )
type: Function type
MOERTEL::Function::Function ( const MOERTEL::Function old)
inline

Copy-Constructor.

Makes a deep copy

Parameters
old: Instance to be copied

Member Function Documentation

virtual MOERTEL::Function* MOERTEL::Function::Clone ( ) const
pure virtual

Clone method.

The derived class implementing this virtual method is supposed to make a deep copy of itself and return a pointer to the copy.

Implemented in MOERTEL::Function_DualBiLinearQuad, MOERTEL::Function_BiLinearQuad, MOERTEL::Function_ConstantTri, MOERTEL::Function_DualLinearTri, MOERTEL::Function_LinearTri, MOERTEL::Function_DualLinear1D, MOERTEL::Function_Linear1D, and MOERTEL::Function_Constant1D.

Referenced by MOERTEL::Segment::SetFunction().

virtual bool MOERTEL::Function::EvaluateFunction ( const MOERTEL::Segment seg,
const double *  xi,
double *  val,
const int  valdim,
double *  deriv 
)
pure virtual

Evaluate the function and derivatives at a given local coordinate.

Parameters
xi(in) : Local coordinate where to evaluate the function
val(out) : Function values at xi
valdim(in) : Dimension of val
deriv(out) : Derivative of functions at xi

Implemented in MOERTEL::Function_DualBiLinearQuad, MOERTEL::Function_BiLinearQuad, MOERTEL::Function_ConstantTri, MOERTEL::Function_DualLinearTri, MOERTEL::Function_LinearTri, MOERTEL::Function_DualLinear1D, MOERTEL::Function_Linear1D, and MOERTEL::Function_Constant1D.


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