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 Falhou ao verificar gramática (MathML com retorno SVG ou PNG (recomendado para navegadores modernos e ferramentas de acessibilidade): Resposta inválida ("Math extension cannot connect to Restbase.") do servidor "https://wikimedia.org/api/rest_v1/":): {\displaystyle Q} da seguinte forma: . A quantidade nos fornece as possíveis orientações para os spins. Os valores que pode assumir são . Dessa forma, um Modelo de Potts bidimensional com 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 .
Possibilidades de spin para .
Possibilidades de spin para .

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

onde é a constante de acoplamento que determina a intensidade da interação e Falhou ao verificar gramática (MathML com retorno SVG ou PNG (recomendado para navegadores modernos e ferramentas de acessibilidade): Resposta inválida ("Math extension cannot connect to Restbase.") do servidor "https://wikimedia.org/api/rest_v1/":): {\displaystyle \delta(s_i,s_j) } é a delta de Kronecker, definida como 1 se Falhou ao verificar gramática (MathML com retorno SVG ou PNG (recomendado para navegadores modernos e ferramentas de acessibilidade): Resposta inválida ("Math extension cannot connect to Restbase.") do servidor "https://wikimedia.org/api/rest_v1/":): {\displaystyle s_i=s_j} e 0 se Falhou ao verificar gramática (MathML com retorno SVG ou PNG (recomendado para navegadores modernos e ferramentas de acessibilidade): Resposta inválida ("Math extension cannot connect to Restbase.") do servidor "https://wikimedia.org/api/rest_v1/":): {\displaystyle s_i\neq s_j} .

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 Falhou ao verificar gramática (MathML com retorno SVG ou PNG (recomendado para navegadores modernos e ferramentas de acessibilidade): Resposta inválida ("Math extension cannot connect to Restbase.") do servidor "https://wikimedia.org/api/rest_v1/":): {\displaystyle Q=2} , recaímos no conhecido Modelo de Ising.


Se incluirmos o campo magnético, o Hamiltoniado de Potts fica Falhou ao verificar gramática (MathML com retorno SVG ou PNG (recomendado para navegadores modernos e ferramentas de acessibilidade): Resposta inválida ("Math extension cannot connect to Restbase.") do servidor "https://wikimedia.org/api/rest_v1/":): {\displaystyle H_p = -J \sum_{(i,j)} \delta(s_i,s_j) - \sum_i \frac{1}{\beta} h_i s_i}

onde Falhou ao verificar gramática (MathML com retorno SVG ou PNG (recomendado para navegadores modernos e ferramentas de acessibilidade): Resposta inválida ("Math extension cannot connect to Restbase.") do servidor "https://wikimedia.org/api/rest_v1/":): {\displaystyle \beta = 1/k_B T} e Falhou ao verificar gramática (MathML com retorno SVG ou PNG (recomendado para navegadores modernos e ferramentas de acessibilidade): Resposta inválida ("Math extension cannot connect to Restbase.") do servidor "https://wikimedia.org/api/rest_v1/":): {\displaystyle h_i} é o campo magnético.

Relação com o Modelo de Ising

