www.cemf.ir
sphereShape.hpp
Go to the documentation of this file.
1 /*------------------------------- phasicFlow ---------------------------------
2  O C enter of
3  O O E ngineering and
4  O O M ultiscale modeling of
5  OOOOOOO F luid flow
6 ------------------------------------------------------------------------------
7  Copyright (C): www.cemf.ir
8  email: hamid.r.norouzi AT gmail.com
9 ------------------------------------------------------------------------------
10 Licence:
11  This file is part of phasicFlow code. It is a free software for simulating
12  granular and multiphase flows. You can redistribute it and/or modify it under
13  the terms of GNU General Public License v3 or any other later versions.
14 
15  phasicFlow is distributed to help others in their research in the field of
16  granular and multiphase flows, but WITHOUT ANY WARRANTY; without even the
17  implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
18 
19 -----------------------------------------------------------------------------*/
20 
21 #ifndef __sphereShape_hpp__
22 #define __sphereShape_hpp__
23 
24 #include "shape.hpp"
25 
26 namespace pFlow
27 {
28 
30 :
31  public shape
32 {
33 private:
34 
35  // - diameter of spheres
37 
38  bool readFromDictionary3();
39 
40 protected:
41 
42  bool writeToDict(dictionary& dict)const override;
43 
44 public:
45 
46  // - type info
47  TypeInfo("shape<sphere>");
48 
50  const word& fileName,
52  const property& prop);
53 
54 
55  ~sphereShape() override = default;
56 
58 
59  real maxBoundingSphere()const override;
60 
61  real minBoundingSphere()const override;
62 
63  bool boundingDiameter(uint32 index, real& bDiam)const override;
64 
65  real boundingDiameter(uint32 index)const override;
66 
67  realVector boundingDiameter()const override;
68 
69  bool mass(uint32 index, real& m)const override;
70 
71  real mass(uint32 index) const override;
72 
73  realVector mass()const override;
74 
75  realVector density() const override;
76 
77  bool Inertia(uint32 index, real& I)const override;
78 
79  real Inertia(uint32 index)const override;
80 
81  realVector Inertia()const override;
82 
83  bool Inertia_xx(uint32 index, real& Ixx)const override;
84 
85  real Inertial_xx(uint32 index)const override;
86 
87  bool Inertia_yy(uint32 index, real& Iyy)const override;
88 
89  real Inertial_yy(uint32 index)const override;
90 
91  bool Inertia_zz(uint32 index, real& Izz)const override;
92 
93  real Inertial_zz(uint32 index)const override;
94 
95 };
96 
97 } // pFlow
98 
99 #endif //__sphereShape_hpp__
pFlow::sphereShape::writeToDict
bool writeToDict(dictionary &dict) const override
Definition: sphereShape.cpp:39
pFlow::sphereShape::TypeInfo
TypeInfo("shape<sphere>")
pFlow::real
float real
Definition: builtinTypes.hpp:45
pFlow::sphereShape::Inertia_xx
bool Inertia_xx(uint32 index, real &Ixx) const override
Definition: sphereShape.cpp:172
pFlow::sphereShape::mass
realVector mass() const override
Definition: sphereShape.cpp:131
pFlow::sphereShape
Definition: sphereShape.hpp:29
pFlow::sphereShape::maxBoundingSphere
real maxBoundingSphere() const override
Definition: sphereShape.cpp:71
shape.hpp
pFlow::uint32
unsigned int uint32
Definition: builtinTypes.hpp:56
pFlow::sphereShape::Inertial_yy
real Inertial_yy(uint32 index) const override
Definition: sphereShape.cpp:187
pFlow::word
std::string word
Definition: builtinTypes.hpp:64
pFlow::sphereShape::Inertial_zz
real Inertial_zz(uint32 index) const override
Definition: sphereShape.cpp:197
pFlow::sphereShape::Inertia_yy
bool Inertia_yy(uint32 index, real &Iyy) const override
Definition: sphereShape.cpp:182
pFlow::sphereShape::diameters_
realVector diameters_
Definition: sphereShape.hpp:36
pFlow
Definition: demGeometry.hpp:27
pFlow::sphereShape::readFromDictionary3
bool readFromDictionary3()
Definition: sphereShape.cpp:24
pFlow::sphereShape::boundingDiameter
realVector boundingDiameter() const override
Definition: sphereShape.cpp:103
pFlow::sphereShape::minBoundingSphere
real minBoundingSphere() const override
Definition: sphereShape.cpp:76
pFlow::shape
Definition: shape.hpp:30
pFlow::dictionary::dict
virtual dictionary & dict()
ref to this dictionary, if it is a dictionary
Definition: dictionary.cpp:369
pFlow::sphereShape::Inertia_zz
bool Inertia_zz(uint32 index, real &Izz) const override
Definition: sphereShape.cpp:192
pFlow::sphereShape::Inertia
realVector Inertia() const override
Definition: sphereShape.cpp:167
pFlow::IOobject::owner
const repository * owner() const override
Definition: IOobject.hpp:76
pFlow::sphereShape::sphereShape
sphereShape(const word &fileName, repository *owner, const property &prop)
Definition: sphereShape.cpp:55
pFlow::property
property holds the pure properties of materials.
Definition: property.hpp:37
pFlow::sphereShape::density
realVector density() const override
Definition: sphereShape.cpp:136
pFlow::repository
Definition: repository.hpp:34
pFlow::sphereShape::~sphereShape
~sphereShape() override=default
pFlow::Vector< real >
m
uint32 m
Definition: NBSLoop.hpp:22
pFlow::sphereShape::Inertial_xx
real Inertial_xx(uint32 index) const override
Definition: sphereShape.cpp:177
pFlow::dictionary
Dictionary holds a set of data entries or sub-dictionaries that are enclosed in a curely braces or ar...
Definition: dictionary.hpp:67