screwConveyor updated.

This commit is contained in:
Ramin Khodabandeh
2024-05-28 16:40:44 +04:30
parent a6185d1362
commit 209be098b4
7 changed files with 185 additions and 105 deletions

View File

@ -0,0 +1,58 @@
/* -------------------------------*- C++ -*--------------------------------- *\
| phasicFlow File |
| copyright: www.cemf.ir |
\* ------------------------------------------------------------------------- */
objectName domainDict;
objectType dictionary;
fileFormat ASCII;
/*---------------------------------------------------------------------------*/
globalBox // Simulation domain: every particles that goes outside this domain will be deleted
{
min (0.0 -0.06 0.001);
max (1.2 1 0.5);
}
boundaries
{
// Determines how often (how many iterations) do you want to
// rebuild the list of particles in the neighbor list
// of all boundaries in the simulation domain
neighborListUpdateInterval 10;
// Determines how often do you want to update the new changes in the boundary
updateInterval 1;
// The distance from the boundary plane within which particles are marked to be in the boundary list
neighborLength 0.01;
left
{
type exit; // other options: periodict, reflective
}
right
{
type exit; // other options: periodict, reflective
}
bottom
{
type exit; // other options: periodict, reflective
}
top
{
type exit; // other options: periodict, reflective
}
rear
{
type exit; // other options: periodict, reflective
}
front
{
type exit; // other options: periodict, reflective
}
}

View File

@ -6,40 +6,50 @@ objectName geometryDict;
objectType dictionary;
fileFormat ASCII;
/*---------------------------------------------------------------------------*/
motionModel rotatingAxis; // motion model can be rotatingAxis or stationary or vibrating
// motion model: rotating object around an axis
motionModel rotatingAxisMotion;
rotatingAxisInfo // information for rotatingAxisMotion motion model
{
rotAxis
{
p1 (1.09635 0.2010556 0.22313511); // first point for the axis of rotation
p2 (0.0957492 0.201556 0.22313511); // second point for the axis of rotation
omega 3; // rotation speed (rad/s)
startTime 5; // start time of rotation
endTime 30; // end time of rotation
}
}
surfaces
{
helix
{
type stlWall; // type of the wall
file helix.stl; // file name in stl folder
material prop1; // material name of this wall
motion rotAxis; // motion component name
type stlWall; // type of the wall
file helix.stl; // file name in stl folder
material prop1; // material name of this wall
motion rotAxis; // motion component name
}
shell
{
type stlWall; // type of the wall
file shell.stl; // file name in stl folder
material prop1; // material name of this wall
motion none; // motion component name
}
type stlWall; // type of the wall
}
file shell.stl; // file name in stl folder
material prop1; // material name of this wall
rotatingAxisMotionInfo
{
rotAxis
{
p1 (1.09635 0.2010556 0.22313511); // first point for the axis of rotation
p2 (0.0957492 0.201556 0.22313511); // second point for the axis of rotation
omega 3; // rotation speed (rad/s)
startTime 5;
endTime 30;
motion none; // motion component name
}
}

View File

@ -6,35 +6,38 @@ objectName particlesDict;
objectType dictionary;
fileFormat ASCII;
/*---------------------------------------------------------------------------*/
// positions particles
positionParticles
{
method empty; // creates the required fields with zero particles (empty).
maxNumberOfParticles 50000; // maximum number of particles in the simulation
mortonSorting Yes; // perform initial sorting based on morton
}
setFields
{
defaultValue
{
// linear velocity (m/s)
velocity realx3 (0 0 0);
velocity realx3 (0 0 0); // linear velocity (m/s)
// linear acceleration (m/s2)
acceleration realx3 (0 0 0);
acceleration realx3 (0 0 0); // linear acceleration (m/s2)
// rotational velocity (rad/s)
rVelocity realx3 (0 0 0);
rVelocity realx3 (0 0 0); // rotational velocity (rad/s)
// name of the particle shape
shapeName word sphere1;
shapeName word sphere1; // name of the particle shape
}
selectors
{}
}
positionParticles // positions particles
{
method empty; // other options: ordered and random
maxNumberOfParticles 50000; // maximum number of particles in the simulation
regionType box; // other options: cylinder and sphere
boxInfo // box for positioning particles
{
min (-0.1 -0.08 0.015); // lower corner point of the box
max (0.1 0.0 0.098); // upper corner point of the box
}
}

View File

@ -6,33 +6,31 @@ objectName settingsDict;
objectType dictionary;
fileFormat ASCII;
/*---------------------------------------------------------------------------*/
run screwConveyor;
run layerdSiloFilling;
dt 0.0001; // time step for integration (s)
dt 0.0001; // time step for integration (s)
startTime 0.0; // start time for simulation
startTime 0; // start time for simulation
endTime 20.0; // end time for simulation
endTime 20; // end time for simulation
saveInterval 0.05; // time interval for saving the simulation
saveInterval 0.05; // time interval for saving the simulation
timePrecision 6; // maximum number of digits for time folder
timePrecision 6; // maximum number of digits for time folder
g (0 -9.8 0); // gravity vector (m/s2)
g (0 -9.8 0); // gravity vector (m/s2)
// save necessary (i.e., required) data on disk
includeObjects (diameter);
// exclude unnecessary data from saving on disk
excludeObjects (rVelocity.dy1 pStructPosition.dy1 pStructVelocity.dy1);
/*
Simulation domain
every particles that goes outside this domain is deleted.
*/
domain
{
min (0.0 -0.06 0.001);
max (1.2 1 0.5);
}
integrationMethod AdamsBashforth2; // integration method
integrationMethod AdamsBashforth3; // integration method
writeFormat ascii; // data writting format (ascii or binary)
timersReport Yes; // report timers
timersReportInterval 0.01; // time interval for reporting timers
timersReport Yes; // report timers?
timersReportInterval 0.01; // time interval for reporting timers