friction

Frictional pair force classes apply a force and torque on every particle in the simulation state. The following general expression for Markovian tangential friction forces is implemented for interactions between two spherical particles and is discussed in detail in Hofmann et al. 2025.

For two particles ii and jj with radii Ri,jR_{i,j}, center positions ri,j\mathbf{r}_{i,j}, angular velocities ωi,j\mathbf{\omega}_{i,j}, and translational velocities vi,j\mathbf{v}_{i,j}, their surface velocities at the contact point are given by

ui=vi+ωi×r^ijRi,uj=vjωj×r^ijRj,\begin{align*} \mathbf{u}_i &= \mathbf{v}_i+\mathbf{\omega}_i \times \mathbf{\hat{r}}_{ij}R_i, \\ \mathbf{u}_j &= \mathbf{v}_j-\mathbf{\omega}_j \times \mathbf{\hat{r}}_{ij}R_j \, , \end{align*}

where r^ij=rij/rij\mathbf{\hat{r}}_{ij}=\mathbf{r}_{ij}/r_{ij}. With these expressions, we calculate the relative tangential velocity ui,j\mathbf{u}^\perp_{i,j} at the contact point

ui,j=P(r^ij)(vjvi)(ωiRi+ωjRj)×r^ij,\mathbf{u}^\perp_{i,j} = \mathbf{P}(\mathbf{\hat{r}}_{ij})(\mathbf{v}_j -\mathbf{v}_i) -(\mathbf{\omega}_iR_i+\mathbf{\omega}_jR_j) \times \mathbf{\hat{r}}_{ij},

with the projection operator

P(r^ij)=1r^ijr^ij.\mathbf{P}(\mathbf{\hat{r}}_{ij})=1-\mathbf{\hat{r}}_{ij}\mathbf{\hat{r}}_{ij}.

We model the tangential friction force at the contact point very generally as

Fif,contact=Fjf,contact=f(ui,j,ri,j)u^i,j\mathbf{F}^\mathrm{f,contact}_i = -\mathbf{F}^\mathrm{f,contact}_j = f(u^\perp_{i,j} ,r_{i,j})\mathbf{\hat{u}}^\perp_{i,j}

where u^i,j=ui,j/ui,j\mathbf{\hat{u}}^\perp_{i,j}=\mathbf{u}^\perp_{i,j}/u^\perp_{i,j}, and f(ui,j,ri,j)f(u^\perp_{i,j},r_{i,j}) is an arbitrary scalar function. The functional form of f(ui,j,ri,j)f(u^\perp_{i,j},r_{i,j}) specifies the frictional model.

In addition, a stochastic force satisfying the fluctuation-dissipation relation can be included. It has the form

FiR,contact=FjR,contact=D(uij,rij)[P(r^ij)ξijr^ij×Nij]\mathbf{F}^\mathrm{R,contact}_{i} = -\mathbf{F}^\mathrm{R,contact}_j = \sqrt{D(u^\perp_{ij},r_{ij})}\Big[\mathbf{P} (\mathbf{\hat{r}}_{ij})\mathbf{\xi}_{ij} - \mathbf{\hat{r}}_{ij} \times \mathbf{N} _{ij}\Big]

where ξij\mathbf{\xi}_{ij} and Nij\mathbf{N}_{ij} are Gaussian white noise vectors with correlations

ξijξkl=1kT(δikδjlδilδjk)/δtNijNkl=1kT(δikδjl+δilδjk)/δt.\begin{align*} \langle \mathbf{\xi}_{ij} \mathbf{\xi}_{kl} \rangle &= \mathbf{1}kT (\delta_{ik}\delta_{jl}-\delta_{il} \delta_{jk})/\delta t \\ \langle \mathbf{N}_{ij} \mathbf{N}_{kl} \rangle &= \mathbf{1}kT(\delta_{ik} \delta_{jl}+\delta_{il}\delta_{jk})/ \delta t \, . \end{align*}

The function D(u,r)D(u,r) is calculated as

D(u,r)=1kTνuduf(u,r)exp(u2u22kTν)D(u,r) = \frac{1}{kT\nu}\int_u^\infty \mathrm{d}u'f(u',r)\mathrm{exp}(-\frac{u'^2 -u^2}{2kT\nu})

with ν=(1/mi+1/mj)+(Ri2/Ii+Rj2/Ij)\nu=(1/m_i+1/m_j)+(R^2_i/I_i+R_j^2/I_j).

The suface force Ficontact=Fif,contact+FiR,contact\mathbf{F}_i^\mathrm{contact}=\mathbf{F}^\mathrm{f,contact}_i +\mathbf{F}^\mathrm{R,contact}_i generates a center-of-mass force and a torque acting on particle ii,

Fij=Ficontact,τij=Rir^ij×Ficontact,\mathbf{F}_{ij} = \mathbf{F}_i^\mathrm{contact},\quad \mathbf{\tau}_{ij}=R_i\hat{ \mathbf{r}}_{ij}\times\mathbf{F}^\mathrm{contact}_i,

which is the pair frictional contact force and torque resulting from the friction with particle jj.

FrictionalPair does not support any shifting modes.

Classes