StokesClumpDrag
Syntax
Defined in couplingProperties dictionary.
particleShapeType multisphere;
forceModels
(
StokesClumpDrag
);
StokesClumpDragProps
{
velFieldName "U";
voidfractionFieldName "voidfraction";
granVelFieldName "Us";
ignoreDrag switch;
ignoreTorque switch;
useVoidfractionCorrection switch;
vpIterMax label;
relTolDrag scalar;
relTolTorque scalar;
CdTorquePrimeDiagonal vector;
periodicHalo vector;
implicitRotation switch;
useVoidfractionCorrection switch;
// (optional) forceSubModel switches
scaleDrag scalar;
scaleTorque scalar;
scaleDH scalar;
implForceDEM switch;
treatForceExplicit switch;
verbose switch;
interpolation switch;
voidageFunctionDiFelice switch;
voidageFunctionRong switch;
voidageFunctionTang switch;
};
velFieldName = name of the finite volume fluid velocity field (default: “U”)
voidfractionFieldName = name of the finite volume voidfraction field (default: “voidfraction”)
granVelFieldName = name of the finite volume granular velocity field (default: “Us”)
ignoreDrag = ignore drag force (default: false)
ignoreTorque = ignore torque (default: false)
useVoidfractionCorrection = use voidfraction correction, model is selected with switch (available options:
voidageFunctionDiFelice,voidageFunctionRong,voidageFunctionTang) (default: true)vpIterMax = maximum number of sub-loops to solve implicit equation. (default: 4)
relTolDrag = the sub-loop convergence criterion for drag, with
relDeviation=(dragPrev-drag)/dragand convergence is reachedif(relDeviation < relTolDrag). IfrelTolDragis not set, it is not accounted for. IfrelTolTorqueis also defined, convergence of both criteria must be fulfilled. (default: 1)relTolTorque = the sub-loop convergence criterion for torque, with
relDeviation=(torquePrev-torque)/torqueand convergence is reachedif(relDeviation < relTolTorque). IfrelTolTorqueis not set, it is not accounted for. IfrelTolDragis also defined, convergence of both criteria must be fulfilled. (default: 1)CdTorquePrimeDiagonal = diagonal of the torque resistance tensor in body coordinates (default: auto calculated (NOT TESTED! UNDER DEV!))
periodicHalo = halos size (by coordinate directions) to restrict domain of influence (based on bounding box) of force calculation. (default:
(0 0 0))useVoidfractionCorrection = use voidfraction correction also on torque. (default: false)
This forceModel reads the following forceSubModel switches and overwrites the defaults as indicated in parentheses:
scaleDrag
scaleDH
treatForceExplicit
implForceDEM (default: true)
verbose
interpolation
voidageFunctionDiFelice
voidageFunctionRong (default: true)
voidageFunctionTang
For particleShapeType = "multipshere" and particleShapeType = "convex"
the followings switches are read in addition:
implTorqueDEM
Examples
particleShapeType multisphere;
forceModels
(
StokesClumpDrag
);
StokesClumpDragProps
{
velFieldName "U";
voidfractionFieldName "voidfraction";
granVelFieldName "Us";
}
Description
The force model performs the calculation of forces (e.g. fluid-particle interaction forces) acting on each DEM clump (multisphere consisting of several particles). The StokesClumpDrag model calculates the particle based drag force following the approach of Joung 2006, Rheol Acta.
The drag is computed for each sphere of the clump separately where each sphere induces a flow at the position of all other particles of the clump.
For a more detailed discussion of the theoretical foundation, see [1] and [2].
Literature
[1] C. G. Joung. “Dynamic simulation of arbitrarily shaped particles in shear flow”. Rheol Acta 46 (2006): 143–152
[2] M.A. Romero-Valle, C. Goniva, H. Nirschl (2021). “Modeling of non-spherical particle flows: Movement and orientation behavior”. Powder Technology 382 (2021): 351–363
Restrictions
Not valid for sphere particles.
Note
For multispheres consisting of operlapping sphere, this model may become unstable. Construct multispherse with small overlaps – or avoid overlaps entirely!
Home