Modelo de Potts -- 2D

De Física Computacional
Revisão de 19h32min de 25 de maio de 2026 por Velasquez (discussão | contribs)
Ir para navegação Ir para pesquisar

Introdução

O Modelo de Potts

O modelo de Potts (Potts, 1951) pode ser descrito como uma generalização do modelo de Ising (Ising, 1925) para um sistema de N spins e Q-estados (Q > 2).

Originalmente, o problema proposto por Domb era o de compreender o modelo de Ising como um sistema de spins, em que os spins podem ser paralelos ou antiparalelos. Desse modo, a generalização seria considerar que os spins estivessem sobre um plano, em que cada spin estivesse apontando para direções diferentes, igualmente espaçadas por um ângulo Θ definido por Q:


Θn=2πnQ, em que n = (0, 1, 2, ..., Q-1). [1]


Representação dos spins para Q=2.
Representação dos spins para Q=3.
Representação dos spins para Q=4.

[2]

A energia de cada interação entre dois spins é dada pelo potencial V(si,sj)=Jδ(si,sj), em que J é a constante de interação entre os dois spins [3]. Esse tipo de sistema o Hamiltoniano da forma:

=Ji,jδ(si,sj)

Para o caso em que o modelo de Potts é equivalente ao modelo de Ising, temos que Q = 2, então:

Θn=πn, n = (0, 1, 2, ..., Q-1)

[3]

Objetivos

Neste trabalho, buscamos analisar o comportamento do sistema utilizando dois algoritmos diferentes: o Algoritmo de Metropolis-Hastings e o Algoritmo de Banho Térmico. A partir deles, comparamos a temperatura do sistema com a energia, em cada um dos algoritmos. Depois, com FSS, aplicamos o método de U4 para analisar o comportamento do sistema em diferentes temperaturas, para valores diferentes de L. Por fim, procuramos analisar a susceptibilidade magnética e o calor específico bruto, também com L de diferentes valores.

Metodologia

Para realizar este trabalho, utilizamos uma rede quadrada 2D de comprimento L com N=L*L spins. A rede possui condições de contorno periódicas e vizinhança de von Neumann para primeiros vizinhos. A constante de interação é J=1 e para o banho térmico β=1.

Método de Monte Carlo

No método de Monte Carlo, começamos sorteando aleatoriamente os spins da rede. Em cada passo de Monte Carlo (MCS), sorteamos spins aleatoriamente N vezes, de modo que cada spin tenha uma chance 1/N de ser sorteado. Quando sorteado, um novo valor (diferente do anterior) para esse spin é escolhido e aceito com base em critérios estabelecidos por cada algoritmo. Esse processo acontece em 1 passo de Monte Carlo e número total de passos de Monte Carlo para cada algoritmo foi escolhido separadamente, levando em conta número de passos do estado transiente em cada algoritmo.

Algoritmo de Metropolis-Hasting

(texto retirado de : [3])

O primeiro algoritmo utilizado para gerar as configurações do sistema foi o algoritmo de Metropolis-Hasting. O algoritmo escolhe repetidamente um novo estado para o sistema ν e aceitando ou rejeitando ele de acordo com uma probabilidade de aceitação A(μν) de transitar de um estado antigo μ para o novo estado ν. O algoritmo que iremos descrever utiliza a dinâmica de inversão única de spins.

Temos que a condição de balanceamento detalhado é dada por [4]:

A(μν)A(νμ)=eβΔE,(3)

onde ΔE=EνEμ é a diferença de energia entre o novo e o antigo estado.

Vamos supor que tenhamos os estados μ e ν e que temos a relação de energias: Eμ<Eν. Então, a maior das duas chances de aceitação é A(νμ), portanto iremos igualar essa probabilidade a 1. Para que (3) seja respeitada, iremos definir o valor de A(μν) como eβΔE. Temos, assim, o algoritmo de Metropolis-Hasting:

