Chombo + EB  3.2
ParabolaIF.H
Go to the documentation of this file.
1 #ifdef CH_LANG_CC
2 /*
3  * _______ __
4  * / ___/ / ___ __ _ / / ___
5  * / /__/ _ \/ _ \/ V \/ _ \/ _ \
6  * \___/_//_/\___/_/_/_/_.__/\___/
7  * Please refer to Copyright.txt, in Chombo's root directory.
8  */
9 #endif
10 
11 #ifndef _PARABOLAIF_H_
12 #define _PARABOLAIF_H_
13 
14 #include "MayDay.H"
15 #include "RealVect.H"
16 
17 #include "BaseIF.H"
18 
19 #include "NamespaceHeader.H"
20 
21 ///
22 /**
23  This implicit function specifies a parabola.
24  */
25 class ParabolaIF: public BaseIF
26 {
27 public:
28  ///
29  /**
30  y = a*(x-x0)^2 + y0, (x0,y0) = a_point
31  */
32  ParabolaIF(const Real& a_a,
33  const RealVect& a_point,
34  const bool& a_inside);
35 
36  /// Destructor
37  virtual ~ParabolaIF()
38  {
39  }
40 
41  virtual Real value(const IndexTM<int,SpaceDim> & a_partialDerivative,
42  const IndexTM<Real,SpaceDim>& a_point) const;
43 
44  virtual Real value(const RealVect& a_point) const;
45 
46  virtual Real value(const IndexTM<Real,SpaceDim>& a_point) const;
47 
48  virtual BaseIF* newImplicitFunction() const;
49 
50 protected:
53  bool m_inside;
54 private:
55  ParabolaIF();
56 
57 };
58 
59 #include "NamespaceFooter.H"
60 #endif
virtual Real value(const IndexTM< int, SpaceDim > &a_partialDerivative, const IndexTM< Real, SpaceDim > &a_point) const
virtual BaseIF * newImplicitFunction() const
bool m_inside
Definition: ParabolaIF.H:53
Definition: BaseIF.H:32
RealVect m_point
Definition: ParabolaIF.H:52
double Real
Definition: REAL.H:33
A Real vector in SpaceDim-dimensional space.
Definition: RealVect.H:41
Definition: ParabolaIF.H:25
virtual ~ParabolaIF()
Destructor.
Definition: ParabolaIF.H:37
Real m_a
Definition: ParabolaIF.H:51