tangential model history/attrition/angle
Purpose
Calculating the tangential force between particles as done in tangential model history and, in addition, calculating the abrasive and erosive particle-particle attrition. The erosion wear depends also on the impact angle of the particles.
Syntax
tangential history/attrition/angle [other model_type/model_name pairs as described here ] settings keyword values
zero or more keyword/value pairs may be appended to the end (after all models are specified)
useVelocityLimit values = 'on' or 'off' on = erosion only occurs if normal velocity is above threshold off = erosion will always occur useForceLimit values = 'on' or 'off' on = abrasion only occurs if normal force is above threshold off = abrasion will always occur useAttritionLimit values = 'on' or 'off' on = attrition only occurs until a specified volume limit was removed off = attrition is unlimited coatingAttrition values = 'on' or 'off' on = attrition depletes a coating layer present on the particles off = attrition is independent from the amount of coating outputAttritionSeparate values = 'on' or 'off' on = attrition is written to property/atom attrition_erosive off = no additional output
Associated material properties
Material properties
youngsModulus(
): Youngs modulus of a material, i.e. its stiffness [pressure]poissonsRatio(
): Poisson’s ratio, i.e. the ratio of transverse to axial strain [
]attritionLimit(
): maximum volume percentage that can be removed by a particle
(
) [
] (property required only if useAttritionLimit on)maxMoisture(
): maximum value of the per-particle property
surfaceLiquidContent at which attrition can happen [
] (property required only if coatingAttrition on)
Material interaction properties
coefficientRestitution(
): coefficient of restitution of two materials [
]coefficientFriction(
): coefficient of friction acting between two materials [
]abrasiveWearSeverity(
): coefficient of wear severity acting between two materials [1/(force*length)]erosiveWearSeverity(
): coefficient of erosive severity acting between two materials [1/(pressure*length)]velocityLimit(
): minimum impact velocity between two particles of different materials necessary
to have erosion [length/time] (property required only if useVelocityLimit on)forceLimit(
): minimum normal force between two particles of different materials necessary
to have abrasion [force] (property required only if useForceLimit on)
Global scalars
coatingInit(
): initial coating volume fraction of a particle [
].
Description
This model can be used in the tangential argument of both particle_contact_model and wall_contact_model.
This model calculates the tangential force between two particles in contact as done in the tangential model history and, in addition, calculates the abrasive and erosive particle-particle attrition. Generally speaking, abrasive wear results from the particles sliding or rolling over each other, while erosive wear is caused by particle collisions. These two effects are accounted in this model by the Archard equation for abrasion and by a modified version of the Ghadiri and Zhang equation for erosion which includes also the effect of the particles’ impact angle, namely:

where
and
is the particle volume fraction lost
by attrition and erosion respectively,
is the normal force,
is the sliding distance based on the relative tangential
displacement between two particles in contact,
is the relative
velocity between two colliding particles,
is its the normal component,
is the particle density,
is the particle diameter, and
is a function of the impact angle
, defined as:

where the impact angle is defined as:

This dependence on the impact angle is similar to the one used in the Finnie wear model.
In case the option useVelocityLimit is set to on, the erosive wear
will only be greater than zero if the magnitude of the normal velocity
is
larger than the velocity limit
. Similarly, if useForceLimit
is set to on, the abrasive wear
will be set to zero in case that
the magnitude of the normal force
is smaller than the force limit
.
In case the option useAttritionLimit is set to on, the erosive and abrasive
wear stops when the total volume fraction lost reaches the attrition limit
.
In case the option coatingAttrition is set to on, the attrition affects
only the scalar per-particle property named coating, which indicates the
ratio between the volume of a coating layer and the volume of the
carrying particle. The property coating can be defined by using the
fix property/atom command or, in case of coupled simulation,
the fix couple/cfd/speciesConvection command (for the latter, please refer
to the CFDEM®coupling documentation). The attired coating can be also transferred
to a coupled CFD simulation via the flux property coatingDEMFlux. If the option
useAttritionLimit is also enabled, then
refers to the
maximum volume fraction of coating that can be removed.
If coatingAttrition is enabled, the material property maxMoisture must be
defined. If
is set bigger than zero, then the coating attrition
process occurs only if a scalar per-particle property called surfaceLiquidContent
is lower than
. The property surfaceLiquidContent can be defined
manually via the fix property/atom or, in case of coupled
simulation, the fix couple/cfd/speciesConvection command. Some commands, like
for example liquid transport, automatically define
the property surfaceLiquidContent.
Moreover, the global_scalar coatingInit must be defined to set the initial
particle coating if coating has not been defined in another way, e.g. by using
couple/cfd/speciesConvection or a
property/atom.
Output:
This model stores a couple of per-particle properties, for access by various output commands.
The volume fraction lost by attrition, i.e.
,
can be accessed via id_attrition, while the cumulative volume fraction
lost by attrition divided by the time-step, i.e.
can be accessed via id_attritionFlux.
If the outputAttritionSeparate keyword is activated then two additional particle properties are available which can be accessed via id_attrition_erosive and id_attrition_abrasive, respectively. They split the volume fraction lost by attrition into the fraction lost due to erosion and one due to abrasion.
If the coatingAttrition keyword is activated an additional particle property is available which can be accessed via id_coating. This shows the current amount of coating relative to the particle volume.
Coarse-graining information:
Using coarsegraining in combination with this command might lead to different dynamics or system state and thus to inconsistencies.
Default
useVelocityLimit = ‘off’, useForceLimit = ‘off’, useAttritionLimit = ‘off’, coatingAttrition = ‘off’, outputAttritionSeparate = ‘off’
Literature
[1] Archard, J. (1953). Contact and rubbing of flat surfaces. Journal of applied physics, 24(8), 981-988.
[2] Ghadiri, M., & Zhang, Z. (2002). Impact attrition of particulate solids. Part 1: A theoretical model of chipping. Chemical Engineering Science, 57(17), 3659-3669.
[3] Finnie, I. (1960). Erosion of surface by solid particles. wear, 3, 87-103.