A(μν)={eβΔE,se ΔE>01,caso contrario.

Dessa forma, sempre que tivermos um estado cuja energia seja menor do que a do estado atual, iremos aceitar a transição, mas se a energia for maior, teremos uma pequena probabilidade de trocarmos de estado.

Algoritmo de Banho Térmico

(texto retirado de : [3])

O algoritmo de Metropolis-Hasting para inversão única de spins é eficaz para o modelo de Potts em baixos valores de Q ou temperaturas acima da temperatura crítica, entretanto para valores altos de Q ou baixas temperaturas o algoritmo falha em convergir o sistema rapidamente para o estado estacionário.

Considerando um caso onde Q=100 e um spin que possui 4 vizinhos, se todos os vizinhos do spin possuem valores diferentes uns do outro e do próprio spin, poderá levar em média 100/4=25 passos de Monte Carlo para sortear um novo valor de q que tem a transição aceita, e dessa forma o algoritmo irá demorar mais tempo para alcançar a configuração de equilíbrio do sistema. A dificuldade de aceitar transições é maior ainda para baixas temperaturas, onde a probabilidade de transicionar para um novo estado tem um peso maior para qualquer q diferente dos spins da vizinhança, dessa maneira poderá demorar 96 passos para gerar um spin que seja igual a algum spin da vizinhança e realizar a transição. Para contornar este problema podemos utilizar o algoritmo de banho térmico.

O algoritmo de banho térmico, assim como o metropolis, é um algoritmo em que mudamos um spin por vez. O algoritmo segue as seguintes etapas: primeiro escolhemos um spin na rede (i), e independente do seu valor atual, escolhemos um novo valor para si. Esse novo valor será aceito, ou não, de acordo com os pesos de Boltzmann. Temos que no algoritmo de Banho Térmico nós atribuímos um valor n, entre 1 e q, ao spin com uma probabilidade

A(μν)=eβEνm=1qeβEm,

onde En é a energia do sistema quando si=n e o somatório é dado em todas energias possíveis. Pelo fato desse algoritmo permitir que o spin assuma qualquer valor ele satisfaz a condição de ergodicidade. Temos que A(μν)=aν e A(νμ)=aμ, assim, pela descrição do algoritmo temos

A(μν)A(νμ)=aνaμ=eβEνm=1qeβEm×m=1qeβEmeβEμ=eβΔE.

Ou seja, o algoritmo de banho térmico respeita a condição de balanço detalhado.

Veremos que para valores pequenos de q (como q=2, que é o modelo de Ising), o algoritmo de Metropolis é mais eficiente. Porém, para valores altos de q ou altas temperaturas o algoritmo de banho térmico é mais eficiente.

Resultados

Comparando os Algoritmos em Q=2

Aqui se encontram os resultado para Q=2. As simulações foram realizadas para MCS = 50.000 passos. O transiente para o banho térmico foi de 500 passos, pois a simulação atingiu o estado estacionário rapidamente, enquanto para o algoritmo de Metropolis foram necessários 10.000 passos para atingir esse estado. Os valores de energia usados foram obtidos a partir da média dos valores de energia no estado estacionário.

Energia Média pela Temperatura para cada algoritmo, com L=64 e Q=2,3,4. Susceptibilidade pela Temperatura para os dois algoritmos, com L=64 e Q=2,3,4.
Calor específico pela Temperatura para os dois algoritmos, com L=64 e Q=2,3,4. Magnetização Média pela Temperatura para os dois algoritmos, com L=64 e Q=2,3,4.

Aqui observamos que o modelo realmente se aproxima do modelo de ISING quando Q=2. Primeiramente, vemos que a temperatura crítica do Potts Q=2 se aproxima à temperatura crítica do modelo de ISING, que sabemos que é TC1.1346. Além disso, vemos que na energia média os dois algoritmos apresentam resultados praticamente idênticos. Nos gráficos de calor específico e de susceptibilidade também vemos esse comportamento na maior parte do intervalo da temperatura, com exceção dos picos apresentados em cada gráfico que vemos que os algoritmos se diferenciam próximos à região da temperatura crítica: o Metropolis-Hastings parece chegar a valores menores que o Banho Térmico (mas julgamos necessário plotar mais pontos para afirmar isto). Por fim, na magnetização, ambos os algoritmos apresentam grandes variações num período inicial de T, mas logo após atingir a temperatura crítica, os algoritmos se tornam quase indistinguíveis e mantém valores muito próximos até T = 2.

Comparação entre os casos Q <= 4 (com Metropolis)

Aqui, colocamos a comparação dos resultados obtidos para Q = 2,3,4. Comparamos as mesmas grandezas que na seção anterior (Energia Média, Magnetização Média, Susceptibilidade Magnética e Calor Específico) utilizado apenas o algoritmo de Metropolis-Hastings para L = 64 e 0.5T<2.0.

Energia Média pela Temperatura para cada algoritmo, com L=64 e Q=2,3,4. Susceptibilidade pela Temperatura para os dois algoritmos, com L=64 e Q=2,3,4.
Calor específico pela Temperatura para os dois algoritmos, com L=64 e Q=2,3,4. Magnetização Média pela Temperatura para os dois algoritmos, com L=64 e Q=2,3,4.

Nos quatro gráficos, observamos que os pontos de transição de fase (ou pontos de temperatura crítica) são TC0.9 para Q = 4, TC1.0 para Q = 3 e TC1.1 para Q = 2. Observamos na primeira figura que a energia do sistema (depois dos pontos de transição de fase) aumenta a sua curvatura se tornando cada vez mais acentuada, mas o comportamento geral das curvas se assemelham entre si em todo o intervalo de temperatura do sistema utilizado. Portanto, a partir das três curvas, podemos assumir que a curva da energia do sistema se aproxima de uma descontinuidade no ponto crítico a medida que Q aumenta. Na susceptibilidade magnética, vemos que o comportamento em Q = 3 se diferencia muito das curvas de Q = 2 e Q = 4. Isso indica que o algoritmo de Metropolis oscilou bastante nessa região, o que nos da indícios de um comportamento crítico/extremo nessa região. Para calor específico, notamos que nos pontos de transição de fase para Q = 3 e Q = 4 há picos que se destacam dos outros pontos da curva, enquanto que para Q = 2 esse pico não é tão extremo. Isso nos indica que a energia necessária para o sistema realinhar seus spins é muito grande nos dois primeiros casos citados, enquanto que no equivalente ao modelo de ISING essa energia não é tão grande. Por fim, na magnetização média, inicialmente notamos um ruído para valores de temperatura menores que a temperatura crítica. Depois disso, eles estabilizam em valores específicos, que são as médias dos valores de spins definidos em cada caso (ex.: em Q = 2 definimos spins 0 e 1, então a média é 0.5).

FSS

O Finite Size Scaling (FSS) é uma ferramenta computacional que nos permite pegar uma rede de tamanho finito (como L = 64) e descobrir como ela se comportaria no limite termodinâmico quando L tende a infinito. Em Q = 2, sabemos que a susceptibilidade e o calor específico deveriam ir para o infinito quando T = Tc. Contudo, como a nossa rede tem tamanho finito, observamos que em Q = 2 não é isso que acontece. Portanto, usamos essa ferramenta nas simulações a fim de verificar estes resultados já conhecidos na literatura.

U4

Esse U4 é uma ferramenta estatística que mede o 'quarto momento' das flutuações de magnetização, isso significa que ele vai dizer se o sistema está bem ordenado ou completamente caótico. Quando a temperatura é baixa (sistema perfeitamente ordenado), a medida para todos os tamanhos de rede tende a 2/3. Em temperaturas altas (sistema é um caos), a medida vai a zero.

Exatamente na transição de fase, o valor não depende do tamanho L da rede, então as curvas vão convergir.

Ferramenta U4 pela temperatura, com L=16,32,64 e Q=2.

Susceptibilidade Magnética

A susceptibilidade magnética mede o quão 'sensível' o sistema é. Se fosse aplicado um campo magnético minúsculo, o quanto o sistema responderia mudando sua magnetização? Estatisticamente, isso é calculado através das flutuações (variância) da magnetização. O que acontece é que longe da temperatura crítica, os spins estão ou muito ordenados ou muito caóticos. Em ambos os casos, as flutuações globais são pequenas, então a susceptibilidade é baixa. Perto da temperatura crítica, o sistema não está nem muito ordenado, nem muito caótico, então flutuam violentamente. Por isso, a susceptibilidade é altíssima e diverge para o infinito na temperatura crítica. Como na simulação a rede é finita, o comprimento de correlação (tamanho de domínios de spins que flutuam muito) tenta crescer, mas 'bate nas paredes' que tem tamanho finito L da rede. É por isso que o pico não vai propriamente a infinito.

A teoria diz que, muito perto do ponto crítico, a física do sistema 'esquece' os detalhes microscópicos da rede e passa a depender somente da proporção entre o tamanho do sistema e o comprimento de correlação. Nós sabemos que no ponto crítico o pico máximo da susceptibilidade deve crescer como Lγ/ν. Então se nós pegarmos o eixo Y e dividirmos por Lγ/ν, estamos achatando os picos na mesma proporção. Da mesma forma, estivamos o eixo X multiplicando por L1/ν.

Susceptibilidade magnética bruta pela temperatura e seu colapso, com L=16,32,64 e Q=2.

Calor Específico

O calor específico mede a a variância de energia. Perto da temperatura crítica, como os spins estão virando em blocos massivos, a energia total do sistema oscila drasticamente. A variância da energia sobe, criando o pico do calor específico. A teoria nos diz que o expoente crítico que governa o calor específico é o α. Para a imensa maioria dos modelos 3D, α é um número positivo, fazendo o pico crescer muito rápido com L. Mas, incrivelmente, para o modelo de Potts Q=2 (Ising) em duas dimensões, α=0. Quando isso acontece, a divergência não é uma lei de potência normal, mas sim logarítmica. É por isso que, quando olhamos o gráfico de Cv o pico da rede de 64 é maior que o da rede 16, mas ele cresce de forma mais suave, proporcional ao ln(L).

Calor específico pela temperatura, com L=16,32,64 e Q=2.

Conclusões

Com isso, vemos que os métodos utilizados para a simulação destes sistemas foram eficientes e renderam resultados que concordam com o que já obtivemos na literatura.

Código

Para gerar estas simulações, foi produzido um código em Python3. Utilizamos as bibliotecas seguintes bibliotecas: Numpy, em que usamos os gerador de números aleatórios e as arrays; Numba, para otimizar as funções e acelerar o código; e Matplotlib, que utilizamos para gerar os códigos.

Link: https://colab.research.google.com/drive/1V7GsP-fEIkhU29QCPvh_UcZKIXtupR7p?usp=sharing

Referências

  1. F. Y. Wu, The Potts Model, Rev. Mod. Phys. 54, 235, 1982
  2. https://fiscomp.if.ufrgs.br/index.php?title=Modelo_de_Potts_-_2D
  3. 3,0 3,1 3,2 3,3 https://fiscomp.if.ufrgs.br/index.php?title=Modelo_de_Potts_2D
  4. M. E. J. Newman, G. T. Barkema, "Monte Carlo Methods in Statistical Physics". Oxford University Press Inc., New York, 1999.