P. 1
Percolacion

Percolacion

|Views: 68|Likes:

More info:

Published by: Guillermo Santorelli on Jul 15, 2011
Copyright:Attribution Non-commercial

Availability:

Read on Scribd mobile: iPhone, iPad and Android.
download as PDF, TXT or read online from Scribd
See more
See less

04/30/2013

pdf

text

original

PERCOLACIÓN

1

¿Qué es percolación?

Próximos vecinos: cuadrados con lado común (nn) Siguientes próximos vecinos: cuadrados con vértice común(nnn)
2

Cluster: Grupo de cuadrados nn ocupados. Teoría de la Percolación: Propiedades de los clusters. Percolación random: cada sitio de la red se ocupa aleatoriamente con probabilidad p. Ejercicio Escribir un programa que “dibuje” los sitios ocupados y vacíos en un retículo 15x15 para p = 0.3, p = 0.5 y p = 0.7. Identificar los clústers mayores.
3

300000 0 0 0 0 0 1 0 0 1 0 0 0 0 0 0 1 1 1 0 1 0 1 1 0 1 0 0 0 1 0 0 0 0 0 1 0 0 0 1 0 0 1 1 0 0 1 0 0 0 1 0 0 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 1 0 0 1 0 0 0 0 1 0 0 0 1 1 1 1 0 0 0 0 0 0 0 0 1 1 0 1 1 1 0 1 0 1 1 0 0 0 0 0 0 1 1 0 0 0 1 1 0 1 0 1 0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 1 0 0 1 0 1 0 1 0 1 0 0 0 1 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 0 0 0 0 0 1 0 0 0 0 1 0 1 1 0 0 1 1 0 0 0 0 4 .p=0.

p=0.500000 1 0 0 0 0 1 1 0 1 1 0 0 0 0 1 1 1 0 1 1 0 1 0 0 1 1 0 0 0 1 0 0 1 1 1 1 1 1 0 1 0 1 1 1 1 0 0 0 1 0 1 0 0 0 0 0 1 1 0 0 1 0 0 0 1 1 1 1 0 0 1 1 0 0 0 0 0 0 1 1 0 0 0 0 0 1 0 0 0 0 0 0 0 1 0 0 0 0 0 0 1 0 1 1 0 0 0 0 1 0 1 0 0 0 0 1 1 0 1 0 1 1 1 0 0 0 0 1 1 0 1 1 0 0 0 1 0 0 0 0 0 1 0 1 1 0 1 0 0 1 0 0 1 1 0 0 0 1 1 1 0 0 1 0 1 0 0 1 0 0 1 1 1 1 0 0 0 0 0 0 1 1 0 1 0 0 1 1 0 1 0 0 0 0 1 1 1 0 1 1 1 1 0 0 1 0 1 1 1 1 5 .

p=0.700000 1 0 0 1 1 1 0 1 0 1 1 0 0 1 0 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 1 0 0 1 1 1 1 0 1 1 0 1 0 1 0 1 1 0 0 0 1 1 1 1 1 1 1 0 1 1 1 1 1 1 0 1 1 1 1 1 1 0 1 1 0 0 1 1 1 0 0 0 1 1 1 0 0 1 1 0 1 1 1 0 1 1 0 0 1 1 1 1 1 1 0 1 0 1 1 1 1 0 1 1 1 0 1 1 1 1 0 1 0 0 1 0 1 0 1 1 1 0 0 0 1 1 0 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 0 0 1 1 1 1 1 0 1 0 1 1 1 1 1 1 1 1 1 0 0 0 1 1 1 0 0 1 1 1 1 1 1 0 1 1 0 1 1 0 1 1 1 0 0 6 .

Teoría de scaling escala: trata de describirlos. Cluster percolante: ocupa casi todo el retículo Probabilidad crítica pc donde aparece por primera vez cluster percolante Fenómenos críticos: fenómenos cerca de pc. 7 .7 sólo hay 4 clusters.Para p = 0. Si L ≈ 106 sitios. necesitamos un ordenador para analizar los clusters.

