hp2D::ImplicitEquilibratedA0< F > Class Template Referenceabstract
#include <implicitEquilibratedAO.hh>
Public Types | |
typedef HashMap< Real >::const_iterator | const_iterator |
typedef concepts::Realtype< F >::type | G |
typedef HashMap< Real >::iterator | iterator |
typedef F | value_type |
Public Member Functions | |
void | addBillinearInfo (concepts::BilinearForm< F > &bform, const F scalar=1) |
void | addDirichletInfo (const concepts::Set< uint > &attrb) |
Adds Dirichletinfo. More... | |
void | addInnerInfo (const concepts::Set< uint > &attrb) |
Add inner edges attribute info, if additional existing. More... | |
void | addLinearformInfo (concepts::LinearForm< F > &form, const F scalar=1) |
Method to give Linearform residual information to the estimator. More... | |
void | addNeumannInfo (concepts::ParsedFormula< F > &frm, const concepts::Set< uint > &attrb) |
Method to add boundary infos that are needed for the estimator. More... | |
iterator | begin () |
const_iterator | begin () const |
virtual ImplicitEquilibratedA0 * | clone () const |
Virtual constructor. More... | |
virtual ElementFormula< F, concepts::Realtype< F >::type > * | clone () const=0 |
Virtual copy constructor. More... | |
void | compute () |
virtual F & | dflt_value () |
Gives default value. More... | |
virtual const F & | dflt_value () const |
Gives default value. More... | |
iterator | end () |
const_iterator | end () const |
const Real | getGlobal () const |
ImplicitEquilibratedA0 (const concepts::SpaceOnCells< F > &spc, const concepts::Vector< F > &sol, concepts::LinearForm< F > &f, ushort loc_rule=2, const concepts::ElementFormula< F > *a=0) | |
Constructor of the 2d implicit residual a posteriori Error estimator based on solving local Neumannproblems, with neumann boundary condition represented by so called Fluxes, which are constructed with the help of equilibrated moments. More... | |
void | isunique (bool unique=true) |
uint | nelm () const |
virtual F | operator() (const Connector &cntr, const Real p, const Real t=0.0) const |
Gives the value in an particular cell on a particular point. More... | |
virtual F | operator() (const Connector &cntr, const Real2d &p, const Real t=0.0) const |
virtual F | operator() (const Connector &cntr, const Real3d &p, const Real t=0.0) const |
virtual F | operator() (const ElementWithCell< concepts::Realtype< F >::type > &elm, const Real p, const Real t=0.0) const=0 |
Evaluates the formula. More... | |
virtual F | operator() (const ElementWithCell< concepts::Realtype< F >::type > &elm, const Real2d &p, const Real t=0.0) const=0 |
Evaluates the formula. More... | |
virtual F | operator() (const ElementWithCell< concepts::Realtype< F >::type > &elm, const Real3d &p, const Real t=0.0) const=0 |
Evaluates the formula. More... | |
virtual F | operator() (const ElementWithCell< G > &elm, const Real p, const Real t=0.0) const |
virtual F | operator() (const ElementWithCell< G > &elm, const Real2d &p, const Real t=0.0) const |
virtual F | operator() (const ElementWithCell< G > &elm, const Real3d &p, const Real t=0.0) const |
const Real | operator() (uint key) const |
Return the error on given local element, that belongs to the input key. More... | |
virtual | ~ImplicitEquilibratedA0 () |
Protected Member Functions | |
virtual std::ostream & | info (std::ostream &os) const |
Returns information in an output stream. More... | |
Protected Attributes | |
Real | globError_ |
concepts::HashMap< Real > | locError_ |
const concepts::Vector< F > & | sol_ |
const concepts::SpaceOnCells< F > & | spc_ |
Private Member Functions | |
void | buildlocalA_ (const hp2D::hpAdaptiveSpaceH1 &spc_K, concepts::SparseMatrix< F > &A_K) |
bool | buildlocalRhs_ (const concepts::Quad &quad, const hp2D::hpAdaptiveSpaceH1 &spc_K, const hp2D::Fluxes &flux, const concepts::BoundaryConditions &bc, concepts::Vector< F > &rhs) |
void | buildnonUniquelocalRhs_ (const concepts::Quad &quad, const hp2D::hpAdaptiveSpaceH1 &spc_K, const hp2D::Fluxes &flux, const concepts::BoundaryConditions &bc, concepts::Vector< F > &rhs) |
Real | computeLocalError_2 (hp2D::hpAdaptiveSpaceH1 &spc_K, const concepts::Vector< F > &sol_K) |
Private Attributes | |
concepts::Sequence< concepts::LinearForm< F > * > | B_ |
concepts::Set< uint > | dAttrbs_ |
F | dflt_value_ |
default value More... | |
concepts::LinearForm< F > & | f_ |
concepts::HashMap< uint > | help_ |
concepts::Set< uint > | iAttrbs_ |
concepts::Sequence< concepts::BilinearForm< F > * > | L_ |
concepts::Sequence< concepts::Set< uint > > | nAttrbs_ |
concepts::Sequence< concepts::ParsedFormula< F > > | nfrms_ |
ushort | rule_ |
concepts::Sequence< F > | scalars_ |
concepts::Sequence< F > | scalars_L |
bool | unique_ |
Detailed Description
template<class F>
class hp2D::ImplicitEquilibratedA0< F >
Definition at line 52 of file implicitEquilibratedAO.hh.
Member Typedef Documentation
◆ const_iterator
|
inherited |
Definition at line 96 of file estimator.hh.
◆ G
|
inherited |
Definition at line 45 of file piecewiseFormula.hh.
◆ iterator
|
inherited |
Definition at line 95 of file estimator.hh.
◆ value_type
|
inherited |
Definition at line 37 of file elementFormula.hh.
Constructor & Destructor Documentation
◆ ImplicitEquilibratedA0()
|
inline |
Constructor of the 2d implicit residual a posteriori Error estimator based on solving local Neumannproblems, with neumann boundary condition represented by so called Fluxes, which are constructed with the help of equilibrated moments.
These moments are represented in the class EquilibratedMomentsA0.
- Parameters
-
spc The FEM space sol the solution vector representing the FEM solution wres The weak residual formula, wres = (f,v)-B(u_h,v) , where B is the billinearform of the problem a The coefficient function in the highest derivative operator div ( a * grad(.)) if no function a
is given, by defaulta
is const and therefore set to ONE.loc_rule local polynomial degree set by rule max{quad.p()[0],quad.p()[1]} + loc_rule, by default local degree is +2 as it behaves well in numerical tests to have reliable estimator
f rhs over whole domain TODO: integration rule möglichkeiten setzen
Definition at line 75 of file implicitEquilibratedAO.hh.
◆ ~ImplicitEquilibratedA0()
|
inlinevirtual |
Definition at line 91 of file implicitEquilibratedAO.hh.
Member Function Documentation
◆ addBillinearInfo()
|
inline |
Definition at line 109 of file implicitEquilibratedAO.hh.
◆ addDirichletInfo()
|
inline |
Adds Dirichletinfo.
Definition at line 129 of file implicitEquilibratedAO.hh.
◆ addInnerInfo()
|
inline |
Add inner edges attribute info, if additional existing.
Definition at line 141 of file implicitEquilibratedAO.hh.
◆ addLinearformInfo()
|
inline |
Method to give Linearform residual information to the estimator.
For B(u_h, v ) = f(v), the estimator needs the information f(v)-B(u_h,v)
Since Linearforms have no operator+ it is needed to add information individual
B(u_h,v) = Riesz(u_h) + GradLinearForm( grad(u_h) )
one should add TODO: Maybe change scalar value just to build B(u_h,v) here rest is done in methods do sth const
Definition at line 104 of file implicitEquilibratedAO.hh.
◆ addNeumannInfo()
|
inline |
Method to add boundary infos that are needed for the estimator.
For Neumannboundary one needs the edge attribute and the corresponding edge formula.
Definition at line 120 of file implicitEquilibratedAO.hh.
◆ begin() [1/2]
|
inlineinherited |
Definition at line 100 of file estimator.hh.
◆ begin() [2/2]
|
inlineinherited |
Definition at line 104 of file estimator.hh.
◆ buildlocalA_()
|
inlineprivate |
Definition at line 570 of file implicitEquilibratedAO.hh.
◆ buildlocalRhs_()
|
inlineprivate |
Definition at line 421 of file implicitEquilibratedAO.hh.
◆ buildnonUniquelocalRhs_()
|
inlineprivate |
Definition at line 508 of file implicitEquilibratedAO.hh.
◆ clone() [1/2]
|
inlinevirtual |
Virtual constructor.
Returns a pointer to a copy of itself. The caller is responsible to destroy this copy.
Implements concepts::LocalEstimator< F >.
Definition at line 376 of file implicitEquilibratedAO.hh.
◆ clone() [2/2]
|
pure virtualinherited |
Virtual copy constructor.
◆ compute()
|
inline |
Definition at line 152 of file implicitEquilibratedAO.hh.
◆ computeLocalError_2()
|
inlineprivate |
Definition at line 582 of file implicitEquilibratedAO.hh.
◆ dflt_value() [1/2]
|
inlinevirtualinherited |
Gives default value.
Definition at line 83 of file piecewiseFormula.hh.
◆ dflt_value() [2/2]
|
inlinevirtualinherited |
Gives default value.
Definition at line 81 of file piecewiseFormula.hh.
◆ end() [1/2]
|
inlineinherited |
Definition at line 108 of file estimator.hh.
◆ end() [2/2]
|
inlineinherited |
Definition at line 112 of file estimator.hh.
◆ getGlobal()
|
inlineinherited |
Definition at line 22 of file estimator.hh.
◆ info()
|
inlineprotectedvirtual |
Returns information in an output stream.
Implements concepts::LocalEstimator< F >.
Definition at line 380 of file implicitEquilibratedAO.hh.
◆ isunique()
|
inline |
Definition at line 146 of file implicitEquilibratedAO.hh.
◆ nelm()
|
inlineinherited |
Definition at line 116 of file estimator.hh.
◆ operator()() [1/10]
|
inlinevirtualinherited |
Gives the value in an particular cell on a particular point.
- Parameters
-
cell topological cell p physical coordinates t time
Implements concepts::PiecewiseFormulaBase< F >.
Definition at line 132 of file estimator.hh.
◆ operator()() [2/10]
|
inlinevirtualinherited |
Implements concepts::PiecewiseFormulaBase< F >.
Definition at line 135 of file estimator.hh.
◆ operator()() [3/10]
|
inlinevirtualinherited |
Implements concepts::PiecewiseFormulaBase< F >.
Definition at line 138 of file estimator.hh.
◆ operator()() [4/10]
|
pure virtualinherited |
Evaluates the formula.
- Parameters
-
elm Element p Point in space in local element coordinates t Point in time
◆ operator()() [5/10]
|
pure virtualinherited |
Evaluates the formula.
- Parameters
-
elm Element p Point in space in local element coordinates t Point in time
◆ operator()() [6/10]
|
pure virtualinherited |
Evaluates the formula.
- Parameters
-
elm Element p Point in space in local element coordinates t Point in time
◆ operator()() [7/10]
|
inlinevirtualinherited |
Definition at line 52 of file piecewiseFormula.hh.
◆ operator()() [8/10]
|
inlinevirtualinherited |
Definition at line 57 of file piecewiseFormula.hh.
◆ operator()() [9/10]
|
inlinevirtualinherited |
Definition at line 63 of file piecewiseFormula.hh.
◆ operator()() [10/10]
|
inlineinherited |
Return the error on given local element, that belongs to the input key.
Definition at line 123 of file estimator.hh.
Member Data Documentation
◆ B_
|
private |
Definition at line 387 of file implicitEquilibratedAO.hh.
◆ dAttrbs_
|
private |
Definition at line 413 of file implicitEquilibratedAO.hh.
◆ dflt_value_
|
privateinherited |
default value
Definition at line 88 of file piecewiseFormula.hh.
◆ f_
|
private |
Definition at line 391 of file implicitEquilibratedAO.hh.
◆ globError_
|
protectedinherited |
Definition at line 37 of file estimator.hh.
◆ help_
|
private |
Definition at line 411 of file implicitEquilibratedAO.hh.
◆ iAttrbs_
|
private |
Definition at line 415 of file implicitEquilibratedAO.hh.
◆ L_
|
private |
Definition at line 394 of file implicitEquilibratedAO.hh.
◆ locError_
|
protectedinherited |
Definition at line 151 of file estimator.hh.
◆ nAttrbs_
|
private |
Definition at line 409 of file implicitEquilibratedAO.hh.
◆ nfrms_
|
private |
Definition at line 407 of file implicitEquilibratedAO.hh.
◆ rule_
|
private |
Definition at line 404 of file implicitEquilibratedAO.hh.
◆ scalars_
|
private |
Definition at line 389 of file implicitEquilibratedAO.hh.
◆ scalars_L
|
private |
Definition at line 395 of file implicitEquilibratedAO.hh.
◆ sol_
|
protectedinherited |
Definition at line 35 of file estimator.hh.
◆ spc_
|
protectedinherited |
Definition at line 33 of file estimator.hh.
◆ unique_
|
private |
Definition at line 402 of file implicitEquilibratedAO.hh.
The documentation for this class was generated from the following file:
- estimator/implicitEquilibratedAO.hh