O Modelo de Ising é obtido quando tomamos Falhou ao verificar gramática (MathML com retorno SVG ou PNG (recomendado para navegadores modernos e ferramentas de acessibilidade): Resposta inválida ("Math extension cannot connect to Restbase.") do servidor "https://wikimedia.org/api/rest_v1/":): {\displaystyle Q=2} na expressão para Falhou ao verificar gramática (MathML com retorno SVG ou PNG (recomendado para navegadores modernos e ferramentas de acessibilidade): Resposta inválida ("Math extension cannot connect to Restbase.") do servidor "https://wikimedia.org/api/rest_v1/":): {\displaystyle \theta_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

Falhou ao verificar gramática (MathML com retorno SVG ou PNG (recomendado para navegadores modernos e ferramentas de acessibilidade): Resposta inválida ("Math extension cannot connect to Restbase.") do servidor "https://wikimedia.org/api/rest_v1/":): {\displaystyle H_I = H_p + \sum_{(i,j)}\frac{J}{2} = -J\sum_{(i,j)} \delta(s_i,s_j) + \sum_{(i,j)}\frac{J}{2} = -\frac{J}{2}\sum_{(i,j)} [2\delta(s_i,s_j) - 1]}

Vemos que se os spins são iguais, obtemos Falhou ao verificar gramática (MathML com retorno SVG ou PNG (recomendado para navegadores modernos e ferramentas de acessibilidade): Resposta inválida ("Math extension cannot connect to Restbase.") do servidor "https://wikimedia.org/api/rest_v1/":): {\displaystyle -J/2} e se os spins são diferentes, obtemos Falhou ao verificar gramática (MathML com retorno SVG ou PNG (recomendado para navegadores modernos e ferramentas de acessibilidade): Resposta inválida ("Math extension cannot connect to Restbase.") do servidor "https://wikimedia.org/api/rest_v1/":): {\displaystyle J/2} . No Modelo de Ising, nós tínhamos Falhou ao verificar gramática (MathML com retorno SVG ou PNG (recomendado para navegadores modernos e ferramentas de acessibilidade): Resposta inválida ("Math extension cannot connect to Restbase.") do servidor "https://wikimedia.org/api/rest_v1/":): {\displaystyle -J} e Falhou ao verificar gramática (MathML com retorno SVG ou PNG (recomendado para navegadores modernos e ferramentas de acessibilidade): Resposta inválida ("Math extension cannot connect to Restbase.") do servidor "https://wikimedia.org/api/rest_v1/":): {\displaystyle J} , respectivamente. Uma consequência desse fator meio de diferença é que a temperatura crítica para o Modelo de Potts, para Falhou ao verificar gramática (MathML com retorno SVG ou PNG (recomendado para navegadores modernos e ferramentas de acessibilidade): Resposta inválida ("Math extension cannot connect to Restbase.") do servidor "https://wikimedia.org/api/rest_v1/":): {\displaystyle Q=2} , é metade da temperatura crítica do Ising (Falhou ao verificar gramática (MathML com retorno SVG ou PNG (recomendado para navegadores modernos e ferramentas de acessibilidade): Resposta inválida ("Math extension cannot connect to Restbase.") do servidor "https://wikimedia.org/api/rest_v1/":): {\displaystyle T_c\approx 1.1} ) e os Falhou ao verificar gramática (MathML com retorno SVG ou PNG (recomendado para navegadores modernos e ferramentas de acessibilidade): Resposta inválida ("Math extension cannot connect to Restbase.") do servidor "https://wikimedia.org/api/rest_v1/":): {\displaystyle \Delta 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 Falhou ao verificar gramática (MathML com retorno SVG ou PNG (recomendado para navegadores modernos e ferramentas de acessibilidade): Resposta inválida ("Math extension cannot connect to Restbase.") do servidor "https://wikimedia.org/api/rest_v1/":): {\displaystyle x_0} , que em nosso caso será um spin orientado em uma direção dada por Falhou ao verificar gramática (MathML com retorno SVG ou PNG (recomendado para navegadores modernos e ferramentas de acessibilidade): Resposta inválida ("Math extension cannot connect to Restbase.") do servidor "https://wikimedia.org/api/rest_v1/":): {\displaystyle Q} .


2) Através de um sorteio aleatório, com Falhou ao verificar gramática (MathML com retorno SVG ou PNG (recomendado para navegadores modernos e ferramentas de acessibilidade): Resposta inválida ("Math extension cannot connect to Restbase.") do servidor "https://wikimedia.org/api/rest_v1/":): {\displaystyle Prob = \frac{1}{N}} , escolhemos um candidato Falhou ao verificar gramática (MathML com retorno SVG ou PNG (recomendado para navegadores modernos e ferramentas de acessibilidade): Resposta inválida ("Math extension cannot connect to Restbase.") do servidor "https://wikimedia.org/api/rest_v1/":): {\displaystyle x'} .

3) Calculamos a prababilidade de aceitação desse candidato atráves de Falhou ao verificar gramática (MathML com retorno SVG ou PNG (recomendado para navegadores modernos e ferramentas de acessibilidade): Resposta inválida ("Math extension cannot connect to Restbase.") do servidor "https://wikimedia.org/api/rest_v1/":): {\displaystyle A(x',x_t) = min \left(1,\frac{P(x')}{P(x_t)} \right)} , onde Falhou ao verificar gramática (MathML com retorno SVG ou PNG (recomendado para navegadores modernos e ferramentas de acessibilidade): Resposta inválida ("Math extension cannot connect to Restbase.") do servidor "https://wikimedia.org/api/rest_v1/":): {\displaystyle P(x') = e^{-\beta E_{x'}}}

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

a) Geramos um número aleatório uniforme Falhou ao verificar gramática (MathML com retorno SVG ou PNG (recomendado para navegadores modernos e ferramentas de acessibilidade): Resposta inválida ("Math extension cannot connect to Restbase.") do servidor "https://wikimedia.org/api/rest_v1/":): {\displaystyle u \in [0,1]} ;

