Vous êtes sur la page 1sur 7

TD Numérique : Le potentiel Lennard Jones RIVIERE – 2000

_______________________________________________________________________________________________________________________________________________________

LE POTENTIEL LENNARD JONES


RIVIERE Nicolas – Maîtrise de Physique 2000-01 – Groupe B2 – Université Paul Sabatier – Toulouse III

Ce TD numérique a pour but l’étude du potentiel Lennard Jones qui intervient dans l’énergie de cohési on des
atomes. Pour un milieu moléculaire, l’énergie des liaisons met en jeu l’interaction attractive et la répulsion entre
les noyaux ioniques à courte distance.

ETUDE DU POTENTIEL

Le potentiel « empirique » de Lennard Jones est la somme des termes d’interaction définis ci-dessus. L’énergie
potentielle entre deux atomes peut alors s’écrire :

 σ  12
σ
6
φ(r ) = 4 ⋅ ε ⋅   −  
 r  r 

avec r distance entre les deux atomes considérés.


ε largeur d’interaction dipolaire ou paramètre de Lennard Jones. Ce dernier est constant pour
l’étude d’un seul type d’atomes.
σ rayon du cœur répulsif, distance constante entre deux atomes où forces répulsives et attractives
sont identiques.

Potentiel de Lennard Jones


0.1

0.08

0.06
Potentiel (eV)

0.04

0.02

zéro en x=1

min. en x=1.1225

-0.02
0.8 1 1.2 1.4 1.6 1.8 2 2.2
distance x=r/sigma

Figure 1 – Simulation du potentiel avec MatLab.

1
TD Numérique : Le potentiel Lennard Jones RIVIERE – 2000
_______________________________________________________________________________________________________________________________________________________

Dans la première partie du programme développé sous MatLab, nous avons représenté ce potentiel et déterminer
son minimum. Les paramètres choisis sont les suivants : ε = 0,0104eV et σ = 3,4 . Pour une distance x = 1 telle
que x = r σ , le potentiel de Lennard Jones est nul. Il y a équilibre des forces. Le potentiel passe par un
minimum pour x = 1,122. Les attractions ioniques et de Van Der Walls font tendre ce potentiel vers zéro lorsque
l’on augmente la distance x.

APPLICATION A UNE CHAINE D’ATOMES

Intéressons-nous maintenant au cas d’une chaîne d’atomes. Nous recherchons donc la représentation numérique
de ce problème à une dimension. Pour une particule dans un milieu matériel, l’énergie potentielle tenant compte
des voisins s’écrit :
 σ 12  σ  6 
∑ ∑
1
Ep = ⋅ φ( r ) = 2 ⋅ ε ⋅   −   
2 r ≠0  r 
r ≠0   r  

Xo
0

Figure 2 - Représentation schématique du problème à une dimension.

Dans la simulation, nous réalisons une sommation sur les vingt premiers voisins. Nous introduisons également la
valeur de r (ici Xo) pour laquelle le potentiel sera calculé.

La sommation sur toutes les paires et l’influence de chaque voisin apparaissent dans des boucles « for » à
l’intérieur du programme. Nous joignons le script du programme à la fin du présent rapport. Après simulation,
nous constatons que les premiers voisins contribuent au potentiel mais, à partir du sixième, nous pourrons
considérer leur influence comme étant négligeable.

AUTRE METHODE DE SIMULATION NUMERIQUE

L’énergie potentielle pour une particule peut être réécrite sous une autre forme faisant intervenir des coefficients.
A partir de la définition vue précédemment, essayons de retrouver ces paramètres.

 σ 12  σ  6   σ 
12
σ 
6

∑ ∑
1
Ep = ⋅ φ( r ) = 2 ⋅ ε ⋅   −    = 2 ⋅ ε ⋅ A12 ⋅  
 − A 6 ⋅   
2 r ≠0  r 
r ≠0   r     ro   ro  

2
TD Numérique : Le potentiel Lennard Jones RIVIERE – 2000
_______________________________________________________________________________________________________________________________________________________

