2  Potentiel d’interaction

On rappelle pour un ensemble de N particules, avec positions {ri}i=1N, vitesses {vi}i=1N, forces {fi}i=1N et masses {mi}i=1N, le principe fondamental de la dynamique :

midvidt=fi,i{1,,N}.

On a vu dans le chapitre précédent comment résoudre cette équation numériquement, mais pas comment calculer la force fi qui s’exerce sur chaque particule. À cause de notre utilisation de l’algorithme Velocity-Verlet, la force de chaque particule ne peut dépendre que de la position des autres particules, et non de leur vitesse. Cela peut sembler restrictif, mais on verra que ce n’est pas une limitation importante pour simuler des solides et des fluides. En plus de cette restriction algorithmique, on va imposer que toutes les forces découlant des interactions entre particules dérivent de potentiels, c’est-à-dire qu’il existe une fonction scalaire U:R3×NR telle que :

fi({rk})=Uri({rk}),

où on note {rk} la position de toutes les particules (k=1,,N).

Important

Toute la physique que l’on souhaite intégrer à notre simulation est contenue dans U, qui défini l’énergie potentielle totale du système (voir cette revue de potentiels inter-atomiques). La définition de U pour un système donné est une procédure délicate qui mène rarement à un résultat unique et en parfaite adéquation avec le système en question. Nous verrons dans ce cours quelles hypothèses sont raisonnables pour certains solides et fluides simples.

On remarque que Uri est une fonction de la position de toutes les particules. Dans le cas général, on peut écrire () :

U({rk})=k=1NU1(rk)+k<lU2(rk,rl)+k<l<mU3(rk,rl,rm)+

U1 est l’énergie potentielle due à des forces extérieures (par exemple un champ gravitationnel uniforme, un champ magnétique, etc.). U2 définit l’énergie potentielle pour des paires de particules. Par exemple, l’énergie potentielle de gravité entre deux particules peut s’écrire U2(rk,rl)=Gmkml/|rlrk|. Le système solaire peut donc être simulé uniquement en définissant l’énergie potentielle pour des paires de particules. Suivant cette logique, U3 définit l’énergie pour un triplet de particules. C’est l’énergie que l’on doit définir pour décrire une molécule comme CH4 : l’énergie des atomes d’hydrogène dépend certes de la distance CH, mais aussi de la position des autres atomes d’hydrogène pour former un tétraèdre à l’équilibre, quand l’énergie potentielle est minimale. Dans ce cours, on se limitera dans un premier temps aux potentiels U1 et U2.

Examples

Ci-dessous quelques exemples de potentiels :

Potentiel pesanteur

Pour le cas d’un champ de gravité uniforme, on peut définir U1:

U1(rk)=mkgrk

Potentiel harmonique

L’énergie potentielle d’une paire de particules reliées par un ressort de rigidité k peut s’écrire :

U2(rk,rl)=12k|rlrk|2

Potentiel de Coulomb

L’énergie d’interaction de deux particules chargées s’écrit comme le potentiel de gravité :

U2(rk,rl)=qkql4πε0|rlrk|

Note

En règle générale, l’énergie potentielle d’interaction d’une paire de particule obéit à deux relations d’invariance :

  • L’énergie est invariante par translation : une paire de particule à une distance fixe a la même énergie, peu importe sa position dans l’espace
  • L’énergie est invariante par rotation : une paire de particule à une distance fixe a la même énergie, peu importe l’orientation de la paire dans l’espace

Ces deux propriétés se traduisent mathématiquement par le fait que U2(rk,rl) est seulement fonction de la distance entre les particules rkl=|rlrk|. Démontrons que l’invariance par translation donne une dépendance en rkl=rlrk uniquement.

L’invariance par translation veut que pour tout vecteur v on ait :

U2(rk+v,rl+v)=U2(rk,rl).

Si l’on calcule la dérivée par rapport à v de l’équation ci-dessus, on obtient :

