Home | Doxygen Documentation | Tutorials | Developer Tools (restricted)

Public Member Functions | Protected Member Functions | Private Attributes
hp1D::RefineOrRaise< F > Class Template Reference

Refines element or raises its polynomial degree. More...

#include <hpExtension.hh>

Inheritance diagram for hp1D::RefineOrRaise< F >:
Inheritance graph
[legend]
Collaboration diagram for hp1D::RefineOrRaise< F >:
Collaboration graph
[legend]

List of all members.

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.

Detailed Description

template<typename F>
class hp1D::RefineOrRaise< F >

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 $e^m$ 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.

Author:
Philipp Frauenfelder, 2002

Definition at line 38 of file hpExtension.hh.


Constructor & Destructor Documentation

template<typename F >
hp1D::RefineOrRaise< F >::RefineOrRaise ( const concepts::Vector< F > &  solution,
const Real  theta,
concepts::AdaptiveSpace< Real, concepts::AdaptiveAdjustP< 1 > > &  spc 
)

Constructor.

Parameters:
solutionSolution vector
thetaDecision parameter
spcSpace (is used for the refinements)

Member Function Documentation

template<class F>
virtual std::ostream& concepts::CellPostprocess< F >::info ( std::ostream &  os) const [protected, virtual, inherited]
template<typename F >
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.

Parameters:
elmCurrent element

Implements concepts::CellPostprocess< F >.

template<typename 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.

Parameters:
cellCurrent cell

Implements concepts::CellPostprocess< F >.

Definition at line 51 of file hpExtension.hh.


Member Data Documentation

template<typename F >
concepts::Array<F> hp1D::RefineOrRaise< F >::coeff_ [private]

Elementwise coefficients of the shape functions.

Definition at line 55 of file hpExtension.hh.

template<typename F >
concepts::Array<F> hp1D::RefineOrRaise< F >::legendre_ [private]

Legendre coefficients.

Definition at line 57 of file hpExtension.hh.

template<typename F >
const concepts::Vector<F>& hp1D::RefineOrRaise< F >::solution_ [private]

Vector of the variable to plot.

Definition at line 59 of file hpExtension.hh.

template<typename F >
concepts::AdaptiveSpace<Real, concepts::AdaptiveAdjustP<1> >& hp1D::RefineOrRaise< F >::spc_ [private]

Space.

Definition at line 61 of file hpExtension.hh.

template<typename F >
const Real hp1D::RefineOrRaise< F >::theta_ [private]

Decision parameter.

Definition at line 63 of file hpExtension.hh.


The documentation for this class was generated from the following file:

Home | Doxygen Documentation | Tutorials | Developer Tools (restricted)