NAME
ElmMatVecCalcStd - a default version of class ElmMatVecCalc
INCLUDE
include "FEM.h"
SYNTAX
class ElmMatVecCalcStd : public ElmMatVecCalc
{
public:
Handle(ElmItgRules) integrator;
// (need a handle since FEM::finite_elm may keep its pointer to integrator!)
ElmMatVecCalcStd (NumItgPoints itg_points = GAUSS_POINTS,
int relative_order = 0);
~ElmMatVecCalcStd () {}
virtual void calcElmMatVec
(
int elm_no,
ElmMatVec& elmat,
FiniteElement& fe,
IntegrandCalc& integrand,
FEM& fem
);
private:
// this one is included to avoid warning (hides virtual...)
// to use this function, an IntegrandCalc subclass object must be
// supplied by this class:
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, default version
DESCRIPTION
The class offers a default implementation of the calcElmMatVec
functions that is provided by a ElmMatVecCalc functor. In fact,
the implementation in this class coressponds to the default
implementation of FEM::calcElmMatVec that many simulator classes
can make use of directly. It means that surface integrals over
the sides of the elements are omitted.
See the base class for more details.
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