• Aucun résultat trouvé

Les m´ethodes de Mont´e Carlo visent `a calculer num´eriquement des int´egrales

en utilisant des proc´ed´es al´eatoires. Leurs applications sont tr`es diverses, et leur

utilisation ne se limite ´evidemment pas `a la physique statistique. Nous pr´esentons ici

leur principe, l’objectif n’´etant pas d’en donner une revue exhaustive (se r´ef´erer pour

cela `a [Binder et Heermann, 1988; Krauth, 1996]). Les probl`emes de ralentissement

critique seront par la suite abord´es et nous d´etaillerons quelques proc´ed´es permettant

de limiter leurs effets.

15.2.1 Int´egration Mont´e Carlo

Soitxune variable al´eatoire dans un espaceEde dimension donn´e, sa probabilit´e

de pr´esence ´etantP(x). Nous d´esirons calculer la moyenne d’une observableOd´efinie

par :

hOi=

R

E

O(x)P(x)dx

R

E

P(x)dx (15.23)

o`u le terme au d´enominateur est n´ecessaire si la distribution de probabilit´e n’est

pas normalis´ee. L’observable O est alors ´evalu´ee par la m´ethode de Mont´e Carlo en

tirant un certain nombre N de points x

l

dans l’espace des phases :

hOi ≃

P

N

l=1

O(x

l

)P(x

l

)

P

N

l=1

P(x

l

) , (15.24)

tout en prenant N aussi grand que possible. Nous nous int´eresserons par la suite `a

des syst`emes de spins classiques, dont le comportement est d´ecrit par une statistique

de Maxwell-Boltzmann, pour laquelle P(x) = exp −βE(x)

, o`uE(x) est l’´energie

totale du syst`eme pour une configuration de spins xde l’espace des phases, et β =

1

15.2.2 Algorithme de M´etropolis et d´etail des simulations

En pratique, il existe deux diff´erentes approches pour ´evaluer (15.24). L’´

echantil-lonnage directconsiste comme d´ecrit pr´ec´edemment `a tirer al´eatoirement un grand

nombre de points dans l’espace des phases, correspondants `a diff´erents ´etats du

syst`eme. Cette proc´edure est cependant tr`es lente et peu efficace. En effet, seule une

petite partie de l’espace des phases donne en g´en´eral une contribution importante

dans la somme (15.24), et il n’est pas n´ecessaire, en pratique, de l’´echantillonner

compl`etement.

D’autres types d’´echantillonnages sont g´en´eralement utilis´es, bas´es sur des

pro-cessus markoviens. L’espace des phases est alors explor´e en partant d’un certain

´etat, qui, partiellement modifi´e de fa¸con al´eatoire, permet d’arriver `a un nouvel ´etat

voisin du pr´ec´edent. Cette approche est justifi´ee par le fait que les termes ayant une

forte contribution dans (15.24) sont souvent proches dans l’espace des phases. Le

nouvel ´etat est alors accept´e ou non, de mani`ere `a ce que la probabilit´e de pr´esence

tende vers la distribution d’´equilibre (distribution de Maxwell-Boltzmann) lorsque

N → ∞. Il suffit pour cela de v´erifier la relation de bilan d´etaill´e :

P(x

l

)W(x

l

→x

l+1

) = P(x

l+1

)W(x

l+1

→x

l

), (15.25)

o`uW(x

l

→x

l+1

) est la probabilit´e de transition de l’´etatx

l

`a l’´etatx

l+1

.

L’algorithme utilis´e dans nos simulations est l’algorithme de M´etropolis

[Metro-poliset al., 1953]. Dans ce dernier, la probabilit´e de transition est d´efinie par :

W(x

l

→x

l+1

) = min (1,e

βE

) (15.26)

o`u ∆E =E(x

l+1

)−E(x

l

) est la variation d’´energie qu’entraˆıne ce mouvement dans

l’espace des phases. En pratique, ce mouvement consiste `a modifier al´eatoirement

l’orientation d’un des spins du syst`eme. La nouvelle configuration est alors accept´ee

si elle est favorable ´energ´etiquement (∆E < 0). Dans le cas inverse (∆E > 0), la

nouvelle configuration est accept´ee avec une probabilit´e e

βE

. On appelle alorstaux

d’acceptation le rapport entre le nombre d’´etats accept´es et le nombre d’´etats test´es,

et pas Mont´e Carlo le tirage de N spins (N ´etant le nombre de spins du syst`eme),

choisis al´eatoirement ou non.

Thermalisation du syst`eme

Nos simulations partent toujours des hautes temp´eratures (r´egime

paramagn´e-tique) pour aller vers les plus basses temp´eratures. Si l’on d´esire thermaliser le

sys-t`eme `a des temp´eratures tr`es basses, nous nous trouvons confront´e `a un probl`eme :

le poids de Boltzmann e

−β∆E

li´e au taux d’acceptation des configurations devient

proche de z´ero, et les nouvelles configurations g´en´er´ees sont tr`es rarement

accep-t´ees. Le syst`eme devient donc quasiment fig´e et tr`es long `a thermaliser. Diff´erents

algorithmes existent pour ´eviter ce ph´enom`ene. Lors de nos simulations, nous avons

utilis´e la m´ethode de recuit simul´e : partant des hautes temp´eratures, nous faisons

un certain nombre d’´etapes `a des temp´eratures interm´ediaires pour atteindre la

