refinement.hh
Go to the documentation of this file.
167 throw conceptsException(concepts::MissingFeature("Cell has no vertex dofs, cannot be handled atm"));
202 //DEBUGL(1, "on K = "<< K << " error = "<< estimator(K) << " pred = "<< pred_[K] << " apply h ref");
213 //DEBUGL(1, "set prediction for error = "<< estimator(K) << " mult = "<< 0.5 * hdecay_ * std::pow(0.5,p_[K][0] )
218 //DEBUGL(1, "on K = "<< K << " error = "<< estimator(K) << " pred = "<< pred_[K] << " apply p ref");
302 //map from cellKey to its highest polynomial degree, atm just isotropic, therefore only one ushort
308 //map from (static) key to belonging that is hrefined in the space and therefore has kid elements
336 // Embedding(const concepts::SpaceOnCells<F>& space, const concepts::Vector<F>& sol,const Real reg, enum indicator ind = H2Partial2)
340 // const hp2D::hpAdaptiveSpace<F>* spc = dynamic_cast<const hp2D::hpAdaptiveSpace<F>* >(&space);
356 // throw conceptsException(concepts::MissingFeature("Currently just hpAdaptiveSpace supported"));
374 // concepts::ElementFormulaVector<1> partial_xx(spc_, sol_, hp2D::Partial_xx<Real,hp2D::Quad<Real> >());
void buildRefinement(const Marking &mark, const concepts::LocalEstimator< F > &estimator)
Definition: refinement.hh:494
virtual Connector0 * vertex(uint i) const =0
Returns a 0D component: vertex A 2D element consists of 1D and 0D elements, the vertices can be queri...
Abstract class for all refinement strategies in arbitray dimension.
Definition: refinement.hh:30
virtual std::ostream & info(std::ostream &os) const =0
Returns information in an output stream.
Definition: buergDoerfler.hh:18
concepts::Sequence< const concepts::Cell * > hRefCurCells_
Definition: refinement.hh:311
AprioriVertex(const concepts::SpaceOnCells< F > &space, const uint attrb)
Definition: refinement.hh:473
Prediction(const concepts::SpaceOnCells< F > &space, enum Mode mode=P, const Real hdec=sqrt(4.0), const Real pdec=sqrt(0.4), const Real nRdec=1.0)
Constructor for the prediction refinement strategy.
Definition: refinement.hh:122
virtual const ushort * innerDof(const concepts::Connector2 &cntr) const
Returns a pointer to the maximal polynomial degrees of the inner degree of freedom in the cell quad.
A cell in a mesh consist of topological information (neighbours, connectivity, orientation) and geome...
Definition: cell.hh:39
virtual std::ostream & info(std::ostream &os) const
Returns information in an output stream.
Definition: refinement.hh:282
virtual void apply(concepts::SpaceOnCells< F > &space)=0
Helper class for building 2D hp-FEM spaces (space pre builder).
Definition: spacePreBuilder.hh:168
concepts::HashMap< concepts::AdaptiveAdjustP< dim > > adjusts_
Definition: refinement.hh:87
void buildRefinement(const Marking &mark, const concepts::LocalEstimator< F > &estimator)
Definition: refinement.hh:187
#define conceptsAssert(cond, exc)
Assert that a certain condition is fulfilled.
Definition: exceptions.hh:394
virtual std::ostream & info(std::ostream &os) const
Returns information in an output stream.
Definition: refinement.hh:528
concepts::HashMap< const concepts::Cell * > cells_
Definition: refinement.hh:306
void rebuild(bool sameIndices=false)
Rebuilds the mesh and the elements due to adjustment orders.
virtual bool vtxDof(const concepts::Connector2 &cntr, uint i) const
Returns, if the i th vertex of cell cntr has a degree of freedom.
Sequence with operations, output operator, and method of the particular element types.
Definition: sequence.hh:39
virtual Scan * scan() const
Returns a scanner to iterate over the elements of the space.
Definition: hpAdaptiveSpace.hh:263
Definition: hashMap.hh:19
concepts::HashMap< concepts::Array< ushort > > p_
Definition: refinement.hh:303
virtual const Cell & cell() const =0
Returns the cell on which the element is built.
Class to describe adjustments to elements in an adaptive space.
Definition: hpMethod.hh:59
Prediction hp - adaptive refinement strategy, proposed by Melenk and Wohlmuth.
Definition: refinement.hh:99
virtual Scanner * scan() const =0
Returns a scanner to iterate over the elements of the space.
virtual void apply(concepts::SpaceOnCells< F > &space)
Definition: refinement.hh:64
concepts::HashMap< const concepts::Cell * > cells_
Definition: refinement.hh:541
virtual void adjust(const concepts::Element< F > &elm, const concepts::AdaptiveAdjustP< 2 > &a)
Adjusts the space in the next rebuild step for this element.
virtual void apply(concepts::SpaceOnCells< F > &space)
Definition: refinement.hh:237