# PhasicFlow: src/Particles/SphereParticles/sphereShape/sphereShape.hpp Source File
PhasicFlow is an open-source parallel DEM (discrete element method) package for simulating granular flow. It is developed in C++ and can be exectued on both GPU (like CUDA) and CPU.

sphereShape.hpp
Go to the documentation of this file.
/*------------------------------- phasicFlow ---------------------------------
O C enter of
O O E ngineering and
O O M ultiscale modeling of
OOOOOOO F luid flow
------------------------------------------------------------------------------
Copyright (C): www.cemf.ir
email: hamid.r.norouzi AT gmail.com
------------------------------------------------------------------------------
Licence:
This file is part of phasicFlow code. It is a free software for simulating
granular and multiphase flows. You can redistribute it and/or modify it under
the terms of GNU General Public License v3 or any other later versions.
phasicFlow is distributed to help others in their research in the field of
granular and multiphase flows, but WITHOUT ANY WARRANTY; without even the
implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
-----------------------------------------------------------------------------*/
#ifndef __sphereShape_hpp__
#define __sphereShape_hpp__
#include "shape.hpp"
namespace pFlow
{
class sphereShape
:
public shape
{
private:
// - diameter of spheres
realVector diameters_;
bool readFromDictionary3();
protected:
bool writeToDict(dictionary& dict)const override;
public:
// - type info
TypeInfo("shape<sphere>");
sphereShape(
const word& fileName,
repository* owner,
const property& prop);
~sphereShape() override = default;
real maxBoundingSphere()const override;
real minBoundingSphere()const override;
bool boundingDiameter(uint32 index, real& bDiam)const override;
real boundingDiameter(uint32 index)const override;
realVector boundingDiameter()const override;
bool mass(uint32 index, real& m)const override;
real mass(uint32 index) const override;
realVector mass()const override;
realVector density() const override;
bool Inertia(uint32 index, real& I)const override;
real Inertia(uint32 index)const override;
realVector Inertia()const override;
bool Inertia_xx(uint32 index, real& Ixx)const override;
real Inertial_xx(uint32 index)const override;
bool Inertia_yy(uint32 index, real& Iyy)const override;
real Inertial_yy(uint32 index)const override;
bool Inertia_zz(uint32 index, real& Izz)const override;
real Inertial_zz(uint32 index)const override;
};
} // pFlow
#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