Biondini Stefano wrote:
>
> Qualcuno potrebbe spiegarmi cosa sia il metodo motecarlo e quali siano le
> sue reali applicazioni nella fisica e nella ingegneria ?
In generale si puo' chiamare Montecarlo ogni metodo computazionale che
fa uso di numeri casuali. Prendi, come esempio classico, il problema del
calcolo di Pigreco (si tratta di un esempio semplice e, se hai qualche
esperienza di programmazione, ti raccomando di scrivere un programmino
che lo realizza). Dato che il rapporto fra l'area di un quadrato di lato
2 e quella del cerchio inscritto (quindi di raggio 1) e' 4/Pi, puoi
procedere in questo modo:
- genera N (N = un numero grande) coppie di numeri casuali (Xi,Yi),
i=1,...N,
compresi tra -1 e 1. Pensali come coordinate di N punti in un piano
cartesiano: per come sono generati, questi punti giacciono all'interno
del
quadrato e, se sono veramente casuali, lo ricopriranno piu' o meno
uniformemente.
- Calcola Ri = Xi^2 + Yi^2 (con il simbolo ^ indico l'esponenziazione).
Se Ri e'
minore di 1, allora il punto i-esimo cade nel cerchio: conta quanti
sono. Chiamiamo
M questo numero.
- Siccome i num. sono generati casualmente, il rapporto M/N (n. di punti
con Ri < 1
diviso il n. totale di punti generati) e' un'approssimazione del
rapporto fra le
due aree (cerchio e quadrato), quindi del valore di Pi/4. Il valore
calcolato e'
tanto migliore quanto maggiore e' N; piu' precisamente, per avere D
cifre decimali
devi generare all' incirca N = 10^(2*D) coppie: 3 cifre=1000000 di
coppie etc..
Non si tratta di un metodo molto efficiente per il calcolo di Pi, ma
illustra il
concetto. Un matematico direbbe che il Montecarlo serve a calcolare
integrali,
in particolare integrali che sono difficili da calcolare per altra via
perche'
per es. l'integrando varia molto rapidamente. In fisica tante cose si
esprimono
tramite integrali per cui il metodo MC e' di uso abbastanza comune.
Uno dei primi casi in cui il MC fu usato fu il calcolo delle reazioni
nucleari
a catena. Quando un neutrone urta un nucleo non si puo' dire con
certezza se il
nucleo si scinda o meno, ne` quanti neutroni verranno prodotti:
conosciamo solo
la probabilita' di questi eventi. Allora simuliamo l'urto generando un
numero
casuale (i primi calcoli vennero fatti usando una roulette, da cui il
nome) ed
a seconda del numero uscito diciamo "e` avvenuto questo o quello". Per
esempio, poniamo che si sappia che in ogni urto la prob. di generare un
neutrone
e' il 45%, quella di generarne due e' il 30%, e quella di non generarne
nessuno
e' il 25%. Allora estraiamo p.es. un numero fra 1 e 100 (vabbe', la
roulette
arriva solo a 90 :-) e diciamo: "se esce un numero fra 1 e 45 supponiamo
che sia
stato prodotto un neutrone; se esce un num. fra 46 e 75 supponiamo che
ne siano
stati prodotti due; e se esce un num. fra 76 e 100 supponaimo che non ne
sia stato
generato nessuno." La simulazione dunque procede come segue:
- si parte con un certo numero di neutroni;
- si calcola la prob. che ciascun neutr. ne produca altri, col metodo
descritto sopra;
- si calcolano le altre grandezze a cui si possa essere interessati
(p.es. l'energia
rilasciata in ogni scissione);
- per ognuno dei nuovi neutr. si calcola la prob. di generarne altri, e
si ripete...
Metodi di questo tipo sono tuttora usati in ingegneria nucleare, ed
altri simili si
usano per descrivere il moto degli elettroni nei dispositivi elettronici
al fine di
predirne o studiarne il funzionamento.
Altri esempi importanti riguardano il calcolo di proprieta' della
materia condensata
(solidi e liquidi) e no (plasmi etc). In un sistema che non sia allo
zero assoluto
atomi e molecole sono agitati in continuazione ed in modo
sostanzialmente casuale
(forse hai sentito nominare il "moto Browniano"). Con il metodo MC si
simula questa
agitazione generando num. casuali e spostando gli atomi/le molecole di
conseguenza.
Come esattamente vengano effettuati gli spostamenti e' un argomento un
po' tecnico
e non posso descriverlo qui. Basti dire che se si fanno le cose nel modo
giusto si
possono calcolare con buona precisione molte caratteristiche della
materia; per
esempio la conformazione delle proteine etc..
--
To reply, replace "smartassi_at_triste" with "smargiassi_at_trieste"
in my e-mail address
Enrico Smargiassi
http://www-dft.ts.infn.it:6163/~esmargia
Received on Thu Mar 25 1999 - 00:00:00 CET