(2.1)ddv(U2(rk+v,rl+v))=U2rkI+U2rlI=0U2rk+U2rl=0

On opère à présent le changement de variable suivant a=rk+rl et b=rkrl, et on définit le potentiel U~2 tel que :

U~2(a,b)=U2(rk,rl)

On peut donc écrire les dérivées partielles suivantes :

U2rk=U~2a+U~2b,U2rl=U~2aU~2b, et remplacer dans l’:

U2rk+U2rl=2U~2a=0.

Puisque la dérivée de U~2 par rapport à a=rk+rl est nulle, U~2 est donc constante par rapport à a et dépend uniquement de b=rkrl. On peut faire une démonstration similaire pour l’invariance par rotation.

Maintenant qu’une expression pour la force et pour l’énergie potentielle a été établie, essayons de calculer la force fi agissant sur une particule i pour des N particules indépendantes (U2=0) et pour l’absence de forces extérieures (U1=0).

2.1 Forces extérieures

Dans le cas où U({rk})=k=1NU1(rk), la force sur une particule à la position ri est simple à calculer :

fi=Uri({rk})=k=1NriU1(rk)

Le seul terme non-nul de la somme est pour k=i, on a donc :

fi=U1r(ri).

La force sur la particule i ne dépend que de ri, les particules sont donc bien indépendantes.

Exercice

Calculer la force pour le potentiel électrique U1(ri)=q0qi4πε0|ri|

2.2 Forces entre particules

On se place dans le cas où, par invariance, U2:RR est fonction uniquement de la distance entre particules rkl=|rkl|=|rlrk| :

U({rk})=k<lU2(rk,rl)=k=1Nl=k+1NU2(|rlrk|)fi=k=1Nl=k+1NriU2(|rlrk|)

Calculons la dérivée par rapport à ri pour les termes de la double somme :

riU2(|rlrk|)=U2(rkl)rklri.

La dérivée de rkl par rapport à ri s’exprime sous la forme :

rklri=rklrklri=12rkl(rklrkl)ri=12rkl(rklrirkl+rklrklri)=rklrklrklri=nkl(rlrirkri)=nkl(δliδki)

nkl=rkl/rkl est le vecteur rlrk normalisé. On peut à présent exprimer la force fi. Pour simplifier les notations, on pose fkl=U2(rkl)nkl qui est la force qu’exerce la particule k sur la particule l (par la troisième loi de Newton, on a fkl=flk) :

fi=k=1Nl=k+1NriU2(rkl)=k=1Nl=k+1NU2(rkl)(δliδki)nkl=k=1Nl=k+1Nfklδlik=1Nl=k+1Nfklδki=k=1Nl=k+1Nfklδlil=i+1Nfil=k=1i1l=k+1Nfklδli+l=i+1Nfli=k=1i1fki+l=i+1Nfli=k=1, kiNfki=k=1, kiNU2(rki)nik

Logiquement, on trouve que la force totale sur la particule i est la somme des forces pour toutes les paires (i,k), mais ce calcul montre la marche à suivre pour l’étape 3 de Velocity-Verlet :

  1. Pour chaque paire de particules (k,l), calculer fkl=U2(rkl)nkl=U2(rkl)nlk
  2. Pour chaque particule, calculer fi=k=1, kiNfki
Note

Puisqu’il faut faire une somme de N termes pour chacune des N particules, le calcul des forces tel qu’écrit ci-dessus, dit “calcul naïf”, a une complexité algorithmique de O(N2), ce qui devient vite coûteux. On verra dans un prochain chapitre un moyen de calculer les forces en O(N) opérations.

Le TP 2 est une application de ce calcul pour des chocs entre boules de billard élastiques.

Müser, Martin H., Sergey V. Sukhomlinov, et Lars Pastewka. 2023. « Interatomic Potentials: Achievements and Challenges ». Advances in Physics: X, décembre.