KASKADE 7 development version
|
Error estimation via gradient averaging and helper routines. More...
#include "dune/geometry/quadraturerules.hh"
#include "fem/functionviews.hh"
#include "fem/assemble.hh"
#include "fem/fetransfer.hh"
#include "fem/integration"
#include "fem/celldata.hh"
#include "linalg/factorization.hh"
#include "linalg/pardiso_solve.hh"
#include "linalg/linearsystem.hh"
Go to the source code of this file.
Classes | |
class | Kaskade::FunctionViews::Difference< Function1, Function2 > |
class | Kaskade::LocalIntegral< Space > |
Create a CellData by computing local integrals over each Cell. More... | |
class | Kaskade::HigherOrderRecovery< Grid, Space > |
Construct a higher order estimate for the finite element solution from gradient information. More... | |
struct | Kaskade::HigherOrderRecovery< Grid, Space >::HigherOrderRecoveryFunctional< RType, Variables >::DomainCache |
struct | Kaskade::HigherOrderRecovery< Grid, Space >::HigherOrderRecoveryFunctional< RType, Variables >::BoundaryCache |
struct | Kaskade::HigherOrderRecovery< Grid, Space >::HigherOrderRecoveryFunctional< RType, Variables >::D2< row, col > |
Namespaces | |
namespace | Kaskade |
namespace | Kaskade::FunctionViews |
Namespace of views on a FunctionSpaceElement Views on Function SpaceElements can be used in a restricted sense like FunctionSpaceElements. The idea is to transform a given function to another function while evaluating it at a certain point. Such a view has provide certain functionality: | |
Functions | |
template<class Function > | |
CellData< typenameFunction::Space::Grid, typenameFunction::ValueType >::CellDataVector | Kaskade::gradientAveraging (Function const &f) |
Perform gradient averaging in order to construct an error estimator. More... | |
template<class GradientError , class Function > | |
void | Kaskade::gradientAveraging (GradientError &dx, Function const &x) |
Perform gradient averaging in order to construct a representation of the gradient error. More... | |
template<class Function > | |
CellData< typenameFunction::Space::Grid, typenameFunction::ValueType >::CellDataVector | Kaskade::lowOrderInterpolation (Function const &f) |
Perform lower order interpolation in order to construct an error estimator. More... | |
Error estimation via gradient averaging and helper routines.
This file provides components for error estimation and adaptive grid refinement.
In particular CellData <Grid> is a data structure that stores error indicators and provides service routine for marking and refining. To be used together with GridManager <Grid>.
With gradientAveraging there is a simple and rather universal error estimator provided. Independently of an equation it measures the difference of a discontinuous gradient to a continuous interpolation, which can be interpreted as the distance of the discrete solution to a smoother function space.
Example for usage
do { //Assemble and solve discrete Problem... CellData<Grid> indicator(gradientAveraging(currentsolution)); double totalH1Error=std::sqrt(indicator.sum()); gm.mark(markByBulkCriterion(indicator,theta)); gm.adaptAtOnce(); } while(totalH1Error > desiredAccuracy)
Definition in file averaging_errorest.hh.