Friction Models

Friction is a complex phenomenon resulting in resistance to motion of two contacting surfaces. In general, models describing friction can be divided into two categories: static friction models, which attempt to describe the steady-state behavior of frictional contact, and dynamic friction models, which model friction as the direct result of a dynamical system. Ratel supports multiple static models for approximating the friction force of a contact interaction, which provide trade-offs in numerical stability and accuracy.

The notation and formulation for the friction models below are from [MFPCL16].

Static Friction Models

Static friction models approximate the complex interaction between two contacting surfaces which result in friction as a force \(\bm F\) with magnitude dependent on the forces normal to the contact interaction in the direction opposing the relative motion of the surfaces tangent to the contact interaction.

Coulomb friction

One of the simplest friction formulations is Coulomb friction, which, for non-zero tangential velocities, sets the magnitude of the frictional force to be \(F_C = \mu_k \|\bm F_n\|\), where \(\bm F_n\) is the normal contact force and \(\mu_k\) is the kinetic coefficient of friction. For non-zero tangential velocities, the direction of the frictional force is

\[ \sgn(\bm v_t) = \begin{cases} \frac{\bm v_t}{\|\bm v_t\|},& \text{if } \|\bm v_t\| > 0;\\ \bm 0,& \text{otherwise}; \end{cases} \]

where \(\bm v_t = (I - \bm n \otimes \bm n) \bm v\) is the relative tangential velocity with respect to the other surface, which has the normal vector \(\bm n\).

Special consideration is required for the \(\|\bm v_t\| = 0\) case, as this represents the “sticking” region, where the frictional force is high enough to prevent any relative motion. The treatment of the so-called “null-velocity” region is one of the major differentiating factors for different static friction models.

Coulomb friction relies on the tangential forces external to the contact interaction, \(\bm F_e\) to define the frictional force at null-velocity. That is, the frictional force in the Coulomb model is given by,

\[ \bm F = \begin{cases} F_C \sgn(\bm v_t),& \|\bm v_t\| > 0;\\ \min(F_C, \|\bm F_e\|) \sgn(\bm F_e),& \|\bm v_t\| = 0. \end{cases} \]

Viscous damping

Coulomb friction can be extended to allow for viscous damping, which is particularly relevant to lubricated contact. In Ratel, we implement viscous damping which is linearly dependent on the tangential velocity:

\[ \bm F = \begin{cases} F_C \sgn(\bm v_t) + F_v \bm v_t,& \|\bm v_t\| > 0;\\ \min(F_C, \|\bm F_e\|) \sgn(\bm F_e),& \|\bm v_t\| = 0; \end{cases} \]

where \(F_v\) is the viscous damping coefficient.

Command-line options

The relevant command-line options for Coulomb friction are given in Table Coulomb Friction Options below. For brevity, the string [prefix] is used in place of the full prefix bc_platen_[platen_name] in the option listings.

Table 9 Coulomb Friction Options

Option

Description

Default Value

-[prefix]_friction_type coulomb

Required to enable Coulomb friction for a particular contact boundary condition.

-[prefix]_friction_kinetic [non-negative real]

Kinetic coefficient of friction \(\mu_k\), unitless

0.1

-[prefix]_friction_viscous [non-negative real]

Viscous damping coefficient \(F_v\), units of \(\frac{\mathrm{N}\cdot\mathrm{s}}{\mathrm{m}}\)

0.0

Threlfall friction

One of the largest weaknesses of the Coulomb friction model is the discontinuity at \(\|\bm v_t\| = 0\). The Threlfall model addresses this weakness by defining a tolerance velocity \(v_0\) below which an exponential model is used to compute the frictional force. The model is given as:

\[ \bm F = \begin{cases} F_C \left(\frac{1 - \exp\left(\frac{-3 \|\bm v_t\|}{v_0}\right)}{1 - \exp(-3)}\right) \sgn(\bm v_t), & \text{if } \|\bm v_t\| \leq v_0; \\ F_C \ \sgn(\bm v_t), & \text{if } \|\bm v_t\| > v_0,, \end{cases} \]

Note that as \(v_0 \to 0\), the Threlfall model approaches the Coulomb model; that is, lower tolerance velocities more accurately approximate the discontinuity.

Viscous damping

Threlfall friction can also be extended to include viscous damping:

\[ \bm F = \begin{cases} F_C \left(\frac{1 - \exp\left(\frac{-3 \|\bm v_t\|}{v_0}\right)}{1 - \exp(-3)}\right) \sgn(\bm v_t), & \text{if } \|\bm v_t\| \leq v_0; \\ F_C \ \sgn(\bm v_t) + (\|v_t\| - v_0) \sgn(\bm v_t), & \text{if } \|\bm v_t\| > v_0. \end{cases} \]

Note that due to the smoothed transition from null-velocity, the viscous damping is not active until \(\|\bm v_t\| > v_0\). As such, the magnitude of the damping must be rescaled accordingly to \(\|\bm v_t\| - v_0\).

Command-line options

The relevant command-line options for Threlfall friction are given in Table Threlfall Friction Options below. For brevity, the string [prefix] is used in place of the full prefix bc_platen_[platen_name] in the option listings.

Table 10 Threlfall Friction Options

Option

Description

Default Value

-[prefix]_friction_type threlfall

Required to enable Threlfall friction for a particular contact boundary condition.

-[prefix]_friction_kinetic [non-negative real]

Kinetic coefficient of friction \(\mu_k\), unitless

0.1

-[prefix]_friction_viscous [non-negative real]

Viscous damping coefficient \(F_v\), units of \(\frac{\mathrm{N}\cdot\mathrm{s}}{\mathrm{m}}\)

0.0

-[prefix]_friction_tolerance_velocity [positive real]

Tolerance velocity \(v_0\) at which full frictional slipping is permitted, units of \(\frac{\mathrm{m}}{\mathrm{s}^2}\). Only used by Threlfall friction model.

0.05

Dynamic Friction Models

Ratel does not currently implement any dynamic friction models.