b) Se Falhou ao verificar gramática (MathML com retorno SVG ou PNG (recomendado para navegadores modernos e ferramentas de acessibilidade): Resposta inválida ("Math extension cannot connect to Restbase.") do servidor "https://wikimedia.org/api/rest_v1/":): {\displaystyle u\leq A(x',x_t)} , ou seja Falhou ao verificar gramática (MathML com retorno SVG ou PNG (recomendado para navegadores modernos e ferramentas de acessibilidade): Resposta inválida ("Math extension cannot connect to Restbase.") do servidor "https://wikimedia.org/api/rest_v1/":): {\displaystyle u\leq e^{-\beta (E_{x'} - E_{x_t})}} , aceitamos o novo estado e definimos Falhou ao verificar gramática (MathML com retorno SVG ou PNG (recomendado para navegadores modernos e ferramentas de acessibilidade): Resposta inválida ("Math extension cannot connect to Restbase.") do servidor "https://wikimedia.org/api/rest_v1/":): {\displaystyle x_{t+1}=x'} ;

c) E se Falhou ao verificar gramática (MathML com retorno SVG ou PNG (recomendado para navegadores modernos e ferramentas de acessibilidade): Resposta inválida ("Math extension cannot connect to Restbase.") do servidor "https://wikimedia.org/api/rest_v1/":): {\displaystyle u>A(x',x_t)} , ou seja Falhou ao verificar gramática (MathML com retorno SVG ou PNG (recomendado para navegadores modernos e ferramentas de acessibilidade): Resposta inválida ("Math extension cannot connect to Restbase.") do servidor "https://wikimedia.org/api/rest_v1/":): {\displaystyle u\leq e^{-\beta (E_{x'} - E_{x_t})}} , rejeitamos o novo estado e continuamos com o estado antigo para frente Falhou ao verificar gramática (MathML com retorno SVG ou PNG (recomendado para navegadores modernos e ferramentas de acessibilidade): Resposta inválida ("Math extension cannot connect to Restbase.") do servidor "https://wikimedia.org/api/rest_v1/":): {\displaystyle x_{t+1}=x_t} ;

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 Falhou ao verificar gramática (MathML com retorno SVG ou PNG (recomendado para navegadores modernos e ferramentas de acessibilidade): Resposta inválida ("Math extension cannot connect to Restbase.") do servidor "https://wikimedia.org/api/rest_v1/":): {\displaystyle L^2} spins é percorrida pelo algoritmo. Ao final de Falhou ao verificar gramática (MathML com retorno SVG ou PNG (recomendado para navegadores modernos e ferramentas de acessibilidade): Resposta inválida ("Math extension cannot connect to Restbase.") do servidor "https://wikimedia.org/api/rest_v1/":): {\displaystyle L^2} flips de spin (seja com probabilidade Falhou ao verificar gramática (MathML com retorno SVG ou PNG (recomendado para navegadores modernos e ferramentas de acessibilidade): Resposta inválida ("Math extension cannot connect to Restbase.") do servidor "https://wikimedia.org/api/rest_v1/":): {\displaystyle 1} ou com probabilidade Falhou ao verificar gramática (MathML com retorno SVG ou PNG (recomendado para navegadores modernos e ferramentas de acessibilidade): Resposta inválida ("Math extension cannot connect to Restbase.") do servidor "https://wikimedia.org/api/rest_v1/":): {\displaystyle \exp(-\beta \Delta E)} ), contamos um MCS. Além disso, em todas as simulações, utilizamos Falhou ao verificar gramática (MathML com retorno SVG ou PNG (recomendado para navegadores modernos e ferramentas de acessibilidade): Resposta inválida ("Math extension cannot connect to Restbase.") do servidor "https://wikimedia.org/api/rest_v1/":): {\displaystyle T=1} em unidades de Falhou ao verificar gramática (MathML com retorno SVG ou PNG (recomendado para navegadores modernos e ferramentas de acessibilidade): Resposta inválida ("Math extension cannot connect to Restbase.") do servidor "https://wikimedia.org/api/rest_v1/":): {\displaystyle k_B} .

Em todas as simulações, o estado inicial utilizado foi uma rede quadrada de tamanho Falhou ao verificar gramática (MathML com retorno SVG ou PNG (recomendado para navegadores modernos e ferramentas de acessibilidade): Resposta inválida ("Math extension cannot connect to Restbase.") do servidor "https://wikimedia.org/api/rest_v1/":): {\displaystyle 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 Falhou ao verificar gramática (MathML com retorno SVG ou PNG (recomendado para navegadores modernos e ferramentas de acessibilidade): Resposta inválida ("Math extension cannot connect to Restbase.") do servidor "https://wikimedia.org/api/rest_v1/":): {\displaystyle Q=2} e Falhou ao verificar gramática (MathML com retorno SVG ou PNG (recomendado para navegadores modernos e ferramentas de acessibilidade): Resposta inválida ("Math extension cannot connect to Restbase.") do servidor "https://wikimedia.org/api/rest_v1/":): {\displaystyle 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 e , 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 e , 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 e , 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 e , 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 e , 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 os valores de energia média ficaram mais dispersos que em relação à .

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.