Lezione 9
Lezione 9
Metodi Monte Carlo

In questa lezione vedremo l'applicazione di tecniche Monte Carlo per il calcolo di integrali (in particolare integrali multidimensionali) e per la simulazione di una delle esperienze del laboratorio di fisica del secondo anno.

ESERCIZIO 9.0 - Integrazione Montecarlo monodimensionale (I) (da consegnare):

Calcolare con il metodo della media e con il metodo hit-or-miss l'integrale di sin(x) tra [0,π] con un numero di punti variabile tra 100 e 10000 ( in step di 100 ) e visualizzare andamento del valore ottenuto in funzione del numero di punti utilizzati per la valutazione. Per fare questo si suggerisce di costruire una nuova classe (o modificare la classe Integral della lezione 7) con un puntatore ad un oggetto di tipo Random (lezione 8) da inizializzare nel costruttore e due metodi per il calcolo effettivo dell'integrale con il metodo della media e hit-or-miss.


ESERCIZIO 9.1 - Integrazione Montecarlo monodimensionale (II) (da consegnare):

Studiare l'errore sul calcolo dell'integrale di sin(x) tra [0,π] in funzione del numero di punti utilizzati nel caso del metodo della media e del metodo hit-or-miss. Per fare questo si ripeta per 1000 volte il calcolo dell'integrale con un numero di punti che varia tra 100 e 10000 ( in step da 100 punti ) e prendere RMS della distribuzione dei 1000 valori ottenuti (errore sull'integrale).
  1. Fare un grafico dell'errore ottenuto in funzione del numero dei punti utilizzati per il calcolo dell'integrale.
  2. Verificare che l'andamento dell'errore sia del tipo K Nα con α=-0.5 ( utilizzare il metodo illustrato nella Lezione 4 ).
  3. Assumendo che l'andamento dell'errore sia noto ( del tipo k/ √N ) si determini quanti punti sono necessari per ottenere una precisione di 0.001.
  4. Come posso facilmente stimare l'errore sul calcolo dell'integrale con il metodo della media ?

ESERCIZIO 9.2 - Integrazione Montecarlo multidimensionale (da consegnare):

Verificare l'andamento del rapporto Sn/Rn dove Sn è il volume di una sfera n-dimensionale di raggio 1 e Rn è il volume del "cubo" n-dimensionale ad essa circoscritto (N.B. Rn ha lato 2).
Si usi l'integrazione Monte Carlo, con la funzione integranda costituita da una funzione caratteristica, pari a 1 all'interno della sfera, e pari a 0 nei restanti punti del "cubo" (suggerimento : si potrebbe costruire una FunzioneScalareBase che accetti in input un Vettore e restituisca un double. Allo stesso modo gli estremi di integrazione possono essere rappresentati da una coppia di Vettori).
Per la dimensione 3, se ne valuti la precisione al variare del numero di punti, effettuanto il calcolo con 10000, 40000, 90000 e 160000 punti. Per ognuno di questi valori, ripetere il calcolo 100 volte e fornire la media e la deviazione standard dei valori ottenuti e della media. Come nel caso precedente si dovrebbe ottenere che la deviazione standard è inversamente proporzionale alla radice quadrata del numero di punti (il comportamento non dipende dalla dimesione del problema !).
Si chiede poi di calcolarne il valore per dimensione n da 2 a 5. Si confronti il risultato con il valore esatto del volume di una sfera n-dimensionale è dato da πn/2/Γ(n*0.5+1) dove Γ è la funzione gamma.

Brevi richiami
Teorema del Limite Centrale



ESERCIZIO 9.3 - Calcolo del potenziale gravitazionale :
Ripetere l'esercizio 9.3, calcolando però il potenziale gravitazione V(r) generato da una densità uniforme all'interno di una sfera. Seguire la descrizione dell'esercizio "Integrali Multidimensionali" del vecchio Laboratorio di Calcolo.


ESERCIZIO 9.4 - Simulazione dell'esperienza dello spettrometro a prisma (da consegnare):

La dipendenza dell'indice di rifrazione dalla lunghezza d'onda della luce incidente viene descritta dalla legge di Cauchy:
L'esperienza dello spettrometro a prisma si propone di misurare l'indice di rifrazione del materiale di un prisma per le diverse lunghezze d'onda di una lampada al mercurio onde determinare i parametri A e B che caratterizzano tale materiale.
L'apparato sperimentale consiste in un goniometro sul quale viene posizionato il prisma. Una lampada a vapori di mercurio viene posizioneta da un lato del canocchiale con due collimatori per produrre un fascio luminoso che incide sul prisma. Il fascio di luce riflesso o rifratto viene osservato tramite un altro canocchiale. Gli angoli corrispondeni all'orientamento del supporto sul goniometro ed alla posizione dei canocchiali sono leggibili su di un nonio.

