"LIGGGHTS(R)-PUBLIC WWW Site"_liws - "LIGGGHTS(R)-PUBLIC Documentation"_ld - "LIGGGHTS(R)-PUBLIC Commands"_lc :c

:link(liws,http://www.cfdem.com)
:link(ld,Manual.html)
:link(lc,Section_commands.html#comm)

:line

gran model hooke/stiffness model :h3

[Syntax:]

model hooke/stiffness \[other model_type/model_name pairs as described "here"_pair_gran.html \] keyword values :pre
zero or more keyword/value pairs may be appended to the end (after all models are specified) :l
  {absolute_damping} values = 'on' or 'off'
    on = activates tangential damping
    off = no tangential damping
  {limitForce} values = 'on' or 'off'
    on = ensures that the normal force is never attractive (an artefact that can occur at the end of a collision).
    off = standard implementation that might lead to attractive forces.
  {tangential_damping} values = 'on' or 'off'
    on = activates tangential damping
    off = no tangential damping :pre

[Description:]

This granular model uses the following formula for the frictional force between two granular
particles, when the distance r between two particles of radii Ri and Rj is less than their
contact distance d = Ri + Rj. There is no force between the particles when r > d.

For the case of {absolute_damping} = 'off' (which is default), the specified damping
coefficient is multiplied by the effective mass. The forces are implemented as

:c,image(Eqs/pair_gran_html_m566a9984.png)

For the case of {absolute_damping} = 'on', this multiplication is omitted and the forces become

:c,image(Eqs/pair_gran_html_m76cd8bd9.png)

In the first term is the normal force between the two particles and the second term is the
tangential force. The normal force has 2 terms, a spring force and a damping force. The
tangential force also has 2 terms: a shear force and a damping force. The shear force is
a "history" effect that accounts for the tangential displacement ("tangential overlap")
between the particles for the duration of the time they are in contact.
This term is controlled by the "tangential model"_Section_gran_models.html in action
Keyword {tangential_damping} can be used to eliminate the second part of the force in
tangential direction. The way how the Coulomb friction limit acts is also controlled
by the "tangential model"_Section_gran_models.html chosen by the user.

The quantities in the equations are as follows:

delta_n = d - r = overlap distance of 2 particles  :ulb,l
k_n = elastic constant for normal contact :l
k_t = elastic constant for tangential contact :l
gamma_n = viscoelastic damping constant for normal contact :l
gamma_t = viscoelastic damping constant for tangential contact :l
delta_t = tangential displacement vector between 2 spherical particles which is truncated to satisfy a frictional yield criterion :l
rmu = coefficient of rolling friction :l
contactradius = contact radius, equal to particle radius - 0.5 * delta_n :l
v_n = normal component of the relative velocity of the 2 particles :l
v_t = tangential component of the relative velocity of the 2 particles :l
w_r = relative rotational velocity of the 2 particles :l
:ule

To define those k_n_specified, k_t_specified, gamma_n_specified, and gamma_t_specified coefficients
(material properties), it is mandatory to use multiple "fix property/global"_fix_property.html commands:

fix id all property/global kn peratomtypepair n_atomtypes value_11 value_12 .. value_21 value_22 .. .
    (value_ij=value for k_n between atom type i and j; n_atomtypes is the number of atom types you want to use in your simulation)
fix id all property/global kt peratomtypepair n_atomtypes value_11 value_12 .. value_21 value_22 .. .
    (value_ij=value for k_t between atom type i and j; n_atomtypes is the number of atom types you want to use in your simulation)
fix id all property/global gamman peratomtypepair n_atomtypes value_11 value_12 .. value_21 value_22 .. .
    (value_ij=value for gamma_n between atom type i and j; n_atomtypes is the number of atom types you want to use in your simulation)
fix id all property/global gammat peratomtypepair n_atomtypes value_11 value_12 .. value_21 value_22 .. .
    (value_ij=value for gamma_t between atom type i and j; n_atomtypes is the number of atom types you want to use in your simulation) :pre

If the absolute damping implementation is used ({absolute_damping} = 'on'), the damping coefficients
 must be named gamman_abs and gammat_abs instead of gamman, gammat as follows:

fix id all property/global gamman_abs peratomtypepair n_atomtypes value_11 value_12 .. value_21 value_22 .. .
    (value_ij=value for gamma_n between atom type i and j; n_atomtypes is the number of atom types you want to use in your simulation)
fix id all property/global gammat_abs peratomtypepair n_atomtypes value_11 value_12 .. value_21 value_22 .. .
    (value_ij=value for gamma_t between atom type i and j; n_atomtypes is the number of atom types you want to use in your simulation) :pre

IMPORTANT NOTE: You have to use atom styles beginning from 1, e.g. 1,2,3,...

[Force Limiting:]

Note, that not using limitForce might lead to attractive forces between particles and walls, especially in case the 
coefficient of restitution is small. Be sure you include this key word for the pair style and the wall model if you 
like to avoid this.

[Restrictions:]

If using SI units, youngsModulus must be > 5e6
If using CGS units, youngsModulus must be > 5e5
When using the limitForce, the specified coefficient of restitution is only approximate. This might become 
problematic for low coefficients of resitution as showin in Schwager and Poschel.

[Coarse-graining information:]

Using "coarsegraining"_coarsegraining.html in
combination with this command might lead to
different dynamics or system state and thus to 
inconsistancies.

NOTE: "Coarsegraining"_coarsegraining.html may or 
may not be available in LIGGGHTS(R)-PUBLIC.

[Default:]

{tangential_damping} = 'on'
{limitForce} = 'off'

[(Di Renzo)] Alberto Di Renzo, Francesco Paolo Di Maio, CES, 59 (3), p 525-541 (2004).

[(Ai)] Jun Ai, Jian-Fei Chen, J. Michael Rotter, Jin Y. Ooi, Powder Technology, 206 (3), p 269-282 (2011).

[(Brilliantov)] Brilliantov, Spahn, Hertzsch, Poschel, Phys Rev E, 53, p 5382-5392 (1996).

[(Schwager)] Schwager, Poschel, Gran Matt, 9, p 465-469 (2007).

[(Silbert)] Silbert, Ertas, Grest, Halsey, Levine, Plimpton, Phys Rev E, 64, p 051302 (2001).

[(Zhang)] Zhang and Makse, Phys Rev E, 72, p 011301 (2005).

