물리:자발_대칭_깨짐_spontaneous_symmetry_breaking

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
물리:자발_대칭_깨짐_spontaneous_symmetry_breaking [2022/01/16 00:36] minwoo물리:자발_대칭_깨짐_spontaneous_symmetry_breaking [2023/09/05 15:46] (current) – external edit 127.0.0.1
Line 1: Line 1:
-자발 대칭 깨짐(spontaneous symmetry breaking)이 일어나는 대표적인 로, 2차원 이징 모형을 들 수 있다.+자발적 대칭 깨짐(spontaneous symmetry breaking)이 일어나는 대표적인 경우로, 2차원 이징 모형을 예로 들 수 있다.
  
-이징 모형의 경우, 해밀토니안은+이징 모형의 경우, 외부 자기장이 0인 상황에서 해밀토니안은
 $$E = -J \sum_{\left< xy \right>} \sigma_x \sigma_y$$ $$E = -J \sum_{\left< xy \right>} \sigma_x \sigma_y$$
 로 주어진다. 로 주어진다.
Line 13: Line 13:
 이러한 현상을 '자발 대칭 깨짐(spontaneous symmetry breaking)' 이라고 한다. 이러한 현상을 '자발 대칭 깨짐(spontaneous symmetry breaking)' 이라고 한다.
  
-아래의 그림은 각각 '초기의 스핀 배열 상태' , '100 MC steps 지난 상태' , '1000 MC steps 지난 상태' , '5000 MC steps 지난 상태' 의 +아래의 그림은 각각 '초기의 스핀 배열 상태' , '100 MC steps 지난 상태' , '1100 MC steps 지난 상태' , '5000 MC steps 지난 상태' 의 
 2차원 이징모형 시뮬레이션 결과이다.  2차원 이징모형 시뮬레이션 결과이다. 
  
-$\beta=0.5$ 로 설정하였고, 편의상 $J$=1 로 두었다. (양(+)의 부호 스핀은 노란색, 음(-)의 부호 스핀은 남색)+$\beta=0.5$ 로 설정하였고, 편의상 $J$=1 로 두었다. 전체 스핀의 개수는 900개 이다.  
 + 
 +(양(+)의 부호 스핀은 노란색, 음(-)의 부호 스핀은 남색) 
 + 
 +이때 1 MC step이라 함은 한번의 monte carlo step을 의미하며, 설정 상 전체 스핀의 개수가 30x30 임을 고려하였다.
  
 {{::물리::initial_state.png?300|}}   {{::물리::100_mc_steps.png?300|}}   {{::물리::1000_mc_steps.png?300|}}   {{::물리::5000_mc_steps.png?300|}}  {{::물리::initial_state.png?300|}}   {{::물리::100_mc_steps.png?300|}}   {{::물리::1000_mc_steps.png?300|}}   {{::물리::5000_mc_steps.png?300|}} 
Line 34: Line 38:
 #include <random> #include <random>
 #include <vector> #include <vector>
 + 
 using namespace std; using namespace std;
 + 
 int main() { int main() {
  const int lsize=30;  const int lsize=30;
Line 50: Line 54:
  uniform_int_distribution<> distri(0, lsize - 1);  uniform_int_distribution<> distri(0, lsize - 1);
  uniform_real_distribution<> dist(0, 1);  uniform_real_distribution<> dist(0, 1);
 + 
  for (int t=0; t<iter;t++){  for (int t=0; t<iter;t++){
  if (t==0){  if (t==0){
Line 64: Line 68:
  }  }
  }  }
 + 
  else {  else {
  i = distri(gen);  i = distri(gen);
  j = distri(gen);  j = distri(gen);
 + 
  if (i<lsize-1 && j<lsize-1){  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  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
Line 75: Line 79:
  del_E=2*J*(spin[i][j]*(spin[i-1][j] + spin[0][j] + spin[i][j-1] + spin[i][j+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){  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]));   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){  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]));   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){  if (exp(-beta*del_E) < 1){
  mp_probability = exp(-beta*del_E);  mp_probability = exp(-beta*del_E);
  }  }
 + 
  else if (exp(-beta*del_E) >= 1) {  else if (exp(-beta*del_E) >= 1) {
  mp_probability = 1;  mp_probability = 1;
  }  }
- + 
  if (dist(gen) < mp_probability){  if (dist(gen) < mp_probability){
  spin[i][j] = spin[i][j]*(-1);  spin[i][j] = spin[i][j]*(-1);
  }  }
  }  }
- + 
 } }
  return 0;  return 0;
  • 물리/자발_대칭_깨짐_spontaneous_symmetry_breaking.txt
  • Last modified: 2023/09/05 15:46
  • by 127.0.0.1