7
An´ alisis num´ erico. M´ etodos del Caminante aleatorio L13 1 1. Modelo del caminante aleatorio y Procesos de difusi´on El modelo del caminante aleatorio (RW) o movimiento aleatorio se usa ampliamente tanto en la f´ ısica, biolog´ ıa y otras ciencias afines. Ejemplos: Fen´ omenos de difusi´ on de las mol´ eculas en el agua y el movimiento Browniano de las suspenciones coloidales en los l´ ıquidos Modelamiento de cadenas polim´ ericas largas, Soluci´ on de ecuaciones diferenciales, etc. 1.1. Movimiento aleatorio unidimensional Considerando un modelo simple que consiste en el movimiento de un objeto o cami- nante a lo largo de una linea recta, ademas asumimos que : todos los pasos son de igual longitud l La direcci´ on de cada paso es independiente de la direcci´ on del paso anterior En cada paso de tiempo el caminante realiza un paso hacia la derecha con probabi- lidad p o paso hacia la izquierda con probabilidad q =1 - p. Si N es el n´ umero total de pasos, la posici´ on del caminante luego de N pasos estar´ a en el intervalo Nl x Nl. Una de las preguntas fundamentales es calcular la probabilidad P N (x) de que el caminante resulte en la posici´ on x luego de realizar N pasos. Conociendo esta probabilidad es posible calcular, por ejemplo, el desplazamiento medio <x N > y la dispersi´ on < Δx 2 N > del desplazamiento del caminante mediante las f´ ormulas. <x N >= Nl X x=-Nl P N (x) (1) < Δx 2 N >=<x 2 N > - <x N > 2 (2) <x 2 N >= Nl X x=-Nl x 2 P N (x) (3) La promediaci´ on se realiza para todas las posibles variantes de camino de N pasos. En principio es posible obtener las magnitudes antes mancionadas anal´ ıticamente. Como resultado se obtiene por ejemplo, <x N >=(p - q)Nl (4) <x 2 N >=4pqNl 2 (5) Sin embargo es necesario estudiar el movimiento aleatorio mediante m´ etodos num´ eri- cos para aquellos casos en donde no existe soluciones anal´ ıticas exactas.

L13

Embed Size (px)

DESCRIPTION

num

Citation preview

Page 1: L13

Analisis numerico. Metodos del Caminante aleatorio L13 1

1. Modelo del caminante aleatorio y Procesos de difusion

El modelo del caminante aleatorio (RW) o movimiento aleatorio se usa ampliamentetanto en la fısica, biologıa y otras ciencias afines. Ejemplos:

Fenomenos de difusion de las moleculas en el agua y el movimiento Browniano delas suspenciones coloidales en los lıquidos

Modelamiento de cadenas polimericas largas,

Solucion de ecuaciones diferenciales, etc.

1.1. Movimiento aleatorio unidimensional

Considerando un modelo simple que consiste en el movimiento de un objeto o cami-nante a lo largo de una linea recta, ademas asumimos que :

todos los pasos son de igual longitud l

La direccion de cada paso es independiente de la direccion del paso anterior

En cada paso de tiempo el caminante realiza un paso hacia la derecha con probabi-lidad p o paso hacia la izquierda con probabilidad q = 1 − p.

Si N es el numero total de pasos, la posicion del caminante luego de N pasos estara en elintervalo Nl ≤ x ≤ Nl.

Una de las preguntas fundamentales es calcular la probabilidad PN (x) de que elcaminante resulte en la posicion x luego de realizar N pasos.

Conociendo esta probabilidad es posible calcular, por ejemplo, el desplazamientomedio < xN > y la dispersion < ∆x2N > del desplazamiento del caminante mediantelas formulas.

< xN >=

Nl∑x=−Nl

PN (x) (1)

< ∆x2N >=< x2N > − < xN >2 (2)

< x2N >=

Nl∑x=−Nl

x2PN (x) (3)

La promediacion se realiza para todas las posibles variantes de camino de N pasos.

En principio es posible obtener las magnitudes antes mancionadas analıticamente.Como resultado se obtiene por ejemplo,

< xN >= (p− q)Nl (4)

< x2N >= 4pqNl2 (5)

Sin embargo es necesario estudiar el movimiento aleatorio mediante metodos numeri-cos para aquellos casos en donde no existe soluciones analıticas exactas.

Page 2: L13

Analisis numerico. Metodos del Caminante aleatorio L13 2

Existen 2 metodos de simulacion inportantes:

1. Metodo combinatorio exacto: el numero y probabilidades de todos los movi-mientos para cada valor de N y x se calcula en forma explıcita. Por ejemplo , paraN=3 y x=1 hay 3 variantes:

−− > −− >< −− p2q−− >< −−−− > pqp< −−−− > −− > qp2

Por lo tanto P3(1) = 3p2q

En el caso unidimensional el numero total de variantes de movimiento es 2N , razonpor la cual es problematico para valores grandes de N

