OpenLB 1.7
Loading...
Searching...
No Matches
Public Member Functions | Public Attributes | Static Public Attributes | List of all members
olb::HaiderLevenspielParticle3D< T > Class Template Reference

#include <HaiderLevenspielParticle3D.h>

+ Inheritance diagram for olb::HaiderLevenspielParticle3D< T >:
+ Collaboration diagram for olb::HaiderLevenspielParticle3D< T >:

Public Member Functions

 HaiderLevenspielParticle3D ()
 
 HaiderLevenspielParticle3D (std::vector< T > pos, std::vector< T > vel, T mas=1., T rad=1.)
 
 HaiderLevenspielParticle3D (const HaiderLevenspielParticle3D< T > &p)
 
 HaiderLevenspielParticle3D (std::vector< T > pos, T mas=1., T rad=1., T _volume=1., T _surface=1.)
 
T & getsphericity ()
 
const T & getsphericity () const
 
T & getA ()
 
T & getB ()
 
T & getC ()
 
T & getD ()
 
void set_fluidVel (T fluidVel[3])
 
- Public Member Functions inherited from olb::Particle3D< T >
 Particle3D ()
 
 Particle3D (std::vector< T > pos, T mas=1., T rad=1., int id=0, T masAdd=0.)
 
 Particle3D (std::vector< T > pos, std::vector< T > vel, T mas=1., T rad=1., int id=0, T masAdd=0.)
 
 Particle3D (const Particle3D< T > &p)
 
void setPos (std::vector< T > pos)
 
void setStoredPos (std::vector< T > pos)
 
std::vector< T > & getStoredPos ()
 
std::vector< T > & getPos ()
 
const std::vector< T > & getPos () const
 
void setVel (std::vector< T > vel)
 
void setStoredVel (std::vector< T > vel)
 
std::vector< T > & getStoredVel ()
 
int getID ()
 
void setID (int id)
 
std::vector< T > & getVel ()
 
const std::vector< T > & getVel () const
 
void addForce (std::vector< T > &frc)
 
void setForce (std::vector< T > &frc)
 
void resetForce ()
 
std::vector< T > & getForce ()
 
const std::vector< T > & getForce () const
 
void setStoreForce (std::vector< T > &storeForce)
 
void resetStoreForce ()
 
std::vector< T > & getStoreForce ()
 
const std::vector< T > & getStoreForce () const
 
void serialize (T serial[])
 
void unserialize (T *)
 
void print ()
 
void printDeep (std::string message)
 
const T & getMass ()
 
const T & getAddedMass ()
 
const T & getEffectiveMass ()
 
const T & getInvMass ()
 
const T & getInvEffectiveMass ()
 
const T & getMass () const
 
const T & getAddedMass () const
 
const T & getEffectiveMass () const
 
void setMass (T m)
 
void setAddedMass (T m)
 
const T & getRad ()
 
const T & getRad () const
 
void setRad (T r)
 
const int & getCuboid ()
 
void setCuboid (int c)
 
const bool & getActive ()
 
const bool & getActive () const
 
void setActive (bool act)
 

Public Attributes

_fluidVel [3] = {}
 
- Public Attributes inherited from olb::Particle3D< T >
std::vector< std::pair< size_t, T > > _verletList
 

Static Public Attributes

static const int serialPartSize = 19
 
- Static Public Attributes inherited from olb::Particle3D< T >
static const int serialPartSize = 19
 

Additional Inherited Members

- Protected Attributes inherited from olb::Particle3D< T >
std::vector< T > _pos
 
std::vector< T > _vel
 
std::vector< T > _force
 
_invMas
 
_invMasAdd
 
_invEffectiveMas
 
_effectiveMas
 
_mas
 
_masAdd
 
_rad
 
int _cuboid
 globIC
 
int _id
 
bool _active
 
std::vector< T > _storePos
 
std::vector< T > _storeVel
 
std::vector< T > _storeForce
 

Detailed Description

template<typename T>
class olb::HaiderLevenspielParticle3D< T >

Definition at line 47 of file HaiderLevenspielParticle3D.h.

Constructor & Destructor Documentation

◆ HaiderLevenspielParticle3D() [1/4]

template<typename T >
olb::HaiderLevenspielParticle3D< T >::HaiderLevenspielParticle3D ( )

Definition at line 44 of file HaiderLevenspielParticle3D.hh.

◆ HaiderLevenspielParticle3D() [2/4]

template<typename T >
olb::HaiderLevenspielParticle3D< T >::HaiderLevenspielParticle3D ( std::vector< T > pos,
std::vector< T > vel,
T mas = 1.,
T rad = 1. )

Definition at line 59 of file HaiderLevenspielParticle3D.hh.

