Diffpack Documentation

(Functionality not available, requires installation of an additional Diffpack Toolbox)


Main Page   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members   File Members   Search  

ErrorEstimator Class Reference

error estimation related to adaptive methods. More...

#include <ErrorEstimator.h>

Inheritance diagram for ErrorEstimator::

RefinementInd HandleId List of all members.

Public Methods

 ErrorEstimator (const RefinementInd_prm &pm)
 ~ErrorEstimator ()
virtual void evalRefInd (FieldPiWisConst &refinement_field, bool init=true)

Static Public Methods

void calcElmVolume (VecSimple(real) &elm_volume, const GridFE &g)
void ZZ (FieldPiWisConst &error_ind, FieldFE &u, FieldsFE &grad_u_L2_proj, VecSimple(real) &elm_volume, Field *coeff=NULL)
void ZZ (FieldPiWisConst &error_ind, FieldFE &u, FieldsFE &grad_u_L2_proj, Field *coeff=NULL)
void ZZ (FieldPiWisConst &error_ind, FieldFE &u, FieldsFE &grad_u_L2_proj, real tolerance, Field *coeff=NULL)

Detailed Description

error estimation related to adaptive methods.

NAME: ErrorEstimator - error estimation related to adaptive methods

DESCRIPTION:

The function provides an interface to error estimation (or error indicators) for adaptive grid refinement. Some static member functions offer standard, all-round error indicators (the ZZ indicator for example) or the error indicators/estimators can be defined in a simulator code.

The class constitutes one branch from the general "RefinementInd" base class, namely the collection of indicators based on some estimation of the error. Another branch, "GeometricInd", concerns pure geometric indicators without information about the solution of the PDE problem.


Constructor & Destructor Documentation

ErrorEstimator::ErrorEstimator ( const RefinementInd_prm & pm )
 

ErrorEstimator::~ErrorEstimator ( ) [inline]
 


Member Function Documentation

static void ErrorEstimator::ZZ ( FieldPiWisConst & error_ind,
FieldFE & u,
FieldsFE & grad_u_L2_proj,
real tolerance,
Field * coeff = NULL ) [static]
 

See documentation of one of the overloaded functions.

static void ErrorEstimator::ZZ ( FieldPiWisConst & error_ind,
FieldFE & u,
FieldsFE & grad_u_L2_proj,
Field * coeff = NULL ) [static]
 

See documentation of one of the overloaded functions.

static void ErrorEstimator::ZZ ( FieldPiWisConst & error_ind,
FieldFE & u,
FieldsFE & grad_u_L2_proj,
VecSimple(real) & elm_volume,
Field * coeff = NULL ) [static]
 

computes a piecewise constant scalar error indicator based on a Zienkiewicz-Zhu-like criterion. The field "u" and its L2-projected (smoothed) gradient "grad_u_L2_proj" as well as the element volumes must be supplied as input parameters. The criterion is based on the difference between the gradient of "u" and the smoothed gradient. Sometimes it is desired to work with fluxes (""stresses""). For this purpose one can supply an optional argument "coeff". This is a scalar field that is multiplied by the gradient. The difference between the flux and its smoothed counterpart is then used in the criterion.

static void ErrorEstimator::calcElmVolume ( VecSimple(real) & elm_volume,
const GridFE & g ) [static]
 

computes the volume (3D) or area (2D) of all elements in the grid "g". The volume of element "i" is returned as "elm_volume(i)".

void ErrorEstimator::evalRefInd ( FieldPiWisConst & refinement_field,
bool init = true ) [virtual]
 

evaluates the refinement indicator according to the chosen indicator in the "RefinementInd_prm" object inherited from the base class "RefinementInd". The function calls either the local ZZ indicators or a user-defined indicator implemented as a function in "evalOwnRefInd" in the simulator code (and reached by the "FEM*" pointer in the base class "RefinementInd").

Reimplemented from RefinementInd.


The documentation for this class was generated from the following file:
Copyright © 2003 inuTech GmbH. All rights reserved.