2. Metodo Monte Carlo permite simular movimientos aleatorios que constan de mu-chos pasos. La idea consiste en generar gran cantidad de pasos con las probabilidadesbuscadas, las cuales garantizan la pertenencia de los movimientos elegidos al con-junto total de posibles movimientos. Cuanto mayor es el numero de movimientos laexactitud es mas alta.

Algoritmo de MC para la simulacion del caminante aleatorio unidimensional

1. Ingresar parametros iniciales: Numero de pasos N , numero de eventos Ne, probabi-lidad p.

2. Evento 0 (Ne = 0)

3. Incrementar el numero de eventos en 1 (Ne = Ne + 1)

4. Ubicar al objeto en la posicion inicial (x = x0)

5. Generar un numero aleatorio r entre [0-1] de una distribucion uniforme.

6. Realizar un paso hacia la derecha si r ≤ p, en caso contrario un paso hacia laizquierda

7. Repitir los pasos 4 - 6 , N veces

8. Acumular los valores de x, x2 y P (x) luego de cada evento

9. Repitir los pasos 3 - 8 Ne veces

10. Calcular los valores medios de x, x2, la varianza y desplazamiento cuadratico medio.

Page 3: L13

Analisis numerico. Metodos del Caminante aleatorio L13 3

Listado del programa en F90

PROGRAM rw

! Programa que realiza el modelo unidimensional

! del caminante aleatorio mediante Monte Carlo

IMPLICIT NONE

REAL,DIMENSION (-128:128)::prob

INTEGER::ip,j,k,np,N,x

REAL::xcum,x2cum,p,rn

OPEN(unit=8,file=’rw1.dat’,action=’write’)

OPEN(unit=9,file=’tt’,action=’write’)

CALL inicio(p,N,np)

WRITE(8,FMT=*)’# RW1d: N=’,N,’Nev=’,Np,’Prob.=’,p

print*,’N,p,np’,N,p,np

do ip=1,np

CALL walk(x,p,N)

CALL data(x,xcum,x2cum,prob)

write(9,’(2i4)’)x,ip

end do

call medio(N,np,xcum,x2cum,prob)

close(8)

close(9)

!******************************

CONTAINS

SUBROUTINE inicio(p,N,np)

REAL::p

integer,intent(out)::N, np

print*,’Np=?’

read*,np

print*,’probabilidad p ?’

read*,p

print*,’numero de pasos?’

read*,N

END SUBROUTINE

SUBROUTINE walk(x,p,N)

real::rn

integer::i,x

integer::N

real::p

x=0

do i=1,N

call random_number(rn)

if (rn<=p) then

x=x+1

else

x=x-1

end if

end do

END SUBROUTINE

Page 4: L13

Analisis numerico. Metodos del Caminante aleatorio L13 4

SUBROUTINE data(x,xcum,x2cum,prob)

real::xcum,x2cum

integer::x

real,dimension(-128:128)::prob

xcum=xcum+real(x)

x2cum=x2cum+x*x

prob(x)=prob(x)+1

END SUBROUTINE

!

SUBROUTINE medio(N,np,xcum,x2cum,prob)

integer::N,np

real::xcum,x2cum,xbar,norm,varian,sigma,xm,x2m

real,dimension(-128:128)::prob

print*,np,xcum,x2cum

norm=1.0/np

xm=xcum*norm

x2m=x2cum*norm

do x=-N,N

prob(x)=prob(x)*norm

if (prob(x)>0) write(8,’(i4,f8.4)’) x,prob(x)

end do

print*,’xm’,xm,x2m,norm

varian=x2m-xm*xm

sigma=sqrt(varian)

print*,’despl.medio =’,xm

print*,’sigma=’,sigma

END SUBROUTINE

END PROGRAM rw

Page 5: L13

Analisis numerico. Metodos del Caminante aleatorio L13 5

Figura 1: p=0.5,Numero de pasos:100, numero de eventos:100

Alguna ilustraciones que se obtiene con el programa RW

Page 6: L13

Analisis numerico. Metodos del Caminante aleatorio L13 6

Figura 2: p=0.5,Numero de pasos:100, numero de eventos:10000

Figura 3: p=0.65, Numero de pasos:100, numero de eventos:100000

Page 7: L13

Analisis numerico. Metodos del Caminante aleatorio L13 7

2. Caminante aleatorio y fenomeno de difusion

Veamos el problema del caminante aleatorio desde otro punto de vista: en el idiomade la difusion de las moleculas en un gas enrarecido. Supongamos que la molecula recorreuna distancia L entre colisiones con otras moleculas. Si asumimos los desplazamientosconsecutivos de la molecula entre colisiones estadıticamente independientes, entonces elmovimiento de la molecula es exactamente la misma que la del caminante aleatorio. Elmovimiento de tales moleculas se puede describir como cierto proceso de difusion.

El proceso de difusion se caracteriza con una relacion lineal entre el tiempo t y eldesplazamiento cudratico medio,

< ∆R(t)2 >= 2dDt (6)

El coeficiente de proporcionalidad D se denomina coeficiente de autodifusion de las molecu-las, d- dimensionalidad del espacio.

De las relaciones (5) y (6) se puede mostrar (para p=0.5) que D = l2/2τ , dondeτ = t/N .