61 : Particle3D<T>::Particle3D(pos, vel, mas, rad)
62{ }

◆ HaiderLevenspielParticle3D() [3/4]

template<typename T >
olb::HaiderLevenspielParticle3D< T >::HaiderLevenspielParticle3D ( const HaiderLevenspielParticle3D< T > & p)

Definition at line 54 of file HaiderLevenspielParticle3D.hh.

◆ HaiderLevenspielParticle3D() [4/4]

template<typename T >
olb::HaiderLevenspielParticle3D< T >::HaiderLevenspielParticle3D ( std::vector< T > pos,
T mas = 1.,
T rad = 1.,
T _volume = 1.,
T _surface = 1. )

Definition at line 89 of file HaiderLevenspielParticle3D.hh.

90 : Particle3D<T>::Particle3D( pos, mas, std::pow(3*_volume/(4*M_PI),0.3333333333))/*{pos, mas, rad}*///, sphericity {_volume}, surface {_surface}
91{
92sphericity = (4*M_PI*std::pow(3*_volume/(4*M_PI),0.66666666666))/_surface; //surface of volume equivalent sphere divided by particle surface
93//std::cout << "sphericity " <<sphericity << std::endl;
94surface = _surface;
95volume = _volume;
96//std::cout <<"getmass " << this->getMass() << std::endl;
97//std::cout << "surface " << surface << std::endl;
98 A = util::exp(2.3288-6.4581*sphericity + 2.4486*sphericity*sphericity);
99 B = 0.0964 + 0.5565*sphericity;
100 C = util::exp(4.905-13.8944*sphericity + 18.4222*sphericity*sphericity-10.2599*sphericity*sphericity*sphericity);
101 D = util::exp(1.4681+12.2584*sphericity-20.7322*sphericity*sphericity+15.8855*sphericity*sphericity*sphericity);
102//set the radius to volume equivalent raidus
103//std::cout << "radius " <<this->getRad() << std::endl;
104/*std::cout << "A " <<this->getA() << std::endl;
105std::cout << "B " <<this->getB() << std::endl;
106
107std::cout << "C " <<this->getC() << std::endl;
108std::cout << "D " <<this->getD() << std::endl;*/
109
110
111
112}
#define M_PI
ADf< T, DIM > exp(const ADf< T, DIM > &a)
Definition aDiff.h:455

References olb::util::exp(), and M_PI.

+ Here is the call graph for this function:

Member Function Documentation

◆ getA()

template<typename T >
T & olb::HaiderLevenspielParticle3D< T >::getA ( )
inline

Definition at line 60 of file HaiderLevenspielParticle3D.h.

61 {
62 return A;
63 };

◆ getB()

template<typename T >
T & olb::HaiderLevenspielParticle3D< T >::getB ( )
inline

Definition at line 64 of file HaiderLevenspielParticle3D.h.

65 {
66 return B;
67 };

◆ getC()

template<typename T >
T & olb::HaiderLevenspielParticle3D< T >::getC ( )
inline

Definition at line 68 of file HaiderLevenspielParticle3D.h.

69 {
70 return C;
71 };

◆ getD()

template<typename T >
T & olb::HaiderLevenspielParticle3D< T >::getD ( )
inline

Definition at line 72 of file HaiderLevenspielParticle3D.h.

73 {
74 return D;
75 };

◆ getsphericity() [1/2]

template<typename T >
T & olb::HaiderLevenspielParticle3D< T >::getsphericity ( )
inline

Definition at line 65 of file HaiderLevenspielParticle3D.hh.

66{
67 return sphericity;
68}

◆ getsphericity() [2/2]

template<typename T >
const T & olb::HaiderLevenspielParticle3D< T >::getsphericity ( ) const
inline

Definition at line 71 of file HaiderLevenspielParticle3D.hh.

72{
73 return sphericity;
74}

◆ set_fluidVel()

template<typename T >
void olb::HaiderLevenspielParticle3D< T >::set_fluidVel ( T fluidVel[3])
inline

Definition at line 76 of file HaiderLevenspielParticle3D.h.

77 {
78 _fluidVel[0]=fluidVel[0];
79 _fluidVel[1]=fluidVel[1];
80 _fluidVel[2]=fluidVel[2];
81 }

References olb::HaiderLevenspielParticle3D< T >::_fluidVel.

Member Data Documentation

◆ _fluidVel

template<typename T >
T olb::HaiderLevenspielParticle3D< T >::_fluidVel[3] = {}

Definition at line 82 of file HaiderLevenspielParticle3D.h.

82{};

◆ serialPartSize

template<typename T >
const int olb::HaiderLevenspielParticle3D< T >::serialPartSize = 19
static

Definition at line 84 of file HaiderLevenspielParticle3D.h.


The documentation for this class was generated from the following files: