몽코스트-팩 격자

편집 역사 토론
계산물리 양자화학 마지막 수정: 2026-07-22 04:45:07

1. 개요[편집]

몽코스트-팩 격자(Monkhorst–Pack grid)는 주기적 결정계의 브릴루앙 영역(Brillouin zone) 적분을 유한 개의 대표점 합으로 근사하기 위해, 역격자 공간을 균일한 간격으로 샘플링하는 k점(k-point) 생성 방식이다. 1976년 헨드릭 몽코스트(Hendrik Monkhorst)와 제임스 팩(James Pack)이 제안한 뒤로, 주기계 밀도범함수이론(DFT) 계산에서 사실상 국룰로 자리 잡았다.1

주기적 고체를 다룰 때 물리량(전자밀도, 전체 에너지, 상태밀도 등)은 대부분 브릴루앙 영역 전체에 걸친 적분으로 정의된다. 문제는 이 적분을 해석적으로 풀 방법이 없다는 것. 그래서 연속 적분을 유한한 k점들에 대한 가중 합으로 바꿔치기하는데, 그 k점을 어디에 어떻게 뿌릴지가 바로 몽코스트-팩이 답하는 질문이다.

2. 왜 k점 적분이 필요한가[편집]

블로흐 정리에 따르면 주기 퍼텐셜 속 전자의 파동함수는 파수 벡터 k\mathbf{k}로 라벨링되는 콘-샴 방정식의 고유상태로 표현된다. 여기서 어떤 물리량 gˉ\bar{g}의 평균은 브릴루앙 영역(BZ) 부피 ΩBZ\Omega_{BZ}에 대한 적분이다.

gˉ=1ΩBZBZg(k)dk\bar{g} = \frac{1}{\Omega_{BZ}} \int_{BZ} g(\mathbf{k}) \, d\mathbf{k}

전자밀도, 전체 에너지, 페르미 준위 결정 모두 이 형태의 적분을 요구한다. 연속 적분을 계산기가 소화할 수 있게 이산화하면 다음처럼 유한 합이 된다.

gˉiwig(ki)\bar{g} \approx \sum_{i} w_i \, g(\mathbf{k}_i)

여기서 ki\mathbf{k}_i는 샘플링점, wiw_i는 정규화된 가중치(iwi=1\sum_i w_i = 1)다. 결국 CFD가 공간을 격자로 쪼개듯, 주기계 전자구조는 역격자 공간을 k점으로 쪼갠다. 다만 여기서 잘게 쪼개는 대상이 실공간이 아니라 파수 공간이라는 점이 다르다.

3. 격자 생성 규칙[편집]

몽코스트-팩은 각 역격자 기본 벡터 b1,b2,b3\mathbf{b}_1, \mathbf{b}_2, \mathbf{b}_3 방향으로 N1×N2×N3N_1 \times N_2 \times N_3개의 균일한 점을 배치한다. 한 방향의 좌표는 다음과 같이 주어진다.

ur=2rN12N,r=1,2,,Nu_r = \frac{2r - N - 1}{2N}, \qquad r = 1, 2, \dots, N

이렇게 만든 격자는 NN이 짝수일 때 감마점(k=0\mathbf{k}=0)을 포함하지 않고, 홀수일 때 포함한다는 특징이 있다. 그래서 실무에서는 흔히 격자 크기를 4×4×4, 8×8×8처럼 표기하며, 여기에 감마점을 강제로 포함시킬지(Γ-centered) 여부를 옵션으로 붙인다.2 육방정계(hexagonal) 격자에서는 대칭성 때문에 Γ-centered 격자를 쓰는 것이 국룰이다. 어설픈 짝수 격자를 쓰면 대칭이 깨져서 엉뚱한 에너지가 나오기 때문.

실제 계산에서는 결정의 점군 대칭(point-group symmetry)을 이용해 서로 대칭으로 연결된 k점을 하나로 묶는다. 이렇게 축약된 대표점 집합을 기약 브릴루앙 영역(irreducible BZ, IBZ)의 k점이라 부르고, 각 대표점에는 자기가 대표하는 등가점 개수에 비례한 가중치가 붙는다. 대칭성이 높은 결정일수록 실제로 콘-샴 방정식을 풀어야 하는 k점 수가 확 줄어든다. FCC 같은 고대칭 결정에서 12×12×12 격자가 IBZ에서는 수백 개 점으로 축약되는 식이다.

4. 밴드 구조·상태밀도와의 관계[편집]

여기서 자주 헷갈리는 지점 하나. 밴드 구조 계산에 쓰는 k경로(k-path)와 몽코스트-팩 격자는 용도가 완전히 다르다.

  • 몽코스트-팩 격자는 브릴루앙 영역 전체를 균일하게 채우는 3차원 점 구름이다. 자기무결(self-consistent) 계산에서 전자밀도와 전체 에너지를 적분해 얻는 데 쓴다. 즉 SCF 수렴의 재료다.
  • 밴드 구조 그림에 쓰는 k경로는 고대칭점(Γ, X, L, M 등)을 잇는 1차원 선분 위의 점들이다. 이미 수렴된 전자밀도(퍼텐셜)를 고정한 채, 그 선을 따라 콘-샴 고유값 ϵn(k)\epsilon_n(\mathbf{k})만 뽑아 그리는 비자기무결(non-self-consistent) 후처리다.