∑ r' ∑ r'
1 1
En posant r = r '⋅ro , on définit A 12 = 12
et A 6 = 6
avec ro distance pour le voisin le plus proche.
r '≠ 0 r '≠ 0

En d’autres termes, les coefficients A ne dépendent que de la géométrie de l’arrangement des atomes et prennent
la forme suivante :

n
 d 1er voi sin 
An = ∑ i
N i ⋅ 
 di


avec di distance de l’atome au i ème voisin.


Ni Nombre de ième voisins.

La fonction du potentiel de Lennard Jones est modifiée pour rendre compte de l’utilisation des coefficients. Cette
méthode donne de bons résultats puisque les coefficients A convergent rapidement (pour le sixième voisin). De
plus, la superposition des courbes du calcul direct et du calcul approché nous démontre un bon accord entre les
deux modes de calcul.

Convergence des coefficients A6 et A12. Equivalence des deux modes de calcul.


2.04 -0.0103
A6(N) Calcul Direct
A12(N) Calcul avec A6 et A12

2.035

-0.0104

2.03
Potentiel (eV) pour x = 3.8

2.025
-0.0105
A6 A12

2.02

-0.0106
2.015

2.01

-0.0107

2.005

2 -0.0108
0 5 10 15 20 0 5 10 15 20
Nième voisin Nième voisin

Figure 3 – Convergence des coefficients et comparaison des méthodes.

L’allure du potentiel n’est que légèrement influencée par les dix premiers voisins d’un atome (voir figure 4).
L’évolution du potentiel en fonction de N tend très vite vers une limite. On peut déjà en retirer une conclusion
importante pour la suite du problème. Lorsqu’on étudie un cristal parfait infini, il n’est pas nécessaire de
travailler sur tous les voisins. On obtient de bonnes approximations en ne considérant que les premiers atomes
(jusqu’au cinquième ou sixième par exemple).

3
TD Numérique : Le potentiel Lennard Jones RIVIERE – 2000
_______________________________________________________________________________________________________________________________________________________

Potentiel avec calcul au 1°, 2°, 3° .. 10° voisin


0.1
1
2
3
4
0.08 5
6
7
8
9
0.06 10
Potentiel (eV)

0.04

0.02

-0.02

0.8 1 1.2 1.4 1.6 1.8 2 2.2


x/sigma

Figure 4 – Evolution du potentiel en fonction du nombre de voisins cons idérés.

La simulation numérique de l’énergie d’équilibre ainsi que de sa position r o convergent rapidement vers une
limite. Nous avons représenté graphiquement cette évolution et regroupé dans un tableau l’ensemble des
résultats. La correction liée aux atomes éloignés est négligeable.
Position d`équilibre Energie d`équilibre : Eo
3.818 -0.0103

3.816

-0.0104

3.814

-0.0105
3.812
Potentiel (eV)
Ro

3.81
-0.0106

3.808

-0.0107

3.806

3.804 -0.0108
1 2 3 4 5 6 7 8 9 10 1 2 3 4 5 6 7 8 9 10
N N

Figures 5 & 6 – Représentation de la position et de l’énergie d’équilibre en fonction de N.

N 1 2 3 4 5 6 7 8 9 10
ro 3,8164 3,8066 3,8059 3,8057 3,8057 3,8057 3,8056 3,8056 3,8056 3,8056
Eo -1,0400.10-2 -1,0725.10-2 -1,0754.10-2 -1,0759.10-2 -1,0760.10-2 -1,0761.10-2 -1,0761.10-2 -1,0761.10-2 -1,0761.10-2 -1,0761.10-2

Tableau 1 – Résultats numériques de la simulation.

CONCLUSION
L’étude à une dimension nous a montré que la considération des premiers voisins était suff isante. A ce stade de
la réflexion, nous pouvons nous demander si nous pouvons généraliser cette conclusion à deux et trois
dimensions (voir TD numérique suivant).

4
TD Numérique : Le potentiel Lennard Jones RIVIERE – 2000
_______________________________________________________________________________________________________________________________________________________

