hpExtension.hh

Go to the documentation of this file.
1 
7 #ifndef hpExtension3D_hh
8 #define hpExtension3D_hh
9 
10 #include "basics/typedefs.hh"
11 #include "basics/exceptions.hh"
12 #include "space/postProcess.hh"
13 
14 namespace concepts {
15  // forward declaration
16  template<typename F>
17  class Vector;
18 
19  template<typename F>
20  class Array;
21 }
22 
23 namespace hp3D {
24  using concepts::Real;
25 
26  // ******************************************************** RefineOrRaise **
27 
39  template<typename F, typename G = typename concepts::Realtype<F>::type>
41  public:
47  RefineOrRaise(const concepts::Vector<F>& solution, const Real theta,
50  virtual void operator() (const concepts::Element<F>& elm)
52  virtual void operator() (const concepts::Cell& cell)
53  throw(concepts::MissingFeature) {}
54  private:
66  const Real theta_;
71  Real transCoeff_(const uint i, const uint j) const;
83  bool regression_(concepts::Array<F>& coeff, const uint p) const;
84  };
85 
86 } // namespace hp3D
87 
88 #endif // hpExtension3D_hh
concepts::Array< F > legendre_
Legendre coefficients.
Definition: hpExtension.hh:58
An abstract class for an element of a space.
Definition: exceptions.hh:15
const concepts::Vector< F > & solution_
Vector of the variable to plot.
Definition: hpExtension.hh:62
A cell in a mesh consist of topological information (neighbours, connectivity, orientation) and geome...
Definition: cell.hh:39
const Real theta_
Decision parameter.
Definition: hpExtension.hh:66
RefineOrRaise(const concepts::Vector< F > &solution, const Real theta, concepts::AdaptiveSpace< G, concepts::AdaptiveAdjustP< 3 > > &spc)
Constructor.
An array of objects.
Definition: bilinearForm.hh:23
bool regression_(concepts::Array< F > &coeff, const uint p) const
Makes the regression test.
virtual void operator()(const concepts::Element< F > &elm)
Application operator.
concepts::Array< F > regr_
Temporary space for the log linear regression.
Definition: hpExtension.hh:60
concepts::AdaptiveSpace< G, concepts::AdaptiveAdjustP< 3 > > & spc_
Space.
Definition: hpExtension.hh:64
Class to describe adjustments to elements in an adaptive space.
Definition: hpMethod.hh:59
Refines element or raises its polynomial degree.
Definition: hpExtension.hh:40
Exception class to express a missing feature.
Definition: exceptions.hh:206
Abstract base class for an adaptive space.
Definition: space.hh:350
concepts::Array< F > coeff_
Elementwise coefficients of the shape functions.
Definition: hpExtension.hh:56
3D hp-FEM for H1-conforming elements.
Definition: meshDX.hh:23
Abstract class for per cell postprocessing.
Definition: postProcess.hh:38
double Real
Type normally used for a floating point number.
Definition: typedefs.hh:36
Real transCoeff_(const uint i, const uint j) const
Returns the ith coefficient of the jth shape function in a Legendre expansion.
Basic namespace for Concepts-2.
Definition: pml_formula.h:16
Page URL: http://wiki.math.ethz.ch/bin/view/Concepts/WebHome
21 August 2020
© 2020 Eidgenössische Technische Hochschule Zürich