즉 실무 순서는 이렇다. 먼저 몽코스트-팩 격자로 SCF를 돌려 바닥상태 전자밀도를 얻는다 → 그 밀도를 얼려놓고 k경로를 따라 밴드를 그린다. 반면 상태밀도(DOS)는 밴드 그림처럼 선이 아니라 BZ 전체 적분이라, DOS를 매끄럽게 뽑으려면 오히려 몽코스트-팩 격자를 밴드 계산 때보다 훨씬 촘촘하게(예: SCF는 8×8×8, DOS는 16×16×16) 다시 깔아주는 게 정석이다.3

한편 포논 분산 계산도 비슷한 구조를 가진다. 전자 대신 격자 진동을 다루지만, 힘 상수를 얻기 위한 초격자(supercell) 안의 전자 SCF에는 여전히 k점 샘플링이 필요하고, 포논 자체의 브릴루앙 영역 적분(자유에너지, 열용량 등)에는 별도의 q점(q-point) 격자를 몽코스트-팩 방식으로 깐다. 이름만 k냐 q냐로 갈릴 뿐, 균일 격자로 역공간을 적분한다는 철학은 똑같다.

5. 밀도 vs 비용, 그리고 수렴 시험[편집]

k점을 촘촘하게 깔면 적분 정확도는 올라가지만, 계산 비용은 (대칭 축약 후) IBZ k점 개수에 거의 선형으로 비례해 불어난다. 결국 “얼마나 촘촘해야 충분한가”를 매번 손으로 확인해야 하는데, 이것이 바로 k점 수렴 시험(k-point convergence test)이다. 국룰은 이렇다.

  • 격자 크기를 2×2×2, 4×4×4, 6×6×6… 식으로 키워가며 전체 에너지(또는 목표 물리량)를 찍는다.
  • 에너지 변화가 원하는 허용오차(예: 원자당 1 meV) 아래로 떨어지면 수렴했다고 본다.
  • 금속은 페르미면에서 점유수가 급격히 꺾여 적분이 까다롭기 때문에, 절연체·반도체보다 훨씬 촘촘한 격자와 스미어링(smearing, 예: Methfessel–Paxton, Gaussian) 기법을 함께 써야 수렴한다.4

실무 감각으로 하나 더. k점 격자 밀도는 실공간 격자 크기와 반비례한다. 작은 단위셀(격자상수 짧음)은 역격자가 크므로 촘촘한 k격자가 필요하고, 큰 초격자는 역격자가 작아 성긴 k격자로도 충분하다. 극단적으로 진공을 많이 넣은 슬랩(slab)이나 큰 분자를 담은 상자는 감마점 하나(1×1×1, Γ-only)만으로 끝내기도 한다.5 “일단 촘촘하게 깔고 본다”는 습관은 슈퍼컴 시간을 갈아 넣는 지름길이니, 수렴 시험으로 딱 필요한 만큼만 까는 것이 프로의 태도다.

6. 관련 문서[편집]

7. Footnotes[편집]

  1. 원논문은 H. J. Monkhorst, J. D. Pack, “Special points for Brillouin-zone integrations”, Phys. Rev. B 13, 5188 (1976). 인용 수가 5만 회를 넘긴 계산물리계의 초베스트셀러다. 논문 자체는 6페이지도 안 되는데 세상 모든 DFT 계산이 이 6페이지에 빚지고 있다.

  2. VASP의 KPOINTS나 Quantum ESPRESSO의 K_POINTS automatic 카드에서 마지막 세 숫자로 오프셋(0/1)을 지정하는 게 바로 이 Γ-centered 여부다. 모르고 육방정계에 짝수 격자 오프셋 0을 넣었다가 대칭이 깨져 에너지가 튀는 건 입문자 통과의례.

  3. “밴드는 잘 나왔는데 DOS가 톱니처럼 우툴두툴한데요?”의 99%는 DOS용 k격자가 성겨서다. 선이 아니라 부피를 적분한다는 걸 잊으면 이렇게 된다.

  4. 금속에 스미어링 없이 촘촘한 k점만 믿고 돌리면 페르미면 근처에서 점유수가 0과 1을 왔다갔다하며 SCF가 영원히 진동한다. 이때 “수렴은 신에게 맡긴다”를 시전하지 말고 조용히 스미어링을 켜자.

  5. 고립 분자를 큰 상자에 넣고 주기 경계로 다루면 사실상 브릴루앙 영역이 한 점으로 쪼그라들어 Γ-only가 정답이 된다. 이걸 모르고 진공 상자에 12×12×12를 까는 건 순수한 CPU 헌납 행위다.