Refines element or raises its polynomial degree. More...
#include <hpExtension.hh>


Public Member Functions | |
| virtual void | operator() (const concepts::Element< F > &elm) throw (concepts::MissingFeature) |
| Application operator. | |
| virtual void | operator() (const concepts::Cell &cell) throw (concepts::MissingFeature) |
| Application operator. | |
| RefineOrRaise (const concepts::Vector< F > &solution, const Real theta, concepts::AdaptiveSpace< Real, concepts::AdaptiveAdjustP< 1 > > &spc) | |
| Constructor. | |
Protected Member Functions | |
| virtual std::ostream & | info (std::ostream &os) const |
| Returns information in an output stream. | |
Private Attributes | |
| concepts::Array< F > | coeff_ |
| Elementwise coefficients of the shape functions. | |
| concepts::Array< F > | legendre_ |
| Legendre coefficients. | |
| const concepts::Vector< F > & | solution_ |
| Vector of the variable to plot. | |
| concepts::AdaptiveSpace< Real, concepts::AdaptiveAdjustP< 1 > > & | spc_ |
| Space. | |
| const Real | theta_ |
| Decision parameter. | |
Refines element or raises its polynomial degree.
The decision is based on a log linear regression to find out if the Legendre coefficients of the solution decrease exponentially.
The parameter theta is used to control this decision. If
is less than theta, the element's polynomial degree is raised, otherwise it is refined. m is the slope of the fitted line in the regression.
Definition at line 38 of file hpExtension.hh.
| hp1D::RefineOrRaise< F >::RefineOrRaise | ( | const concepts::Vector< F > & | solution, |
| const Real | theta, | ||
| concepts::AdaptiveSpace< Real, concepts::AdaptiveAdjustP< 1 > > & | spc | ||
| ) |
Constructor.
| solution | Solution vector |
| theta | Decision parameter |
| spc | Space (is used for the refinements) |
| virtual std::ostream& concepts::CellPostprocess< F >::info | ( | std::ostream & | os | ) | const [protected, virtual, inherited] |
Returns information in an output stream.
Reimplemented from concepts::OutputOperator.
Reimplemented in EvaluateEa_of_x, CellA_M_alpha_of_x, CellA_M_of_x_MC, graphics::BaseOutputCell< F >, graphics::BaseDataCell< F, G >, graphics::BaseElementFormulaCell< F, G >, graphics::BaseFormulaCell< F, G >, graphics::BaseMeshCell, graphics::VertexList, hp2D::APrioriRefinement, hp3D::APrioriRefinement, concepts::HRefinement< F, dim >, concepts::PRefinement< F, dim >, concepts::CellIntegral< F >, concepts::CellFaceIntegral< F >, concepts::CellEdgeIntegral< F >, graphics::BaseOutputCell< G >, and graphics::BaseOutputCell< Real >.
| virtual void hp1D::RefineOrRaise< F >::operator() | ( | const concepts::Element< F > & | elm | ) | throw (concepts::MissingFeature) [virtual] |
Application operator.
This application operator has to be overloaded to post process a space.
| elm | Current element |
Implements concepts::CellPostprocess< F >.
| virtual void hp1D::RefineOrRaise< F >::operator() | ( | const concepts::Cell & | cell | ) | throw (concepts::MissingFeature) [inline, virtual] |
Application operator.
This application operator has to be overloaded to post process a mesh.
| cell | Current cell |
Implements concepts::CellPostprocess< F >.
Definition at line 51 of file hpExtension.hh.
concepts::Array<F> hp1D::RefineOrRaise< F >::coeff_ [private] |
Elementwise coefficients of the shape functions.
Definition at line 55 of file hpExtension.hh.
concepts::Array<F> hp1D::RefineOrRaise< F >::legendre_ [private] |
Legendre coefficients.
Definition at line 57 of file hpExtension.hh.
const concepts::Vector<F>& hp1D::RefineOrRaise< F >::solution_ [private] |
Vector of the variable to plot.
Definition at line 59 of file hpExtension.hh.
concepts::AdaptiveSpace<Real, concepts::AdaptiveAdjustP<1> >& hp1D::RefineOrRaise< F >::spc_ [private] |
Definition at line 61 of file hpExtension.hh.
const Real hp1D::RefineOrRaise< F >::theta_ [private] |
Decision parameter.
Definition at line 63 of file hpExtension.hh.