전달 행렬 모델 (TMM)
1. 소개
전달 행렬 방법 (TMM)은 수직 입사 조건에서 다층(“샌드위치형”) 구조 내의 빛의 전파를 모델링하는 빠르고 신뢰성 있는 기법입니다. 이 방법은 태양전지, 광학 필터, 센서와 같은 소자에 널리 사용되며, 이러한 소자에서는 박막을 통과하는 빛이 어떻게 흡수, 반사, 투과되는지를 정량화해야 합니다.
FDTD와 같은 전파 해석 솔버와 비교하면, TMM은 일반적으로 수 자릿수 낮은 계산 비용으로 유사한 통찰을 제공합니다. 따라서 TMM은 주요 간섭 및 박막 효과를 여전히 포착하면서도, 다층 스택의 빠른 설계 반복, 매개변수 스윕, 최적화에 이상적입니다. TMM은 평면 스택에서 수직 입사에 대해 가장 간단하지만, 필요할 경우 경사 입사 및 편광 의존 해석으로 확장할 수 있습니다.
👉 지금 바로 시뮬레이션을 시작하고 싶으신가요?: 전달 행렬 모델에 대한 빠른 시작 튜토리얼을 시도해 보십시오.
2. TMM 도구 접근
전달 행렬 시뮬레이션 도구는 기본 창의 Optical ribbon에서 Transfer matrix를 선택하여 접근할 수 있습니다 (Figure ?? 참조).
3. TMM 시뮬레이션 실행
Run optical simulation을 클릭하면 (Figure ?? 참조) 파장과 위치의 함수로 구조 내부의 빛 분포를 계산합니다. 시뮬레이션 창 상단에서는 여러 광학 모델 중 하나를 선택할 수 있습니다. Transfer matrix를 선택하면 전체 광학 시뮬레이션이 수행되며, 다른 옵션은 대체 생성 프로파일을 탐색하는 데 유용한 단순화된 근사를 제공합니다.
사용 가능한 시뮬레이션 모드는 다음과 같습니다:
- Transfer matrix: 계면에서의 다중 반사와 광학 손실을 포함한 전체 전달 행렬 계산을 수행합니다. 이것이 가장 정확한(그리고 권장되는) 모델이며, 광학장 프로파일을 얻기 위해 1D 파동 방정식을 풉니다.
- Exponential profile: 지수 감쇠를 사용하여 빛 흡수를 근사합니다: \[I = I_{0} e^{-\alpha x} \label{efield2}\] 층 사이의 투과는 다음과 같이 주어집니다: \[T = 1 - \frac{n_1 - n_0}{n_1 + n_0} \label{equ:transfermatrixreflection}\] 이 모델에서는 반사가 무시됩니다.
- Flat profile: 각 층 내부의 빛 세기가 균일하다고 가정하고, 계면에서만 Equation ??에 따라 감소한다고 가정합니다. 생성의 공간적 변동 없이 전하 캐리어 동역학을 탐색하는 데 유용합니다.
- From file: 일반적으로 FDTD와 같은 더 고급 솔버가 생성한 사용자 정의 생성 프로파일을 가져옵니다.
- Constant value: 인접 메뉴를 통해 각 층에 대해 고정 생성률을 설정할 수 있습니다. 이는 종종 개념적 연구나 성능 스윕, 예를 들어 생성률 대 \(V_{oc}\) 플롯에 사용됩니다.
광학 시뮬레이션 창은 빛이 소자와 어떻게 상호작용하는지를 탐색할 수 있도록 여러 탭을 제공합니다. 예를 들어, ??는 구조 내부의 광자 밀도를 보여주며, 여기서 층 계면에서의 반사로 인해 뚜렷한 간섭 패턴이 나타납니다. ??는 ??와 동일한 데이터를 밴드 다이어그램으로 표시한 것입니다. 이 대체 보기는 창 안에서 오른쪽 클릭 후 메뉴 옵션을 조정하여 접근할 수 있으며, 특히 논문용 밴드 다이어그램 그림을 생성할 때 유용합니다. 마지막으로, ??는 광학 모델의 구성 창을 보여줍니다. 여기서 핵심 매개변수는 photon efficiency이며, 이는 흡수된 광자당 생성되는 전자–정공 쌍의 수를 지정합니다. 유기 소자에서는 이 매개변수가 geminate recombination을 반영하며, 무기 또는 잘 정렬된 시스템에서는 보통 1.0에 가깝게 설정해야 합니다.
5. 출력 파일
개요: 광학 시뮬레이션을 실행한 후 결과 개요는 위에서 설명한 바와 같이 광학 시뮬레이션 창 (??)에서 볼 수 있습니다. 더 자세한 분석을 위해서는 기본 창의 Output 탭에서 추가 정보를 확인할 수 있습니다 (??). ??에서는 두 개의 주요 아이콘인 optical_output과 optical_snapshots가 보입니다. optical_output을 더블 클릭하면 광학 결과 창이 열리고 (Figure ??), optical_snapshots을 더블 클릭하면 Optical Snapshots 창이 열립니다 (??). Optical Snapshots 창에서는 소자 내부의 광자 밀도, 흡수된 광자, 전기장 분포와 같은 파장 분해 데이터를 확인할 수 있습니다. 결과가 각 파장에 대해 저장되므로, 이 도구는 광학 스펙트럼 전반에 걸친 소자 성능의 상세한 보기를 제공합니다.
optical_output 및 optical_snapshots 파일은 일반적으로 광학 시뮬레이션을 직접 실행할 때만 생성되며,
광학 솔버가 결합된 전기 시뮬레이션의 일부로 호출될 때에는 기록되지 않습니다.
Optical_snapshots: 위에서 설명한 optical_snapshots 폴더는 그래픽 인터페이스를 통해 볼 때 파장의 함수로서 광자 밀도, 흡수된 광자, 광학 전기장에 접근할 수 있게 해줍니다. 그러나 이것은 단순한 표준 디렉터리이므로 파일 관리자에서 직접 탐색할 수도 있습니다. Figure ??에 표시된 것처럼 이 폴더에는 0에서 12까지 번호가 붙은 하위 디렉터리가 있으며, 각 디렉터리는 하나의 시뮬레이션된 파장에 해당합니다. 이러한 하위 디렉터리 중 하나(예: 디렉터리 0)를 열면 Figure ??에 표시된 출력 파일이 나타납니다.
이러한 파일에는 흡수 프로파일, 전기장, 광자 밀도, 생성률과 같은 데이터가 포함되며, 모두 쉽게 확인하거나 후처리할 수 있도록 일반 텍스트 CSV 형식으로 기록됩니다. 아래 표는 전형적인 파장 디렉터리의 내용을 요약한 것입니다:
photons_abs.csv 내용 예시로, 메타데이터 다음에 축 레이블과 데이터 값이 표시됩니다.
이러한 출력은 일반 텍스트이므로 어떤 편집기로도 열 수 있습니다. Figure ??에 표시된 것처럼, 각 CSV의 첫 번째 줄에는 플로팅을 위한 메타데이터가 포함되고, 두 번째 줄에는 축 설명이 있으며, 나머지 줄에는 원시 수치 데이터가 제공됩니다.
| 파일 이름 | 설명 |
|---|---|
alpha.csv |
선택된 파장에서 y-위치 대 흡수 |
data.json |
파장 값과 플로팅 정보를 포함하는 JSON 메타데이터 파일 |
En.csv |
y-위치 (m) 대 전기장, 음의 성분 (V/m) |
Ep.csv |
y-위치 (m) 대 전기장, 양의 성분 (V/m) |
G.csv |
y-위치 (m) 대 생성률 (\(m^{-3}s^{-1}\)) |
n.csv |
y-위치 (m) 대 굴절률 n의 실수부 |
photons.csv |
y-위치 (m) 대 광자 밀도 (\(m^{-3}\)) |
photons_abs.csv |
y-위치 (m) 대 흡수된 광자 (\(m^{-3}s^{-1}\)) |
optical_output 폴더 상세 설명:
optical_snapshots 디렉터리가 파장 분해 결과(시뮬레이션된 파장당 하나의 하위 폴더)를 저장하는 반면,
optical_output 디렉터리에는 파장 대 위치 형태의 2차원 맵으로 된 파장 적분 데이터가 포함됩니다.
이러한 출력은 전하 캐리어 생성률, 광자 밀도, 정규화된 광자 밀도, 투과, 반사와 같은 핵심 물리량을 포함하여
빛이 전체 스펙트럼에 걸쳐 소자와 어떻게 상호작용하는지에 대한 개요를 제공합니다.
디렉터리의 내용은
Figure ??에 표시되어 있습니다.
Figure ??에 나열된 파일은 Table ??에 자세히 설명되어 있습니다.
optical_output 디렉터리.
| 파일 이름 | 설명 | 플롯 유형 |
|---|---|---|
data.json |
JSON 형식의 시뮬레이션 설정 메타데이터 파일 | 1D |
G_y.csv |
y-위치 (m) 대 전하 생성률 (\(m^{-3} s^{-1}\)) | 2D |
G_zxy.csv |
zxy-위치 (m) 대 전하 생성률 (\(m^{-3} s^{-1}\)) | 2D |
Htot_zxy.csv |
zxy-위치 (m) 대 광학 열 생성 (\(W m^{-3}\)) | 2D |
light_src_id_xxx.csv |
파장 (m) 대 지정된 소스로부터의 광 세기 (\(W/m\)) | 2D |
photons_abs_yl.csv |
파장 (m) 대 y-위치 (m) 대 흡수된 광자 (\(m^{-3} s^{-1}\)) | 2D |
photons_yl.csv |
파장 (m) 대 y-위치 (m) 대 광자 밀도 (\(m^{-3}\)) | 2D |
photons_yl_norm.csv |
파장 (m) 대 y-위치 (m) 대 정규화된 광자 밀도 (a.u.) | 2D |
reflect.csv |
파장 (m) 대 소자 스택에서 반사된 빛 | 1D |
transmit.csv |
파장 (m) 대 소자 스택을 통과한 빛 | 1D |
6. 광학적으로 두꺼운 층 시뮬레이션 (비코히런트 층)
전형적인 광전자 소자는 10 nm에서 100 nm 두께의 활성층을 가집니다. 그러나 이러한 소자는 종종 10 mm에서 1 cm 두께의 기판 위에 증착됩니다. 많은 경우 소자 자체뿐 아니라 기판의 광학 효과까지 시뮬레이션하는 것이 유용합니다. 이를 위해서는 나노미터에서 미터까지의 길이 스케일을 모두 다룰 수 있는 시뮬레이션 도구가 필요합니다. 여기에는 세 가지 주요 문제가 있습니다:
- 문제 1: 서로 다른 길이 스케일 시뮬레이션 – 수치 솔버는 매우 큰 수와 매우 작은 수를 동일한 계산 안에서 다룰 때 어려움을 겪습니다. 이는 반올림 및 수치 오차를 초래할 수 있습니다.
- 문제 2: 빛의 파장 – 가시광선의 파장이 1 cm보다 훨씬 작기 때문에, 1 cm 두께의 층을 시뮬레이션하려면 간섭 효과를 포착하기 위해 비현실적으로 미세한 공간 격자가 필요합니다.
- 문제 3: 코히런스 상실 – 전달 행렬 모델은 빛이 수직 입사하고 층이 결함이 없다고 가정합니다. 두꺼운 기판에서는 산란과 불균질성이 이러한 가정을 깨뜨리며, 광장은 비코히런트하게 됩니다.
OghmaNano는 이러한 문제를 두 가지 방법으로 해결합니다. 첫째, 사용자가 층을 incoherent로 취급할 수 있도록 하여, 위상 정보는 무시하고 흡수만 고려합니다. 이 접근은 문제 2와 3을 해결합니다. 이 옵션은 layer editor에서 설정할 수 있습니다 (Figure ??). Solve optical problem이라고 표시된 열에서, Yes – n/k로 표시된 층은 위상과 흡수를 모두 포함하고, Yes – k로 표시된 층은 감쇠만 고려하여 사실상 비코히런트 층으로 취급합니다.
둘째, 문제 1(길이 스케일 차이)을 처리하기 위해 OghmaNano는 모든 층에 유효 광학 두께를 할당할 수 있도록 합니다. 예를 들어, 기판은 layer editor에서 100 nm 두께로 정의될 수 있지만 유효 깊이는 1 m로 할당할 수 있습니다. 내부적으로 이는 흡수 계수를 스케일링하여 구현됩니다:
\[\alpha_{\text{effective}}(\lambda) = \alpha(\lambda)\,\frac{L_{\text{effective}}}{L_{\text{simulation}}}\]
여기서 \(\alpha_{\text{effective}}\)는 시뮬레이션에서 사용되는 스케일된 흡수이고, \(\alpha\)는 재료 흡수 계수이며, \(L_{\text{effective}}\)는 원하는 유효 두께(예: 1 m), \(L_{\text{simulation}}\)은 editor에서의 실제 층 두께입니다. 이 접근은 수치 문제를 줄여줄 뿐만 아니라 더 유용한 플롯을 생성하는데, 여기서는 기판이 축을 지배하지 않으므로 소자 층이 여전히 명확하게 보입니다.
이 기능을 사용하려면 먼저 Figure ??에 보인 것처럼 소자 구조를 설정하십시오. 그런 다음 전달 행렬 창에서 Optical Thickness 버튼을 클릭합니다 (Figure ??). 그러면 구성 대화 상자가 열리고 (Figure ??), 여기서 모든 층의 유효 광학 두께를 지정할 수 있습니다. 표시된 예에서는 유리 기판이 1 m로 설정되어 있습니다.
4. TMM은 언제 실행되는가?
전달 행렬 시뮬레이션은 두 가지 방식으로 실행할 수 있습니다. 첫째, Play 버튼을 클릭하여 직접 실행할 수 있습니다. 또는 전기 시뮬레이션이 실행될 때마다 광학 모델이 자동으로 실행되며, 이 경우 추가 사용자 동작은 필요하지 않습니다.
이 두 모드의 주요 차이는 출력에 있습니다. 직접 실행할 경우 광학 시뮬레이션은 디스크에 더 완전한 출력 파일 세트를 생성합니다. 반면 전기 시뮬레이션의 일부로 호출될 경우에는 전기 솔버 속도를 저하시키지 않기 위해 필수 데이터만 출력됩니다.
👉 TMM 이론: 전달 행렬 이론을 이해하려면 다음 절로 이동하십시오.