Algoritmo de Wang Landau: mudanças entre as edições

De Física Computacional
Ir para navegação Ir para pesquisar
Rafabel (discussão | contribs)
Criou página com 'teste'
 
Rafabel (discussão | contribs)
Sem resumo de edição
 
(Uma revisão intermediária pelo mesmo usuário não está sendo mostrada)
Linha 1: Linha 1:
teste
== Modelo de Ising ==
 
Uma rede 2D que conssite de uma variável discreta em cada sítio que pode ser usada para representar o momento de dipolo magnético de um átomo
Cada sítio pode ter o valor de spin +1 ou -1.
 
O hamiltoniano pode ser calculado por
 
<math> H = -J \sum_{\langle ij \rangle}\sigma_i \sigma_j </math>
 
A soma ocorre sobre todos sítios vizinhos
 
Se considerarmos J>0 a interação é ferromagnética
 
J<0 é antiferromagnética
 
Uma maneira de estudar esse sistema é pelo algoritmo de Metropolis
 
1. Escolhe uma configuração inicial
 
2. Escolhe aleatoriamente um sitio
 
3. Flipa o spin desse sitio, recalcula a energia e a variação de energia
 
4. Gera um numero aleatorio 0 < r < 1
 
5. Se <math> r < e^{-\Delta E/k_BT} </math>, mantem o spin flipado, se não, volta
 
6. Volta para o passo 2
 
O modelo de ising também pode ser estudado pelo algoritmo de wang-landau
 
== Wang-Landau ==
 
Consideramos somente os 4 vizinhos mais proximos
 
Método para obter densidade de estados de um sistema.
 
O algoritmo de wang-landau faz uma random walk no espaço de energias
 
Ele obtem a densidade de estados como uma função da energia, g(E). Essa função é incrivelmente útil...
 
Vamos manter o g(E) e também o histograma de visitas para cada energia
 
1. setamos g(E) = 1 e um fator de modificação f=e
 
2. Aleatoriamente flipa um spin com probabilidade: <math> p(E_1 \to E_2) = min(g(E_1)/g(E_2), 1) </math>
 
3. Modifica a densidade de estados <math> g(E) \to g(E) \times f </math> e atualizamos o histograma
 
4. Continuamos até o histograma estiver reto, diminui o valor de f e reseta o histograma
 
5. Repito 2-4 até <math> \ln f \approx 1 </math>
 
=== Funções ===
 
Função de partição:
 
<math> Z = \sum g(E) e^{-E/k_BT} </math>
 
Energia interna:
 
<math> U(T) = \frac{\sum_E Eg(E) e^{-E/k_BT}}{\sum_E g(E) e^{-E/k_BT}} = \langle E \rangle </math>
 
Calor específico:
 
<math> C(T) = \frac{\partial U(T)}{\partial T} = \frac{\langle E^2 \rangle - \langle E \rangle ^2}{k_BT^2} </math>
 
Energia livre de Helmoltz:
 
<math> F(T) = -k_BT\ln(Z) = -k_BT\ln\left( \sum_E g(E) e^{-E/k_BT} \right) </math>
 
Entropia:
 
<math> S(T) = \frac{U(T) - F(T)}{T} </math>
 
 
 
== Método ==
 
=== Subtítulo ===

Edição atual tal como às 00h01min de 22 de novembro de 2021

Modelo de Ising

Uma rede 2D que conssite de uma variável discreta em cada sítio que pode ser usada para representar o momento de dipolo magnético de um átomo Cada sítio pode ter o valor de spin +1 ou -1.

O hamiltoniano pode ser calculado por

H=Jijσiσj

A soma ocorre sobre todos sítios vizinhos

Se considerarmos J>0 a interação é ferromagnética

J<0 é antiferromagnética

Uma maneira de estudar esse sistema é pelo algoritmo de Metropolis

1. Escolhe uma configuração inicial

2. Escolhe aleatoriamente um sitio

3. Flipa o spin desse sitio, recalcula a energia e a variação de energia

4. Gera um numero aleatorio 0 < r < 1

5. Se r<eΔE/kBT, mantem o spin flipado, se não, volta

6. Volta para o passo 2

O modelo de ising também pode ser estudado pelo algoritmo de wang-landau

Wang-Landau

Consideramos somente os 4 vizinhos mais proximos

Método para obter densidade de estados de um sistema.

O algoritmo de wang-landau faz uma random walk no espaço de energias

Ele obtem a densidade de estados como uma função da energia, g(E). Essa função é incrivelmente útil...

Vamos manter o g(E) e também o histograma de visitas para cada energia

1. setamos g(E) = 1 e um fator de modificação f=e

2. Aleatoriamente flipa um spin com probabilidade: p(E1E2)=min(g(E1)/g(E2),1)

3. Modifica a densidade de estados g(E)g(E)×f e atualizamos o histograma

4. Continuamos até o histograma estiver reto, diminui o valor de f e reseta o histograma

5. Repito 2-4 até lnf1

Funções

Função de partição:

Z=g(E)eE/kBT

Energia interna:

U(T)=EEg(E)eE/kBTEg(E)eE/kBT=E

Calor específico:

C(T)=U(T)T=E2E2kBT2

Energia livre de Helmoltz:

F(T)=kBTln(Z)=kBTln(Eg(E)eE/kBT)

Entropia:

S(T)=U(T)F(T)T


Método

Subtítulo