4.5 KiB
geometryPhasicFlow Utility
Overview
geometryPhasicFlow
is a preprocessing utility for Discrete Element Method (DEM) simulations in phasicFlow. It converts wall geometry definitions from the geometryDict
file into the internal geometry data structures used by the phasicFlow simulation engine.
This utility reads geometry definitions including wall types, material properties, and motion models from the geometryDict
file located in the settings
folder of your simulation case directory. It then processes these definitions to create the necessary triangulated surfaces and motion models that will be used during the simulation.
Usage
Run the utility from your case directory containing the settings
folder:
geometryPhasicFlow
For fluid-particle coupling simulations:
geometryPhasicFlow -c
Wall Types
phasicFlow supports several built-in wall types that can be defined in the geometryDict
:
- planeWall - Flat wall defined by four points (p1, p2, p3, p4)
- cylinderWall - Cylindrical wall defined by two axis points and radius
- cuboidWall - Box-shaped wall defined by center point and dimensions
- stlWall - Complex geometry imported from an STL file
Motion Models
Walls can be associated with different motion models:
- stationary - Fixed walls (no movement)
- rotatingAxis - Rotation around a specified axis
- multiRotatingAxis - Multiple rotations (for complex motions)
- vibrating - Oscillating motion with specified frequency and amplitude
- conveyorBelt - Creates a conveyor belt effect with constant tangential velocity
geometryDict File Structure
The geometryDict file requires the following structure:
// Motion model selection
motionModel <motionModelName>;
// Motion model specific information
<motionModelName>Info
{
// Motion model parameters
// ...
}
// Wall surfaces definitions
surfaces
{
<wallName1>
{
type <wallType>; // Wall type (planeWall, cylinderWall, etc.)
// Wall type specific parameters
// ...
material <materialName>; // Material name for this wall
motion <motionName>; // Motion component name
}
<wallName2>
{
// Another wall definition
// ...
}
// Additional walls as needed
}
Example
Here's a simple example of a geometryDict
file for a rotating drum:
// Rotation around an axis
motionModel rotatingAxis;
rotatingAxisInfo
{
rotAxis
{
p1 (0.0 0.0 0.0); // First point for axis of rotation
p2 (0.0 0.0 1.0); // Second point for axis of rotation
omega 1.214; // Rotation speed (rad/s)
}
}
surfaces
{
cylinder
{
type cylinderWall; // Type of wall
p1 (0.0 0.0 0.0); // Begin point of cylinder axis
p2 (0.0 0.0 0.1); // End point of cylinder axis
radius1 0.12; // Radius at p1
radius2 0.12; // Radius at p2
resolution 24; // Number of divisions
material prop1; // Material name
motion rotAxis; // Motion component name
}
wall1
{
type planeWall; // Type of wall
p1 (-0.12 -0.12 0.0); // First point
p2 ( 0.12 -0.12 0.0); // Second point
p3 ( 0.12 0.12 0.0); // Third point
p4 (-0.12 0.12 0.0); // Fourth point
material prop1; // Material name
motion rotAxis; // Motion component name
}
}
STL File Support
For complex geometries, you can use STL files:
wallName
{
type stlWall; // Type is STL wall
file filename.stl; // File name in ./stl folder
scale 1.0; // Optional scale for changing the size of surface
transform (0 0 0); // Optional translation vector
scaleFirst Yes; // Scale first or translate first
material wallMat; // Material name
motion rotAxis; // Motion component name
}
STL files should be placed in an stl
folder in your case directory.
See Also
- particlesPhasicFlow - Utility for creating initial particle configurations
- pFlowToVTK - Utility for converting simulation results to VTK format
- Tutorials - Example cases demonstrating phasicFlow capabilities