Fixed Codes of RDB

This commit is contained in:
omid.khs 2023-02-07 18:59:13 +03:30
parent 4827570411
commit 1fb2c06de9
7 changed files with 3027 additions and 128 deletions

View File

@ -2,12 +2,13 @@
| phasicFlow File | | phasicFlow File |
| copyright: www.cemf.ir | | copyright: www.cemf.ir |
\* ------------------------------------------------------------------------- */ \* ------------------------------------------------------------------------- */
objectName interaction; objectName interaction;
objectType dicrionary; objectType dicrionary;
/*----------------------------------------------------------------------------*/
materials (lightMat heavyMat wallMat); // a list of materials names // a list of materials names
densities (1000 1500.0 2500); // density of materials [kg/m3] materials (lightMat heavyMat wallMat);
// density of materials [kg/m3]
densities (1000 1500 2500);
contactListType sortedContactList; contactListType sortedContactList;
@ -21,52 +22,55 @@ model
heavyMat-heavyMat heavyMat-wallMat heavyMat-heavyMat heavyMat-wallMat
wallMat-wallMat ); wallMat-wallMat );
*/ */
// Young modulus [Pa]
Yeff (1.0e6 1.0e6 1.0e6 // Young modulus [Pa] Yeff (1.0e6 1.0e6 1.0e6
1.0e6 1.0e6 1.0e6 1.0e6
1.0e6); 1.0e6);
// Shear modulus [Pa]
Geff (0.8e6 0.8e6 0.8e6 // Shear modulus [Pa] Geff (0.8e6 0.8e6 0.8e6
0.8e6 0.8e6 0.8e6 0.8e6
0.8e6); 0.8e6);
// Poisson's ratio [-]
nu (0.25 0.25 0.25 // Poisson's ratio [-] nu (0.25 0.25 0.25
0.25 0.25 0.25 0.25
0.25); 0.25);
// coefficient of normal restitution
en (0.97 0.97 0.85 // coefficient of normal restitution en (0.97 0.97 0.85
0.97 0.85 0.97 0.85
1.00); 1.00);
// coefficient of tangential restitution
et (1.0 1.0 1.0 // coefficient of tangential restitution et (1.0 1.0 1.0
1.0 1.0 1.0 1.0
1.0); 1.0);
// dynamic friction
mu (0.65 0.65 0.35 // dynamic friction mu (0.65 0.65 0.35
0.65 0.35 0.65 0.35
0.35); 0.35);
// rolling friction
mur (0.1 0.1 0.1 // rolling friction mur (0.1 0.1 0.1
0.1 0.1 0.1 0.1
0.1); 0.1);
} }
contactSearch contactSearch
{ {
method NBS; // method for broad search particle-particle // method for broad search particle-particle
wallMapping cellMapping; // method for broad search particle-wall method NBS;
// method for broad search particle-wall
wallMapping cellMapping;
NBSInfo NBSInfo
{ {
updateFrequency 10; // each 20 timesteps, update neighbor list // each 20 timesteps, update neighbor list
sizeRatio 1.1; // bounding box size to particle diameter (max) updateFrequency 10;
// bounding box size to particle diameter (max)
sizeRatio 1.1;
} }
cellMappingInfo cellMappingInfo
{ {
updateFrequency 10; // each 20 timesteps, update neighbor list // each 20 timesteps, update neighbor list
cellExtent 0.6; // bounding box for particle-wall search (> 0.5) updateFrequency 10;
// bounding box for particle-wall search (> 0.5)
cellExtent 0.6;
} }
} }

View File