tem-p´erature finale d´esir´ee. La loi de d´ecroissance de la temtem-p´erature utilis´ee est du type :

T

i+1

= XT

i

, o`u X est un facteur compris entre 0 et 1. A chaque ´etape, on attend

alors que le syst`eme soit `a l’´equilibre thermodynamique avant de diminuer de

nou-veau la temp´erature. De cette mani`ere, la thermalisation du syst`eme est beaucoup

plus efficace.

Evaluation de l’autocorr´elation

Lorsque le syst`eme est `a l’´equilibre thermodynamique et que nous d´esirons

´eva-luer une observable, il est n´ecessaire d’avoir une id´ee de l’autocorr´elation entre chaque

pas Mont´e Carlo. Ceci nous permet d’estimer l’efficacit´e de notre ´echantillonnage,

et ainsi d’obtenir des mesures significatives. Pour que ce dernier soit acceptable,

il est n´ecessaire que les configurations s´electionn´ees pour ´evaluer notre observable

soient suffisamment d´ecorr´el´ees les unes des autres. Nous d´efinissons alors la fonction

d’autocorr´elation :

c(l) = 1

N −l

N−l

X

k=1

1

N

sp Nsp

X

i=1

S

i

(k)·S

i

(k+l)

, (15.27)

o`uN est le nombre de pas Mont´e Carlo effectu´es,N

sp

est le nombre de spins, etS

i

(k)

est le spin i au pas Mont´e Carlo k. Lors de nos simulations, nous avons consid´er´e

que deux configurations ´etaient ind´ependantes lorsque c(l

0

).0.5. Ceci nous fournit

donc le nombre de pas l

0

`a effectuer entre chaque mesure. Pour donner un ordre

de grandeur, ce nombre de pas peut varier de 1 `a tr`es haute temp´erature (dans le

r´egime paramagn´etique), `a environ 70 000 `a plus basse temp´erature (T = 10

−4

J),

dans le cas du r´eseau kagome.

Am´elioration de l’ergodicit´e

Dans l’utilisation de processus markoviens, toute la difficult´e r´eside dans le fait

d’obtenir un algorithme ergodique : en partant d’un pointx

0

de l’espace des phases,

tout autre point x

1

doit pouvoir ˆetre atteint en un nombre fini de pas. Ceci devient

tr`es difficile `a basse temp´erature, puisque les corr´elations entre spins deviennent

suffisamment ´elev´ees pour que chaque nouvelle configuration soit syst´ematiquement

rejet´ee : c’est le ralentissement critique. En pratique, il n’existe `a notre connaissance

aucune mani`ere g´en´erique de contourner ce probl`eme, et il peut ˆetre n´ecessaire, dans

ce cas, de faire appel `a des algorithmes plus compliqu´es comme les algorithmes de

blocs [Krauth, 1996]. Ces algorithmes consistent `a retourner des blocs massifs de

spins, plutˆot qu’un seul spin `a la fois, comme c’est le cas dans la m´ethode de

M´etro-polis. Ils sont particuli`erement efficaces pour des syst`emes tr`es corr´el´es ou proches

d’une transition de phase. Cependant, dans notre cas, le syst`eme reste

suffisam-ment fluctuant pour que certaines «ruses» puissent limiter efficacement les effets

du ralentissement critique.

Deux am´eliorations simples ont alors ´et´e utilis´ees. La premi`ere am´elioration

consiste `a tourner syst´ematiquement le spin que l’on d´esire modifier autour de son

champ mol´eculaire dans le cas o`u la nouvelle configuration n’est pas accept´ee. Cette

rotation d’un angle choisi al´eatoirement ne coˆute aucune ´energie au syst`eme, ´etant

donn´e que l’angle entre le spin et son champ mol´eculaire reste inchang´e (Fig. 15.2).

Cela permet ainsi au syst`eme de ne pas rester fig´e dans une configuration donn´ee.

Fig. 15.2 – (gauche) Lorsque la modification d’un spin n’est pas accept´ee, une

rotation de ce dernier autour de son champ mol´eculaire d’un certain angle al´eatoire

Ω est effectu´ee. (droite) Pour garder un taux d’acceptation `a peu pr`es constant, la

nouvelle orientation du spin modifi´e n’est pas choisie al´eatoirement sur une sph`ere,

mais dans un certain angle solide autour de sa position initiale.

La seconde am´elioration consiste `a garder un taux d’acceptation `a peu pr`es

constant. En effet, le taux d’acceptation, li´e au poids de Boltzmann e

−β∆E

, diminue

avec la temp´erature. Ainsi, `a tr`es basse temp´erature, le poids devient trop faible

et les nouvelles configurations sont syst´ematiquement rejet´ees. En pratique, un des

moyens que l’on a pour ´eviter ce ph´enom`ene est de diminuer la variation d’´energie

∆E. Cette action est effectu´ee en limitant l’amplitude des angles lors de la

modifica-tion de l’orientamodifica-tion des spins (Fig. 15.2). L’angle«critique»est alors fix´e `a chaque

temp´erature en fonction du taux d’acceptation que l’on d´esire obtenir. Ce proc´ed´e

entraˆıne donc des temps de calculs plus longs, mais le taux d’acceptation ´etant

su-p´erieur, l’espace des phases sera parcouru plus efficacement. Le taux d’acceptation

minimum `a ´et´e fix´e lors de nos simulations `a environ 40%.

15.3 Calcul du facteur de structure magn´etique