Al cabo de un barrido completo el árbol está quemado no puede seguir encendiendo a los vecinos.-Fuego en los bosques Simular un bosque por una red cuadriculada.Aplicaciones: 1. Resultado: Existe un valor crítico de p (ocupación) cerca de 0. Cuadrado ocupado: árbol verde. La “vida” del fuego es el número de barridos necesarios para que el fuego termine.5928 para el que la vida del fuego 8 . Fuego termina cuando no quedan árboles encendidos o el fuego llega a la última fila. a derecha Un árbol encendido prende a su vecino nn a la derecha y al de abajo (si existen). ¿Cuánto tiempo tarda un fuego en penetrar en el bosque o en extinguirse? Simulación: Encender todos los árboles de la primera fila Recorremos la red (bosque) por filas de izda.

5 0.4 0. De hecho aumenta con el tamaño del bosque T 0.aumenta.6 p 9 .

Resultado: Si p < pc el petróleo está distribuido en clusters finitos. 10 . La probabilidad de ocupación p se llama porosidad de la roca. Si p < pc al perforar al azar lo más probable será pinchar un cluster pequeño y el pozo será poco rentable.2. Cuadrado ocupado: petróleo.-¡Buscar petróleo! Simular un material poroso que contiene gas o petróleo. Para ganar dinero hay que perforar si p > pc.

Solución exacta en d = 1 La probabilidad de que un punto de la red (cadena ahora) sea el extremo izdo. de un cluster de 4 es 4 2 p (1 − p) Si L → ∞ #4-clusters= Lp4(1 − p)2 (sin efectos de borde) Densidad de s-clusters: ns = ps(1 − p)2 ns: Probabilidad de que un punto arbitrario de la cadena sea el extremo izdo. de un cluster de s elementos. En d = 1 si p < 1. p < pc(∗) Demostración: La probabilidad de que un sitio arbitrario pertenezca a un s-cluster es sns Todo sitio ocupado pertenece a un cluster 11 . Por lo tanto en d = 1 pc = 1 P Se cumple que s sns = p. algún punto de la cadena está vacío.

P Comprobación: s P sps(1 − p)2 = (1 − p)2 s p dp = s dp 2 d P s p dp d 1 = (1 − p)2p dp ( 1−p ) = p = (1 − p) p Para d > 1 la fórmula (*) sigue siendo válida excluyendo de la suma los clusters infinitos. Probabilidad de que un sitio ocupado pertenezca a un cluster finito de tamaño s ns es ws = P ns s s 12 . s = ∞ lo que invalida la fórmula anterior. Por la misma razón se ha impuesto p < pc.La probabilidad de que un sitio arbitrario pertenezca a un cluster de tamaño arbitrario es la probabilidad de que esté ocupado p. Si p = pc = 1 entonces sólo hay un cluster que ocupa toda la cadena.

Tamaño medio de los clusters es S= X X ns s2 ws s = P ns s Precaución: La fórmula anterior es válida en dimensión arbitraria. Recordar que hemos excluido el cluster infinito. Cálculo de S en d = 1 Denominador= p “ ”2 P 2P 2 s 2 s d Numerador= (1 − p) p dp s s p = (1 − p) sp S= 1+p (p < pc) 1−p No es sorprendente que el tamaño medio de los clusters S diverja cuando p → pc. resultado similar en d > 1. siempre que se excluya el cluster infinito. Función de Correlación g(r): probabilidad de que un sitio a distancia r de un 13 .

sitio ocupado pertenezca al mismo cluster. En d = 1 cerca de pc = 1 S 2 = 2ξ 1−p 14 . g(r = 0) = 1 trivialmente g(r = 1) = p la probabilidad de que un vecino esté ocupado es p Para un sitio a distancia r . éste y los (r − 1) sitios que hay por medio deben estar ocupados luego g(r) = pr Esta expresión puede escribirse en forma exponencial (p < 1) introduciendo la longitud de correlación ξ « „ −r g(r) = exp ξ donde 1 1 (si p pc) ξ=− log p pc − p Vemos que ξ → ∞ cerca del punto crítico ξ y S están relacionados.

