Bases: FrictionalPair
CoulombNewton frictional model pair force with the LJ conservative force.
Parameters:
FrictionLJCoulombNewton computes the frictional interaction
between pairs of particles with a Coulomb-Newton friction model as described in
Hofmann et. al. 2025 .
The Coulomb-Newton friction model is defined by the function
f C N ( u , r ) = m i n [ γ f u , w ( r ) κ f ] . f_\mathrm{CN}(u,r) = \mathrm{min}[\gamma_\mathrm{f}u,w(r)\kappa_\mathrm{f}]\, . f CN ( u , r ) = min [ γ f u , w ( r ) κ f ] .
And a repulsive Weeks-Chandler-Anderson (WCA) potential
U W C A ( r ) = 4 ε [ ( σ r ) 12 − ( σ r ) 6 ] w ( r ) = − d d r U W C A ( r ) \begin{align*}
U_\mathrm{WCA}(r) &= 4 \varepsilon \left[ \left(
\frac{\sigma}{r} \right)^{12} - \left( \frac{\sigma}{r}
\right)^{6} \right] \\
w(r)&=-\frac{\mathrm{d}}{\mathrm{d}r}U_\mathrm{WCA}(r)
\end{align*} U WCA ( r ) w ( r ) = 4 ε [ ( r σ ) 12 − ( r σ ) 6 ] = − d r d U WCA ( r )
Since the frictional force results from coarse-graining the microscopic equations
of motion, a corresponding pairwise noise that satisfies a fluctuation-dissipation
relation must be applied. For this a stochastic force and torque is added
D C N ( u , r ) = { w ( r ) κ f π 2 k B T ν e u 2 2 k B T ν E r f c ( u 2 k B T ν ) , u ≥ w ( r ) κ f γ f γ f ( 1 − e ( u 2 − ( w ( r ) κ f γ f ) 2 ) / 2 k B T ν ) + w ( r ) κ f π 2 k B T ν e u 2 2 k B T ν E r f c ( w ( r ) κ f / γ f 2 k B T ν ) , u < w ( r ) κ f γ f F i j R = − F j i R = D C N ( u i j ⊥ , r i j ) [ P ( r ^ i j ) ξ i j f − r ^ i j × N i j f ] τ i j R R i = τ j i R R j = D C N ( u i j ⊥ , r i j ) [ r ^ i j × ξ i j f + P ( e i j ) N i j f ] , \begin{align*}
D_\mathrm{CN}(u,r) &= \begin{cases}
\frac{w(r)\kappa_\mathrm{f}\sqrt{\pi}}
{\sqrt{2k_\mathrm{B}T\nu}}\mathrm{e}^{\frac{u^2}
{2k_\mathrm{B}T\nu}}\mathrm{Erfc}\big(\frac{u}
{\sqrt{2k_\mathrm{B}T\nu}} \big) & ,\, u\ge
\frac{w(r)\kappa_\mathrm{f}}{\gamma_\mathrm{f}} \\
\gamma_\mathrm{f}\left(1-\mathrm{e}^{\left(u^2
-(\frac{w(r)\kappa_\mathrm{f}}{\gamma_\mathrm{f}})^2
\right)/2k_\mathrm{B}T\nu} \right) + \frac{w(r)
\kappa_\mathrm{f}\sqrt{\pi}}{\sqrt{2k_\mathrm{B}T\nu}}
\mathrm{e}^\frac{u^2}{2k_\mathrm{B}T\nu}\mathrm{Erfc}
\left(\frac{w(r)\kappa_\mathrm{f}/\gamma_\mathrm{f}}
{\sqrt{2k_\mathrm{B}T\nu}}\right) &,\, u < \frac{w(r)
\kappa_\mathrm{f}}{\gamma_\mathrm{f}}
\end{cases} \\
\mathbf{F}^\mathrm{R}_{ij} = -\mathbf{F}^\mathrm{R}_{ji} &= \sqrt{D_\mathrm{CN}
(u^\perp_{ij},r_{ij})}\Big[\mathbf{P}
(\mathbf{\hat{r}}_{ij})
\mathbf{\xi}^\mathrm{f}_{ij} -
\mathbf{\hat{r}}_{ij} \times
\mathbf{N}^\mathrm{f}_{ij}\Big] \\
\frac{\mathbf{\tau}^\mathrm{R}_{ij}}{R_i} = \frac{\mathbf{\tau}^\mathrm{R}_{ji}}
{R_j} &= \sqrt{D_\mathrm{CN}
(u^\perp_{ij},r_{ij})}\Big[\mathbf{\hat{r}}_{ij}
\times \mathbf{\xi}^\mathrm{f}_{ij}+\mathbf{P}
(\mathbf{e}_{ij})\mathbf{N}^\mathrm{f}_{ij}
\Big]\, ,
\end{align*} D CN ( u , r ) F ij R = − F ji R R i τ ij R = R j τ ji R = ⎩ ⎨ ⎧ 2 k B T ν w ( r ) κ f π e 2 k B T ν u 2 Erfc ( 2 k B T ν u ) γ f ( 1 − e ( u 2 − ( γ f w ( r ) κ f ) 2 ) /2 k B T ν ) + 2 k B T ν w ( r ) κ f π e 2 k B T ν u 2 Erfc ( 2 k B T ν w ( r ) κ f / γ f ) , u ≥ γ f w ( r ) κ f , u < γ f w ( r ) κ f = D CN ( u ij ⊥ , r ij ) [ P ( r ^ ij ) ξ ij f − r ^ ij × N ij f ] = D CN ( u ij ⊥ , r ij ) [ r ^ ij × ξ ij f + P ( e ij ) N ij f ] ,
where ν = ( 1 / m i + 1 / m j ) + ( R i 2 / I i + R j 2 / I j ) ) \nu=(1/m_i+1/m_j)+(R_i^2/\mathbf{I}_i+R_j^2/\mathbf{I}_j)) ν = ( 1/ m i + 1/ m j ) + ( R i 2 / I i + R j 2 / I j )) , and
ξ i j f \mathbf{\xi}^\mathrm{f}_{ij} ξ ij f and N i j f \mathbf{N}^\mathrm{f}_{ij} N ij f are
three dimensional Gaussian white noise vectors with correlations
⟨ ξ i j f ( t ) ξ k l f ( t ′ ) ⟩ = 1 k B T ( δ i k δ j l − δ i l δ j k ) δ ( t − t ′ ) ⟨ N i j f ( t ) N k l f ( t ′ ) ⟩ = 1 k B T ( δ i k δ j l + δ i l δ j k ) δ ( t − t ′ ) . \begin{align*}
\langle \mathbf{\xi}^\mathrm{f}_{ij}(t) \mathbf{\xi}^\mathrm{f}_{kl}(t')
\rangle &= \mathbf{1}k_\mathrm{B}T
(\delta_{ik}\delta_{jl}-\delta_{il}
\delta_{jk})\delta(t-t') \\
\langle \mathbf{N}^\mathrm{f}_{ij}(t) \mathbf{N}^\mathrm{f}_{kl}(t') \rangle &=
\mathbf{1}k_\mathrm{B}T
(\delta_{ik}\delta_{jl}+\delta_{il}
\delta_{jk})\delta(t-t')\, .
\end{align*} ⟨ ξ ij f ( t ) ξ k l f ( t ′ )⟩ ⟨ N ij f ( t ) N k l f ( t ′ )⟩ = 1 k B T ( δ ik δ j l − δ i l δ jk ) δ ( t − t ′ ) = 1 k B T ( δ ik δ j l + δ i l δ jk ) δ ( t − t ′ ) .
Example:
coulombNewton_lj = hoomd . md . pair . friction . FrictionLJCoulombNewton (
nlist = neighbor_list ,
default_r_cut = 3 )
coulombNewton_lj_params = { 'epsilon' : 1 , 'sigma' : 1 , 'gamma_f' : 1 , 'kappa_f' : 3 ,
'kT' : 1 }
coulombNewton_lj . params . default = coulombNewton_lj_params
simulation . operations . integrator . forces = [ coulombNewton_lj ]
Members inherited from AutotunedObject :
property kernel_parameters
Kernel parameters.
Read more...
property is_tuning_complete
Check if kernel parameter tuning is complete.
Read more...
tune_kernel_parameters ( )
Start tuning kernel parameters.
Read more...
Members inherited from
Force :
additional_energy
Additional energy term.
Read more...
additional_virial
Additional virial tensor term W a d d i t i o n a l W_\mathrm{additional} W additional .
Read more...
cpu_local_force_arrays
Local force arrays on the CPU.
Read more...
energies
Energy contribution U i U_i U i from each particle.
Read more...
energy
The potential energy U U U of the system from this force.
Read more...
forces
The force F ⃗ i \vec{F}_i F i applied to each particle.
Read more...
gpu_local_force_arrays
Local force arrays on the GPU.
Read more...
torques
The torque τ ⃗ i \vec{\tau}_i τ i applied to each particle.
Read more...
virials
Virial tensor contribution W i W_i W i from each particle.
Read more...
Members inherited from
Pair :
nlist
Neighbor list used to compute the pair force.
Read more...
mode
Energy smoothing/cutoff mode.
Read more...
r_cut
Cuttoff radius beyond which the energy and force are 0.
Read more...
r_on
Radius at which the XPLOR smoothing function starts.
Read more...
compute_energy ( )
Compute the energy between two sets of particles.
Read more...