NAME
ElmMatVecCalc - functor for calculating element matrix/vector
INCLUDE
include "FEM.h"
SYNTAX
class ElmMatVecCalc : public HandleId
{
public:
ElmMatVecCalc () {}
virtual ~ElmMatVecCalc () {}
virtual void calcElmMatVec
(
int elm_no,
ElmMatVec& elmat,
FiniteElement& fe,
IntegrandCalc& integrand,
FEM& fem
);
virtual void calcElmMatVec
(
int elm_no,
ElmMatVec& elmat,
FiniteElement& fe,
FEM& fem
// IntegrandCalc objects are made inside this function body
);
};
KEYWORDS
finite element method, element matrix, element vector, element
contributions
DESCRIPTION
The class is a functor, defining (overloaded) virtual functions
calcElmMatVec that can be used for computing the element matrix
and vector in finite element problems. The functor is an alterna
tive to the FEM::calcElmMatVec function (a class derived from FEM
has only one function of this type, if the problem needs several
finite element algorithms the ElmMatVecCalc functor is useful in
addition).
CONSTRUCTORS AND INITIALIZATION
There is only an empty (default C++) constructor. Problem depen
dent derived classes will usually have references to an simulator
class containing all the problem dependent data. However, it is
common to just apply a default implementation of this functor,
provided by the ElmMatVecCalcStd class.
MEMBER FUNCTIONS
calcElmMatVec - calculates the element matrix and vector. Same
purpose as the FEM::calcElmMatVec, but implemented as a functor
instead of as a virtual function in the user's problem class. As
a functor, there can be multiple versions of the element
matrix/vector computation function.
SEE ALSO
class FEM
DEVELOPED BY
SINTEF Applied Mathematics, Oslo, Norway, and University of Oslo,
Dept. of Mathematics, Norway
AUTHOR
Hans Petter Langtangen, SINTEF/UiO