γ = 43/18 en d = 2 ν = 0.En d > 1 estas relaciones se generalizan: ξ ∼ |p − pc| −ν S(p) ∼ |p − pc| −γ Los exponentes ν y γ se llaman exponentes críticos. Universalidad: modelos aparentemente no relacionados tienen exponentes críticos comunes.80 en d = 3 15 . ν = 1. γ = 1. caracterizan el comportamiento crítico.88. γ = 1 en d = 1 ν = 4/3.

1e3 0 0.1e4 400000 200000 .1.2e+06 1e+06 .96 0.8e+06 1e+06 1.04 16 .1e5 800000 600000 .98 1 p 1.98 1 p 1.02 1.04 0.96 0.4e+06 1e+05 1.02 1.6e+06 1.

Parámetro de orden P∞: probabilidad de que un sitio pertenezca al cluster percolante. En d = 1 P∞ = 0 si p < pc P∞ = 1 si p = pc = 1 En d > 1 P∞ = 0 si p < pc P∞ ∼ (p − pc)β si p ∼ pc β = 0? en d = 1 β = 5/36 en d = 2 β = 0.41 en d = 3 17 .

6 0.2 1.8 1 p 1.6 1.2 0 0 0.6 0.2 0.8 0.4 1.4 0.4 0. 1 0.8 2 18 .P∞ es parámetro de orden porque distingue entre las dos fases.

Estos comportamientos son típicos de las transiciones de fase. Relación de hiperescala: los exponentes críticos no son independientes. S(p) sería la susceptibilidad. Se demuestra que están ligados por la relación de hiperescala 2β + γ = νd 19 . como las transiciones ferromagnéticas o las térmicas. El análogo ferromagnético de P∞ sería la magnetización.

ξ no puede ser divergente. Lo que observamos cerca del punto crítico es que ξ ∼ L luego L ∼ |p − pc| es decir −ν |p − pc| ∼ L −1/ν En un retículo finito de tamaño L × L. × L tenemos los comportamientos P∞(p) ∼ (p − pc) ∼ L β −β/ν S(p) ∼ |p − pc| −γ ∼L γ/ν 20 ... como el que siempre usamos.Finite Size Scaling: (Escalado de Tamaño Finito?) En un retículo finito.

creo el cluster. si random#< p se ocupa (0). se deja vacio (-1).Programa que identifica los clusters Llenar los sitios con probabilidad p: generar un número aleatorio. si está ocupado (0) analizo el cluster. si no. ◦ Creación del cluster: Recorro los 4 vecinos nn. asigno al sitio el número de cluster. en C se puede) 21 . Recorrer los sitios de la red. (autorecurrente. si están ocupados les asigno el número de cluster y vuelvo a Crear el cluster del sitio actual. • Análisis del cluster: numero el cluster.

h> #define L 10 #define Norm 1/((float) RAND_MAX +1. crear_cluster(xa+1.#include <stdio.ya). void crear_cluster(long xa. } if(xa>0) 22 . long cluster.h> #include <math.0F) #define RAND() rand()*Norm long campo[L][L].h> #include <stdlib. long ya) { if(xa<(L-1)) if (campo[xa+1][ya]==0) { campo[xa+1][ya]=cluster.