@ -2,59 +2,74 @@
| phasicFlow File | | phasicFlow File |
| copyright: www.cemf.ir | | copyright: www.cemf.ir |
\* ------------------------------------------------------------------------- */ \* ------------------------------------------------------------------------- */
objectName particleInsertion; objectName particleInsertion;
objectType dicrionary; objectType dicrionary;
/*---------------------------------------------------------------------------*/
// is insertion active?
active yes; // is insertion active? active yes;
// not implemented for yes
collisionCheck No; // not implemented for yes collisionCheck No;
/* /*
five layers of particles are packed one-by-one using 5 insertion steps. Two layers of particles are packed one-by-one using 1 insertion steps.
*/ */
layer0 // Right Layer Region
layerrightregion
{ {
type cylinderRegion; // type of insertion region // type of insertion region
rate 5000; // insertion rate (particles/s) type cylinderRegion;
startTime 0; // (s) // insertion rate (particles/s)
endTime 1; // (s) rate 12500;
interval 0.025; //s // Start time of LightParticles insertion (s)
startTime 0;
// End time of LightParticles insertion (s)
endTime 1;
// Time Interval of LightParticles insertion (s)
interval 0.025;
cylinderRegionInfo cylinderRegionInfo
{ {
p2 (-0.15 0.25 0.05); // (m,m,m) // Coordinates of cylinderRegion (m,m,m)
p1 (-0.15 0.24 0.05); // (m,m,m) p2 (-0.15 0.25 0.05);
radius 0.035; // radius of cylinder (m) p1 (-0.15 0.24 0.05);
// radius of cylinder (m)
radius 0.035;
} }
setFields setFields
{ {
velocity realx3 (0.0 -0.6 0.0); // initial velocity of inserted particles // initial velocity of inserted particles
velocity realx3 (0.0 -0.6 0.0);
} }
mixture mixture
{ {
lightSphere 1; // mixture composition of inserted particles // mixture composition of inserted particles
lightSphere 1;
} }
} }
// Left Layer Region
layer1 layerleftregion
{ {
type cylinderRegion; type cylinderRegion;
rate 7500; // (particles/s) //Left Region Particles Insertion Rate (particles/s)
startTime 0; // (s) rate 7500;
endTime 1; // (s) // Start time of LightParticles insertion (s)
interval 0.025; //s startTime 0;
// End time of LightParticles insertion (s)
endTime 1;
// Time Interval of LightParticles insertion (s)
interval 0.025;
cylinderRegionInfo cylinderRegionInfo
{ {
p2 (-0.23 0.25 0.05); // (m,m,m) // Coordinates of cylinderRegion (m,m,m)
p1 (-0.23 0.24 0.05); // (m,m,m) p2 (-0.23 0.25 0.05);
radius 0.035; // radius of cylinder (m) p1 (-0.23 0.24 0.05);
// radius of cylinder (m)
radius 0.035;
} }
setFields setFields

View File

@ -2,10 +2,12 @@
| phasicFlow File | | phasicFlow File |
| copyright: www.cemf.ir | | copyright: www.cemf.ir |
\* ------------------------------------------------------------------------- */ \* ------------------------------------------------------------------------- */
objectName sphereDict; objectName sphereDict;
objectType sphereShape; objectType sphereShape;
/*---------------------------------------------------------------------------*/
names (lightSphere heavySphere); // names of shapes // names of shapes
diameters (0.003 0.005); // diameter of shapes names (lightSphere heavySphere);
materials (lightMat heavyMat); // material names for shapes // diameter of shapes (m)
diameters (0.004 0.005);
// material names for shapes
materials (lightMat heavyMat);

View File

@ -2,49 +2,61 @@
| phasicFlow File | | phasicFlow File |
| copyright: www.cemf.ir | | copyright: www.cemf.ir |
\* ------------------------------------------------------------------------- */ \* ------------------------------------------------------------------------- */
objectName geometryDict; objectName geometryDict;
objectType dictionary; objectType dictionary;
/* ------------------------------------------------------------------------- */
// motion model: all surfaces are fixed // motion model: all surfaces are fixed
motionModel rotatingAxisMotion; motionModel rotatingAxisMotion;
surfaces surfaces
{ {
Shell body
{ {
type stlWall; // type of the wall // type of the wall
file shell.stl; // file name in stl folder type stlWall;
material wallMat; // material name of this wall // file name in stl folder
motion rotAxis; // motion component name file Body.stl;
// material name of this wall
material wallMat;
// motion component name
motion rotAxis;
} }
/* This is a Cylinder Wall at the rear of cylinder */
/* CylinderRear1
This is a plane wall at the rear end of cylinder
*/
wall1
{ {
type planeWall; // type of the wall // type of the wall
p1 (-0.4 0.10 0.0); // first point of the wall type cylinderWall;
p2 ( 0.0 0.10 0.0); // second point // first point for the axis of rotation
p3 ( 0.0 0.35 0.0); // third point p1 (-0.1974 0.2269 -0.001);
p4 (-0.4 0.35 0.0); // fourth point // second point for the axis of rotation
material wallMat; // material name of the wall p2 (-0.1974 0.2269 0.0);
motion rotAxis; // motion component name // Radius of p1
radius1 0.0001;
// Radius of p2
radius2 0.12;
// material name of the wall
material wallMat;
// motion component name
motion rotAxis;
} }
/* This a cylinder Wall at the front of Cylinder */
/* CylinderFront2
This is a plane wall at the front end of cylinder
*/
wall2
{ {
type planeWall; // type of the wall // type of the wall
p1 (-0.4 0.10 0.1); // first point of the wall type cylinderWall;
p2 ( 0.0 0.10 0.1); // second point // first point for the axis of rotation
p3 ( 0.0 0.35 0.1); // third point p1 (-0.1974 0.2269 0.0989);
p4 (-0.4 0.35 0.1); // fourth point // second point for the axis of rotation
material wallMat; // material name of the wall p2 (-0.1974 0.2269 0.0990);
motion rotAxis; // motion component name // Radius of p1
radius1 0.0001;
// Radius of p2
radius2 0.12;
// material name of the wall
material wallMat;
// motion component name
motion rotAxis;
} }
} }
// information for rotatingAxisMotion motion model // information for rotatingAxisMotion motion model
@ -52,12 +64,15 @@ rotatingAxisMotionInfo
{ {
rotAxis rotAxis
{ {
p1 (-0.1974 0.2269 0); // first point for the axis of rotation // first point for the axis of rotation
p2 (-0.1974 0.2269 0.1); // second point for the axis of rotation p1 (-0.1974 0.2269 0);
omega 2.38733; // rotation speed (rad/s) => 15 rpm // second point for the axis of rotation
p2 (-0.1974 0.2269 0.1);
// rotation speed (rad/s) => 15 rpm
omega 2.38733;
// Start time of Geometry Rotating
startTime 2; startTime 2;
// End time of Geometry Rotating
endTime 9.5; endTime 9.5;
} }
} }

View File

@ -2,18 +2,21 @@
| phasicFlow File | | phasicFlow File |
| copyright: www.cemf.ir | | copyright: www.cemf.ir |
\* ------------------------------------------------------------------------- */ \* ------------------------------------------------------------------------- */
objectName particlesDict; objectName particlesDict;
objectType dictionary; objectType dictionary;
/*---------------------------------------------------------------------------*/
setFields setFields
{ {
defaultValue defaultValue
{ {
velocity realx3 (0 0 0); // linear velocity (m/s) // linear velocity (m/s)
acceleration realx3 (0 0 0); // linear acceleration (m/s2) velocity realx3 (0 0 0);
rotVelocity realx3 (0 0 0); // rotational velocity (rad/s) // linear acceleration (m/s2)
shapeName word lightSphere; // name of the particle shape acceleration realx3 (0 0 0);
// rotational velocity (rad/s)
rotVelocity realx3 (0 0 0);
// name of the particle shape
shapeName word lightSphere;
} }
selectors selectors
@ -23,9 +26,11 @@ setFields
// positions particles // positions particles
positionParticles positionParticles
{ {
method empty; // creates the required fields with zero particles (empty). // creates the required spaces with zero particles (empty).
method empty;
maxNumberOfParticles 50000; // maximum number of particles in the simulation // maximum number of particles in the simulation
mortonSorting Yes; // perform initial sorting based on morton code? maxNumberOfParticles 20050;
// perform initial sorting based on morton code?
mortonSorting Yes;
} }

View File

@ -2,35 +2,35 @@
| phasicFlow File | | phasicFlow File |
| copyright: www.cemf.ir | | copyright: www.cemf.ir |
\* ------------------------------------------------------------------------- */ \* ------------------------------------------------------------------------- */
objectName settingsDict; objectName settingsDict;
objectType dictionary;; objectType dictionary;;
/*---------------------------------------------------------------------------*/
run RotatingDrumwithBaffles;
run layerdSiloFilling; // time step for integration (s)
dt 0.00001;
// start time for simulation
startTime 0;
// end time for simulation
endTime 10;
// time interval for saving the simulation
saveInterval 0.05;
// maximum number of digits for time folder
timePrecision 6;
// gravity vector (m/s2)
g (0 -9.8 0);
dt 0.00001; // time step for integration (s) /*Simulation domain*/
/* Every particles that goes outside this domain is deleted.*/
startTime 0; // start time for simulation
endTime 10; // end time for simulation
saveInterval 0.05; // time interval for saving the simulation
timePrecision 6; // maximum number of digits for time folder
g (0 -9.8 0); // gravity vector (m/s2)
/*
Simulation domain
every particles that goes outside this domain is deleted.
*/
domain domain
{ {
min (-0.328 0.095 -0.025); min (-0.328 0.095 -0.025);
max (-0.068 0.355 0.125); max (-0.068 0.355 0.125);
} }
// integration method
integrationMethod AdamsBashforth3; // integration method integrationMethod AdamsBashforth3;
// report timers?
timersReport Yes; // report timers? timersReport Yes;
// time interval for reporting timers
timersReportInterval 0.01; // time interval for reporting timers timersReportInterval 0.01;

File diff suppressed because it is too large Load Diff