chombo-discharge
CD_HollowCylinderIF.H
Go to the documentation of this file.
1 /* chombo-discharge
2  * Copyright © 2021 SINTEF Energy Research.
3  * Please refer to Copyright.txt and LICENSE in the chombo-discharge root directory.
4  */
5 
12 #ifndef CD_HollowCylinderIF_H
13 #define CD_HollowCylinderIF_H
14 
15 // Chombo includes
16 #include <RealVect.H>
17 #include <BaseIF.H>
18 #include <TransformIF.H>
19 #include <LatheIF.H>
20 
21 // Our includes
22 #include <CD_NamespaceHeader.H>
23 
27 class HollowCylinderIF : public BaseIF
28 {
29 public:
33  HollowCylinderIF() = delete;
34 
45  HollowCylinderIF(const RealVect a_center1,
46  const RealVect a_center2,
47  const Real a_majorRadius,
48  const Real a_minorRadius,
49  const Real a_outerCurvature,
50  const Real a_innerCurvature,
51  const bool a_fluidInside);
52 
57  HollowCylinderIF(const HollowCylinderIF& a_inputIF);
58 
63  virtual Real
64  value(const RealVect& a_point) const override;
65 
69  virtual BaseIF*
70  newImplicitFunction() const override;
71 
72 protected:
76  RefCountedPtr<BaseIF> m_baseIF;
77 };
78 
79 #include <CD_NamespaceFooter.H>
80 
81 #endif
This class is used to generate a hollow cylinder with rounded edges.
Definition: CD_HollowCylinderIF.H:28
HollowCylinderIF()=delete
Disallowed weak construction.
RefCountedPtr< BaseIF > m_baseIF
3D object rotated and translated to its specified position
Definition: CD_HollowCylinderIF.H:76
virtual BaseIF * newImplicitFunction() const override
IF factory method.
Definition: CD_HollowCylinderIF.cpp:67
virtual Real value(const RealVect &a_point) const override
Test whether inside or not.
Definition: CD_HollowCylinderIF.cpp:61