Università degli Studi
Roma Tre
DIPARTIMENTO DI MATEMATICA E FISICA
CORSO DI LAUREA IN FISICA
��������
GLI INTEGRALI SUI CAMMINI IN MECCANICA
QUANTISTICA: TEORIA E SIMULAZIONI
��������
Relatore Candidato
Chiar.mo Prof. Davide Giusti
Vittorio Lubicz Matr. 448672
������������������
Anno Accademico 2013 - 2014
Indice
Introduzione 1
1 L'integrale funzionale sui cammini di Feynman 3
1.1 Il propagatore quantistico . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
1.2 Calcolo degli autovalori . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
1.3 Calcolo dei valori medi degli operatori . . . . . . . . . . . . . . . . . . . . . . 7
1.4 Interpretazione �sica dell'espressione del propagatore quantistico come inte-
grale funzionale sui cammini . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
1.5 La rotazione di Wick . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
1.6 Modelli �sici risolubili analiticamente . . . . . . . . . . . . . . . . . . . . . . . 13
1.6.1 Soluzione analitica di un sistema costituito da una particella libera . . 13
1.6.2 Soluzione analitica di un oscillatore armonico . . . . . . . . . . . . . . 14
2 Metodi di integrazione numerica 18
2.1 Il metodo Monte Carlo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
2.2 L'algoritmo Metropolis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
3 La simulazione numerica 22
3.1 Descrizione del programma di simulazione numerica . . . . . . . . . . . . . . 23
3.1.1 Simulazione Monte Carlo e scelta dei parametri . . . . . . . . . . . . . 23
3.1.2 Funzione d'onda dello stato fondamentale . . . . . . . . . . . . . . . . 26
3.1.3 Livello di energia dello stato fondamentale . . . . . . . . . . . . . . . . 28
3.1.4 Primo livello eccitato . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
3.2 Applicazioni a sistemi �sici . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
3.2.1 L'oscillatore armonico . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
I
II
3.2.2 La doppia buca di potenziale . . . . . . . . . . . . . . . . . . . . . . . 32
3.2.3 Il doppio oscillatore . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
Conclusione 39
A Codice dei programmi in Wolfram Mathematica 40
Bibliogra�a 48
Elenco delle �gure
1.1 Illustrazione della divisione temporale di un cammino in intervalli in�nitesimi 9
1.2 L'esperimento della doppia fenditura . . . . . . . . . . . . . . . . . . . . . . . 11
2.1 Rappresentazione schematica di una catena di Markov . . . . . . . . . . . . . 19
3.1 Illustrazione gra�ca di un campione dei cammini generati dal programma di
simulazione . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
3.2 Andamento dell'azione S(x) in funzione dei passi Monte Carlo . . . . . . . . . 25
3.3 Dettaglio dell'andamento dell'azione S(x) in funzione dei passi Monte Carlo . 26
3.4 Confronto del risultato ottenuto per il modulo quadro della funzione d'on-
da dello stato fondamentale dell'oscillatore armonico con l'espressione nota
analiticamente . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
3.5 Di�erenza di energia tra il primo livello eccitato e quello fondamentale per
l'oscillatore armonico . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
3.6 Andamento del potenziale a doppia buca . . . . . . . . . . . . . . . . . . . . . 32
3.7 Modulo quadro della funzione d'onda dello stato fondamentale della doppia
buca di potenziale . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
3.8 Di�erenza di energia tra il primo livello eccitato e quello fondamentale della
doppia buca di potenziale . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
3.9 Andamento del potenziale del doppio oscillatore . . . . . . . . . . . . . . . . . 36
3.10 Modulo quadro della funzione d'onda dello stato fondamentale del doppio
oscillatore . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
3.11 Confronto del risultato riportato in Fig. 3.10 con la funzione approssimata
del Landau-Lif²its . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
III
IV
3.12 Di�erenza di energia tra il primo livello eccitato e quello fondamentale del
doppio oscillatore . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
Introduzione
Nell'anno 1948 il �sico americano R. P. Feynman introduce una innovativa formulazione
della meccanica quantistica, equivalente ma profondamente diversa dall'approccio canonico
che riconosce nelle �gure di W. K. Heisenberg e E. R. J. A. Schrödinger i suoi padri fondatori.
La motivazione prima che ha spinto Feynman allo sviluppo del suo metodo trae origine
dalla necessità di donare una formulazione matematicamente coerente all'Elettrodinami-
ca Quantistica. Il risultato della ricerca ha avuto successo nell'attuale applicazione del
procedimento in diversi campi della Fisica.
La formulazione di Feynman si basa sul concetto di �Integrale sui Cammini� (Path Inte-
gral), permettendo di esprimere l'ampiezza di transizione quantistica tra due punti spazio-
temporali senza ricorrere al formalismo dei vettori di stato e degli operatori nello spazio di
Hilbert.
Un particolare pregio di questo approccio risiede nella capacità di fornire una rappresen-
tazione intuitiva del limite classico della Meccanica Quantistica.
L'importanza pratica degli integrali funzionali sui cammini si rivela nella assurzione del
metodo ad un potente strumento di risoluzione dei problemi quantistici di cui non è nota
la soluzione analitica dell'equazione di Schrödinger. Per questa ultima tipologia di sistemi
�sici, i Path Integrals possono essere calcolati con l'ausilio di metodi di integrazione numerica
adatti all'implementazione su un computer, in quanto espressi in termini di funzioni classiche
piuttosto che di operatori, fornendo così lo sviluppo di soluzioni arbitrariamente accurate.
Un'analoga considerazione vale per la simulazione numerica degli integrali sui cammini delle
teorie di campo relativistiche che non si prestano ad una trattazione perturbativa, come la
moderna teoria delle interazioni forti (QCD).
Il presente lavoro di tesi intende concentrarsi sulla trattazione del metodo degli �Integrali
sui Cammini� nell'ambito della Meccanica Quantistica non relativistica, so�ermandosi sulle
1
2
tecniche numeriche di applicazione ad alcuni sistemi �sici di interesse.
Nel primo capitolo si introduce il concetto di propagatore quantistico, giungendo ad
una sua de�nizione matematica come integrale funzionale sui cammini di Feynman. In
particolare, si mostra l'utilità del metodo dei Path Integrals nel calcolo degli autovalori e
delle autofunzioni della Hamiltoniana. Successivamente si discute l'interpretazione �sica
degli �Integrali sui Cammini�. In�ne, si so�erma l'attenzione sull'analisi di due modelli
�sici di cui è nota l'espressione analitica del propagatore quantistico: la particella libera e
l'oscillatore armonico.
Nel secondo capitolo si a�ronta la teoria dei metodi di integrazione numerica utilizzabili
per il calcolo del propagatore quantistico. Speci�camente si forniscono cenni e tratti salienti
del metodo Monte Carlo e dei processi stocastici fondati sulle catene di Markov. In�ne, si
tratta la tecnica di integrazione Monte Carlo basata sull'algoritmo Metropolis.
Nel terzo capitolo si descrive la procedura generale seguita per l'implementazione dell'al-
goritmo Metropolis su un programma realizzato con l'utilizzo del software Wolfram Mathe-
matica, al �ne di ricavare le quantità �siche rilevanti di alcuni sistemi �sici. Nello speci�co
si articola la trattazione presentando i programmi di simulazione e i risultati ottenuti per
i sistemi dell'oscillatore armonico, della doppia buca di potenziale ed, in�ne, del doppio
oscillatore.
Per ciascuno dei modelli analizzati si ricavano l'autovalore, il modulo quadro della fun-
zione d'onda dello stato fondamentale e la di�erenza di energia tra il primo livello eccitato
e quello fondamentale.
L'oscillatore armonico è studiato al �ne di poter veri�care il buon funzionamento del
metodo adottato. Dunque, l'applicazione del programma realizzato si estende agli altri due
sistemi �sici. Per questi ultimi i risultati ottenuti si confrontano con i valori numerici ricavati
con metodi diversi e riportati in letteratura.
In appendice al presente lavoro si riporta un esempio di codice realizzato con il software
Wolfram Mathematica.
Un caloroso e a�ettuoso ringraziamento sento di rivolgere all'ideatore di questa tesi, il
Prof. Vittorio Lubicz, che mi ha costantemente incoraggiato e assistito nella programma-
zione ed elaborazione dei dati e nella stesura del presente lavoro.
Capitolo 1
L'integrale funzionale sui cammini
di Feynman
L'approccio alternativo alla Meccanica Quantistica intodotto e sviluppato dai �sici P.A.M.
Dirac, J.S. Schwinger e R.P. Feynman si basa su un formalismo che utilizza l'integrazione
funzionale e riveste un ruolo centrale nella moderna Teoria Quantistica dei Campi.
Il presente lavoro si propone lo scopo di introdurre il metodo dei Path Integrals (integrali
funzionali sui cammini) nella Meccanica Quantistica per analizzare sistemi quanto-meccanici
non relativistici.
1.1 Il propagatore quantistico
Al �ne di introdurre l'integrale funzionale sui cammini è necessario de�nire una fon-
damentale quantità �sica: il propagatore quantistico (per semplicità di notazione si pone
~ = 1)
K (qf , tf ; qi , ti) := 〈qf , tf | qi , ti 〉 = 〈qf | e−i�H(q, p)T | qi〉, (1.1)
dove T= tf − ti.
La (1.1) corrisponde, nella rappresentazione di Heisenberg, ad un elemento di matrice di
transizione in cui qi e qf rappresentano rispettivamente i set di coordinate {qi} degli stati
iniziale e �nale di un sistema descritto da un'Hamiltoniana H(q, p).
3
CAPITOLO 1. L'INTEGRALE FUNZIONALE SUI CAMMINI DI FEYNMAN 4
Nota la funzione d'onda nella con�gurazione iniziale ψ(qi , ti), il propagatore K permette
di ottenere un'espressione per la funzione d'onda al tempo tf
ψ(qf , tf ) = 〈 qf , tf | ψ 〉 =∫
dqi 〈 qf , tf | qi , ti 〉 〈 qi , ti | ψ 〉 =
=
∫dqi 〈qf | e−i
�H(q, p)T | qi〉 ψ(qi , ti), (1.2)
dove il propagatore rappresenta il nucleo dell'equazione integrale.
Il calcolo del propagatore è a�rontato usando il principio di sovrapposizione quantistico.
Si divide l'intervallo temporale T in N intervalli in�nitesimi equispaziati di δt, pari aT
N. Si
inserisce un set completo di autostati della posizione agli n = 1, ... , (N - 1) tempi intermedi
nella formula del propagatore K tale che 1 =
(∏i
∫dqin
)| qn 〉 〈 qn | , ∀ n
〈qf | e−i�H(q, p)T | qi〉 =
∏i
∫dqi1 ... dqin−1 〈 qf | e−i
�H δt | qn−1〉 ×
× 〈 qn−1 | e−i�H δt | qn−2〉 ... 〈 q1 | e−i
�H δt | qi〉. (1.3)
Per valori su�cientemente piccoli di δt è possibile approssimare l'esponenziale in ciascuno
dei fattori come segue
〈 qn+1 | e−i�H δt | qn〉 −−−→
δt→0〈 qn+1 | 1 � i �H δt | qn〉 (1.4)
(q0 = qi e qN = qf ).
Nel caso di un operatore funzione delle sole coordinate l'elemento di matrice può essere
scritto
〈 qn+1 | �f (q) | qn〉 = f
(qn+1 + qn
2
) ∏i
δ(qin − qin+1) =
= f
(qn+1 + qn
2
) (∏i
∫dpin2π
)ei∑i p
in (qin+1−q
in) (1.5)
per le proprità della δ e di continuità della f(q).
Invece, per una funzione dei soli momenti, introducendo un set completo di autofunzioni
del momento coniugato p, l'elemento di matrice assume l'espressione
〈 qn+1 | �f (p) | qn〉 =
(∏i
∫dpin2π
)f (pn) ei
∑i p
in (qin+1−q
in). (1.6)
CAPITOLO 1. L'INTEGRALE FUNZIONALE SUI CAMMINI DI FEYNMAN 5
Pertanto, nel caso in cui H contenga solo termini della forma f(q) e f(p) si può ottenere
〈 qn+1 | �H(q, p) | qn〉 =
(∏i
∫dpin2π
)H
(qn+1 + qn
2, pn
)ei∑i p
in (qin+1−q
in). (1.7)
L'espressione sopra riportata non è valida nel caso in cui H(q, p) contenga prodotti
degli operatori di posizione e impulso. Infatti, solo per uno speci�co ordine dei prodotti si
potrebbe preservare la formula (1.7), come ad esempio per la combinazione
〈 qn+1 |1
4(q2p2 + 2 q p2q + p2q2) | qn〉 =
(qn+1 + qn
2
)2
〈 qn+1 | p2 | qn〉. (1.8)
Quando gli operatori q agiscono simmetricamente sugli stati di destra e sinistra dell'e-
lemento di matrice ovvero gli operatori di posizione e impulso si presentano sotto forma di
media pesata delle loro possibili combinazioni, l'Hamiltoniana è detta Weyl ordered. As-
sumendo, dunque, che l'Hamiltoniana risponda alle proprietà dell'ordinamento di Weyl1,
l'elemento di matrice (1.4) può essere espresso come segue
〈 qn+1 | e−i�H δt | qn〉 =
(∏i
∫dpin2π
)e−i δtH
(qn+1+qn
2 , pn
)× ei
∑i p
in (qin+1−q
in). (1.9)
Quindi, per ottenere l'espressione �nale del propagatore si moltiplicano N fattori del tipo
(1.9) e si integra sulle coordinate intermedie qn per ogni n
K (qf , qi; T) =
∏i,n
∫dqin
∫dpin2π
ei∑n
[∑i p
in (qin+1−q
in)−δtH
(qin+1+qin
2 , pin
)]. (1.10)
In forma non discretizzata e simbolica il propagatore diventa
K (qf , qi; T) =
∫Dq(t)Dp(t) ei
∫ T0dt∑i piqi−H(qi,pi). (1.11)
Attraverso le espressioni (1.10) e (1.11) si fornisce una de�nizione matematica del pro-
pagatore quantistico scritto nel formalismo dei Path Integrals2. In �1.4 si darà una inter-
pretazione �sica delle scritture in (1.10) e (1.11).
1Si può dimostrare che ogni Hamiltoniana può essere ridotta alla forma di Weyl attraverso uno speci�co
algoritmo, che conduce ad una simmetrizzazione dei prodotti non commutanti [4, 9].
Da notare che nelle formule scritte ci si avvale della prescrizione del punto medio, assumendo valido
l'ordinamento di Weyl.2Per un'ampia e rigorosa trattazione del formalismo matematico dell'integrazione funzionale si consulti
[20].
CAPITOLO 1. L'INTEGRALE FUNZIONALE SUI CAMMINI DI FEYNMAN 6
Nella (1.11) è riportata in forma compatta la misura funzionale a ciascun tempo nello
spazio delle fasi:
∫Dq(t)Dp(t) =
∏i
∫dqi dpi
2π~. (1.12)
Nella (1.11) l'espressione riportata nell'argomento dell'esponenziale rappresenta l'azione
classica S del sistema nel formalismo hamiltoniano (in quello lagrangiano si ha che∑i piqi−
H(qi, pi) = L(q , q)) [16].
Nello speci�co, al �ne di ricavare un'espressione esplicita del propagatore quantistico per
un sistema unidimensionale descritto da un'Hamiltoniana della forma
H(q, p) =p2
2m+ V(q) (1.13)
si sfrutta la (1.10) [3]
K (qf , qi; T) =
= limN→∞;δt→0
∫dq1...
∫dqN−1
N−1∏n=0
e−iδtV(qn) 1
2π
∫dpn e
−iδt p2n
2m ei pn(qn+1−qn) =3
= limN→∞;δt→0
∫dq1...
∫dqN−1
( m
2π i δt
)N2
ei δt∑N−1n=0
[m2
(qn+1−qn
δt
)2−V(qn)
], (1.14)
ossia, in forma compatta,
K (qf , qi; T) =
∫Dq(t)ei
∫T
0dtL(q,q).
1.2 Calcolo degli autovalori
Lo scopo del presente paragrafo consiste nell'esprimere il propagatore quantistico in
termini degli autovalori e delle autofunzioni dell'Hamiltoniana del sistema.
Si consideri il set completo di autostati |n〉 dell'Hamiltoniana tali, cioè, che
H|n〉 = En|n〉 (1.15)
e le cui corrispondenti funzioni d'onda sono
3L'integrale in dp assume l'espressione gaussiana
∫ ∞−∞
dpe−a p2+b p =
√π
aeb2
4a , in cui a = i δt2m
e
b = i (qn+1−qn). Poiché l'integrando è una funzione fortemente oscillante, si tratta formalmente la quantità
iδt come reale, mediante un prolungamento analitico allo spazio Euclideo.
CAPITOLO 1. L'INTEGRALE FUNZIONALE SUI CAMMINI DI FEYNMAN 7
ψn(x) = 〈x|n〉. (1.16)
Si può, allora, scrivere il propagatore come
K(qf , qi;T) = 〈qf | e−i H T |qi〉 =∑n
〈qf |n〉〈n| e−i H T |qi〉 =
=∑n
ψn(qf ) e−i En T ψ∗n(qi). (1.17)
Ponendo qi = qf = q la (1.17) diventa
K(q, q;T) =∑n
|ψn(q)|2 e−i En T (1.18)
e integrando in dq si ottiene
∫dqK(q, q;T) =
∑n
e−i En T∫dq|ψn(q)|2 =
∑n
e−i En T. (1.19)
Come si discuterà nel seguito, le eq. (1.18) e (1.19), calcolate per un tempo immaginario
(euclideo) τ = it dove t è de�nito in letteratura tempo minkowskiano, sono dominate a
grandi tempi dal contributo dello stato fondamentale e dei primi livelli eccitati, consentendo
così la determinazione dei corrispondenti autovalori e autofunzioni.
1.3 Calcolo di valori medi degli operatori
La presente sezione mostra come anche gli elementi di matrice degli operatori quantistici
funzioni delle coordinate spaziali possano essere espressi in termini degli integrali funzionali
sui cammini.
Si supponga, infatti, di voler calcolare l'elemento di matrice di un operatore O al tempo
t intermedio tra ti e tf :
〈qf , tf |O(t)|qi, ti〉 = 〈qf |e−iH(tf−t)Oe−iH(t−ti)|qi〉 =
=
∫dq′dq′′〈qf |e−iH(tf−t)|q′′〉〈q′′|O|q′〉〈q′|e−iH(t−ti)|qi〉 =
=
∫dq′dq′′
∫Dq(t)eiS(qf ,tf ;q′′,t)〈q′′|O|q′〉
∫Dq(t)eiS(q′,t;qi,ti). (1.20)
Assumendo che O sia funzione delle sole coordinate spaziali, ossia diagonale nella rap-
presentazione delle coordinate
CAPITOLO 1. L'INTEGRALE FUNZIONALE SUI CAMMINI DI FEYNMAN 8
〈q′′|O|q′〉 = O(q′)δ(q′′ − q′), (1.21)
l'espressione (1.20) si riduce ad un singolo integrale funzionale sui cammini
〈qf , tf |O(t)|qi, ti〉 =
∫Dq(t)eiS[q(t)]O[q(t)]. (1.22)
Si può ora esprimere questo elemento di matrice in termini degli autovalori e autostati
dell'energia.
In analogia con la (1.17), si inseriscono nell'elemento di matrice due relazioni di comple-
tezza negli autostati dell'energia:
〈qf , tf |O(t)|qi, ti〉 = 〈qf |e−iH(tf−t) O e−iH(t−ti)|qi〉 =
=∑n,n′
〈qf |n′〉〈n′|e−iH(tf−t) O e−iH(t−ti)|n〉〈n|qi〉 =
=∑n,n′
ψn′(qf )e−iEn′ (tf−t)e−iEn(t−ti)〈n′|O|n〉ψ∗n(qi). (1.23)
Ponendo qi = qf = q nel terzo termine della (1.23) si ottiene il valor medio dell'operatore
O
〈O〉 =
∫dq〈q, tf |O|q, ti〉 =
∑n
|ψn(q)|2e−iEn(tf−ti)〈n|O|n〉 =∑n
|ψn(q)|2e−iEnT〈n|O|n〉,
(1.24)
integrando in dq
〈O〉 =
∫dq〈q, tf |O|q, ti〉 =
∑n
e−iEnT〈n|O|n〉, (1.25)
La (1.22) può essere generalizzata ad un prodotto temporalmente ordinato di operatori
O1(t1)O2(t2)... t1 ≥ t2 ≥ ....
Se essi sono tutti diagonali nella rappresentazione delle coordinate si ha che
〈qf , tf |O1(t1)O2(t2)...|qi, ti〉 =
∫Dq(t)eiS[q(t)]O1[q(t1)]O2[q(t2)].... (1.26)
CAPITOLO 1. L'INTEGRALE FUNZIONALE SUI CAMMINI DI FEYNMAN 9
Una naturale estensione della (1.23) per il prodotto di due operatori identici conduce a
〈qf , tf |O(t2)O(t1)|qi, ti〉 = 〈qf |e−iH(tf−t2) O e−iH(t2−t1) O e−iH(t1−ti)|qi〉 =
=∑
n,n′,n′′
ψn′′(qf )e−iEn′′ (tf−t2)〈n′′|O|n′〉e−iEn′ (t2−t1)〈n′|O|n〉e−iEn(t1−ti)ψ∗n(qi). (1.27)
Dunque, ponendo qi = qf = q e integrando in dq, il valor medio del prodotto di due
operatori può essere scritto nel seguente modo
〈O(t2)O(t1)〉 =
∫dq〈q, tf |O(t2)O(t1)|q, ti〉 =
∑n,n′
|〈n′|O|n〉|2e−iEnTe−i(En′−En)(t2−t1). (1.28)
1.4 Interpretazione �sica dell'espressione del propagato-
re quantistico come integrale funzionale sui cammini
Nel presente paragrafo si fornisce una motivazione �sica del risultato in equazione (1.14).
Facendo riferimento all' integrale multidimensionale nella (1.14), l'insieme dei punti
{qi ≡ q0, q1, ..., qN ≡ qf} può essere interpratato come l'insieme dei vertici di una spezza-
ta (cammino) ΓN tale che ΓN = {q(ti = 0) ≡ qi, q(t1) = q1, ..., q(tf = T) = qf} (si confronti
con la rappresentazione in Fig. 1.1).
q1 q2
qN-1 qf
qi
δt
Figura 1.1: Illustrazione della divisione temporale di un cammino in intervalli in�nitesimi.
L'intervallo temporale T è suddiviso in N intervalli in�nitesimi di ampiezza δt.
CAPITOLO 1. L'INTEGRALE FUNZIONALE SUI CAMMINI DI FEYNMAN 10
Dunque, si può a�ermare che l'integrale in (1.14) è calcolato su tutte le possibili traiet-
torie ΓN .
Per N → ∞, le spezzate ΓN diventano delle curve continue e l'integrale è valutato su
tutti i cammini con estremi �ssati q(ti) e q(tf ).
Per interpretare il risultato della (1.14) si segue, in particolare, l'approccio assiomatico
che Feynman ha proposto per introdurre il suo formalismo nell'ambito della Meccanica
Quantistica.
A tale scopo si richiama il principio �sico di sovrapposizione quantistica: � quando un
processo �sico può avvenire in più di un modo la sua ampiezza di transizione totale è la
somma coerente delle ampiezze di transizione di ciascun modo in cui esso può avvenire.�
Si assuma, dunque, che per un sistema �sico unidimensionale si possa scrivere l'ampiezza
di transizione totale su un percorso che collega un punto iniziale qi ed uno �nale qf nel tempo
T come
K (qf , qi; T) =∑
su tutti i cammini
ei (fase) =
∫Dq(t)ei (fase), (1.29)
dove si è scritta l'ampiezza di transizione per ciascun cammino come un puro termine di
fase, a�nché nessuno di essi abbia una maggiore probabilità di essere seguito.
Per ricavare l'espressione del termine di fase, si focalizza l'attenzione sul limite classico
del propagatore. Nella meccanica classica un solo cammino contribuirebbe all'ampiezza di
transizione totale. Dunque, per valutare l'integrale in (1.29) si può usare il metodo della fase
stazionaria identi�cando il cammino classico qcl per mezzo della condizione di stazionarietà
δ
δq(t)( fase [q(t)] )qcl = 0. (1.30)
Poiché il cammino classico è quello che soddisfa il Principio di Minima Azione
δ
δq(t)( S[q(t)] )qcl = 0, (1.31)
dove S è l'azione classica.
Dal confronto delle (1.30) e (1.31) si identi�ca il termine di fase con S, a meno di una
costante.
CAPITOLO 1. L'INTEGRALE FUNZIONALE SUI CAMMINI DI FEYNMAN 11
Dal momento che l'approssimazione di fase stazionaria risulta valida nel limite classico
( S >> ~), si può scrivere il termine di fase comeS
~; per cui la formula �nale del propagatore
risulta essere
〈qf |e−i~�HT|qi〉 = K (qf , qi; T) =
∫Dq(t)ei
S[q(t)]~ , (1.32)
come sopra riportato (cfr. la forma compatta della (1.14)) [5].
L'espressione (1.32) mostra che il contributo dei cammini al calcolo del propagatore
dipende dall'azione secondo il peso ei~S(q): maggiore è l'azione minore è il contributo del
corrispondente cammino, in quanto le oscillazioni dell'esponenziale risultano rilevanti.
E' possibile veri�care che la (1.32) fornisce la corretta �gura di interferenza nell'esperi-
mento ottico della doppia fenditura, schematicamente riportato nella �gura sottostante
(Fig. 1.2).
Figura 1.2: L'esperimento della doppia fenditura.
L'azione per entrambi i cammini mostrati in Fig. 1.2 è per de�nizione pari a1
2mv2t.
Per il primo cammino la velocità è v1 =D
t, la fase
mD2
2~t. Per il secondo v2 =
D + d
t, la
fasem(D + d)2
2~t. Assumendo che d << D, si ha v1 ≈ v2. Espandendo in serie di Taylor
la fase del secondo cammino in termini did
D, l'eccesso di fase risulta essere
mDd
~t≈ pd
~.
Sostituendo in quest'ultima espressione la relazione di de Broglie p =h
λ, in accordo con
l'ottica classica si ottiene che il secondo cammino risulta avere una fase più grande di2πd
λ
CAPITOLO 1. L'INTEGRALE FUNZIONALE SUI CAMMINI DI FEYNMAN 12
rispetto al primo, con λ =2π~p
. Ciò conferma che le �gure di interferenza delle particelle
quantistiche sono le stesse di quelle delle onde classiche.
1.5 La rotazione di Wick
Il propagatore de�nito nei precedenti paragra� non è scritto nella forma idonea per
poter essere calcolata matematicamente: la funzione integranda risulta essere fortemente
oscillante.
Per trovare una soluzione a tale problema si opera la seguente sostituzione
t→ e−iθτ , (1.33)
con θ ∈ (0,π
2) e τ ∈ <.
Si ottiene, così, una continuazione analitica della funzione integranda al tempo immagi-
nario. In letteratura per θ =π
2si de�nisce la sostituzione come rotazione di Wick. Essa
consiste nella rotazione dell'asse temporale in senso orario �no a coincidenza con l'asse imma-
ginario (operazione, quest'ultima, lecita solo in assenza di poli nell'area di piano complesso
spazzata dall'asse dei tempi. In caso contrario si dovrebbe tener conto dei singoli residui
della funzione calcolati nei poli).
L'argomento dell'esponenziale del propagatore diventa
i
~
∫ tf
ti
dtL(q, q)→ −1
~
∫ τf
τi
dτm
2
(dq
dτ
)2
+ V(q) = −∫dτH := −SE , (1.34)
dove SE è de�nita azione euclidea.
In�ne, l'espressione del propagatore utilizzata per il calcolo numerico è
K(qf , τf ; qi, τi) =
∫Dq(t)e−SE(q), (1.35)
dove si ha che [15]
SE =
∫ τf
τi
dτ[m
2q2 + V(q)
]. (1.36)
CAPITOLO 1. L'INTEGRALE FUNZIONALE SUI CAMMINI DI FEYNMAN 13
Di seguito si riportano le espressioni delle (1.18), (1.19) e (1.28) nel tempo euclideo
K(q, q;T) =∑n
|ψn(q)|2 e−En T;
∫dqK(q, q;T) =
∑n
e−En T∫dq|ψn(q)|2 =
∑n
e−En T;
〈O(t2)O(t1)〉 =
∫dq〈q, tf |O(t2)O(t1)|q, ti〉 =
∑n,n′
|〈n′|O|n〉|2e−EnTe−(En′−En)(t2−t1).
(1.37)
Come precedentemente accennato le (1.37) sono dominate dal contributo dello stato fon-
damentale per T→∞. L'utilità di queste espressioni si renderà chiara nel terzo capitolo del
presente lavoro, dove si ricaveranno le determinazioni dell'autovalore dell'energia e del modu-
lo quadro della funzione d'onda dello stato fondamentale e le determinazioni dell'autovalore
del primo livello eccitato di alcuni sistemi �sici.
1.6 Modelli �sici risolubili analiticamente
In questa sezione si analizzano due sistemi �sici che ammettono una soluzione analitica
del propagatore quantistico: la particella libera e l'oscillatore armonico.
1.6.1 Soluzione analitica di un sistema costituito da una particella
libera
La particella libera rappresenta il caso più semplice per cui si possa ottenere una soluzione
analitica del propagatore K.
L'Hamiltoniana che descrive il sistema è
H =p2
2m.
Avvalendosi della de�nizione (1.1), il calcolo del propagatore fornisce direttamente
K(qf , qi;T) = 〈qf | e−ip2 T2m | qi〉 =
∫dp e−i
p2 T2m 〈qf |p〉〈p|qi〉=
=1
2π
∫dp ei
T
[p2−2mp
(qf−qiT
)]2m =
√m
2πiTeim(qf−qi)
2
2T . (1.38)
CAPITOLO 1. L'INTEGRALE FUNZIONALE SUI CAMMINI DI FEYNMAN 14
Alternativamente è possibile e�ettuare il calcolo del propagatore attraverso l'integrale
funzionale
K(qf , qi;T) = limN→∞
( m
2π i δt
)N2
∫ N−1∏n=1
dqneim2δt
∑N−1n=0 (qn+1−qn)2 =
limN→∞
( m
2π i δt
)N2
∫ N−1∏n=1
dqn exp
{im
2δt
[(qf − qN−1)2 + (qN−1 − qN−2)2 + ...+ (q2 − q1)2 + (q1 − qi)2
]}.
(1.39)
Gli integrali gaussiani non sono più disaccoppiati. Utilizzando, dunque, la formula
∫ ∞∞
du
√a
πe−a(x−u)2
√b
πe−b(u−y)2 =
√ab
π(a+ b)e−
ab(x−y)2a+b . (1.40)
Si ottiene per N = 2
√−C
π
∫dq1 exp
[C(q1 − qi)2 + C(q2 − q1)2
]=
√− C
2πec2 (q2−qi)2 , (1.41)
con C =im
2δt.
Reiterando l'operazione N volte, si ottiene la formula �nale
K(qf , qi;T) = limN→∞
( m
2π i δt
)N2 1√
N
(2π i δt
m
)N−12
eim(qf−qi)
2
2Nδt =
=( m
2π iT
) 12
eim(qf−qi)
2
2T , (1.42)
in accordo con la (1.38) [5, 15].
1.6.2 Soluzione analitica di un oscillatore armonico
Seguendo la trattazione di C. Itzykson e J. B. Zuber [10], si presenta di seguito la
soluzione analitica del propagatore per un sistema unidimensionale soggetto ad un potenziale
di tipo armonico, descritto dunque dall'Hamiltoniana
H =p2
2m+
1
2mω2q2. (1.43)
Il metodo risolutivo adottato può anche essere esteso allo studio di Hamiltoniane dipen-
denti dal tempo, che descrivono il moto unidimensionale di particelle soggette a campi di
forza esterni. Per ulteriori approfondimenti si rimanda alla vasta trattazione riportata in
[5].
CAPITOLO 1. L'INTEGRALE FUNZIONALE SUI CAMMINI DI FEYNMAN 15
Nell'intervallo temporale in�nitesimo (t, t+δt), si approssima un cammino arbitrario con
un segmento lineare congiungente i punti dello spazio q1 e q2 e si calcola il corrisponden-
te incremento dell'azione ∆S(2, 1), usando una conveniente discretizzazione del potenziale,
come segue
∆S(2, 1) =m
2
[(q2 − q1)2
δt− ω2δt
q22 + q2q1 + q2
1
3
]. (1.44)
Conseguentemente, utilizzando l'equazione (1.14) il propagatore K(qf , qi;T) assume l'e-
spressione
K(qf , qi;T) =
limN→∞
N−1∏n=1
dqn
(N me−i
π2
2πT
)N2
exp
{im
2
N∑1
[N
T(qn − qn−1)2 − ω2 T
3N(q2n + qnqn−1 + q2
n−1)
]}.
(1.45)
Si deve, pertanto, integrare l'esponenziale di una forma quadratica eim2 qMq, dove q indica
simbolicamente il set q0 ≡ qi, q1, ..., qN−1, qN ≡ qf e M ha elementi di matrice
M00 = MNN =N
T− ω2
3NT
Mk,k = 2
(N
T− ω2T
3N
)
Mk,k+1 = Mk−1,k = −(N
T+ω2T
6N
)1 ≤ k ≤ N − 1.
(1.46)
Tutti gli altri elementi di matrice sono nulli.
Se N è la matrice ottenuta cancellando da M le righe e colonne con indici 0 e N , si ha
qMq = M00(q20 + q2
N ) + 2M01(q0q1 + qN−1qN ) +
N−1∑j,l=1
qjNjlql. (1.47)
Utilizzando
∫dN−1q ei
m2 qNq =
(2π
meiπ2
)N−12
(det N)−12 , (1.48)
segue che
CAPITOLO 1. L'INTEGRALE FUNZIONALE SUI CAMMINI DI FEYNMAN 16
K(qf , qi;T) = limN→∞
(Nme−i
π2
2πT
)N2(
2π
meiπ2
)N−12
(det N)−12×
× exp{im2 [M00(q2
0 + q2N )−M2
01(N−111 q
20 + N−1
N−1,N−1q2N + 2N−1
1,N−1q0qN )]}.
(1.49)
Si calcola, quindi, det N. Ponendo
a =1
2
1 +ω2T2
6N2
1− ω2T2
3N2
, (1.50)
il determinante di N è dato da
det N= 2N−1
(N
T− ω2T
3N
)N−1
detN−1
∣∣∣∣∣∣∣∣∣∣∣∣∣∣
1 −a 0 ...
−a 1 −a ...
0 −a 1 −a ...
......
...
∣∣∣∣∣∣∣∣∣∣∣∣∣∣. (1.51)
Il restante determinante è indicato con IN−1(a) e per a �ssato soddisfa la relazione
ricorsiva
In(a) = In−1(a)− a2In−2(a) I0(a) = I1(a) = 1. (1.52)
Risolvendo nella forma In(a)
In−1(a)
=
1 −a2
1 0
n−11
1
, (1.53)
si diagonalizza la matrice 2× 2 e si trovano i corrispondenti autovalori λ±(a)
IN−1(a) =λN+ (a)− λN− (a)
λ+(a)− λ−(a)λ±(a) =
1± i√
4a2 − 1
2−−−−→N→∞
1
2e±
iωTN . (1.54)
Pertanto, per N →∞
IN−1(a) ≈ N
2N−1
sinωT
ωT. (1.55)
Dalla (1.49) segue allora
K(qf , qi;T) =(mωe−i
π2
2π sinωT
) 12
limN→∞
exp{im
2[(q2
i + q2f )(M00 −M2
01N−111 )− 2qiqfM
201N
−11,N−1]
}.
(1.56)
CAPITOLO 1. L'INTEGRALE FUNZIONALE SUI CAMMINI DI FEYNMAN 17
Per concludere si valutano
N−11,1 =
T
2N(1− ω2T2
3N2)
IN−2(a)
IN−1(a)≈ T
N
(1− ωT
Ncotωt
)+ O(N−3)
N−11,N−1 =
T
2N(1− ω2T2
3N2)
aN−2
IN−1(a)≈ ωT2
N2 sinωT+ O(N−3),
(1.57)
ricavando, in�ne, l'espressione
K(qf , qi;T) =
(mωe−i
π2
2π sinωT
) 12
exp
{imω
2
[(q2f + q2
i ) cotωT− 2qfqi
sinωT
]}. (1.58)
Come esempi di applicazione dell'espressione (1.58) trovata si possono ricavare gli au-
tovalori ed il modulo quadro della funzione d'onda dello stato fondamentale dell'oscillatore
armonico unidimensionale.
Richiamando la (1.19) si ha
∑n
e−i En T =
∫dqK(q, q;T) =
=
∫dq
√−imω
2π sinωTexp
[imω
2 sinωT2q2(cosωT− 1)
]=
1
2i sin ωT2
= e−12 i ωT
∑n
e−i n ωT.
(1.59)
Confrontando il primo e l'ultimo membro della (1.59) si ottiene la ben nota espressione degli
autovalori En per l'oscillatore armonico unidimensionale [6]
En = ω(n+1
2). (1.60)
In�ne, ricordando la prima delle (1.37) e usando la prescrizione del tempo euclideo (T→
−iτ) nella (1.58), nel limite di τ →∞ si ottiene
limτ→∞
K(q, q;T) = limτ→∞
( mω
2π sinhωτ
) 12
exp
[imωq2
(i cothωτ − i
sinhωτ
)]=
=(mωπ
) 12
e−mωq2
e−ωτ2 = |ψ0(q)|2e−E0τ . (1.61)
Dividendo la (1.61) per il fattore e−ωτ2 (= e−E0τ ), si ricava la nota espressione analitica
del modulo quadro della funzione d'onda dello stato fondamentale dell'oscillatore armonico
|ψ0(q)|2:
|ψ0(q)|2 =(mωπ
) 12
e−mωq2
. (1.62)
Capitolo 2
Metodi di integrazione numerica
Come il formalismo canonico, anche l'approccio dei Path Integrals conduce a soluzioni
analitiche in un numero limitato di casi, tra cui la particella libera e l'oscillatore armonico
analizzati nel precedente capitolo.
Nella presente sezione si descrive un metodo numerico per e�ettuare l'integrazione fun-
zionale adatto all'implementazione su un computer.
Facendo riferimento alle espressioni riportate in �1.3, i valori medi delle osservabili �siche
possono essere calcolati attraverso l'integrale sui cammini come:
〈O〉 = 1
Z
∫D[U ]e−S[U ]O[U ], (2.1)
dove Z è un fattore di normalizzazione pari a
Z =
∫D[U ]e−S[U ] (2.2)
e U indica in questo capitolo l'insieme delle possibili con�gurazioni del sistema ovvero
l'insieme dei cammini di Feynman.
Per calcolare 〈O〉 è possibile valutare l'integrale attraverso una integrazione numerica del
tipo Monte Carlo, che consiste nel mediare i valori assunti dall'osservabile su un insieme
�nito di N con�gurazioni Un distribuite con probabilità e−S[Un]:
〈O〉 ≈ 1
N
∑Un con probabilità∝ e−S[Un]
O[Un]. (2.3)
18
CAPITOLO 2. METODI DI INTEGRAZIONE NUMERICA 19
Si discute la teoria del metodo Monte Carlo basato sulle catene di Markov ( MCMC,
Markov Chain Monte Carlo ) e, successivamente, la relativa applicazione all'algoritmo
Metropolis.
2.1 Il metodo Monte Carlo
Nella (2.1) i cammini su cui si calcola l'osservabile sono pesati attraverso il fattore di
Boltzmann e−S[Un]. Pertanto, l'azione S attribuisce alle diverse con�gurazioni Un di�erente
importanza nel contributo alla valutazione del valor medio di O. Questo modo di mediare
l'osservabile è de�nito Importance Sampling.
Al valore aspettato (2.3) è associata un'incertezza statistica proporzionale a1√N
e
l'esatto valore medio è ottenuto nel limite di N →∞.
Il cuore del metodo numerico MCMC consiste nel trovare le con�gurazioni Un distri-
buite secondo la corretta funzione di probabilità P(U) = e−S[Un]. Si stabilisce, dunque,
una con�gurazione arbitraria a partire dalla quale si costruisce una sequenza stocastica di
con�gurazioni che tendono a seguire la distribuzione di equilibrio P(U).
Nella �gura sottostante (Fig. 2.1) si mostra un'illustrazione schematica di una catena di
Markov.
Figura 2.1: Rappresentazione schematica di una catena di Markov.
I punti in �gura rappresentano le con�gurazioni visitate dalla catena di Markov sequen-
zialmente. La catena inizia in un punto arbitrario dello spazio delle con�gurazioni per poi
convergere velocemente verso il centro della regione visitata con maggiore frequenza (dove
si osserva una maggiore densità di punti): in questa parte di spazio il fattore di Boltzmann
CAPITOLO 2. METODI DI INTEGRAZIONE NUMERICA 20
assume valori alti e, pertanto, la probabilità delle rispettive Un è alta. Il processo di Markov
si evolve nel tempo visitando più spesso le con�gurazioni aventi maggiori probabilità.
Il processo di Markov è caratterizzato da una probabilità di transizione condizionata da
U a U ′
T(U ′|U) := P(Un = U ′|Un-1 = U). (2.4)
La caratteristica peculiare del metodo MCMC consiste nella dipendenza della probabilità
(2.4) dalle sole con�gurazioni U e U ′, ma non dall'indice n, ossia dalla storia precedente.
La probabilità T soddisfa, ovviamente, le seguenti proprietà
0 ≤ T(U ′|U) ≤ 1,∑U ′
T(U ′|U) = 1. (2.5)
Una volta raggiunto l'equilibrio, la probabilità di passaggio U → U ′ deve essere uguale
alla corrispondente U ′ → U .
Si ottiene, così, l'equazione di bilancio
∑U
T(U ′|U)P(U) =∑U
T(U |U ′)P(U ′). (2.6)
Il membro sinistro della (2.6) rappresenta la probabilità totale di passaggio nella catena
allo stato U ′ ed è uguale, per l'equazione di bilancio, alla probabilità di uscire da U ′.
Una soluzione della (2.6) puo' essere ottenuta richiedendo che l'eguaglianza sia valida
termine a termine
T(U ′|U)P(U) = T(U |U ′)P(U ′). (2.7)
Questa equazione è nota come la condizione di bilancio dettagliato. E' possibile dimostrare
che l'equazione (2.7) è una condizione su�ciente a garantire che la catena di Markov converga
all'equilibrio.
Nel seguente paragrafo si discute nel dettaglio il padre di tutti gli algoritmi Monte Carlo
che usano la condizione di bilancio dettagliato: l'algoritmo Metropolis. Questo algoritmo
sarà successivamente utilizzato nei programmi di simulazione descritti nel terzo capitolo.
CAPITOLO 2. METODI DI INTEGRAZIONE NUMERICA 21
2.2 L'algoritmo Metropolis
L'algoritmo Metropolis è de�nito dai seguenti tre step.
Step 1: Si sceglie una con�gurazione arbitraria U ′ secondo una probabilità di selezione a
priori T0(U ′|U), dove U = Un−1.
Step 2: Si accetta la con�gurazione U ′ candidata come nuova con�gurazione Un con pro-
babilità di accettazione
TA(U ′|U) = min
(1,
T0(U |U ′)e−S[U ′]
T0(U ′|U)e−S[U ]
). (2.8)
Se la nuova con�gurazione non è accettata la catena di Markov include quella invariata.
Step 3: Si ripetono gli step 1 e 2 dall'inizio.
E' possibile veri�care che la probabilità di transizione totale T = T0TA soddisfa all'equa-
zione di bilancio dettagliato (2.7):
T(U ′|U) e−S[U ] = T0(U ′|U) min
(1,
T0(U |U ′)e−S[U ′]
T0(U ′|U)e−S[U ]
)e−S[U ] =
= min(T0(U ′|U) e−S[U ], T0(U |U ′) e−S[U ′]
)= T(U |U ′)e−S[U ′], (2.9)
dove nei passaggi si sfruttano le proprietà di simmetria dell'operazione di minimo e la
positività di tutti i fattori.
Nella maggior parte dei casi si usa una probabilità di selezione T0 che obbedisce alla
seguente proprietà di simmetria
T0(U |U ′) = T0(U ′|U). (2.10)
In questo caso l'espressione (2.8) si sempli�ca divenendo [7]
TA(U ′|U) = min (1, e−∆S) con ∆S = S[U ′]− S[U ]. (2.11)
Capitolo 3
La simulazione numerica
Lo scopo del presente capitolo è quello di descrivere la metodologia con cui si applica
l'algoritmo Metropolis allo studio di alcuni sistemi �sici attraverso il formalismo dei Path
Integrals e di presentare i relativi risultati ottenuti per mezzo di un programma di simulazione
numerica.
In particolar modo la presente sezione si divide in due sottosezioni: la prima riguarda la
descrizione del programma scritto con l'ausilio del software Wolfram Mathematica, di cui si
riporta una traccia schematica del listato in appendice; la seconda tratta dell'applicazione
del codice di programmazione allo studio di tre sistemi �sici.
Preliminarmente si svolge l'analisi su un sistema ben noto in Meccanica Quantistica e
di vasta applicazione in tutti i campi della �sica, l'oscillatore armonico. Successivamente si
esaminano due sistemi caratterizzati da potenziali che modi�cano la Hamiltoniana dell'o-
scillatore armonico con l'aggiunta di termini anarmonici, la doppia buca di potenziale ed il
doppio oscillatore.
Usando le formule riportate in �1.2 e �1.3, si ottengono per i tre sistemi di interesse le
determinazioni dell'autovalore e del modulo quadro della funzione d'onda dello stato fon-
damentale e l'autovalore del primo livello eccitato (speci�catamente la di�erenza energetica
tra il primo livello eccitato e quello fondamentale).
Come già speci�cato nel primo capitolo, il potenziale dell'oscillatore armonico ammette
una soluzione analitica nel formalismo dell'integrale funzionale sui cammini (cfr. �1.6.2).
Pertanto, tale modello �sico si usa quale sistema di prova per testare il buon funzionamento
e l'e�cienza dell'algoritmo numerico implementato nel programma di simulazione. Ciò allo
22
CAPITOLO 3. LA SIMULAZIONE NUMERICA 23
scopo di poterne estendere l'applicazione a sistemi �sici di cui non si conosce una soluzione
analitica (la doppia buca di potenziale ed il doppio oscillatore).
3.1 Descrizione del programma di simulazione numerica
Di seguito si fornisce una descrizione del programma di simulazione comune ai tre sistemi
oggetto di studio, facendo riferimento al listato riportato nell'appendice A.
3.1.1 Simulazione Monte Carlo e scelta dei parametri
I parametri di inizializzazione considerati sono i parametri dell'Hamiltoniana (massa
della particella, frequenza di oscillazione ecc...) ed i parametri reticolari del Path Integral
(estensione temporale dei cammini T1, passo reticolare δt e numero di cammini simulati
Ncammini).
Nota la scala energetica caratteristica del modello in analisi E, la scelta ottimale del
valore del passo reticolare δt è vincolata alla soddisfazione della seguente relazione
δt E << 1. (3.1)
Questa condizione garantisce che gli e�etti di discretizzazione siano trascurabili.
Inoltre, il valore di T (tempo intercorrente tra lo stato iniziale e quello �nale) deve essere
su�cientemente grande in modo da isolare dai livelli eccitati lo stato fondamentale nella
determinazione del rispettivo autovalore e del modulo quadro della funzione d'onda (come
discusso in �1.5):
T E >> 1. (3.2)
Per tutti i sistemi di interesse si sceglie un valore comune del numero dei cammini (o
con�gurazioni) pari aNcammini=10 000. Questa scelta è principalmente dettata dall'esigenza
di collezionare un insieme signi�cativo di dati da usare nell'analisi statistica, al �ne di
ricavare risultati accurati.
Per poter ottenere le determinazioni delle diverse quantità �siche, si considerano solo
cammini chiusi di periodo T, ossia si impongono condizioni al contorno periodiche, in cui
xi = xf = x0 e, come discusso nel primo capitolo, il tempo è trattato come una variabile
1Nel presente capitolo per T si intende ovunque il tempo euclideo.
CAPITOLO 3. LA SIMULAZIONE NUMERICA 24
discreta 0 ≡ t0, t1, ..., tN ≡ T, ove N =T
δt(trasformando, così, il propagatore in un integrale
multidimensionale ad N − 1 dimensioni 〈 x |e−�HT| x 〉= A
∫ ∞−∞
dx1... dxN−1 e−S(x), con A
costante di normalizzazione pari a A =( m
2π δt
)N2
).
Si de�nisce, quindi, l'azione classica euclidea discretizzata S
S =∑n
[m(xn+1 − xn)2
2δt+ δtV
(xn+1 + xn
2
)](3.3)
e si procede con l'implementazione dell'algoritmo Metropolis.
Nella catena di Markov la scelta del cammino iniziale è irrilevante. Il cammino iniziale
può essere indi�erentemente un insieme di punti casuali oppure {xj = 0} per j = 0, ..., N−1
(per l'oscillatore armonico questa scelta corrisponde al cammino che minimizza l'azione
euclidea). A partire dal cammino iniziale si generano tutte le con�gurazioni successive
secondo la distribuzione e−S(x), applicando la procedura dell'algoritmo Metropolis descritta
nel secondo capitolo e che si riporta brevemente di seguito.
Si varia ciascun punto xj del cammino al tempo tn−1 separatamente, aggiungendo una
quantità random δxj estratta secondo una distribuzione uniforme nell'intervallo (-A, A). La
scelta di A regola le prestazioni del programma di simulazione e, in particolare, la probabilità
di accettazione della nuova con�gurazione al tempo tn a partire da quella al tempo tn−1.
Una scelta ottimale è quella di una probabilità di accettazione (accettanza) pari a circa
0.7-0.8.
Dunque, viene calcolata la di�erenza ∆S tra l'azione del nuovo cammino e quella del
cammino invariato. Se ∆S risulta negativa, l'algoritmo Metropolis accetta la variazione
proposta e ripete il procedimento variando gli altri punti del cammino in questione. Al
contrario, se ∆S risulta essere positiva viene accettato il nuovo valore xj con probabilità
e−∆S (a tale scopo si estrae un numero casuale con distribuzione uniforme tra (0,1) e lo
si confronta con e−∆S). L'algoritmo procede iterativamente �no alla generazione di tutti i
cammini [13, 19].
Nella Fig. 3.1 si riporta una rappresentazione gra�ca dei cammini generati dal program-
ma di simulazione.
CAPITOLO 3. LA SIMULAZIONE NUMERICA 25
20 40 60 80 100tempo
-3
-2
-1
1
2
3
spazio
Figura 3.1: Illustrazione gra�ca di un campione dei cammini generati dal programma di
simulazione dell'oscillatore armonico.
Nelle Figg. 3.2 e 3.3 si riporta, inoltre, l'andamento dell'azione in funzione dei cammini
generati.
2000 4000 6000 8000 10 000cammini
20
40
60
80
azione
Figura 3.2: Andamento dell'azione S(x) in funzione dei passi Monte Carlo. Il gra�co è tratto
dal programma di simulazione realizzato per l'oscillatore armonico.
CAPITOLO 3. LA SIMULAZIONE NUMERICA 26
50 100 150 200cammini
10
20
30
40
50
60
azione
Figura 3.3: Dettaglio del gra�co in Fig. 3.2 sui primi 200 cammini generati.
Come si evince dai gra�ci sopra riportati, l'azione raggiunge una stabilizzazione intorno
ad un valore asintotico. Questo procedimento è chiamato termalizzazione e rappresenta il
raggiungimento della distribuzione limite di equilibrio intorno alla quale i cammini oscillano
nell'evoluzione della catena di Markov (cfr. �2.1).
Poiché alla determinazione delle osservabili �siche non devono contribuire i cammini che
non abbiano raggiunto la termalizzazione, si scartano i cammini in questione (circa 50 nel
caso della Fig. 3.3). Inoltre, per non dover tenere in conto l'autocorrelazione tra i dati, è
utile salvare le sole con�gurazioni ad intervalli di M step, dove M è maggiore della larghezza
tipica delle oscillazioni osservate in Fig. 3.3 (M ≥ 20).
3.1.2 Funzione d'onda dello stato fondamentale
Una volta generato un insieme di cammini con distribuzione proporzionale a e−S(x) si
possono calcolare i valori medi di interesse. Nel programma la prima quantità che viene
considerata è il modulo quadro della funzione d'onda dello stato fondamentale del sistema.
Dalla seguente espressione per il propagatore
K(x, x;T) =∑n
|ψn(x)|2e−EnT (3.4)
si osserva che si può calcolare il modulo quadro della funzione d'onda dello stato fondamen-
tale come
|ψ0(x)|2 = limT→∞
K(x, x;T)∫dxK(x, x;T)
=
∫dx0δ(x0 − x)K(x0, x0;T)∫
dx0K(x0, x0;T)
. (3.5)
CAPITOLO 3. LA SIMULAZIONE NUMERICA 27
L'ultima uguaglianza indica immediatamente un metodo e�ciente per calolare |ψ0(x)|2.
Questo è dato, infatti, dal �valor medio� di δ(x0−x). Come discusso nel capitolo precedente
(cfr. eq. (2.3)), questo valore medio è dato semplicemente da
|ψ0(x)|2 =1
Ncammini
∑c
δ(xc0 − x). (3.6)
Per meglio chiarire l'espressione (3.6), si consideri un intervallo ∆x piccolo, allora si ha
che
|ψ0(x)|2∆x =
∫ x+∆x
x
dx′|ψ0(x′)|2 =1
Ncammini
∑c
∫ x+∆x
x
dx′δ(xc0 − x′), (3.7)
dove nell'ultimo passaggio si è inserita la (3.6).
Dunque, per ottenere il modulo quadro della funzione d'onda dello stato fondamentale,
si deve calcolare il numero di cammini il cui punto iniziale x0 cade nell'intervallo (x, x+∆x),
facendo un istogramma dei dati {xc0} ,∀c, normalizzato al numero dei cammini Ncammini e
all'ampiezza ∆x dei bins.
In aggiunta si sviluppa la seguente argomentazione. Dato un cammino
xc = {x0, x1, ..., xj , xj+1, ..., xN ≡ x0},
si possono creare delle copie di xc con estremi xj del tipo {xj , xj+1, ..., x0, x1, ..., xj}, che
essendo composte dagli stessi punti hanno un valore dell'azione pari a quella del cammino xc.
Quindi, calcolando per ciascuna di esse la (3.7), si può aumentare la statistica dei dati, senza
dispendio ulteriore di memoria, e realizzare un istogramma complessivo dal quale ricavare
l'andamento della |ψ0(x)|2 con maggiore livello di accuratezza.
Collezionando i dati relativi a più esecuzioni del programma si ottiene un gra�co del
modulo quadro della funzione d'onda dello stato fondamentale del sistema in analisi in
funzione di x, i cui punti sono la media dei valori delle occorrenze degli istogrammi ricavati
ad ogni esecuzione. Si associa, quindi, a ciascuno dei dati un'incertezza pari aσ√N, dove
σ è la deviazione standard delle occorrenze ed N la popolazione del campione. Analoga
procedura è utilizzata nelle analisi per valutare l'errore statistico su tutte le altre osservabili
considerate.
CAPITOLO 3. LA SIMULAZIONE NUMERICA 28
3.1.3 Livello di energia dello stato fondamentale
Noto il modulo quadro della funzione d'onda dello stato fondamentale è possibile ottenere
una determinazione del corrispondente livello di energia E0.
Poiché E0 = 〈E0|H|E0〉 = 〈E0|K|E0〉 + 〈E0|V|E0〉, dove K e V sono rispettivamente gli
operatori di energia cinetica e potenziale, si ha:
〈0|K|0〉 = − 1
2m
∫ ∞−∞
dx ψ∗0(x)∂2
∂x2ψ0(x) =
1
2m
∫ ∞−∞
dx
(∂ψ∗0(x)
∂x
)(∂ψ0(x)
∂x
)〈0|V|0〉 =
∫ ∞−∞
dx |ψ0(x)|2 V(x), (3.8)
dove nell'ultimo passaggio della prima equazione si è integrato per parti.
Stimando numericamente la derivata prima nella (3.8) come
ψ′0(x) ≈ ψ0(x+ ∆x)− ψ0(x−∆x)
2∆x,
per ∆x→ 0, e calcolando con un'approssimazione numerica discreta gli integrali nella (3.8)
con estremi nei punti di annullamento della funzione d'onda, si ricava l'autovalore dello stato
fondamentale E0.
3.1.4 Primo livello eccitato
In�ne, si descrive di seguito la procedura utilizzata per ottenere una determinazione
della di�erenza energetica ∆E tra il primo livello eccitato e quello fondamentale (l'approccio
descritto può essere esteso anche alla ricerca degli autovalori degli stati eccitati superiori al
primo).
Il metodo consiste nel valutare il valor medio del prodotto di due operatori calcolati a
tempi diversi, intermedi tra ti e tf (cfr. �1.3). Allo scopo di calcolare ∆E, si usa il prodotto
di due operatori di posizione:
G(t2 − t1) := 〈x(t2)x(t1)〉 =
∫Dx(t)x(t2)x(t1)e−S(x)∫
Dx(t)e−S(x)≈ 1
Ncammini
∑c
xct2xct1 , (3.9)
dove si integra su tutti i cammini chiusi comprendendo gli estremi.
Si veri�ca che la (3.9) fornisce informazioni sul primo stato eccitato. A tale scopo si
calcolano separatamente il numeratore e il denominatore del secondo termine nella (3.9).
CAPITOLO 3. LA SIMULAZIONE NUMERICA 29
Per quanto riguarda il denominatore, richiamando la (1.19) si ha:
∫Dx(t)e−S(x) =
∫dx0〈x0|e−
�H(x)T|x0〉 =
∫dx0
∑n
e−EnT|〈x0|En〉|2 =∑n
e−EnT. (3.10)
Il numeratore, invece, si sviluppa come nella (1.28):
∫Dx(t)x(t2)x(t1)e−S(x) =
∑n,n′
|〈En′ |x|En〉|2e−EnTe−(En′−En)(t2−t1). (3.11)
Nelle (3.10) e (3.11) per T >> t2 − t1 >> 0 lo stato fondamentale domina sulle somme
e, se il sistema considerato conserva la parità, l'operatore di posizione x cambia la parità
degli stati così da rendere non nulli nella (3.11) i soli termini che coinvolgono il primo livello
eccitato (o livelli più alti). Dunque la G(t2 − t1) diventa per T>> 0
G(t2 − t1)→ | < E1| x |E0 > |2e−(E1−E0)(t2−t1). (3.12)
Studiando l'andamento temporale della G(t2 − t1) si possono, dunque, determinare
secondo la (3.12) la di�erenza degli autovalori ∆E = E1 − E0 e l'elemento di matrice
|〈E1|x|E0〉|2.
Poiché la G(t2 − t1) è dipendente dal solo intervallo temporale (t2 − t1), con riferimento
all'ultimo termine della (3.9) è possibile sommare su tutti i punti dei cammini distanziati di
(t2 − t1).
3.2 Applicazioni a sistemi �sici
Nella presente sezione si riportano i risultati ottenuti nella simulazione dei diversi sistemi
�sici di interesse: l'oscillatore armonico, la doppia buca di potenziale ed il doppio oscillatore.
Inoltre, si e�etua un confronto, quando consentito, con i risulatati noti da diversi approcci.
3.2.1 L'oscillatore armonico
Il sistema dell'oscillatore armonico è descritto dalla seguente Hamiltoniana
H =p2
2m+
1
2mω2x2.
La scala energetica propria del sistema è de�nita evidentemente dalla pulsazione ω.
Pertanto, facendo riferimento alle (3.1) e (3.2), la scelta dei parametri di inizializzazione
che si e�etua è la seguente: m = 1;ω =1
2;T = 100; δt = 1.
CAPITOLO 3. LA SIMULAZIONE NUMERICA 30
Autovalore dell'energia dello stato fondamentale
In modo alternativo a quanto descritto nella precedente sezione (cfr. �3.1.3), per ricava-
re una determinazione dell'autovalore dello stato fondamentale E0 nel caso dell'oscillatore
armonico è possibile sfruttare il Teorema del Viriale al potenziale dell'oscillatore armonico.
Infatti, per un potenziale che è una funzione omogenea di grado k nelle coordinate del
tipo V(q) = αqk, si ha:
2〈En|K|En〉 = k〈En|V|En〉. (3.13)
Applicando il Teorema del Viriale con k = 2 all'espressione E0 = 〈E0|K|E0〉+〈E0|V|E0〉,
si ottiene
E0 = 2〈E0|V|E0〉 = mω2〈E0|x2|E0〉 = mω2 1
Ncammini
∑c
(xc)2. (3.14)
Dai valori medi dei quadrati delle coordinate dei cammini e collezionando i risultati
ottenuti da 60 esecuzioni del programma, si ottiene
E0 = 0.24994± 0.00046,
in accordo con quanto atteso, E0 =ω
2= 0.25.
Modulo quadro della funzione d'onda dello stato fondamentale
-4 -2 2 4x
0.1
0.2
0.3
0.4
ÈΨ0HxL 2
Figura 3.4: Confronto del risultato ottenuto per il modulo quadro della funzione d'on-
da dello stato fondamentale dell'oscillatore armonico (punti blu) con l'espressione nota
analiticamente (curva rossa).
CAPITOLO 3. LA SIMULAZIONE NUMERICA 31
In Fig. 3.4 si riporta il gra�co del modulo quadro della funzione d'onda dello stato
fondamentale. I punti blu rappresentano il risultato ottenuto nella simulazione per 60 run.
Come si può ben osservare, le barre d'incertezza sono molto piccole, al livello di 10−4. La
curva rossa sovrapposta riproduce l'espressione ben nota della funzione d'onda [18]
|ψ0(x)|2 =(mωπ
) 12
e−mωx2
.
Si evidenzia, dalla Fig. 3.4, l'ottimo accordo tra i valori restituiti dal programma di
simulazione e l'andamento aspettato.
Di�erenza energetica tra il primo stato eccitato e lo stato fondamentale
In Fig. 3.5 si riporta il gra�co di
∆E(t2 − t1) =1
δtln
[G(t2 − t1)
G(t2 − t1 + δt)
](3.15)
in funzione di t2 − t1, che secondo la (3.12) rappresenta la di�erenza di energia E1 − E0.
Il risultato è ottenuto collezionando i dati relativi a 14 esecuzioni del programma.
0 1 2 3 4 5 6 7t2-t10.40
0.45
0.50
0.55
0.60E1-E0
Figura 3.5: Di�erenza di energia tra il primo livello eccitato e quello fondamentale dell'o-
scillatore armonico ottenuto mediante l'eq. (3.15). La linea in rosso rappresenta il valore
noto ∆E = ω.
Il valore medio e la corrispondente incertezza ottenuti per ∆E sono pari a
∆E = 0.514± 0.015,
CAPITOLO 3. LA SIMULAZIONE NUMERICA 32
compatibile con il valore atteso ∆E = ω = 0.5.
In�ne, nel caso dell'oscillatore armonico, si riporta anche una stima del modulo quadro
dell'elemento di matrice 〈E1|x|E0〉
|〈E1|x|E0〉|2 = 0.998± 0.042,
che risulta in accordo con il valore noto |〈E1|x|E0〉|2 =1
2mω= 1.
3.2.2 La doppia buca di potenziale
In questa sezione si presentano i risultati ottenuti per la doppia buca di potenziale.
L'Hamiltoniana del sistema è
H =p2
2m+ λ
(x2 − µ2
2λ
)2
. (3.16)
I parametri di inizializzazione ottimali scelti sono:
m =1
2; µ = 0.2; λ = 1.6× 10−3; T=100; δt = 1.
In Fig. 3.6 si riporta l'andamento del potenziale a doppia buca V(x) = λ
(x2 − µ2
2λ
)2
,
con µ e λ di cui sopra.
-6 -4 -2 2 4 6x
0.1
0.2
0.3
0.4
0.5
0.6VHxL
Figura 3.6: Andamento del potenziale a doppia buca V(x) = λ
(x2 − µ2
2λ
)2
, con µ = 0.2 e
λ = 1.6× 10−3.
CAPITOLO 3. LA SIMULAZIONE NUMERICA 33
Come si evince in Fig. 3.6, al variare dei parametri µ e λ il potenziale presenta una di-
stanza tra i minimi, posti in corrispondenza delle due buche, pari a µ
√2
λ≈ 7.07 e un'altezza
della barriera tra esse pari aµ4
4λ= 0.25.
Lo stato fondamentale del sistema è caratterizzato da livelli di energia in corrispondenza
delle due buche che sono degeneri nel limite di in�nita distanza tra i minimi del potenziale.
Man mano che la distanza tra le buche diminuisce il sistema risente dell'e�etto Tunnel, che
provoca la rimozione della degenerazione dei livelli energetici con conseguente loro separa-
zione in un livello fondamentale di energia minore rispetto allo stato degenere e in un primo
livello eccitato di più alta energia.
Nel presente lavoro, lo studio del sistema a doppia buca di potenziale è coadiuvato da
un vasto repertorio bibliogra�co. Nello speci�co si fa esplicito riferimento principalmente
all'articolo dei �sici Banerjee K. e Bhatnagar S. P. [1].
In [1], partendo da un'Hamiltoniana generica del tipo H(k, λ) = p2 − kx2 + λx4 e risca-
lando opportunamente gli operatori di posizione e impulso x→ k−14x e p→ k
14 p, si analizza
l'Hamiltoniana ridotta H(1, λ) = p2 − x2 + λx4. Quindi, gli autovalori En(k, λ) di H(k, λ)
sono legati a quelli dell'Hamiltoniana ridotta dalla seguente relazione:
En(k, λ) = k12En(1, k−
32λ) (3.17)
Confrontando la (3.16) con la H(k, λ) si ricava immediatamente che k = µ2.
Modulo quadro della funzione d'onda e autovalore dell'energia dello stato fon-
damentale
In Fig. 3.7 si riporta il gra�co che mostra il modulo quadro della funzione d'onda dello
stato fondamentale. Per migliorare l'accuratezza, la funzione è previamente simmetrizzata,
in quanto il potenziale è una funzione pari.
CAPITOLO 3. LA SIMULAZIONE NUMERICA 34
-5 5x
0.02
0.04
0.06
0.08
0.10
0.12
ÈΨ0HxL 2
Figura 3.7: Modulo quadro della funzione d'onda dello stato fondamentale della doppia buca
di potenziale.
Come atteso ben si evidenziano in Fig. 3.7 due picchi distinti della funzione.
Da un insieme di dati provenienti da 10 run del programma, ciascuno dei quali genera
10 000 cammini, si ottiene il valore di E0, come descritto dettagliatamente in �3.1:
E0 = 0.1874± 0.0023.
Confontando con la determinazione data in [1], E0 ≈ 0.1883, si evince che il risultato
ottenuto è compatibile entro una deviazione standard con il valore in [1].
Di�erenza energetica tra il primo stato eccitato e lo stato fondamentale
In Fig. 3.8 si riporta il gra�co di eq. (3.15) vs. t2 − t1.
CAPITOLO 3. LA SIMULAZIONE NUMERICA 35
1 2 3 4 5 6 7t2-t1
0.11
0.12
0.13
0.14
E1-E0
Figura 3.8: Di�erenza di energia tra il primo livello eccitato e quello fondamentale della
doppia buca di potenziale. La linea disegnata in rosso rappresenta il valore di ∆E ottenuto
in ref. [1].
Il risultato di ∆E ricavato è pari a
∆E = 0.1190± 0.0011,
dato compatibile con quello riportato in [1], ∆E ≈ 0.1188.
Per concludere si riportano anche alcuni riferimenti bibliogra�ci di approfondimento,
che trattano diversi metodi di calcolo numerico per ricavare determinazioni degli autovalori
della doppia buca di potenziale: per l'applicazione del metodo variazionale si veda [23]; per
il metodo WKB si consultino [2, 21]; per un originale algoritmo numerico di risoluzione
dell'equazione di Schrödinger si rimanda a [22] ed in�ne per approfondire l'applicazione dei
Path Integrals ed impostare un calcolo del propagatore attraverso l'espansione intorno a
soluzioni di pseudo-particelle si veda [8].
3.2.3 Il doppio oscillatore
Il terzo sistema analizzato per questo lavoro di tesi è il doppio oscillatore, la cui Hamil-
toniana è
H =p2
2m+mω2
2(|x| − x0)2.
La scelta dei parametri di inizializzazione è la seguente: m = 1; ω =1
2; x0 = 2; T=100;
δt = 1.
CAPITOLO 3. LA SIMULAZIONE NUMERICA 36
In Fig. 3.9 si riporta l'andamento del potenziale del sistema studiato.
-4 -2 2 4x
0.2
0.4
0.6
0.8
1.0
VHxL
Figura 3.9: Andamento del potenziale del doppio oscillatore V(x) =mω2
2(|x| − x0)2 con
m = 1; ω = 0.5 e x0 = 2.
Al variare dei parametri di V(x), la distanza tra i due minimi è pari a 2x0 (In Fig. 3.9
2x0 = 4) e l'altezza della barriera tra le due buche è pari amω2x2
0
2(In Fig. 3.9
mω2x20
2= 0.5).
Modulo quadro della funzione d'onda e autovalore dello stato fondamentale
In Fig. 3.10 si riporta il modulo quadro della funzione d'onda dello stato fondamentale.
Anche in questo caso, la funzione è previamente simmetrizzata, in quanto il potenziale è una
funzione pari.
-6 -4 -2 2 4 6x
0.05
0.10
0.15
ÈΨ0HxL 2
Figura 3.10: Modulo quadro della funzione d'onda dello stato fondamentale del doppio
oscillatore.
CAPITOLO 3. LA SIMULAZIONE NUMERICA 37
Seguendo il suggerimento riportato nel Landau-Lif²its (ref. [11]), è possibile approssi-
mare la funzione d'onda dello stato fondamentale del sistema ψ0(x) con la combinazione
simmetrica delle funzioni d'onda esatte dello stato fondamentale dell'oscillatore armonico
centrate nelle due buche di potenziale, ottenendo la |ψLL0 (x)|2 così de�nita:
|ψLL0 (x)|2 =
[1√2
(ψosc0 (x) + ψosc0 (−x))
]2
=
=
{1√2
[(mωπ
) 14
e−mω(x−x0)2
2 +(mωπ
) 14
e−mω(−x−x0)2
2
]}2
.
In Fig. 3.11 si sovrappone al risultato ottenuto (punti blu) riportato in Fig. 3.10 la
|ψLL0 (x)|2 correttamente rinormalizzata (curva rossa).
-6 -4 -2 2 4 6x
0.05
0.10
0.15
0.20
ÈΨ0HxL 2
Figura 3.11: Confronto del risultato riportato in Fig. 3.10 con la funzione approssimata del
Landau-Lif²its.
Si nota che la |ψLL0 (x)|2 proposta in [11] è una buona approssimazione della funzione
ricavata nella simulazione.
Dai dati provenienti da 16 run del programma si ottiene:
E0 = 0.1928± 0.0011.
Di�erenza energetica tra il primo stato eccitato e lo stato fondamentale
In Fig. 3.12 si riporta il gra�co eq. (3.15) vs. t2 − t1.
CAPITOLO 3. LA SIMULAZIONE NUMERICA 38
1 2 3 4 5 6 7t2-t1
0.09
0.10
0.11
0.12
E1-E0
Figura 3.12: Di�erenza di energia tra il primo livello eccitato e quello fondamentale del
doppio oscillatore. La linea disegnata in rosso rappresenta il valore di ∆E ottenuto in ref.
[11].
Il risultato di ∆E ricavato è pari a
∆E = 0.1005± 0.0017,
dato compatibile con la determinazione ∆E ≈ 0.1, ottenuta da [11], come segue:
∆ELL =2
mψosc0 (0)[ψosc0 (0)]′.
Conclusione
Al termine del presente lavoro di tesi, è possibile trarre alcune conclusioni.
Dall' analisi svolta nel terzo capitolo si evince il corretto funzionamento del programma
di simulazione numerica realizzato per i tre sistemi oggetto di studio: l'oscillatore armonico,
la doppia buca di potenziale ed il doppio oscillatore.
In particolare, nel presente lavoro, si sono ottenuti risultati sugli autovalori e sulle fun-
zioni d'onda di sistemi di notevole interesse, che attraggono signi�cativa attenzione da par-
te della Comunità Scienti�ca per le di�coltà che presentano nella loro soluzione e per le
applicazioni cui si prestano.
Da un'attenta e critica osservazione dei risultati prodotti ben emerge che il programma
implementato fornisce approssimazioni numeriche accurate e fedeli all'atteso, ad ulterio-
re conferma del successo dell'applicazione del metodo dei Path Integrals nello studio dei
problemi di Meccanica Quantistica non risolubili analiticamente.
L'approccio degli integrali funzionali sui cammini, caratterizzato da un'alta e�cienza e
versatilità nell'implemetazione a computer, è tale da potersi a�ermare quale metodo originale
e alternativo per la ricerca di informazioni numeriche su disparati modelli �sici.
39
Appendice A
Codice dei programmi in Wolfram
Mathematica
Nella presente appendice si riporta un esempio di codice del programma realizzato con
l'ausilio del software Wolfram Mathematica per lo studio dell'oscillatore armonico. Il listato
in blu rappresenta le variazioni apportate per i programmi della doppia buca di potenziale
e del doppio oscillatore.
Parametri di inizializzazione
m = 1;m = 1;m = 1;
ω = 0.5;ω = 0.5;ω = 0.5;
T = 100;T = 100;T = 100;
δ = 1;δ = 1;δ = 1;
Nt = T/δ;Nt = T/δ;Nt = T/δ;
Ncammini = 10000;Ncammini = 10000;Ncammini = 10000;
A = 1.0;A = 1.0;A = 1.0;
�Markov Chain Monte Carlo�: algoritmo Metropolis
c = m2δ ;c = m2δ ;c = m2δ ;
g = 12mω
2δ;g = 12mω
2δ;g = 12mω
2δ;
40
APPENDICE A. CODICE DEI PROGRAMMI IN WOLFRAM MATHEMATICA 41
(*(*(*
V [kk_, zz_, j_, s_]:=λδ(
((kk[[j]] + zz[[s]])/2)2 − µ2
2λ
)2
; doppia buca di potenzialeV [kk_, zz_, j_, s_]:=λδ(
((kk[[j]] + zz[[s]])/2)2 − µ2
2λ
)2
; doppia buca di potenzialeV [kk_, zz_, j_, s_]:=λδ(
((kk[[j]] + zz[[s]])/2)2 − µ2
2λ
)2
; doppia buca di potenziale
V [kk_, zz_, j_, s_]:=mω2δ2 (Abs[(kk[[j]] + zz[[s]])/2]− x0)2; doppio oscillatoreV [kk_, zz_, j_, s_]:=mω2δ2 (Abs[(kk[[j]] + zz[[s]])/2]− x0)2; doppio oscillatoreV [kk_, zz_, j_, s_]:=mω2δ2 (Abs[(kk[[j]] + zz[[s]])/2]− x0)2; doppio oscillatore
*)*)*)
Azione[w_]:=Sum[c(x[[w, i+ 1]]− x[[w, i]])2 + g((x[[w, i+ 1]] + x[[w, i]])/2)2, {i,Nt− 1}
];Azione[w_]:=Sum
[c(x[[w, i+ 1]]− x[[w, i]])2 + g((x[[w, i+ 1]] + x[[w, i]])/2)2, {i,Nt− 1}
];Azione[w_]:=Sum
[c(x[[w, i+ 1]]− x[[w, i]])2 + g((x[[w, i+ 1]] + x[[w, i]])/2)2, {i,Nt− 1}
];
(* funzioni Azione per la doppia buca di potenziale e per il doppio oscillatore(* funzioni Azione per la doppia buca di potenziale e per il doppio oscillatore(* funzioni Azione per la doppia buca di potenziale e per il doppio oscillatore
Azione[w_]:=Sum
[c(x[[w, i+ 1]]− x[[w, i]])2 + λδ
(((x[[w, i+ 1]] + x[[w, i]])/2)2 − µ2
2λ
)2
, {i,Nt− 1}]
;Azione[w_]:=Sum
[c(x[[w, i+ 1]]− x[[w, i]])2 + λδ
(((x[[w, i+ 1]] + x[[w, i]])/2)2 − µ2
2λ
)2
, {i,Nt− 1}]
;Azione[w_]:=Sum
[c(x[[w, i+ 1]]− x[[w, i]])2 + λδ
(((x[[w, i+ 1]] + x[[w, i]])/2)2 − µ2
2λ
)2
, {i,Nt− 1}]
;
Azione[w_]:=Sum[c(x[[w, i+ 1]]− x[[w, i]])2 + mω2δ
2 (Abs[(x[[w, i+ 1]] + x[[w, i]])/2]− x0)2, {i,Nt− 1}]
;Azione[w_]:=Sum[c(x[[w, i+ 1]]− x[[w, i]])2 + mω2δ
2 (Abs[(x[[w, i+ 1]] + x[[w, i]])/2]− x0)2, {i,Nt− 1}]
;Azione[w_]:=Sum[c(x[[w, i+ 1]]− x[[w, i]])2 + mω2δ
2 (Abs[(x[[w, i+ 1]] + x[[w, i]])/2]− x0)2, {i,Nt− 1}]
;
*)*)*)
∆S[i_, im_, ip_]:=racc((
2c+ g2
)(racc + 2xnew[[i]]) +
(g2 − 2c
)(xnew[[im]] + xnew[[ip]])
);∆S[i_, im_, ip_]:=racc
((2c+ g
2
)(racc + 2xnew[[i]]) +
(g2 − 2c
)(xnew[[im]] + xnew[[ip]])
);∆S[i_, im_, ip_]:=racc
((2c+ g
2
)(racc + 2xnew[[i]]) +
(g2 − 2c
)(xnew[[im]] + xnew[[ip]])
);
(* funzione ∆S per la doppia buca di potenziale e per il doppio oscillatore(* funzione ∆S per la doppia buca di potenziale e per il doppio oscillatore(* funzione ∆S per la doppia buca di potenziale e per il doppio oscillatore
∆S[xx_, yy_, i_, im_, ip_]:=2c((xx[[i]])2 − (yy[[i]])2 + (yy[[i]]− xx[[i]])(yy[[im]] + yy[[ip]])
)+∆S[xx_, yy_, i_, im_, ip_]:=2c
((xx[[i]])2 − (yy[[i]])2 + (yy[[i]]− xx[[i]])(yy[[im]] + yy[[ip]])
)+∆S[xx_, yy_, i_, im_, ip_]:=2c
((xx[[i]])2 − (yy[[i]])2 + (yy[[i]]− xx[[i]])(yy[[im]] + yy[[ip]])
)+
V [xx, yy, i, im] + V [yy, xx, ip, i]− V [yy, yy, i, im]− V [yy, yy, ip, i];V [xx, yy, i, im] + V [yy, xx, ip, i]− V [yy, yy, i, im]− V [yy, yy, ip, i];V [xx, yy, i, im] + V [yy, xx, ip, i]− V [yy, yy, i, im]− V [yy, yy, ip, i];
*)*)*)
x = Table[0, {c,Ncammini}, {i,Nt}];x = Table[0, {c,Ncammini}, {i,Nt}];x = Table[0, {c,Ncammini}, {i,Nt}];
x[[1]] = Table[0, {Nt}];x[[1]] = Table[0, {Nt}];x[[1]] = Table[0, {Nt}]; (* oppure si crea un cammino arbitrario con condizioni periodiche al contorno *)(* oppure si crea un cammino arbitrario con condizioni periodiche al contorno *)(* oppure si crea un cammino arbitrario con condizioni periodiche al contorno *)
S = {Azione[1]};S = {Azione[1]};S = {Azione[1]};
itot = 0;itot = 0;itot = 0;
iacc = 0;iacc = 0;iacc = 0;
Do[Do[Do[
xnew = x[[ic]];xnew = x[[ic]];xnew = x[[ic]];
Do[itot = itot + 1;Do[itot = itot + 1;Do[itot = itot + 1;
xtest = xnew;xtest = xnew;xtest = xnew;
racc = RandomReal[{−A,A}];racc = RandomReal[{−A,A}];racc = RandomReal[{−A,A}];
xtest[[it]] = xnew[[it]] + racc;xtest[[it]] = xnew[[it]] + racc;xtest[[it]] = xnew[[it]] + racc;
xtest[[Nt]] = xtest[[1]];xtest[[Nt]] = xtest[[1]];xtest[[Nt]] = xtest[[1]];
APPENDICE A. CODICE DEI PROGRAMMI IN WOLFRAM MATHEMATICA 42
itm = it− 1;itm = it− 1;itm = it− 1;
itp = it + 1;itp = it + 1;itp = it + 1;
If[it == 1, itm = Nt− 1];If[it == 1, itm = Nt− 1];If[it == 1, itm = Nt− 1];
test = Exp[−∆S[it, itm, itp]];test = Exp[−∆S[it, itm, itp]];test = Exp[−∆S[it, itm, itp]];
rr = RandomReal[{0, 1}];rr = RandomReal[{0, 1}];rr = RandomReal[{0, 1}];
If[rr < test, xnew[[it]] = xtest[[it]]; iacc = iacc + 1];If[rr < test, xnew[[it]] = xtest[[it]]; iacc = iacc + 1];If[rr < test, xnew[[it]] = xtest[[it]]; iacc = iacc + 1];
xnew[[Nt]] = xnew[[1]], {it, 1,Nt− 1}];xnew[[Nt]] = xnew[[1]], {it, 1,Nt− 1}];xnew[[Nt]] = xnew[[1]], {it, 1,Nt− 1}];
x[[ic + 1]] = xnew;x[[ic + 1]] = xnew;x[[ic + 1]] = xnew;
AppendTo[S,Azione[ic + 1]],AppendTo[S,Azione[ic + 1]],AppendTo[S,Azione[ic + 1]],
{ic, 1,Ncammini− 1}];{ic, 1,Ncammini− 1}];{ic, 1,Ncammini− 1}];
Print[�Accettanza = �, N [iacc/itot, 2]];Print[�Accettanza = �, N [iacc/itot, 2]];Print[�Accettanza = �, N [iacc/itot, 2]];
Print[�Numero di passi Montecarlo = �, itot];Print[�Numero di passi Montecarlo = �, itot];Print[�Numero di passi Montecarlo = �, itot];
ListPlot[S, Joined→ True,PlotLabel->Style[�Andamento dell'azione� , �Title� , 14],ListPlot[S, Joined→ True,PlotLabel->Style[�Andamento dell'azione� , �Title� , 14],ListPlot[S, Joined→ True,PlotLabel->Style[�Andamento dell'azione� , �Title� , 14],
AxesLabel→ {�cammini�, �azione�}]AxesLabel→ {�cammini�, �azione�}]AxesLabel→ {�cammini�, �azione�}]
2000 4000 6000 8000 10 000cammini
20
40
60
80
azione
d = 50;d = 50;d = 50;
gap = 20;gap = 20;gap = 20;
Snew = Drop[S, d];Snew = Drop[S, d];Snew = Drop[S, d];
xxnew = Drop[x, d];xxnew = Drop[x, d];xxnew = Drop[x, d];
Sdef = {};Sdef = {};Sdef = {};
xxdef = {};xxdef = {};xxdef = {};
Do[Do[Do[
If[i/gap− Floor[i/gap] == 0,If[i/gap− Floor[i/gap] == 0,If[i/gap− Floor[i/gap] == 0,
AppendTo[Sdef, Snew[[i]]];AppendTo[Sdef,Snew[[i]]];AppendTo[Sdef, Snew[[i]]];
APPENDICE A. CODICE DEI PROGRAMMI IN WOLFRAM MATHEMATICA 43
AppendTo[xxdef, xxnew[[i]]]],AppendTo[xxdef, xxnew[[i]]]],AppendTo[xxdef, xxnew[[i]]]],
{i, 1,Ncammini− d}]{i, 1,Ncammini− d}]{i, 1,Ncammini− d}]
Autovalore dell'energia dello stato fondamentale
Print[�E0 = � ,Print[�E0 = � ,Print[�E0 = � ,
mω2Mean
[Sum[(xxdef[[w]])2,{w,1,(Ncammini−d)/gap}]
(Ncammini−d)/gap
]];mω2Mean
[Sum[(xxdef[[w]])2,{w,1,(Ncammini−d)/gap}]
(Ncammini−d)/gap
]];mω2Mean
[Sum[(xxdef[[w]])2,{w,1,(Ncammini−d)/gap}]
(Ncammini−d)/gap
]];
Print[�Valore atteso dell'autovalore dell'energia dello stato fondamentale = �, N
[(12ω + 1
Exp[ωT ]−1
[�Valore atteso dell'autovalore dell'energia dello stato fondamentale = �, N
[(12ω + 1
Exp[ωT ]−1
[�Valore atteso dell'autovalore dell'energia dello stato fondamentale = �, N
[(12ω + 1
Exp[ωT ]−1
)]];
E0 = 0.24973
Valore atteso dell'autovalotre dell'energia dello stato fondamentale = 0.25
Modulo quadro della funzione d'onda dello stato fonda-
mentale
∆x = 0.1;∆x = 0.1;∆x = 0.1;
dati = Table[0, {i,Nt− 1}];dati = Table[0, {i,Nt− 1}];dati = Table[0, {i,Nt− 1}];
normal[bins_, counts_]:=counts/∆x/((Ncammini− d)/gap);normal[bins_, counts_]:=counts/∆x/((Ncammini− d)/gap);normal[bins_, counts_]:=counts/∆x/((Ncammini− d)/gap);
Do[dati[[it]] = Table[xxdef[[c, it]], {c, (Ncammini− d)/gap}],Do[dati[[it]] = Table[xxdef[[c, it]], {c, (Ncammini− d)/gap}],Do[dati[[it]] = Table[xxdef[[c, it]], {c, (Ncammini− d)/gap}],
{it, 1,Nt− 1}];{it, 1,Nt− 1}];{it, 1,Nt− 1}];
media = Flatten[dati];media = Flatten[dati];media = Flatten[dati];
normaltot[bins_, counts_]:=counts/∆x/((Ncammini− d)/gap)/(Nt− 1);normaltot[bins_, counts_]:=counts/∆x/((Ncammini− d)/gap)/(Nt− 1);normaltot[bins_, counts_]:=counts/∆x/((Ncammini− d)/gap)/(Nt− 1);
Histogram[media, {∆x}, normaltot,PlotLabel->Style
[sovrapposizione delle |ψ0(x)|2, �Title� , 14
],Histogram
[media, {∆x}, normaltot,PlotLabel->Style
[sovrapposizione delle |ψ0(x)|2, �Title� , 14
],Histogram
[media, {∆x}, normaltot,PlotLabel->Style
[sovrapposizione delle |ψ0(x)|2, �Title� , 14
],
AxesLabel→{x, |ψ0(x)|2
}]AxesLabel→
{x, |ψ0(x)|2
}]AxesLabel→
{x, |ψ0(x)|2
}]Print[�Media = �,Mean[media]];Print[�Media = �,Mean[media]];Print[�Media = �,Mean[media]];
Print[�Deviazione Standard = �, StandardDeviation[media]];Print[�Deviazione Standard = �, StandardDeviation[media]];Print[�Deviazione Standard = �,StandardDeviation[media]];
(* Si importano i dati media relativi a più esecuzioni del programma *)(* Si importano i dati media relativi a più esecuzioni del programma *)(* Si importano i dati media relativi a più esecuzioni del programma *)
Occ = Import[�occ.dat�];Occ = Import[�occ.dat�];Occ = Import[�occ.dat�];
Bbins = Import[�bins.dat� ];Bbins = Import[�bins.dat� ];Bbins = Import[�bins.dat� ];
input = Union[Flatten[Bbins]];input = Union[Flatten[Bbins]];input = Union[Flatten[Bbins]];
len = Length[Bbins];len = Length[Bbins];len = Length[Bbins];
Len = Length[input];Len = Length[input];Len = Length[input];
APPENDICE A. CODICE DEI PROGRAMMI IN WOLFRAM MATHEMATICA 44
istotot = {};istotot = {};istotot = {};
Do[Do[Do[
isto = {};isto = {};isto = {};
Do[Do[Do[
Do[Do[Do[
If[Bbins[[i, j]] == input[[k]],If[Bbins[[i, j]] == input[[k]],If[Bbins[[i, j]] == input[[k]],
AppendTo[isto,Occ[[i, j]]]],AppendTo[isto,Occ[[i, j]]]],AppendTo[isto,Occ[[i, j]]]],
{j, 1,Length[Bbins[[i]]]− 1}{j, 1,Length[Bbins[[i]]]− 1}{j, 1,Length[Bbins[[i]]]− 1}
],],],
{i, 1, len}{i, 1, len}{i, 1, len}
];];];
AppendTo[istotot, isto],AppendTo[istotot, isto],AppendTo[istotot, isto],
{k, 1,Len− 1}];{k, 1,Len− 1}];{k, 1,Len− 1}];
medie = {};medie = {};medie = {};
inc = {};inc = {};inc = {};
meanbars = {};meanbars = {};meanbars = {};
xaxisbincentre = Table[input[[i]] + ∆x/2, {i, 1,Len− 1}];xaxisbincentre = Table[input[[i]] + ∆x/2, {i, 1,Len− 1}];xaxisbincentre = Table[input[[i]] + ∆x/2, {i, 1,Len− 1}];
Do[Do[Do[
AppendTo[medie,Mean[istotot[[i]]]];AppendTo[medie,Mean[istotot[[i]]]];AppendTo[medie,Mean[istotot[[i]]]];
If[Length[istotot[[i]]] > 1,If[Length[istotot[[i]]] > 1,If[Length[istotot[[i]]] > 1,
AppendTo
[inc, StandardDeviation[istotot[[i]]]√
Length[istotot[[i]]]
];AppendTo
[inc, StandardDeviation[istotot[[i]]]√
Length[istotot[[i]]]
];AppendTo
[inc, StandardDeviation[istotot[[i]]]√
Length[istotot[[i]]]
];
AppendTo[meanbars, {xaxisbincentre[[i]],Mean[istotot[[i]]]}]],AppendTo[meanbars, {xaxisbincentre[[i]],Mean[istotot[[i]]]}]],AppendTo[meanbars, {xaxisbincentre[[i]],Mean[istotot[[i]]]}]],
{i, 1,Length[istotot]}];{i, 1,Length[istotot]}];{i, 1,Length[istotot]}];
Needs[�ErrorBarPlots�]Needs[�ErrorBarPlots�]Needs[�ErrorBarPlots�]
modtableplot = Table[{xaxisbincentre[[i]],medie[[i]]}, {i, 1,Length[medie]}];modtableplot = Table[{xaxisbincentre[[i]],medie[[i]]}, {i, 1,Length[medie]}];modtableplot = Table[{xaxisbincentre[[i]],medie[[i]]}, {i, 1,Length[medie]}];
tablebars = Table[{meanbars[[i]],ErrorBar[inc[[i]]]}, {i, 1,Length[inc]}];tablebars = Table[{meanbars[[i]],ErrorBar[inc[[i]]]}, {i, 1,Length[inc]}];tablebars = Table[{meanbars[[i]],ErrorBar[inc[[i]]]}, {i, 1,Length[inc]}];
modpsi0teo = Plot[(mωπ
)1/2Exp
[−mωx2
], {x,−5, 5},PlotStyle→ Red
];modpsi0teo = Plot
[(mωπ
)1/2Exp
[−mωx2
], {x,−5, 5},PlotStyle→ Red
];modpsi0teo = Plot
[(mωπ
)1/2Exp
[−mωx2
], {x,−5, 5},PlotStyle→ Red
];
plotbars = ErrorListPlot[tablebars,plotbars = ErrorListPlot[tablebars,plotbars = ErrorListPlot[tablebars,
PlotLabel->Style[|ψ0(x)|2 con barre delle incertezze , �Title� , 14
],PlotLabel->Style
[|ψ0(x)|2 con barre delle incertezze , �Title� , 14
],PlotLabel->Style
[|ψ0(x)|2 con barre delle incertezze , �Title� , 14
],
AxesLabel→{x, |ψ0(x)|2
}];AxesLabel→
{x, |ψ0(x)|2
}];AxesLabel→
{x, |ψ0(x)|2
}];
Show[plotbars,modpsi0teo,PlotLabel->Style
[Confronto con |ψ0
teo(x)|2 , �Title� , 14],Show
[plotbars,modpsi0teo,PlotLabel->Style
[Confronto con |ψ0
teo(x)|2 , �Title� , 14],Show
[plotbars,modpsi0teo,PlotLabel->Style
[Confronto con |ψ0
teo(x)|2 , �Title� , 14],
AxesLabel→{x, |ψ0(x)|2
}]AxesLabel→
{x, |ψ0(x)|2
}]AxesLabel→
{x, |ψ0(x)|2
}]
APPENDICE A. CODICE DEI PROGRAMMI IN WOLFRAM MATHEMATICA 45
-4 -2 2 4x
0.1
0.2
0.3
0.4
ÈΨ0HxL 2
(* Simmetrizzazione dei moduli quadri delle funzioni d′onda degli stati fondamentali(* Simmetrizzazione dei moduli quadri delle funzioni d′onda degli stati fondamentali(* Simmetrizzazione dei moduli quadri delle funzioni d′onda degli stati fondamentali
della doppia buca di potenziale e del doppio oscillatore *)della doppia buca di potenziale e del doppio oscillatore *)della doppia buca di potenziale e del doppio oscillatore *)
(*(*(*
h = HistogramList[media, {∆x}, normaltot];h = HistogramList[media, {∆x}, normaltot];h = HistogramList[media, {∆x},normaltot];
occ = h[[2]];occ = h[[2]];occ = h[[2]];
bins = Take[h[[1]] + ∆x
2 ,Length[occ]]
;bins = Take[h[[1]] + ∆x
2 ,Length[occ]]
;bins = Take[h[[1]] + ∆x
2 ,Length[occ]]
;
d = Min[Part[Abs[bins], 1],Last[Abs[bins]]];d = Min[Part[Abs[bins], 1],Last[Abs[bins]]];d = Min[Part[Abs[bins], 1],Last[Abs[bins]]];
len1 = Length[bins];len1 = Length[bins];len1 = Length[bins];
binsnew = {};binsnew = {};binsnew = {};
occnew = {};occnew = {};occnew = {};
Do[Do[Do[
If[bins[[i]] ≥ −d&&bins[[i]] ≤ d,If[bins[[i]] ≥ −d&&bins[[i]] ≤ d,If[bins[[i]] ≥ −d&&bins[[i]] ≤ d,
AppendTo[binsnew, bins[[i]]];AppendTo[binsnew,bins[[i]]];AppendTo[binsnew, bins[[i]]];
AppendTo[occnew, occ[[i]]]],AppendTo[occnew, occ[[i]]]],AppendTo[occnew, occ[[i]]]],
{i, 1, len1}];{i, 1, len1}];{i, 1, len1}];
llen = Length[occnew];llen = Length[occnew];llen = Length[occnew];
occsimm = Table[
12 (occnew[[1 + j]] + occnew[[llen− j]]), {j, 0, llen/2− 1}
];occsimm = Table
[12 (occnew[[1 + j]] + occnew[[llen− j]]), {j, 0, llen/2− 1}
];occsimm = Table
[12 (occnew[[1 + j]] + occnew[[llen− j]]), {j, 0, llen/2− 1}
];
Do[Do[Do[
AppendTo[occsimm, occsimm[[llen/2− i]]],AppendTo[occsimm, occsimm[[llen/2− i]]],AppendTo[occsimm, occsimm[[llen/2− i]]],
{i, 0, llen/2− 1}];{i, 0, llen/2− 1}];{i, 0, llen/2− 1}];
APPENDICE A. CODICE DEI PROGRAMMI IN WOLFRAM MATHEMATICA 46
tablesimm = Table[{binsnew[[i]], occsimm[[i]]}, {i, 1, llen}];tablesimm = Table[{binsnew[[i]], occsimm[[i]]}, {i, 1, llen}];tablesimm = Table[{binsnew[[i]], occsimm[[i]]}, {i, 1, llen}];
plotsimm = ListPlot[tablesimm,AxesLabel→
{x, |ψ0(x)|2
}];plotsimm = ListPlot
[tablesimm,AxesLabel→
{x, |ψ0(x)|2
}];plotsimm = ListPlot
[tablesimm,AxesLabel→
{x, |ψ0(x)|2
}];
(* Metodo per ricavare E0 dalla funzione d′onda dello stato fondamentale *)(* Metodo per ricavare E0 dalla funzione d′onda dello stato fondamentale *)(* Metodo per ricavare E0 dalla funzione d′onda dello stato fondamentale *)
tabder = Table
[{binsnew[[i]],
(√occsimm[[i+1]]−
√occsimm[[i−1]]
2∆x
)2}, {i, 2,Length[occsimm]− 1}
];tabder = Table
[{binsnew[[i]],
(√occsimm[[i+1]]−
√occsimm[[i−1]]
2∆x
)2}, {i, 2,Length[occsimm]− 1}
];tabder = Table
[{binsnew[[i]],
(√occsimm[[i+1]]−
√occsimm[[i−1]]
2∆x
)2}, {i, 2,Length[occsimm]− 1}
];
fun = Interpolation[tabder];fun = Interpolation[tabder];fun = Interpolation[tabder];
Tmed = NIntegrate[fun[x],{x,tabder[[1,1]],Part[Last[tabder],1]}]2m ;Tmed = NIntegrate[fun[x],{x,tabder[[1,1]],Part[Last[tabder],1]}]2m ;Tmed = NIntegrate[fun[x],{x,tabder[[1,1]],Part[Last[tabder],1]}]2m ;
Potential[x_]:=λ(x2 − µ2
2λ
)2
; (*doppia buca di potenziale*)Potential[x_]:=λ(x2 − µ2
2λ
)2
; (*doppia buca di potenziale*)Potential[x_]:=λ(x2 − µ2
2λ
)2
; (*doppia buca di potenziale*)
Potential[x_]:=mω2
2 (Abs[x]− x0)2; (*doppio oscillatore*)Potential[x_]:=mω2
2 (Abs[x]− x0)2; (*doppio oscillatore*)Potential[x_]:=mω2
2 (Abs[x]− x0)2; (*doppio oscillatore*)
pot = Table[Potential[binsnew[[i]]], {i, 1,Length[binsnew]}];pot = Table[Potential[binsnew[[i]]], {i, 1,Length[binsnew]}];pot = Table[Potential[binsnew[[i]]], {i, 1,Length[binsnew]}];
pottable = Table[{binsnew[[i]], occsimm[[i]]pot[[i]]}, {i, 1,Length[occsimm]}];pottable = Table[{binsnew[[i]], occsimm[[i]]pot[[i]]}, {i, 1,Length[occsimm]}];pottable = Table[{binsnew[[i]], occsimm[[i]]pot[[i]]}, {i, 1,Length[occsimm]}];
fun1 = Interpolation[pottable];fun1 = Interpolation[pottable];fun1 = Interpolation[pottable];
Vmed = NIntegrate[fun1[x], {x, binsnew[[1]],Last[binsnew]}];Vmed = NIntegrate[fun1[x], {x, binsnew[[1]],Last[binsnew]}];Vmed = NIntegrate[fun1[x], {x,binsnew[[1]],Last[binsnew]}];
E0stim = Tmed + VmedE0stim = Tmed + VmedE0stim = Tmed + Vmed
*)*)*)
Di�erenza tra gli autovalori dell'energia del primo stato
eccitato e di quello fondamentale; |〈1|x|0〉|2
xx = Table[0, {t, 10/δ}];xx = Table[0, {t, 10/δ}];xx = Table[0, {t, 10/δ}];
Do[Do[Do[
xx[[t]] =xx[[t]] =xx[[t]] =
Mean[Table[Sum[xxdef[[w, t+ j]]xxdef[[w, j]], {j, 1,Nt− 1− 10/δ}], {w, (Ncammini− d)/gap}]]/Mean[Table[Sum[xxdef[[w, t+ j]]xxdef[[w, j]], {j, 1,Nt− 1− 10/δ}], {w, (Ncammini− d)/gap}]]/Mean[Table[Sum[xxdef[[w, t+ j]]xxdef[[w, j]], {j, 1,Nt− 1− 10/δ}], {w, (Ncammini− d)/gap}]]/
(Nt− 1− 10/δ), {t, 1, 10/δ}];(Nt− 1− 10/δ), {t, 1, 10/δ}];(Nt− 1− 10/δ), {t, 1, 10/δ}];
ListPlot[Table[{t,Log[xx[[t/δ]]/xx[[t/δ + 1]]]/δ}, {t, δ, 10− δ, δ}],Filling→ Axis,ListPlot[Table[{t,Log[xx[[t/δ]]/xx[[t/δ + 1]]]/δ}, {t, δ, 10− δ, δ}],Filling→ Axis,ListPlot[Table[{t,Log[xx[[t/δ]]/xx[[t/δ + 1]]]/δ}, {t, δ, 10− δ, δ}],Filling→ Axis,
PlotLabel->Style[�∆E tra lo stato fondamentale e il primo stato eccitato�, �Title� , 14],PlotLabel->Style[�∆E tra lo stato fondamentale e il primo stato eccitato�, �Title� , 14],PlotLabel->Style[�∆E tra lo stato fondamentale e il primo stato eccitato�, �Title� , 14],
AxesLabel→ {t2 − t1,E1 − E0}]AxesLabel→ {t2 − t1,E1 − E0}]AxesLabel→ {t2 − t1,E1 − E0}]
n = 6;n = 6;n = 6;
Print [Style [∆E tra gli autovalori E0e E1 = ,FontSize→ 14,FontWeight→ Bold,FontColor→ Red] ,Print [Style [∆E tra gli autovalori E0e E1 = ,FontSize→ 14,FontWeight→ Bold,FontColor→ Red] ,Print [Style [∆E tra gli autovalori E0e E1 = ,FontSize→ 14,FontWeight→ Bold,FontColor→ Red] ,
APPENDICE A. CODICE DEI PROGRAMMI IN WOLFRAM MATHEMATICA 47
Mean[Table[Log[xx[[t]]/xx[[t+ 1]]]/δ, {t, 1, n}]]];Mean[Table[Log[xx[[t]]/xx[[t+ 1]]]/δ, {t, 1, n}]]];Mean[Table[Log[xx[[t]]/xx[[t+ 1]]]/δ, {t, 1, n}]]];
tmax = 6;tmax = 6;tmax = 6;
Media = Import[�meandelta� , �List� ];Media = Import[�meandelta� , �List� ];Media = Import[�meandelta� , �List� ];
Stdev = Import[�stdevdelta� , �List� ];Stdev = Import[�stdevdelta� , �List� ];Stdev = Import[�stdevdelta� , �List� ];
Stdev1 = Stdev√14
;Stdev1 = Stdev√14
;Stdev1 = Stdev√14
;
meantable = Table[{itδ,Media[[it]]}, {it, 1, tmax/δ}];meantable = Table[{itδ,Media[[it]]}, {it, 1, tmax/δ}];meantable = Table[{itδ,Media[[it]]}, {it, 1, tmax/δ}];
Needs[�ErrorBarPlots�]Needs[�ErrorBarPlots�]Needs[�ErrorBarPlots�]
tablebars = Table[{meantable[[i]],ErrorBar[Stdev1[[i]]]}, {i, 1, tmax/δ}];tablebars = Table[{meantable[[i]],ErrorBar[Stdev1[[i]]]}, {i, 1, tmax/δ}];tablebars = Table[{meantable[[i]],ErrorBar[Stdev1[[i]]]}, {i, 1, tmax/δ}];
plotbars = ErrorListPlot[tablebars];plotbars = ErrorListPlot[tablebars];plotbars = ErrorListPlot[tablebars];
DeltaEteo = Plot[ω, {x, 0, tmax + 1},PlotStyle→ Red];DeltaEteo = Plot[ω, {x, 0, tmax + 1},PlotStyle→ Red];DeltaEteo = Plot[ω, {x, 0, tmax + 1},PlotStyle→ Red];
Show [plotbars,DeltaEteo,PlotLabel->Style[� ∆E �, �Title� , 14],AxesLabel→ {t2 − t1,E1 − E0} ,Show [plotbars,DeltaEteo,PlotLabel->Style[� ∆E �, �Title� , 14],AxesLabel→ {t2 − t1,E1 − E0} ,Show [plotbars,DeltaEteo,PlotLabel->Style[� ∆E �, �Title� , 14],AxesLabel→ {t2 − t1,E1 − E0} ,
PlotRange→ {{0, tmax + 1}, {0.4, 0.6}},AxesOrigin→ {0, 0.4}]PlotRange→ {{0, tmax + 1}, {0.4, 0.6}},AxesOrigin→ {0, 0.4}]PlotRange→ {{0, tmax + 1}, {0.4, 0.6}},AxesOrigin→ {0, 0.4}]
0 1 2 3 4 5 6 7t2-t10.40
0.45
0.50
0.55
0.60E1-E0
F = Log[xx];F = Log[xx];F = Log[xx];
pl = Table[{t, F [[t/δ]]}, {t, δ, n ∗ δ, δ}];pl = Table[{t, F [[t/δ]]}, {t, δ, n ∗ δ, δ}];pl = Table[{t, F [[t/δ]]}, {t, δ, n ∗ δ, δ}];
line = Fit[pl, {1, t}, t];line = Fit[pl, {1, t}, t];line = Fit[pl, {1, t}, t];
Show[ListPlot[pl],Plot[line, {t, 0,Length[pl]}],AxesOrigin→ {0, 0},Show[ListPlot[pl],Plot[line, {t, 0,Length[pl]}],AxesOrigin→ {0, 0},Show[ListPlot[pl],Plot[line, {t, 0,Length[pl]}],AxesOrigin→ {0, 0},
PlotLabel->Style [Plot del ln[ G(t2 − t1) ], �Title� , 14] ,AxesLabel→ {t2 − t1, ln[ G(t2 − t1) ]}]PlotLabel->Style [Plot del ln[ G(t2 − t1) ], �Title� , 14] ,AxesLabel→ {t2 − t1, ln[ G(t2 − t1) ]}]PlotLabel->Style [Plot del ln[ G(t2 − t1) ], �Title� , 14] ,AxesLabel→ {t2 − t1, ln[ G(t2 − t1) ]}]
Print[�Equazione Fit lineare dei dati y = �, line = Fit[pl, {1, t}, t]];Print[�Equazione Fit lineare dei dati y = �, line = Fit[pl, {1, t}, t]];Print[�Equazione Fit lineare dei dati y = �, line = Fit[pl, {1, t}, t]];
Print[|〈1|x|0〉|2 = ,Exp[Fit[pl, {1, t}, t][[1]]]
[|〈1|x|0〉|2 = ,Exp[Fit[pl, {1, t}, t][[1]]]
[|〈1|x|0〉|2 = ,Exp[Fit[pl, {1, t}, t][[1]]]
];
Print[Valore teorico di |〈1|x|0〉|2 = , N [1/(2 ∗m ∗ ω)]
[Valore teorico di |〈1|x|0〉|2 = , N [1/(2 ∗m ∗ ω)]
[Valore teorico di |〈1|x|0〉|2 = , N [1/(2 ∗m ∗ ω)]
];
|〈1|x|0〉|2 = 0.9978
Valore atteso di|〈1|x|0〉|2 = 1
Bibliogra�a
[1] Banerjee K. and Bhatnagar S. P., Two Well Oscillator, Phys. Rev. D 18(1978) 4767
[2] Bender C. and Wu T. T., Anharmonic Oscillator, Phys. Rev. 184(1969) 1231 - 1260
[3] Cheng T. P. and Li L. F., Gauge Theory of Elementary Particle Physics, Oxford
University Press, 1988
[4] Fan H. Y. and Weng H. G., On the Weyl Ordering Operation, International Academic
Publishers, Commun. Theor. Phys 18(1992) 155 - 160
[5] Feynman R. P., Feynman's Thesis � A New Approach to Quantum Theory, Editor
Brown L. M., World Scienti�c Publishing, 2005
[6] Feynman R. P. and Hibbs A. R., Quantum Mechanics and Path Integrals, Emended
Edition, Dover Publications, 2010
[7] Gattringer C. and Lang C. B., Quantum Chromodynamics on the Lattice, Springer
Science, 2010
[8] Gildener E. and Patrascioiu A., Pseudoparticle Contribution to the Energy Spectrum of
a One-Dimentional System, Phys. Rev. D 16(1977) 423
[9] Grosche C., An Introduction into the Feynman Path Integral, http://arxiv.org/abs/hep-
th/9302097v1, 1993
[10] Itzykson C. and Zuber J. B., Quantum Field Theory, Dover Publications, 2006
[11] Landau L. D. and Lif²its E. M., Quantum Mechanics, Non-Relativistic Theory (Volume
3 of A Course of Theoretical Physics), Pergamon Press, 1965
[12] MacKenzie R., Path Integral Methods and Applications, http://arxiv.org/abs/quant-
ph/0004090v1, 2000
48
BIBLIOGRAFIA 49
[13] Metropolis N., Rosenbluth A. W., Rosenbluth M. N., Teller A. H. and Teller E., Equa-
tions of State Calculations by Fast Computing Machines, J. Chem. Phys. 21(1953)
1087
[14] Merzbacher E., Quantum Mechanics, John Wiley & Sons, 1998
[15] Montvay I. and Münster G., Quantum Fields on a Lattice, Cambridge University Press,
1997
[16] Peskin M. E. and Schroeder D. V., An Introduction to Quantum Field Theory, Westview
Press, 1995
[17] Roncadelli M. e Defendi A., I Cammini di Feynman, Quaderni di Fisica Teorica, 2001
[18] Sakurai J. J., Meccanica Quantistica Moderna, Zanichelli, 1996
[19] Schulman L. S., Techniques and Applications of Path Integration, John Wiley & Sons,
1981
[20] Simon B., Functional Integration and Quantum Physics, Academic Press, 1979
[21] Song D. Y., Tunneling and Energy Splitting in an Asymmetric Double-Well Potential,
Ann. Phys. 323(2008) 2991 - 2999
[22] Tambini U., Presilla C. and Onofrio R., Dynamics of Quantum Collapse in Energy
Measurements, Phys. Rev. A 51(1995) 967
[23] Ta³eli H., Accurate Computation of the Energy Spectrum for Potentials with
Multiminima, Int. J. Quant. Chem. 46(1993) 319 - 334
Top Related