SCRIPT DU PROGRAMME – REPRESENTATION DU POTENTIEL


% Programme de simulation du potentiel Lennard Jones
% prg.m
%
% Rivière & Delagnes - 2000

clear all; close all; clc;

eps = 0.0104;
sig = 3.4;
r = linspace(3,7,400);

phi = plj(r,eps,sig);

plot(r/sig,zeros(1,400),'g:',r/sig,phi,'r')
title('Potentiel de Lennard Jones');
xlabel('distance x=r/sigma');
ylabel('Potentiel (eV)');

disp '> Min(phi(r))'


disp ' '
lx = fmins('plj',7,[],[],eps,sig)/sig;
ly = plj(lx,eps,1);
fprintf('lx = %f\nly = %f\n', lx , ly );
hold on;
plot(1,0,'bo');
text(1,0.01,'zéro en x=1');
plot(lx,ly,'bo');
text(lx+0.1,ly,['min. en x=',num2str(lx)]);
hold off;

% Calcule le potentiel de Lennard-Jones


% plj(r,eps,sig)
%
% Rivière & Delagnes - 2000

function t = plj(x,y,z)

t = 4*y*((z./x).^6).*(((z./x).^6)-1);

SCRIPT DU PROGRAMME – DIFFERENTS MODES DE CALCUL


% Programme de simulation du potentiel de Lennard-Jones. Etude la chaine unidimensionelle
% len2.m
% Rivière & Delagnes - 2000

% Paramètres initiaux :
epsilon = 0.0104;
sigma = 3.4;

% Partie [I]

% Tracé de la fonction de Lennard Jones


x1 = 3:0.01:7;
y1 = pot(x1,epsilon,sigma);
plot(x1/sigma,y1)
xlabel('x/sigma')
ylabel('potential (eV)')
Title('Potentiel de Lennard Jones')
grid
pause

% Partie [II]
% Recherche du minimum du potentiel
lx = fmins('pot',1,[],[],epsilon,sigma);
ly = pot(lx,epsilon,sigma);
fprintf('Ro = %f\n', (lx/sigma));
k=num2str(lx/sigma);
plot(x1/sigma,y1,lx/sigma,ly,'o')
xlabel('x/sigma')
ylabel('potential (eV)')
Title('Potentiel de Lennard Jones')

5
TD Numérique : Le potentiel Lennard Jones RIVIERE – 2000
_______________________________________________________________________________________________________________________________________________________

text(1.1,0,['Ro = ' k])


pause

% Partie [III]
%Chaine unidimensionnelle / Comparaison des methodes de calcul / Effets des interactions
%1°, 2°, 3°, ... 10° voisins
N =1:1:20; % Longueur de la chaine.
xo =3.8; % Valeur de x pour laquelle sera calculee le potentiel.
% Partie [III_A] Calcul direct :
for j=1:length(N),
y2(j)=0;
l=N(j);
for i=-l:1:l,
% Energie totale:
if i == 0, y2(j)=y2(j);
else y2(j)=y2(j)+1/2*pot(i*xo,epsilon,sigma);
end
end
end
% Partie [III_B] Calcul de A6 et A12 :
mat=voisin1d(max(N));
A6=mat(1,:);
A12=mat(2,:);
y3=pott(xo,epsilon,sigma,A6,A12);
figure
% Convergence des coefficients :
subplot(1,2,1),plot(N,A6,'+',N,A12,'x')
xlabel('Nième voisin')
ylabel('A6 A12')
Title('Convergence des coefficients A6 et A12.')
legend('A6(N)','A12(N)')
pause
% Partie [III_C] Comparaison des resultats :
% Potentiel pour chacune des méthodes
subplot(1,2,2),plot(N,y2,N,y3,'o')
xlabel('Nième voisin')
ylabel('Potentiel (eV) pour x = 3.8')
Title('Equivalence des deux modes de calcul.')
legend('Calcul Direct','Calcul avec A6 et A12')
pause
figure
% Partie [III_D] Calcul du poentiel de Lennard Jones pour une chaine avec 1:10 voisins.
for i=1:10;
a12=A12(i);
a6=A6(i);
y4(i,:)=pott(x1,epsilon,sigma,a6,a12);
end
subplot(2,2,1),plot(x1/sigma,y4)
xlabel('x/sigma')
ylabel('Potentiel (eV)')
legend('1','2','3','4','5','6','7','8','9','10',-1);
Title('Potentiel avec calcul au 1°, 2°, 3° .. 10° voisin')
axis([0.8 2.2 -0.025 0.1])
grid
zoom
pause
% Position d'equilibre et energie de liaison pour 1, 2, 3, 4 premiers voisins
for i=1:10;
a12=A12(i);
a6=A6(i);
resultat(i,1)=i;
l = fmins('pott',1,[],1,epsilon,sigma,a6,a12);
e = pott(l,epsilon,sigma,a6,a12);
resultat(i,1) = i;
resultat(i,2) = l;
resultat(i,3) = e;
end
k1=[' 1 3.8164 -1.0400e-002'];
k2=[' 2 3.8066 -1.0725e-002'];
k3=[' 3 3.8059 -1.0754e-002'];
k4=[' 4 3.8057 -1.0759e-002'];
k5=[' 5 3.8057 -1.0760e-002'];
k6=[' 6 3.8057 -1.0761e-002'];
k7=[' 7 3.8056 -1.0761e-002'];
k8=[' 8 3.8056 -1.0761e-002'];
k9=[' 9 3.8056 -1.0761e-002'];
k10=['10 3.8056 -1.0761e-002'];