ya). } } 23 .ya-1). crear_cluster(xa. crear_cluster(xa. } if(ya>0) if (campo[xa][ya-1]==0) { campo[xa][ya-1]=cluster.if (campo[xa-1][ya]==0) { campo[xa-1][ya]=cluster. } if(ya<(L-1)) if (campo[xa][ya+1]==0) { campo[xa][ya+1]=cluster.ya+1). crear_cluster(xa-1.

xa<L.void analiza_clusters(void) { long xa. } } } } 24 .ya. cluster=0.ya). crear_cluster(xa.xa++) { if (campo[xa][ya]==0) { cluster++.ya<L. campo[xa][ya]=cluster.ya++) { for(xa=0. for(ya=0.

void main(void) { int j. /*llenamos la red */ for(p=0. x< L.p+=0.2) { for (x=0. p=0.9.y<L.p<0.copias=1.8. x++) { for (y=0. float p. y.k.4.y++) { campo[x][y]=-1. if (RAND()<p) campo[x][y]=0. } } 25 . long x.

y>=0.x<L. /* Pinto la red analizada*/ for(y=L-1.y--) { printf("\n"). } printf("\n").campo[x][y]).x++) printf("%4i".x<L.y>=0. for (x=0./* Pinto la red -1 vacio 0 ocupado.y--) { printf("\n"). 26 .campo[x][y]). /* Analizo los clusters: los numero*/ analiza_clusters().x++) printf("%4i". for (x=0. el vertice inferior izquierd for(y=L-1. } printf("\n").

} } 27 .

p = 0.4 -1 0 -1 0 0 -1 -1 -1 0 -1 -1 12 -1 10 10 -1 -1 -1 3 -1 -1 0 -1 -1 -1 -1 -1 0 -1 -1 -1 12 -1 -1 -1 -1 -1 1 -1 -1 0 -1 0 0 -1 0 -1 0 0 0 15 -1 11 11 -1 7 -1 1 1 1 -1 0 -1 -1 -1 -1 0 -1 -1 -1 -1 13 -1 -1 -1 -1 6 -1 -1 -1 -1 0 -1 -1 0 0 -1 -1 -1 -1 -1 13 -1 -1 8 8 -1 -1 -1 -1 0 -1 0 0 0 -1 -1 0 0 -1 16 -1 8 8 8 -1 -1 4 4 -1 -1 -1 -1 0 -1 0 -1 -1 -1 0 -1 -1 -1 8 -1 9 -1 -1 -1 2 0 -1 -1 0 -1 -1 -1 -1 0 -1 17 -1 -1 8 -1 -1 -1 -1 5 -1 -1 0 -1 0 0 -1 -1 -1 0 -1 -1 14 -1 8 8 -1 -1 -1 5 -1 -1 -1 -1 0 -1 -1 -1 -1 -1 -1 -1 -1 -1 8 -1 -1 -1 -1 -1 -1 28 .

6 0 -1 0 -1 -1 0 -1 -1 0 0 -1 0 0 0 0 0 0 0 0 -1 0 -1 0 -1 -1 -1 -1 0 0 0 -1 0 -1 0 -1 0 0 0 0 0 -1 -1 -1 -1 0 0 0 0 -1 0 -1 0 0 0 0 0 0 0 -1 -1 0 -1 0 -1 0 -1 0 0 -1 0 -1 -1 0 0 0 0 -1 0 0 -1 -1 0 -1 0 0 -1 0 0 0 0 -1 -1 -1 -1 -1 0 -1 -1 -1 0 7 -1 1 -1 -1 1 -1 -1 1 1 -1 1 1 1 1 1 1 1 1 -1 8 -1 1 -1 -1 -1 -1 1 1 1 -1 5 -1 4 -1 1 1 1 1 1 -1 -1 -1 -1 1 1 1 1 -1 1 -1 1 1 1 1 1 1 1 -1 -1 9 -1 1 -1 1 -1 1 1 -1 2 -1 -1 1 1 1 1 -1 1 1 -1 -1 6 -1 1 1 -1 1 1 1 1 -1 -1 -1 -1 -1 3 -1 -1 -1 1 29 .p = 0.

8 0 -1 -1 0 0 0 -1 -1 0 -1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -1 0 0 0 0 -1 0 0 0 0 -1 0 0 -1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -1 0 0 0 0 0 0 -1 0 0 0 0 0 0 0 0 0 0 0 0 -1 -1 0 0 0 -1 0 -1 0 0 0 -1 -1 -1 0 0 0 0 1 -1 -1 1 1 1 -1 -1 1 -1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 -1 1 1 1 1 -1 1 1 1 1 -1 1 1 -1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 -1 1 1 1 1 1 1 -1 1 1 1 1 1 1 1 1 1 1 1 1 -1 -1 1 1 1 -1 1 -1 1 1 1 -1 -1 -1 1 1 1 1 30 .p = 0.

P∞(p) ∼ (p − pc)β Usar el Cumulante de Binder Programa: medir S(p) medir P∞ ≡: tamaño del cluster mayor 31 .Buscando pc en d = 2 desesperadamente P Divergencia en S(p) = nss2/p S(p) ∼ |p − pc|−γ Cero de P∞(p).

correcciones La función f es adimensional y en el punto crítico vale lo mismo para todos los retículos: f (0). L) ∼ L−β/ν f (L1/ν (p − pc)) + . P∞(p. por ejemplo. L) ∼ L−β/ν f (L/ξ).. La idea es construir un observable adimensional y medirlo para diferentes retículos. 32 . el punto de corte nos permite situar pc.Cumulante de Binder: Hemos visto cómo un observable en un retículo finito se comporta cerca del punto crítico. 2 Medimos P∞ / P∞ 2 Cálculo de exponentes críticos Cálculo de γ/ν y β/ν a partir de los resultados obtenidos para los diferentes retículos en el punto crítico pc.. Teniendo en cuenta que ξ ∼ |p − pc|−ν resulta P∞(p.

295242 453.285344 0.146055 39.094986 210.259272 0.906311 1545.010568 0.010223 0.258841 σP 0.034210 Realizamos los ajustes de dos parámetros P∞(L) = a1L 2 .265747 0.986938 966.575912 150.012502 0.009529 S 103.013599 95. S(L) = b1L donde a2 = −β/ν y b2 = γ/ν Obviamente es más fácil a b2 log P ∞ = log a1 + a2 log L log S = log b1 + b2 log L 33 .321150 0.010357 0.L 20 40 60 80 100 P∞ 0.645020 σS 12.201416 2195.

34 .

{ak })2 i=1 2 σi Condiciones de mínimo ∂χ2/∂ak = 0 . n) los valores medidos. m) En el caso de que f (x. f (x... en nuestro caso. donde {ak } representa un conjunto de parametros (k < n). a1. la solución es fácil.. luego para un conjunto de n datos las condiciones de mínimo son 35 . con errores (desviaciones típicas) σi en los puntos (exactos) xi. Sea la relación teórica y = f (x. a2) = a1 + a2x. En el caso que nos ocupa sólo tenemos 2. {ak }).. (i = 1.Ajuste de n datos experimentales a una función Sean yi. (k = 1. . ak ) = a1f1(x)+a2f2(x)+. . Objetivo: encontrar los mejores parámetros Principio de máxima verosimilitud: los mejores parámetros minimizan la expresión χ = 2 n X (yi − f (xi..

M12 = y M22 = 2 2 2 σi σi σi i=1 i=1 i=1 EL sistema lineal de ecuaciones se escribe en forma matricial Y = Ma Con solución −1 a=M Y 36 . Y2 = 2 2 σi σi i=1 i=1 n n n X 1 X xi X x2 i M11 = .n X i=1 n X i=1 (yi − a1 − a2xi)/σi = 0 2 2 (yi − a1 − a2xi)xi/σi = 0 Definiendo n n X yi X xiyi Y1 = .

Cálculo de los errores en los parámetros Sean αk los valores “exactos” de los parámetros. Caculemos el siguiente valor medio (ak − αk )(aq − αq ) de acuerdo con la solución encontrada X fj (xi) −1 (M )kj (ak − αk ) = (yi − yi) 2 σi ji Por otra parte (yi − yi)(yj − yj ) = σi δil Por tanto 2 X fj (xi)fp(xi) −1 −1 (ak − αk )(aq − αq ) = (M )kj (M )qp 2 σi jipl 37 .

de acuerdo con la definición de la matriz M (ak − αk )(aq − αq ) = (M −1 )kq Conclusión σ(ak ) = q (M −1)kk 38 .

14(3) .79 ν 24 Para calcular ν usamos la relación de hiperescala dν = γ + 2β 39 . ν 48 γ 43 = = 1. ν a comparar con los resultados “exactos” γ = 1.88(8) ν β 5 = = 0.10 .Para los datos recogidos en la tabla anterior resulta β = 0.

You're Reading a Free Preview

Descarga
scribd
/*********** DO NOT ALTER ANYTHING BELOW THIS LINE ! ************/ var s_code=s.t();if(s_code)document.write(s_code)//-->