물리:이징_사슬

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
Last revisionBoth sides next revision
물리:이징_사슬 [2018/03/08 12:49] minjae물리:이징_사슬 [2022/01/19 16:01] minwoo
Line 22: Line 22:
 $$\sum_{\sigma_1=\pm1}e^{K\sigma_1(\sigma_N+\sigma_2)+h\sigma_1} = 2\cosh\left[K(\sigma_N+\sigma_2)+h\right]$$ $$\sum_{\sigma_1=\pm1}e^{K\sigma_1(\sigma_N+\sigma_2)+h\sigma_1} = 2\cosh\left[K(\sigma_N+\sigma_2)+h\right]$$
 이 된다. $\sigma^{2n}=1,\,\sigma^{2n+1}=\sigma$임을 이용하여 식을 좀 더 정리해보면 이 된다. $\sigma^{2n}=1,\,\sigma^{2n+1}=\sigma$임을 이용하여 식을 좀 더 정리해보면
-\begin{equation}\notag +\begin{align*
-\sum\limits_{\sigma_{1}\pm1}e^{K\sigma_{1}(\sigma_{N}+\sigma_{2})+h\sigma_{1}+\frac{h}{2}(\sigma_{N}+\sigma_{2})}=2e^{\frac{h}{2}(\sigma_{N}+\sigma_{2})}\cosh\left[K(\sigma_{N}+\sigma_{2})+h\right]+\sum_{\sigma_1=\pm1}e^{K\sigma_1(\sigma_N+\sigma_2)+h\sigma_1+h(\sigma_N+\sigma_2)/2} &= 2e^{h(\sigma_N+\sigma_2)/2}\cosh\left[K(\sigma_N+\sigma_2)+h\right]\\ 
 +&= \exp\left\{2g K^\prime\sigma_N\sigma_2 + \frac{1}{2}h^\prime(\sigma_N+\sigma_2)\right\}
 \label{renorm} \label{renorm}
-\end{equation}+\end{align*}
 로 나타낼 수 있다. 여기서 로 나타낼 수 있다. 여기서
 $$K^{\prime}=\frac{1}{4}\ln\frac{\cosh(2K+h)\cosh(2K-h)}{\cosh^{2}h},$$ $$K^{\prime}=\frac{1}{4}\ln\frac{\cosh(2K+h)\cosh(2K-h)}{\cosh^{2}h},$$
Line 34: Line 35:
 \sum\limits_{\sigma_{1},\sigma_{3},\ldots,\sigma_{N-1}}e^{H}=\exp\left\{{Ng(K,h)+K^{\prime}\sum\limits_{i}\sigma_{2i}\sigma_{2i+2}+h^{\prime}\sum\limits_{i}\sigma_{2i}}\right\} \sum\limits_{\sigma_{1},\sigma_{3},\ldots,\sigma_{N-1}}e^{H}=\exp\left\{{Ng(K,h)+K^{\prime}\sum\limits_{i}\sigma_{2i}\sigma_{2i+2}+h^{\prime}\sum\limits_{i}\sigma_{2i}}\right\}
 \end{equation} \end{equation}
-을 얻게 된다. 이 결과를 $\sum\limits_{{\sigma_{i}}=\pm1}e^{H}$에 대입하면+을 얻게 된다. 이 결과를 $\sum_\limits{\{\sigma_i\}=\pm1}e^{H}$에 대입하면
 \begin{equation}\notag \begin{equation}\notag
-\sum\limits_{{\sigma_{i}}=\pm}e^{H}=\sum\limits_{\sigma_{2}=\pm1}\sum\limits_{\sigma_{4}=\pm1}\cdots\sum\limits_{\sigma_{N}=\pm1}\exp\left\{{Ng(K,h)+K^{\prime}\sum\limits_{i}\sigma_{2i}\sigma_{2i+2}+h^{\prime}\sum\limits_{i}\sigma_{2i}}\right\}+\sum_{\{\sigma_i\}=\pm1}e^H=\sum_{\sigma_2=\pm1}\sum_{\sigma_4=\pm1}\cdots\sum_{\sigma_N=\pm1}\exp\left\{{Ng(K,h)+K^{\prime}\sum\limits_{i}\sigma_{2i}\sigma_{2i+2}+h^{\prime}\sum\limits_{i}\sigma_{2i}}\right\}
 \end{equation} \end{equation}
 이 된다. 결과식의 형태를 보면 짝수번째 스핀에 대한 합이 분배함수 $Z_{c}$와 닮은 형태를 가지는 것을 알 수 있다. 이것은 처음의 물리계가 짝수번째 스핀들이 자기장 $h^{\prime}$ 속에서 결합계수 $K^{\prime}$로 가장 가까이 있는 스핀들과 상호작용하는 물리계로 치환될 수 있음을 보여준다. 그러므로 처음의 분배함수는 이 된다. 결과식의 형태를 보면 짝수번째 스핀에 대한 합이 분배함수 $Z_{c}$와 닮은 형태를 가지는 것을 알 수 있다. 이것은 처음의 물리계가 짝수번째 스핀들이 자기장 $h^{\prime}$ 속에서 결합계수 $K^{\prime}$로 가장 가까이 있는 스핀들과 상호작용하는 물리계로 치환될 수 있음을 보여준다. 그러므로 처음의 분배함수는
Line 73: Line 74:
 $$\frac{\partial h^{\prime}}{\partial h}>1$$ $$\frac{\partial h^{\prime}}{\partial h}>1$$
 이 된다는 것을 확인할 수 있다. 결론적으로 재규격화 과정이 진행될수록 처음의 물리계는 $K$의 값은 점점 작아져 $K=0$에 가까워지고 $h$의 값은 점점 더 커지는 물리계로 치환된다고 할 수 있다. 이 된다는 것을 확인할 수 있다. 결론적으로 재규격화 과정이 진행될수록 처음의 물리계는 $K$의 값은 점점 작아져 $K=0$에 가까워지고 $h$의 값은 점점 더 커지는 물리계로 치환된다고 할 수 있다.
 +
 +$\\$ $\\$ $\\$
 +앞서 설명된 '재규격화'는 크게 2가지의 과정으로 나뉘는데,
 +
 +하나는 coarse graining 과정, 다른 하나는 rescaling 이다.
 +
 +coarse graining은 '대충 갈기' 또는 '대충 뽑기' 라고 번역할 수 있는데, 이러한 의미를 잘 이해하기 위해
 +
 +아래의 '블록 스핀 (block spin)'에 대한 설명을 보자.
 +
 +====== 블록 스핀 (Block spin) ======
 +
 +아래의 그림 중 왼쪽은, 어느 특정 시점에서 10x10개의 2차원 이징 모형 스핀 배열의 원본이고,
 +오른쪽 그림은 그러한 왼쪽의 배열을 '블록 스핀'의 개념을 이용하여 수행한 변환을 표현한 것이다.
 +
 +(이해를 돕기 위해 그림판을 이용하여 간단히 그려보았다. 실제로는 랜덤하게 그린 것은 아니다.)
 +
 +{{::물리::블록스핀.png?550|}}
 +
 +블록 스핀이란, 여러 스핀들을 묶어서 하나의 스핀으로 대체하여 본 스핀을 말한다.
 +
 +즉, 위의 경우는 아래의 방식으로, 2x2 정사각형 안에 들어있는 스핀들을 하나로 묶은 후
 +
 +
 +{{::물리::decimation.png?250|}}
 +
 +그 2x2 정사각형 내의 왼쪽 아래에 위치한 스핀의 부호를 택하여, 나머지 3개의 스핀까지 같은 스핀으로 둔 방식이다.
 +
 +이러한 방식을 'decimation'이라고 한다. 특정한 같은 방식으로 한 개의 스핀 부호를 택하고 나머지 스핀들의 정보는 '지우는' 방법이기 때문이다.
 +
 +다른 변환 방식으로는 'majority rule'이 있다. 한 블록 스핀 내에서 '다수'의 스핀이 향하는 방향(부호)를 블록 스핀의 부호로 택하는 방법이다.
 +
 +그래서 이러한 과정을 coasre graining이라고 부르는데, 기존 스핀들의 정보가 보다 '대충' 갈아졌기 때문(연마) 으로 이해할 수 있다.
 +
 +$\\$ $\\$ 같은 방식으로 128x128개의 스핀 배열을 예로 들어, 아래의 그림들로 보다 명확히 살펴볼 수 있다.
 +
 +(각각 '초기의 스핀배열의 원본 (앞쪽 첫번째), 블록 스핀 (앞쪽 두번째)' , '100 MC steps가 지난 상태의 원본 (뒤쪽 첫번째), 블록 스핀 (뒤쪽 두번째)')$\\$
 +{{::물리::128x128_initial_original_.png?300|}}   {{::물리::128x128_initial_deci_.png?300|}}   
 +$\\$ $\\$ $\\$ $\\$
 +{{::물리::128x128_original_100_mc_steps_.png?300|}}   {{::물리::128x128_deci_100_mc_steps_.png?300|}}   
 +
 +($\beta=0.5$ 로 설정하였고, 편의상 $J$=1 로 두었다.)
 +
 +위에서 설명한 decimation의 방식을 택하여 시뮬레이션을 수행해 보기 위해, 아래의 C++ 코드를 이용할 수 있으며,
 +
 +[[물리:자발적_대칭_깨짐_spontaneous_symmetry_breaking|자발적 대칭 깨짐(spontaneous symmetry breaking)]]에서 수행한 기존의 코드에서 decimation을 이용하는 부분만 추가해주었다. 
 +
 +(spin : 스핀 배열 원본, deci : decimation을 적용시킨 블록 스핀 배열)
 +
 +<code C++>
 +#include <iostream>
 +#include <cstdlib>
 +#include <cmath>
 +#include <random>
 +#include <vector>
 +
 +using namespace std;
 +
 +int main() {
 + const int lsize=30;
 + const float beta = 0.5;
 + const float J = 1;
 + const int MC_steps=1000;
 + const int iter=lsize*lsize*5000;
 +
 + int i; int j;
 + float del_E; float mp_probability; // mp means metropolis
 + float spin[lsize][lsize] = { 0 };
 +        float deci[lsize][lsize] = { 0 };
 + random_device rd;
 + mt19937 gen(rd());
 + bernoulli_distribution distrib(0.5);
 + uniform_int_distribution<> distri(0, lsize - 1);
 + uniform_real_distribution<> dist(0, 1);
 +
 + for (int t=0; t<iter;t++){
 + if (t==0){
 + for (int a=0;a<lsize;a++){
 + for (int b=0;b<lsize;b++){
 + if (distrib(gen)){
 + spin[a][b]=1;
 + }
 + else {
 + spin[a][b]=-1;
 + }
 + }
 + }
 + }
 +
 + else {
 + i = distri(gen);
 + j = distri(gen);
 +
 + if (i<lsize-1 && j<lsize-1){
 + del_E=2*J*(spin[i][j]*(spin[i-1][j] + spin[i+1][j] + spin[i][j-1] + spin[i][j+1])); // periodic boundary condition
 + }
 + else if (i==lsize-1 && j<lsize-1){
 + del_E=2*J*(spin[i][j]*(spin[i-1][j] + spin[0][j] + spin[i][j-1] + spin[i][j+1]));
 + }
 +
 + else if (i<lsize-1 && j==lsize-1){
 + del_E=2*J*(spin[i][j]*(spin[i-1][j] + spin[i+1][j] + spin[i][j-1] + spin[i][0]));
 + }
 +
 + else if (i==lsize-1 && j==lsize-1){
 + del_E=2*J*(spin[i][j]*(spin[i-1][j] + spin[0][j] + spin[i][j-1] + spin[i][0])); 
 + }
 +
 + if (exp(-beta*del_E) < 1){
 + mp_probability = exp(-beta*del_E);
 + }
 +
 + else if (exp(-beta*del_E) >= 1) {
 + mp_probability = 1;
 + }
 +
 + if (dist(gen) < mp_probability){
 + spin[i][j] = spin[i][j]*(-1);
 + }
 + }
 +
 + for (int a=0;a<lsize;a++){
 +            for (int b=0;b<lsize;b++){
 +                if ((a+1)%2==0 && (a+b)%2==1){
 +                    deci[a][b] = spin[a][b];
 +                    deci[a][b+1] = spin[a][b];
 +                    deci[a-1][b+1] = spin[a][b];
 +                    deci[a-1][b] = spin[a][b];//decimation (for block spin)
 +                }
 +            }
 +        }
 +
 +}
 + return 0;
 +}
 +
 +</code>
  
 ======참고문헌====== ======참고문헌======
   * M. Plischke and B. Bergersen, //Equilibrium Statistical Physics//, 2nd ed.(World Scientific, Singapore, 1994)   * M. Plischke and B. Bergersen, //Equilibrium Statistical Physics//, 2nd ed.(World Scientific, Singapore, 1994)
  • 물리/이징_사슬.txt
  • Last modified: 2023/09/05 15:46
  • by 127.0.0.1