6
TD Numérique : Le potentiel Lennard Jones RIVIERE – 2000
_______________________________________________________________________________________________________________________________________________________

subplot(2,2,1)
text(3, 0.1,' N Ro Eo')
text(3, 0.095,'-------------------------------')
text(3,0.085, k1)
text(3,0.075, k2)
text(3,0.065, k3)
text(3,0.055, k4)
text(3,0.045, k5)
text(3,0.035, k6)
text(3,0.025, k7)
text(3,0.015, k8)
text(3,0.005, k9)
text(3,-0.005, k10)
subplot(2,2,3), plot(resultat(:,1),resultat(:,2))
xlabel('N')
ylabel('Ro')
Title('Position d`équilibre.')
grid
subplot(2,2,4), plot(resultat(:,1),resultat(:,3))
xlabel('N')
ylabel('Potentiel (eV)')
Title('Energie d`équilibre : Eo.')
grid
% Fin du programme.

% Programme de simulation du potentiel de Lennard-Jones.


function potential=pot(r,epsilon,sigma)
potential = 4*epsilon*( (sigma./r).^12 - (sigma./r).^6);

% Programme de simulation du potentiel de Lennard-Jones pour un réseau.


function potential=pott(x,epsilon,sigma,A6,A12)
potential = 2*epsilon*( A12.*(sigma./x).^12 - A6.*(sigma./x).^6);

% Sous programme de tri et de dénombrement des premiers, deuxièmes, troisièmes, etc voisins.
function tri=trier(d,V)
m=1;
while m <= length(V),
if d == V(m,1),
V(m,2) = V(m,2)+1;
m=length(V)+1;
elseif m == length(V),
V(m+1,1)=d;
V(m+1,2)=1;
m=length(V)+1;
else
m=m+1;
end
end
tri=V;

% programme de calcul du nombre de voisins systeme 1D:


function resultat = voisin1d(N)
% N : Dimension du crystal.
V=0;
for j=-N:1:N,
d=abs(j);
V=trier(d,V);
end
[Y,I]=sort(V);
for i = 1:length(Y),
Y(i,2)=V(I(i),2);
end
% Calcul des coefficients A6 et A12.
A12(1)=Y(2,2);
A6(1)=Y(2,2);
for j=2:N,
A12(j) = A12(j-1) + Y(j+1,2) / Y(j+1,1)^12 ;
A6(j) = A6(j-1) + Y(j+1,2) / Y(j+1,1)^6 ;
end
resultat=[...
A6
A12];

Vous aimerez peut-être aussi