La nostra simulazione consiste nell'assumere dei valori verosimili dei parametri della legge di Cauchy, vedere come questi si traducono in quantità osservabili e stimare se la nostra procedura di misura e di analisi dei dati ci permette di derivare correttamente i valori utilizzati come ingresso nella simulazione e con quale incertezza.

Nell'esperimento l'unico tipo di grandezze misurate sono gli angoli, per cui possiamo assumere un'incertezza uguale per tutte le misure angolari e pari a σθ=0.3 mrad.
Nell'esperienza di laboratorio, l'angolo di apertura del prisma α=60o ed il materiale del prisma ha valori dei parametri di Cauchy A=2.7, B=60000 nm2.
Consideriamo le due lunghezze d'onda estreme della lampada al mercurio, il giallo, λ1=579.1 nm, ed il viola, λ2=404.7 nm.

La misura sperimentale consiste nella determinazione:

  1. dell'angolo corrispondente al fascio non deflesso in assenza del prisma: θ0.
  2. dell'angolo corrispondente alla deviazione minima della riga del giallo: θm1).
  3. dell'angolo corrispondente alla deviazione minima della riga del viola: θm2).
L'analisi dati consiste nella seguente procedura:
  1. determinazione degli angoli di deviazione minima:
    δm1)=θm1)-θ0.
    δm2)=θm2)-θ0.
  2. calcolo degli indici di rifrazione n(λ) dalla relazione: .
  3. calcolo dei parametri A e B dalle formule:

Parte I
Costruire una classe EsperimentoPrisma con le seguenti caratteristiche:
  • come data membri deve avere sia i valori veri che i valori misurati di tutte le quantità ed in più un generatore di numeri casuali Random (vedi lezione 8);
  • nel costruttore deve definire tutti i valori di ingresso delle quantità misurabili a partire dai parametri A, B ed α e dalle lunghezze d'onda;
    N.B.: il valore di θ0 è arbitrario, ma, una volta definito, i θm sono fissati.
  • un metodo Esegui() che effettua la misura sperimentale e determina dei valori misurati di θ0, θm1), θm2);
    N.B.: il valore misurato di un angolo si ottiene estraendo un numero distribuito in maniera gaussiana intorno al suo valore di ingresso nella simulazione e deviazione standard σθ.
  • i metodi necessari per accedere ai valori dei data membri, sia quelli di ingresso che quelli misurati..
Scrivere un programma che esegua 10000 volte l'esperimento, faccia un istogramma dei valori misurati, e calcoli media e deviazione standard di tali valori.
N.B.: se avete svolto l'esercizio 6.3, potete utilizzare la classe VettoreDati realizzata.

Parte II
Aggiungere alla classe un metodo Analizza() che faccia i calcoli relativi all'analisi dati ed estendere il programma in modo da eseguire l'analisi dati dei 10000 esperimenti e fare istogrammi di:
  1. differenza tra i valori misurati e quelli attesi di δm1) e δm2), quello bidimensionale delle differenze per le due lunghezze d'onda, e calcolare il coefficiente di correlazione.
  2. differenza tra i valori misurati e quelli attesi di n(λ1) e n(λ2), quello bidimensionale delle differenze per le due lunghezze d'onda, e calcolare il coefficiente di correlazione.
  3. differenza tra i valori misurati e quelli attesi di A e B, quello bidimensionale delle differenze, e calcolare il coefficiente di correlazione.
In tutti i casi, se possibile, confrontate il risultato della simulazione con quello ottenuto dalla propagazione degli errori. Il caso 1) è banale, il caso 2) un po' più difficile, il caso 3) potrebbe presentare delle sorprese...

Brevi Richiami

La classe EsperimentoPrisma

Istrogrammi bidimensionali

Calcolo del coefficiente di correlazione

Risultati attesi



ESERCIZIO 9.5 - Attrito viscoso :

Svolgere il tema d'esame sulla simulazione di un esperimento per la misura della viscosità di un materiale:
preappello del gennaio 2009, esercizio 6


Back to Home Page