07. TBtrans — T(E)와 DOS/PDOS
학습 목표
- TBtrans가 TranSIESTA 수렴 결과로부터 transmission 와 DOS를 계산하는 후처리 도구임을 이해한다.
- 무거운 출력 옵션을 배제한 미니멀 TBtrans.fdf 를 작성할 수 있다.
- 수치 broadening 와 에너지 격자 간격 delta의 관계를 알고 함께 설정할 수 있다.
- sisl로
trans.TBT.nc에서 , DOS, PDOS를 추출하고 log 축으로 플롯할 수 있다. - Pristine chain의 정수 plateau와 N 치환이 만드는 dip을 물리적으로 해석할 수 있다.
배경: TBtrans는 SCF가 아니라 후처리다
챕터 06에서 TranSIESTA SCF가 수렴한 Hamiltonian(trans.TSHS)이 있으면, transmission은 Caroli 공식
의 단순 평가다. 여기에 자기일관성은 없다 — TBtrans는 고정된 를 읽어 에너지 격자 위에서 와 , DOS를 계산하는 후처리 도구다. 구현과 입력 형식은 Papior et al. [4]을 따른다. 그래서 에너지 범위·격자 간격은 SCF를 다시 돌리지 않고 바꿔 재실행할 수 있다.
DOS는 두 방식으로 나온다. Green function DOS(, TBT.DOS.Gf)는 device의 전체 상태를, spectral function DOS(TBT.DOS.A)는 특정 전극에서 주입되어 도달 가능한 상태만 담는다. 둘의 차이로 전극과 연결되지 않은 국소 상태(bound state)를 진단할 수 있다.
입력 파일: 미니멀 TBtrans.fdf
0bias/ 디렉토리에 다음 파일을 추가한다. 구조·전극 정의는 %include input.fdf로 재사용한다(input.fdf가 다시 TS.fdf를 include하므로 TS.Elecs 블록까지 함께 읽힌다).
# ------------------------------------------------------------
# 07. TBtrans — T(E) / DOS / PDOS (0 V)
# 미니멀 옵션 세트 — 무거운 출력 옵션은 의도적으로 배제
# ------------------------------------------------------------
%include input.fdf
TBT.Voltage 0.00000 eV
TBT.nc.write T
# ----- 출력 선택 -----
TBT.DOS.Gf T # Green function DOS
TBT.DOS.Elecs T # 전극 bulk DOS
TBT.DOS.A T # spectral function DOS
TBT.DOS.A.All T # 모든 전극의 spectral DOS
TBT.T.All T # 모든 전극 쌍의 transmission
TBT.PDOS T # orbital-projected DOS
# ----- Green function을 풀 영역 -----
%block TBT.Atoms.Device
atom [5 -- 16]
%endblock TBT.Atoms.Device
# ----- 에너지 격자와 broadening -----
TBT.Contours.Eta 0.001 eV
%block TBT.Contours
line
%endblock TBT.Contours
%block TBT.Contour.line
from -3.00 eV to 3.00 eV
delta 0.001 eV
method mid-rule
%endblock TBT.Contour.line
| 키워드 | 의미 |
|---|---|
TBT.Voltage | TBtrans가 가정하는 bias. 0 V 계산이므로 0. finite bias에서는 TranSIESTA 쪽 TS.Voltage와 반드시 같은 값이어야 한다(챕터 09) |
TBT.nc.write | sisl 후처리에 쓸 trans.TBT.nc 출력 강제 |
TBT.DOS.*, TBT.T.All, TBT.PDOS | trans.TBT.nc에 저장할 물리량 선택 |
TBT.Atoms.Device | Green function을 실제로 푸는 원자 범위. 전극 복제 영역(1–4, 17–20)을 제외한 산란 영역 5–16만 지정하면 행렬이 작아져 계산이 가볍다 |
TBT.Contours.Eta | device Green function의 수치 broadening (아래 절) |
TBT.Contour.line | 실수축 에너지 격자 — 기준 eV에서 eV까지 1 meV 간격 |
TBT.T.Bulk, TBT.T.Eig, TBT.Current.Orb 같은 옵션은 nc 파일을 수 GB로 키우고 메모리 부족(OOM)을 부르기 쉽다. 특히 eigenchannel 정보는 텍스트 출력(TBT.T.Eig)이 없어도 trans.TBT.nc의 Green function/spectral function으로부터 sisl 후처리로 전부 얻을 수 있으므로(챕터 10), 여기 미니멀 세트에서 의도적으로 뺐다.
%block TBT.kgrid_Monkhorst_Pack