Modelo de Potts - 2D

De Física Computacional
Ir para navegação Ir para pesquisar

O Modelo

Modelo de Potts pode ser considerado uma generalização do Modelo de Ising. Enquanto no Ising, os spins podem assumir valores 1 ou -1, no Modelo de Potts, os spins podem assumir valores que dependem de uma variavél Q da seguinte forma: θn=2πnQ. A quantidade θn nos fornece as possíveis orientações para os spins. Os valores que n pode assumir são n=1,2,3,...,Q. Dessa forma, um Modelo de Potts bidimensional com Q=10 possui uma rede bidimensional de spins com 10 orientações diferentes. Nas figuras abaixo podemos ver três possíveis orientações dos spins.

Possibilidades de spin para Q=2.
Possibilidades de spin para Q=3.
Possibilidades de spin para Q=4.

O Hamiltoniano de interação, na ausência de campo magnético, pode ser escrito como

Hp=J(i,j)δ(si,sj)

onde J é a constante de acoplamento que determina a intensidade da interação e δ(si,sj) é a delta de Kronecker, definida como 1 se si=sj e 0 se sisj.

Uma característica importante desse modelo é que as orientações em si não são relevantes, uma vez que o Hamiltoniano é definido por uma Delta de Kronecker. A única informação relevante é se os spins são iguais ou diferentes. Conforme veremos adiante, para o caso de Q=2, recaímos no conhecido Modelo de Ising.


Se incluirmos o campo magnético, o Hamiltoniado de Potts fica Hp=J(i,j)δ(si,sj)i1βhisi

onde β=1/kBT e hi é o campo magnético.

Relação com o Modelo de Ising

O Modelo de Ising é obtido quando tomamos Q=2 na expressão para θn. Para que possamos reescrever o Hamiltoniano de Potts em uma forma semelhante ao Hamiltoniano de Ising, vamos somar uma constante aditiva, de modo que o Hamiltoniano fica

HI=Hp+(i,j)J2=J(i,j)δ(si,sj)+(i,j)J2=J2(i,j)[2δ(si,sj)1]

Vemos que se os spins são iguais, obtemos J/2 e se os spins são diferentes, obtemos J/2. No Modelo de Ising, nós tínhamos J e J, respectivamente. Uma consequência desse fator meio de diferença é que a temperatura crítica para o Modelo de Potts, para Q=2, é metade da temperatura crítica do Ising (Tc1.1) e os ΔEs nos histogramas de energia também são metade.

Algoritmo de Metropolis

Vamos implementar o Modelo de Potts utilizando o algoritmo de Metropolis.

O algoritmo de Metropolis é um método de Cadeia de Markov Monte Carlo (MCMC) para obter amostras aleatórias a partir de uma distribuição de probabilidade da qual a amostragem direta é difícil. O procedimento para a implementação do algoritmo é apresentado abaixo.

1) Escolhemos um estado inicial x0, que em nosso caso será um spin orientado em uma direção dada por Q.


2) Através de um sorteio aleatório, com Prob=1N, escolhemos um candidato x.

3) Calculamos a prababilidade de aceitação desse candidato atráves de A(x,xt)=min(1,P(x)P(xt)), onde P(x)=eβEx

4) E então aceitamos ou rejeitamo este novo candidato da seguinte forma:

a) Geramos um número aleatório uniforme u[0,1];

b) Se uA(x,xt), ou seja ueβ(ExExt), aceitamos o novo estado e definimos xt+1=x;

c) E se u>A(x,xt), ou seja ueβ(ExExt), rejeitamos o novo estado e continuamos com o estado antigo para frente xt+1=xt;

d) Ao final desse processo, voltamos para o passo 2).

Resultados das simulações

Definimos um Monte Carlo Step (MCS) como sendo o tempo em que a rede bidimensional quadrada com L2 spins é percorrida pelo algoritmo. Ao final de L2 flips de spin (seja com probabilidade 1 ou com probabilidade exp(βΔE)), contamos um MCS. Além disso, em todas as simulações, utilizamos T=1 em unidades de kB.

Em todas as simulações, o estado inicial utilizado foi uma rede quadrada de tamanho L com spins aleatórios. Isso justifica a diferença na energia inicial de cada simulação. Como os spins eram diferentes (ordenados de forma aleatória), a energia inicial também era diferente para cada simulação.

Energia (T=1)

Energia em cada MCS para Q indo de 2 até 10 e L = 64 utilizando o algoritmo de Metropolis.
Alt text
Energia média por MCS para Q = 2, L = 64 e T = 1.
Alt text
Energia média por MCS para Q = 2, L = 64 e T = 1.
Alt text
Energia média por MCS para Q = 3, L = 64 e T = 1.
Alt text
Energia média por MCS para Q = 3, L = 64 e T = 1.
Alt text
Energia média por MCS para Q = 7, L = 64 e T = 1.
Alt text
Energia média por MCS para Q = 7, L = 64 e T = 1.

Na primeira figura, vemos a série temporal da energia para Q=2 e T=1, enquanto na segunda figura, vemos um histograma de energia para energia. Podemos observar que a energia tende ao valor próximo a -700.

Na terceira figura, vemos a série temporal da energia para Q=3 e T=1, enquanto na quarta figura, vemos um histograma de energia para energia. Podemos observar que a energia tende ao valor próximo a -1850.

Na quinta figura, vemos a série temporal da energia para Q=7 e T=1, enquanto na sexta figura, vemos um histograma de energia para energia. Podemos observar que a energia tende ao valor próximo a -2900.

Energia (T=2)

Energia em cada MCS para Q indo de 2 até 10 e L = 64 utilizando o algoritmo de Metropolis.
Alt text
Energia média por MCS para Q = 2, L = 64 e T = 2.
Alt text
Energia média por MCS para Q = 2, L = 64 e T = 2.
Alt text
Energia média por MCS para Q = 3, L = 64 e T = 2.
Alt text
Energia média por MCS para Q = 3, L = 64 e T = 2.
Alt text
Energia média por MCS para Q = 7, L = 64 e T = 2.
Alt text
Energia média por MCS para Q = 7, L = 64 e T = 2.

Na primeira figura, vemos a série temporal da energia para Q=2 e T=2, enquanto na segunda figura, vemos um histograma de energia para energia. Podemos observar que a energia tende ao valor próximo a -5000.

Na terceira figura, vemos a série temporal da energia para Q=3 e T=2, enquanto na quarta figura, vemos um histograma de energia para energia. Podemos observar que a energia tende ao valor próximo a -2850.

Na quinta figura, vemos a série temporal da energia para Q=7 e T=2, enquanto na sexta figura, vemos um histograma de energia para energia. Podemos observar que a energia tende ao valor próximo a -3400.

É possível observar que para T=2 os valores de energia média ficaram mais dispersos que em relação à T=1. Além disso, há uma grande diferença entre os resultados de T=2 e T=1 para Q=2. Vemos que para uma temperatura mais baixa, o sistema se comporta de forma mais

Códigos utilizados

O código foi escrito em Fortran.

Metropolis - Potts 2D

Referências

D. P. Landau, K. Binder. A Guide Monte Carlo Simulations in Statistical Physics. Cambridge University. New York. 2000.

L. M. Barone, E. Marinari, G. Organtini, F. Ricci-Tersengui. Scientific Programming: C-Language, Algorithms and Models in Science. World Scientific. Singapore. 2013.