hp2D::Fluxes Class Referenceabstract
Application of this class is to solve local Problems on one Quad. More...
#include <fluxes.hh>
Public Types | |
typedef concepts::ElementAndFacette< hp2D::Element< Real > > | UnderlyingElement |
typedef Real | value_type |
Public Member Functions | |
virtual Fluxes * | clone () const |
Virtual constructor. More... | |
virtual ElementFormula< Real, Real > * | clone () const=0 |
Virtual copy constructor. More... | |
void | compress (Real eps=EPS) |
Fluxes (hp2D::TraceSpace &spc, const EquilibratedMomentsAO< Real > &moments) | |
Constructor for the Fluxes, request for a hp2D::TraceSpace The Moments should be Moments not approximated Moments just computes outward ones,. More... | |
const concepts::Vector< Real > & | getCoeffs (uint E) const |
const concepts::LapackChol * | getInverseMass (uint m) |
Real | getWeight (uint E, uint K) const |
Real | operator() (const concepts::ElementWithCell< Real > &elm, const concepts::Real p, const Real t=0.0) const |
The elm should be a hp1D::Element of an identical TraceSpace like was given in the constructor. More... | |
Real | operator() (const concepts::ElementWithCell< Real > &elm, const concepts::Real2d &p, const Real t=0.0) const |
Real | operator() (const concepts::ElementWithCell< Real > &elm, const concepts::Real3d &p, const Real t=0.0) const |
virtual Real | operator() (const ElementWithCell< Real > &elm, const Real p, const Real t=0.0) const=0 |
Evaluates the formula. More... | |
virtual Real | operator() (const ElementWithCell< Real > &elm, const Real2d &p, const Real t=0.0) const=0 |
Evaluates the formula. More... | |
virtual Real | operator() (const ElementWithCell< Real > &elm, const Real3d &p, const Real t=0.0) const=0 |
Evaluates the formula. More... | |
virtual | ~Fluxes () |
Protected Member Functions | |
std::ostream & | info (std::ostream &os) const |
Returns information in an output stream. More... | |
Private Attributes | |
concepts::HashMap< concepts::Vector< Real > > | coeffs_ |
The coefficients computed by M_{e}*alpha_K,e = Moments_K,e per each edge. More... | |
uint | currElmKey_ |
concepts::HashMap< concepts::LapackChol * > | Minv_ |
Locally stored Cholesky Decomposition of the Edge-MassMatrices on reference domain. More... | |
const hp2D::TraceSpace & | tspc_ |
local reference to the TraceSpace given in the Constructor. More... | |
concepts::HashMap< concepts::Sequence< UnderlyingElement > > | uelm_ |
Detailed Description
Application of this class is to solve local Problems on one Quad.
So a information about a actual Quadkey is used for faster operator() access TODO: Fluxes does not need to be a ElementFormula anymore, this is done by LocalFluxes, reset this
Member Typedef Documentation
◆ UnderlyingElement
typedef concepts::ElementAndFacette<hp2D::Element<Real> > hp2D::Fluxes::UnderlyingElement |
◆ value_type
|
inherited |
Definition at line 37 of file elementFormula.hh.
Constructor & Destructor Documentation
◆ Fluxes()
hp2D::Fluxes::Fluxes | ( | hp2D::TraceSpace & | spc, |
const EquilibratedMomentsAO< Real > & | moments | ||
) |
Constructor for the Fluxes, request for a hp2D::TraceSpace The Moments should be Moments not approximated Moments just computes outward ones,.
- Precondition
- the TraceSpace itself is a space of all inner edges for what the moments were computed the TraceSpace is same build on the Mesh as in computing for approximated moments so that the underlying elements of a element are same ordered
non const tracespacee since we iterate over it
◆ ~Fluxes()
Member Function Documentation
◆ clone() [1/2]
|
inlinevirtual |
Virtual constructor.
Returns a pointer to a copy of itself. The caller is responsible to destroy this copy.
Implements concepts::Cloneable.
◆ clone() [2/2]
|
pure virtualinherited |
Virtual copy constructor.
Implemented in concepts::ElementFormulaContainer< Real, Real >.
◆ compress()
void hp2D::Fluxes::compress | ( | Real | eps = EPS | ) |
◆ getCoeffs()
|
inline |
◆ getInverseMass()
|
inline |
◆ getWeight()
|
inline |
◆ info()
|
inlineprotectedvirtual |
Returns information in an output stream.
Reimplemented from concepts::OutputOperator.
◆ operator()() [1/6]
Real hp2D::Fluxes::operator() | ( | const concepts::ElementWithCell< Real > & | elm, |
const concepts::Real | p, | ||
const Real | t = 0.0 |
||
) | const |
The elm should be a hp1D::Element of an identical TraceSpace like was given in the constructor.
◆ operator()() [2/6]
|
inline |
◆ operator()() [3/6]
|
inline |
◆ operator()() [4/6]
|
pure virtualinherited |
Evaluates the formula.
- Parameters
-
elm Element p Point in space in local element coordinates t Point in time
Implemented in concepts::ElementFormulaContainer< Real, Real >.
◆ operator()() [5/6]
|
pure virtualinherited |
Evaluates the formula.
- Parameters
-
elm Element p Point in space in local element coordinates t Point in time
Implemented in concepts::ElementFormulaContainer< Real, Real >.
◆ operator()() [6/6]
|
pure virtualinherited |
Evaluates the formula.
- Parameters
-
elm Element p Point in space in local element coordinates t Point in time
Implemented in concepts::ElementFormulaContainer< Real, Real >.
Member Data Documentation
◆ coeffs_
|
private |
The coefficients computed by M_{e}*alpha_K,e = Moments_K,e per each edge.
Let K, K' be two Elements with common edge e, then it holds for the coefficients on a edge e : alpha_K,e = -alpha_K,e . Therefore the coefficients on a edge are only saved once, and have the right sign corresponding to the orientation of the edge (normal Vector rule).
◆ currElmKey_
◆ Minv_
|
private |
◆ tspc_
|
private |
local reference to the TraceSpace given in the Constructor.
◆ uelm_
|
private |
The documentation for this class was generated from the following file:
- estimator/fluxes.hh