홈 예제 스크린샷 사용자 매뉴얼 Bluesky 로고 YouTube ☰
OghmaNano 유기/페로브스카이트 태양전지, OFET 및 OLED 시뮬레이션 다운로드 Quick Start guide

무질서한 반도체 내 분포형 트랩 상태 모델링

Comparison of ordered and disordered semiconductors showing isolated trap states in a high-purity ordered semiconductor and broad distributions of electron traps, mid-gap traps and hole traps in a disordered semiconductor.
정렬된 반도체와 무질서한 반도체에서의 트랩 상태 비교. 고순도 실리콘과 같은 매우 정렬된 반도체에서는 밴드갭 내에 소수의 고립된 트랩 상태만 존재할 수 있다(a). 반면 무질서한 반도체인 비정질 실리콘이나 유기 반도체에서는 트랩들이 보다 넓게 분포하는데, 전도대 근처에 위치한 전자 함유 트랩(b), 중간 밴드갭 영역에 위치한 트랩(c), 그리고 원자가대 근처에 위치한 정공 함유 트랩(d) 등이 이에 해당한다.

이 튜토리얼은 무질서한 반도체 내 트랩 상태 모델링에 관한 기초적인 입문서입니다. PM6:Y6는 널리 알려진 유기 광전지 재료이므로 예시로 활용되었으나, 여기서 설명된 모델링 개념들은 밴드갭 내에 분포된 상태밀도를 형성하는 국소화된 상태들이 존재하는 유기 반도체, 비정질 실리콘, 산화물 반도체, 페로브스카이트 및 기타 박막 재료 전반에도 적용 가능합니다.

1. 서론: 왜 무질서 반도체에서 트랩 분포가 중요한가

트랩 상태는 유기 반도체, 비정질 실리콘, 산화물 반도체, 페로브스카이트 및 기타 박막 태양전지 재료를 포함한 다수의 비정질 반도체의 거동에 있어 핵심적인 요소입니다. 정질 반도체와 비정질 반도체 간의 차이는 ??에서 확인할 수 있습니다. 순도가 매우 높은 결정질 실리콘과 같은 고도로 정질화된 반도체에서는 밴드갭 내에 존재하는 트랩 상태의 수가 상대적으로 적습니다. 이러한 고립된 트랩 상태는 ??의 영역 a에 나타나 있습니다. 이러한 시스템에서는 해당 결함을 통한 재결합 현상이 일반적으로 표준적인 쇼클리-리드-홀(SRH) 재결합 방정식을 이용해 기술될 수 있습니다.

\[ R_{SRH}=\frac{np-n_i^2} {\tau_p(n+n_1)+\tau_n(p+p_1)} \]

단계별 수학적 유도 과정은 Shockley–Read–Hall 재결합 유도를 참조하십시오.

이 방정식은 재결합 현상이 단일한 중간대역 트랩 상태를 통해 일어난다고 가정하는데, 이는 실리콘 p-n 다이오드 및 비소화갈륨 p-n 다이오드와 같이 비교적 질서가 잡힌 반도체/소자에 대해서는 적절한 근사치가 됩니다. 그러나 무질서도가 증가함에 따라 트랩 상태를 개별적인 결함으로 간주하는 것은 부적절해지며, 오히려 밴드갭 내에 존재하는 상태 분포 전체로 기술하는 것이 타당합니다. 이러한 상태 분포는 통상적으로 트랩 상태 밀도 또는 상태밀도(DOS)라고 불립니다. ??의 우측 그림은 유기 반도체나 비정질 실리콘과 같은 무질서 반도체에서의 상황을 보여줍니다. b 영역은 전도대 근처에 위치한 전자를 포함하는 트랩 상태 분포를 나타내고, d 영역은 원자대 근처에 위치한 정공을 포함하는 트랩 상태 분포를 나타내며, c 영역은 보다 깊은 중간대역에 위치한 트랩 상태 분포를 나타냅니다.

정렬된 반도체에서는 트랩 상태가 흔히 희소하며 개별 결함 수준으로 간주될 수 있으므로 표준적인 쇼클리-리드-홀(SRH) 식만으로도 충분한 경우가 많습니다. 그러나 무질서한 반도체에서는 이러한 근사가 적용되지 않습니다. 해당 물질에는 밴드갭 전반에 걸쳐 분포하는 다수의 국소화된 상태들이 존재하므로 트랩을 단일 점 결함으로 가정하는 것은 부적절합니다. 단일 레벨 SRH 식은 트랩을 하나의 이산적 에너지 준위로 취급하므로, 광범위하게 분포한 국소화 상태에 전하 캐리어가 어떻게 분포하는지를 설명할 수 없습니다. 무질서한 반도체에서 이러한 분포 상태는 이동성 전하와 트랩에 갇힌 전하 간의 균형을 결정하며, 이는 전체 전하 캐리어 밀도와 준페르미 준위 위치 간의 관계를 규정합니다. 만약 이 관계가 잘못 계산된다면 모델은 부정확한 재결합률, 실제 전하 캐리어 이동도 및 J-V 특성을 산출하게 됩니다. 무질서한 반도체 소자를 정확히 모델링하려면 트랩 포획·탈포획 및 재결합률 방정식을 드리프트-확산 방정식 및 포아송 방정식과 자기일관적으로 결합하여 트랩 분포에 대한 전하 분포를 명시적으로 계산해야 합니다. 이때 계산된 트랩 내 전하량은 단순한 보정값에 그치지 않으며, 전하 저장, 전하 수송, 재결합 현상, 전하 캐리어 이동도, 암전류, 개방전압 및 광전지의 J-V 곡선 형태에 지배적인 영향을 미칩니다.

2. 무질서한 반도체 내에서의 쇼클리-리드-홀 트랩 현상 및 탈트랩 현상

Shockley-Read-Hall trapping processes showing carrier capture and escape between free and trapped states in a distributed density of states.
분포된 상태밀도 내에서의 쇼클리-리드-홀 트랩 현상 및 재결합 과정. 전자와 정공은 밴드갭 전반에 분포된 트랩 상태에 포획되거나 그로부터 방출될 수 있다.

많은 독자들은 위에 제시된 간략한 정상상태 재결합 방정식을 통해 처음으로 쇼클리-리드-홀(SRH) 재결합 현상을 접하게 됩니다. 그러나 이 간략한 방정식은 보다 포괄적인 SRH 속도방정식 체계에서 도출된 단순화된 결과에 불과하며, 그 수학적 절차는 쇼클리-리드-홀 재결합 유도에 기술되어 있습니다. 근본적으로 SRH 이론은 ??에서 설명된 바와 같이 전하 캐리어의 트랩 포획 및 탈포획 과정을 통해 트랩 상태가 채워지고 비워지는 현상을 기술합니다. 전자들은 트랩에 포획된 뒤 열적 작용에 의해 다시 전도대로 방출될 수 있으며, 정공 역시 유사하게 포획 및 방출될 수 있습니다. 전자와 정공이 동일한 트랩 상태에 함께 존재할 경우 재결합이 일어나게 됩니다.

기본적인 SRH 이론은 궁극적으로 전하 캐리어의 트랩 현상, 탈트랩 현상 및 재결합 과정을 기술하는 속도방정식 모델입니다.

\[ \frac{dn_t}{dt}=r_{ec}-r_{ee}-r_{hc}+r_{he} \]

여기서 \(r_{ec}\)은 트랩으로의 전자 포획률이며, \(r_{ee}\)는 전도대로의 전자 탈출률입니다. 또한 \(r_{hc}\)은 정공 포획률이고 \(r_{he}\)는 원자대로의 정공 탈출률입니다. SRH 이론의 핵심 물리적 개념 중 하나는 탈출률(\(r_{ee}\) 및 \(r_{he}\))이 트랩의 에너지 깊이에 크게 의존하는 반면, 포획률(\(r_{ec}\) 및 \(r_{hc}\))은 주로 트랩이 점유되었는지 여부에 따라 결정된다는 점입니다. 따라서 얕은 트랩은 전하 캐리어를 비교적 쉽게 방출하는 반면, 깊은 트랩은 전하를 장기간 저장할 수 있습니다.

OghmaNano는 단순화된 정상상태 SRH 재결합 방정식을 유도하기 위해 흔히 사용되는 근사법 대신 완전한 SRH 트랩 모델을 해석합니다. 실제로 이는 상태밀도 내에 존재하는 각 트랩 레벨에 대해 별도의 트랩 방정식을 해석함을 의미합니다. 이러한 방식으로 시뮬레이터는 유기 반도체 및 비정질 실리콘과 같은 무질서도가 높은 반도체 내에서 트랩된 전하, 트랩 충전 현상, 트랩에 의해 촉진되는 재결합, 정전기적 밴드 굽힘 및 분포된 트랩 집단을 정확히 모델링할 수 있습니다.

본 튜토리얼에서는 OghmaNano 내에서 분포형 트랩 상태가 어떻게 구현 및 해석되는지, 그리고 트랩 현상, 트랩에서의 전하 방출 및 트랩에 포획된 전하가 무질서한 반도체 소자의 거동에 어떤 영향을 미치는지 살펴보겠습니다.

3. 적용 예시: PM6:Y6 무질서 반도체 시뮬레이션 생성하기

OghmaNano를 실행한 뒤 ‘새 시뮬레이션’을 클릭하십시오. 그러면 ??에 표시된 이용 가능한 소자 유형 목록이 나타납니다. ‘유기 태양전지’ 아이콘을 더블클릭하여 OPV 예제 라이브러리를 열어보세요. 제공되는 PM6:Y6 예제들 중에서 ??에 나타난 PM6:Y6_E10_0hrs를 선택하십시오. 일반적인 드리프트-확산 시뮬레이션도 이 튜토리얼에 사용 가능하지만, 해당 PM6:Y6 예제는 여기서 제시된 결과와 일치하도록 트랩 상태 분포 및 밴드 구조가 이미 설정되어 있습니다. 메시지가 표시되면 쓰기 권한이 있는 폴더에 시뮬레이션 파일을 저장하십시오.

OghmaNano new simulation window showing available device categories including organic solar cells, OFETs, perovskites, OLEDs, diode models and optical simulation examples.
새로운 시뮬레이션 창입니다. ‘유기 태양전지’를 더블클릭하여 유기 광전지 예제 라이브러리를 열어보세요.
OghmaNano organic solar cell example list showing PM6:Y6 simulations at different ageing times and trap-state conditions.
PM6:Y6 예제 시뮬레이션들입니다. 이 트랩 상태 튜토리얼의 시작점으로 PM6:Y6_E10_0hrs를 선택하시기 바랍니다.
Main OghmaNano window showing a PM6:Y6 organic solar cell device stack with ITO, ZnO, PM6:Y6 active layer, MoOx and Ag layers.
메인 OghmaNano 창에 로드된 PM6:Y6 태양전지 시뮬레이션입니다. 해당 소자 구조는 ITO, ZnO, PM6:Y6 활성층, MoOx, Ag로 구성되어 있습니다. 활성층의 트랩 상태 관련 파라미터들은 전기적 파라미터 편집기에서 정의됩니다.

💡 팁: 최적의 성능을 얻으려면 C:\과 같은 로컬 드라이브에 시뮬레이션 결과를 저장하시기 바랍니다. 네트워크 드라이브, USB 또는 클라우드 폴더(예: OneDrive)에 저장된 시뮬레이션은 많은 읽기/쓰기 작업으로 인해 느리게 실행될 수 있습니다.

시뮬레이션 생성이 완료되면 ??에 나타난 바와 같이 OghmaNano의 메인 창이 열립니다. PM6:Y6 소자는 층상 구조를 갖춘 태양전지 형태로 표시됩니다. 활성층은 분포형 트랩 상태들이 수정될 무질서 반도체 영역입니다.

4. 시뮬레이션을 암흑 조건에서 실행하도록 설정하기

OghmaNano optical ribbon showing the light intensity control used to switch between illuminated and dark simulations.
광학 설정창에서 광강도를 0.0 Suns로 설정하여 암상태에서 시뮬레이션을 수행하십시오.

시뮬레이션을 시작하기 전에 먼저 장치를 암흑 조건에서 작동하도록 설정해야 합니다. ??에 표시된 광학 제어창을 열어 광강도를 0.0 Suns로 설정하십시오. 이를 통해 얻어지는 JV 곡선은 조명 하에서의 광전지 작동 결과가 아닌 암흑 상태에서의 JV 측정값과 일치하게 됩니다. 트랩 상태를 연구할 때는 암흑 시뮬레이션이 특히 유용한데, 이는 광전류가 여러 물리적 현상을 가릴 수 있는 조명 하의 시뮬레이션과 달리 전하 캐리어 주입, 트랩 충만도, 재결합 및 정전기적 효과를 훨씬 명확하게 보여주기 때문입니다.

5. 트랩 상태의 상태밀도 정의하기

OghmaNano electrical parameter editor showing free carrier parameters and non-equilibrium SRH trap parameters for an exponential trap density of states.
PM6:Y6 활성층용 전기적 파라미터 편집기입니다. 기본적으로 사용되는 지수형 트랩 모델에서는 LUMO 및 HOMO 트랩 분포가 트랩 밀도 선행계수, 어버치 테일 기울기, 포획 단면적 그리고 트랩 대역의 개수를 이용해 정의됩니다.
OghmaNano electrical parameter editor with complex trap density-of-states mode enabled and an Edit button available for opening the complex DOS editor.
상태밀도 모델이 지수형에서 복합형으로 전환되었습니다. 이 모드에서는 트랩 상태 분포가 복소 상태밀도 편집기 내의 수학적 함수들을 이용해 정의됩니다.

메인 창에서 장치 구조 탭을 이용해 PM6:Y6 활성층에 대한 전기적 파라미터 편집기를 열어주십시오. 그러면 ??에 나타난 편집기 화면이 표시됩니다. 동적 SRH 트랩 옵션이 활성화되면 OghmaNano는 ??에 묘사된 분포와 유사한 에너지 공간상의 트랩 상태 분포를 계산하게 됩니다.

기본적으로 트랩 분포는 지수함수 형태의 상태밀도를 따른다고 가정됩니다. LUMO 측 꼬리 부분의 상태밀도는 다음과 같이 표현됩니다.

\[ \rho_\mathrm{LUMO}(E)=N_{t,n}\exp\left(\frac{E-E_C}{E_{U,n}}\right), \]

HOMO 측 꼬리의 경우에는 다음과 같이 표현됩니다.

\[ \rho_\mathrm{HOMO}(E)=N_{t,p}\exp\left(\frac{E_V-E}{E_{U,p}}\right). \]

여기서 \(N_{t,n}\)과 \(N_{t,p}\)는 각각 전자 및 정공 트랩 밀도의 선행계수이며, \(E_{U,n}\)과 \(E_{U,p}\)는 그에 상응하는 오르바흐 꼬리 에너지입니다. ??에 제시된 사용자 인터페이스에서는 이 값들이 전기적 파라미터 편집기의 비평형 SRH 트랩 섹션에 있는 전자 트랩 밀도, 정공 트랩 밀도, 전자 꼬리 기울기, 정공 꼬리 기울기 파라미터에 각각 대응합니다.

이 에디터에는 앞서 설명한 SRH 트랩 현상의 속도를 제어하는 포획 단면적 관련 매개변수들도 포함되어 있습니다. ‘자유 전자에서 트랩된 전자’ 및 ‘자유 정공에서 트랩된 전자’ 매개변수는 전자 포획 및 정공 포획 과정을 결정합니다(\(r_{ec}\) 및 \(r_{hc}\)). 반면 ‘자유 전자에서 트랩된 정공’ 및 ‘자유 정공에서 트랩된 정공’ 매개변수는 각각 전자 방출 및 정공 방출 과정을 제어합니다(\(r_{ee}\) 및 \(r_{he}\)). 이러한 매개변수들의 조합에 따라 전하 캐리어가 트랩 분포 내로 얼마나 빠르게 포획되거나 다시 방출되는지가 결정됩니다.

마지막으로 트랩 개수 매개변수는 분석적 상태밀도를 근사하기 위해 사용되는 이산화된 트랩 레벨의 수를 조절합니다. 이 레벨들은 ??에 표시된 붉은색 및 파란색 수평 트랩 레벨에 대응합니다. 분석적 상태밀도 자체는 여전히 \(\rho_\mathrm{LUMO}(E)\) 및 \(\rho_\mathrm{HOMO}(E)\) 함수에 의해 정의되며, 트랩 개수는 해당 분포가 수치적으로 얼마나 세밀하게 이산화되는지를 결정합니다.

이 구성으로 시뮬레이션을 실행할 경우 OghmaNano는 위 방정식들에 대응하는 지수함수형 상태밀도를 가정하게 됩니다. 그러나 OghmaNano에서는 트랩 상태 분포를 훨씬 더 세밀하게 제어할 수도 있습니다. Exponential 선택기가 클릭되면 모드가 ??에 나타난 바와 같이 Complex 모드로 전환됩니다. 이를 통해 임의의 수학적 형태를 갖는 상태밀도 분포를 정의할 수 있습니다. 이후 오른쪽에 나타나는 Edit 버튼을 클릭하면 복잡한 상태밀도 편집기 자체를 열 수 있습니다.

6. 얕은 지수형 트랩 분포를 정의합니다

Complex density-of-states editor showing exponential LUMO and HOMO trap distributions with b set to 0.025 eV and numerical trap discretisation superimposed on the analytical DOS curves.
복잡한 형태의 상태밀도 편집기로서, 얕은 지수형 분포를 갖는 LUMO 및 HOMO 측면의 트랩 상태들이 설정되어 있다. 파란색 곡선은 LUMO 측면의 분포를 나타내고 빨간색 곡선은 HOMO 측면의 분포를 나타낸다. 계단 형태의 청색 및 녹색 곡선들은 해석적 상태밀도를 근사하기 위해 사용된 수치적 트랩 준위들을 보여준다. 트랩 대역의 수를 늘릴 경우 보다 정밀한 계단형 근사가 가능해진다.
Complex density-of-states editor showing broader exponential LUMO and HOMO trap distributions with b set to 0.100 eV.
보다 넓은 우르바흐 꼬리 에너지를 갖는 동일한 복잡한 상태밀도 모델이며, 여기서 b 값은 0.100 eV이다. 꼬리 에너지가 클수록 밴드갭 내에서 상태밀도가 감소하는 속도가 느려지므로, 트랩 상태들이 전하 저장 및 재결합에 영향을 미칠 수 있는 에너지 범위도 확장된다.

‘편집’ 버튼을 클릭하면 복잡한 상태밀도 편집기가 열립니다. 해당 편집기는 ??에 나타나며, 위쪽 표는 LUMO 측 트랩 분포를 정의하고 아래쪽 표는 HOMO 측 트랩 분포를 정의합니다. 각 행에는 수학적 함수, 활성화 스위치, 그리고 a, b, c라는 명칭의 세 개의 수치 매개변수가 포함되어 있습니다. 편집기 좌측에 위치한 그래프는 표에 입력된 수학적 함수들에 의해 생성된 최종 상태밀도 분포를 보여줍니다. 파란색 분석 곡선은 LUMO 측 또는 전도대(\(E_C\)) 트랩 분포를 나타내며, 빨간색 분석 곡선은 HOMO 측 또는 가전자대(\(E_V\)) 트랩 분포를 나타냅니다. 이 매끄러운 곡선들은 편집기에 입력된 수식들에 의해 정의되는 정확한 분석적 상태밀도 분포에 대응합니다.

청색 및 녹색 계단형 곡선은 시뮬레이터 내부에서 실제로 사용되는 이산화된 트랩 에너지 준위를 나타냅니다. 이러한 계단형 준위들은 전기적 파라미터 편집기에서 지정된 트랩 개수 파라미터와 직접적으로 대응합니다. 트랩 준위의 수를 늘리면 분석적으로 정의된 상태밀도에 대한 근사도가 향상되어 시뮬레이션의 수치적 정확도도 증가합니다. 실제로 대부분의 정상상태 소자 시뮬레이션에서는 약 5개 정도의 트랩 준위만으로도 매우 양호한 결과를 얻을 수 있습니다. 다만 비행시간 측정과 같이 매우 긴 과도 시간 범위를 다루는 시뮬레이션의 경우에는 20개 가량의 트랩 준위가 필요할 수도 있습니다. 트랩 상태는 소자 내 모든 메쉬 지점에서 계산되므로 트랩 준위 수를 늘릴 경우 시뮬레이션에 필요한 수학적 연산량이 급격히 증가하게 되며, 따라서 실제 적용 시 20개를 훨씬 초과하는 값은 거의 요구되지 않습니다.

Table 1: Symbols used by the complex density-of-states editor
기호 상태밀도 표현식의 의미
E상태밀도를 계산할 때 사용되는 에너지 좌표
전기전도도전도대 가장자리 / LUMO 전송 준위
전자볼트가전자대 가장자리 / HOMO 전송 준위
아사용자가 정의한 상수
b사용자가 정의한 상수
c사용자가 정의한 상수

원칙적으로 위 표에 명시된 매개변수들을 활용하여 방정식 편집기에 임의의 방정식을 입력할 수 있으며, 이를 통해 상태밀도를 구성할 수 있습니다.

7. 트랩 분포의 폭이 개방전압 및 전하 밀도에 미치는 영향

Dark JV comparison showing current density as a function of voltage for shallow and broad exponential trap-tail distributions.
얕고 넓은 지수형 트랩 분포에 따른 암전류-전압 특성 비교
Charge density comparison showing total charge density as a function of voltage for shallow and broad exponential trap-tail distributions.
동일한 두 트랩 분포에 대한 전하 밀도 비교.

이제 두 가지 시뮬레이션을 수행하여 트랩 분포의 에너지적 폭 변화가 미치는 영향을 비교해보겠습니다. 복잡한 상태밀도 편집기에서 ??에 나타난 바와 같이 LUMO 및 HOMO 분포 모두에 대해 매개변수 b의 값을 0.025 eV로 설정해주십시오. 이는 트랩 상태의 밀도가 밴드 가장자리로부터 비교적 빠르게 감소하여 밴드갭 내에 존재하는 깊은 트랩 상태의 수가 제한적인 얕은 꼬리형 분포를 의미합니다.

시뮬레이션을 실행한 뒤 나중에 사용하기 위해 백업 파일을 생성하는 방법: 메인 창으로 돌아가서 파란색 버튼을 클릭하여 시뮬레이션을 실행하십시오. 시뮬레이션 실행 버튼을 클릭하거나 키를 누르면 됩니다 F9계산이 완료되면 Windows 탐색기를 사용하여 시뮬레이션 디렉터리를 열어주십시오. 해당 파일 jv.csv 개방전압 측정 시의 J-V 곡선이 포함되어 있습니다. charge.csv 해당 파일에는 전압에 따른 소자 내에 저장된 총 전하량이 기록되어 있습니다. Windows 탐색기를 이용하여 이 파일들의 백업본을 생성한 뒤, 복사된 파일들의 이름을 로 변경하십시오. jv.bak 그리고 charge.bak이 백업 파일들은 얕은 꼬리형 트랩 분포 조건에서의 시뮬레이션 결과를 저장하므로, 이후에 더 넓은 트랩 분포 조건과 비교하는 데 활용될 수 있습니다.

이어서 복잡한 상태밀도 편집기를 다시 열어 ??에 나타난 대로 LUMO 및 HOMO 분포에 대해 매개변수 b의 값을 0.100 eV로 증가시킵니다. 이 조작을 통해 트랩 상태 분포가 넓어져서 밴드갭 내로 더 멀리 확장됩니다. 그 후 시뮬레이션을 다시 실행합니다. 두 번째 실행이 완료되면 시뮬레이션 디렉터리에는 기존 백업 파일인 jv.bak 및 charge.bak와 함께 새로 생성된 출력 파일인 jv.csv 및 charge.csv가 모두 포함되어야 합니다.

☑ 이 단계를 마친 후에는 시뮬레이션 디렉터리에 네 개의 파일이 존재해야 합니다:

  • jv.csv — 넓은 꼬리 분포 시뮬레이션에 대한 암전 상태의 JV 데이터입니다.
  • jv.bak — 얕은 꼬리 분포 시뮬레이션에서의 암전 상태 JV 데이터.
  • charge.csv — 넓은 꼬리 분포 시뮬레이션에 대한 전하 밀도 데이터입니다.
  • charge.bak — 얕은 꼬리 분포 시뮬레이션에서 얻은 전하 밀도 데이터입니다.

두 시뮬레이션을 모두 실행한 후 Microsoft Excel 또는 아래에 제시된 MATLAB 및 Python 스크립트를 활용하여 ?? 및 ??에 나타난 그래프들을 생성할 수 있습니다. 이러한 비교에서 .bak 파일들은 얕은 꼬리 분포 시뮬레이션에 해당하며, 새로 생성된 .csv 파일들은 보다 넓은 꼬리 분포 시뮬레이션에 대응합니다.

우르바흐 꼬리 에너지를 증가시키면 트랩 상태의 분포가 넓어져서 훨씬 많은 수의 트랩들이 밴드갭 깊숙이까지 형성된다. 이로 인해 재결합 전류와 장치 내에 저장되는 트랩 전하의 양이 직접적으로 변화한다. ??에 제시된 암전 상태에서의 JV 비교 결과에 따르면, 넓은 분포의 트랩들은 전하 캐리어들이 에너지적으로 분포된 수많은 트랩 상태에 접근할 수 있게 되어 트랩-보조 재결합 및 전하 수송이 활발해지므로 중간 전압 영역에서 전류값이 증가한다.

이 효과는 ??에 제시된 전하 밀도 비교에서도 명확히 나타납니다. 더 넓게 분포한 트랩 분포의 경우, 에너지적으로 접근 가능한 트랩 상태의 수가 증가함에 따라 장치 전반에 걸쳐 더 많은 전하가 저장됩니다. 이러한 저장된 전하는 장치 내부에서 공간전하로 작용하여 정전기적 전위와 밴드 휨 현상을 변화시키게 됩니다.

물리적으로 볼 때, 단일 SRH 재결합 중심을 모델링하는 경우와 분포된 트랩 상태들을 모두 모델링하는 경우 사이의 핵심 차이점이 바로 이것입니다. 무질서한 반도체에서는 트랩들이 서로 분리된 결함이 아닙니다. 이들은 전하 캐리어의 포획 및 방출, 재결합, 전하 저장 및 수송을 동시에 조절하는 에너지 분포 전체를 형성합니다. 바로 이러한 이유로 무질서한 반도체 소자 모델링 시 트랩 상태들을 반드시 포함시켜야 합니다.

MATLAB/Octave 버전


clear;
close all;
clc;

% ============================================
% Settings
% ============================================

log_jv = true;
MATLAB 스크립트 전체를 표시합니다

clear;
close all;
clc;

% ============================================
% Settings
% ============================================

log_jv = true;    % true = semilogy
                  % false = linear plot

% ============================================
% Load data
% ============================================

jv         = load('jv.csv');
jv_bak     = load('jv.bak');

charge     = load('charge.csv');
charge_bak = load('charge.bak');

% ============================================
% Figure 1 : JV
% ============================================

figure;

if log_jv == true

    semilogy(jv(:,1), abs(jv(:,2)), ...
        'LineWidth', 2);

    hold on;

    semilogy(jv_bak(:,1), abs(jv_bak(:,2)), '--', ...
        'LineWidth', 2);

else

    plot(jv(:,1), jv(:,2), ...
        'LineWidth', 2);

    hold on;

    plot(jv_bak(:,1), jv_bak(:,2), '--', ...
        'LineWidth', 2);

end

grid on;
box on;

xlabel('Voltage (V)');
ylabel('Current density (A m^{-2})');

title('JV comparison');

legend( ...
    'JV', ...
    'JV backup', ...
    'Location', 'northwest' ...
);

% ============================================
% Figure 2 : Charge density
% ============================================

figure;

semilogy(charge(:,1), abs(charge(:,2)), ...
    'LineWidth', 2);

hold on;

semilogy(charge_bak(:,1), abs(charge_bak(:,2)), '--', ...
    'LineWidth', 2);

grid on;
box on;

xlabel('Voltage (V)');
ylabel('Charge density (m^{-3})');

title('Charge density comparison');

legend( ...
    'Charge', ...
    'Charge backup', ...
    'Location', 'northwest' ...
);

파이썬 버전


import numpy as np
import matplotlib.pyplot as plt

# ============================================
# Settings
# ============================================

log_jv = True
전체 Python 스크립트를 표시합니다

import numpy as np
import matplotlib.pyplot as plt

# ============================================
# Settings
# ============================================

log_jv = True    # True = semilogy
                 # False = linear plot

# ============================================
# Load data
# ============================================

jv = np.loadtxt("jv.csv")
jv_bak = np.loadtxt("jv.bak")

charge = np.loadtxt("charge.csv")
charge_bak = np.loadtxt("charge.bak")

# ============================================
# Figure 1 : JV
# ============================================

plt.figure()

if log_jv:
    plt.semilogy(jv[:, 0], np.abs(jv[:, 1]), linewidth=2)
    plt.semilogy(jv_bak[:, 0], np.abs(jv_bak[:, 1]), "--", linewidth=2)
else:
    plt.plot(jv[:, 0], jv[:, 1], linewidth=2)
    plt.plot(jv_bak[:, 0], jv_bak[:, 1], "--", linewidth=2)

plt.grid(True)

plt.xlabel("Voltage (V)")
plt.ylabel("Current density (A m$^{-2}$)")
plt.title("JV comparison")
plt.legend(["JV", "JV backup"], loc="upper left")

# ============================================
# Figure 2 : Charge density
# ============================================

plt.figure()

plt.semilogy(charge[:, 0], np.abs(charge[:, 1]), linewidth=2)
plt.semilogy(charge_bak[:, 0], np.abs(charge_bak[:, 1]), "--", linewidth=2)

plt.grid(True)

plt.xlabel("Voltage (V)")
plt.ylabel("Charge density (m$^{-3}$)")
plt.title("Charge density comparison")
plt.legend(["Charge", "Charge backup"], loc="upper left")

plt.show()

8. 1태양광 조사 하에서 트랩 분포 폭의 영향

Illuminated JV comparison for a PM6:Y6 solar cell with shallow and broad exponential trap-tail distributions.
얕고 넓은 지수형 트랩 분포 조건에서 조사 시의 JV 특성 비교.
Charge density comparison under one-sun illumination for shallow and broad exponential trap-tail distributions.
1태양광 조사 하에서 동일한 두 트랩 분포에 대한 전하 밀도 비교.

앞서 설명한 내용에서는 어두운 상태에서 얕은 트랩 꼬리 분포와 넓은 트랩 꼬리 분포를 비교하였다. 이제 동일한 비교를 1개 태양광 강도 하에서 수행하도록 하겠다. 광학 설정 화면으로 이동하여 광강도를 다시 1.0 태양광으로 설정한다. 그 후 복합 상태밀도 편집기로 돌아가 LUMO 및 HOMO 분포에 대해 각각 Urbach 꼬리 매개변수 b 값을 0.025 eV로 지정한다. 시뮬레이션을 실행한 뒤 Windows 탐색기를 이용해 jv.csv 및 charge.csv 파일의 백업본을 생성하고 이를 각각 jv.bak 및 charge.bak로 이름을 변경한다.

이제 복합 상태밀도 편집기로 돌아가서 b 값을 0.100 eV로 설정함으로써 두 트랩 꼬리 분포를 모두 넓혀줍니다. 그 후 시뮬레이션을 다시 실행합니다. 그러면 시뮬레이션 디렉터리에 jv.csv, jv.bak, charge.csv, charge.bak 파일들이 생성됩니다. 이때 .bak 파일들에는 얕은 꼬리 분포를 갖는 1태양광 조건 하의 시뮬레이션 결과가 포함되며, 새로 생성된 .csv 파일들에는 넓은 꼬리 분포를 갖는 1태양광 조건 하의 시뮬레이션 결과가 저장됩니다.

☑ 이 단계를 완료하면 시뮬레이션 디렉터리에 jv.csv, jv.bak, charge.csv, charge.bak라는 네 개의 파일이 생성됩니다. .bak 파일들에는 얕은 꼬리 분포를 갖는 조사 상태 시뮬레이션 결과가 포함되며, .csv 파일들에는 넓은 꼬리 분포를 갖는 조사 상태 시뮬레이션 결과가 포함됩니다.

앞서 사용한 MATLAB 또는 Python 플로팅 스크립트들을 이제 수정 없이 재사용할 수 있습니다. 해당 스크립트들은 jv.csv과 jv.bak를, 그리고 charge.csv과 charge.bak를 각각 그래프로 나타냅니다. 이를 통해 얻어진 조사 하에서의 JV 곡선 비교 결과는 ??에, 전하 밀도 비교 결과는 ??에 제시되어 있습니다.

조사 조건 하에서 트랩 분포는 광생성, 전하 추출 및 재결합 간의 균형에 직접적인 영향을 미친다. 트랩 분포의 범위가 넓어질수록 밴드갭 내부 깊은 위치에 더 많은 트랩 상태가 형성되어 포획된 전하의 양이 증가하며, 이에 따라 소자의 내부 정전기적 특성도 변화한다. 이러한 변화는 포획된 전하 분포에 의해 재결합 전류와 준페르미 준위 분리가 변경되므로 조사 상태에서의 J-V 특성에도 영향을 미친다.

전하 밀도 분포도는 동일한 물리 현상을 다른 관점에서 보여준다. 넓은 꼬리 분포 모델에서는 전하 캐리어들이 보다 넓은 에너지 범위에 걸쳐 분포하게 되므로 전하 저장 방식도 달라진다. 이러한 이유로 트랩 분포는 태양전지 시뮬레이션에서 매우 중요하다. 트랩 분포는 저장되는 전하량뿐만 아니라 그 전하가 에너지적으로 어디에 위치하는지, 그리고 전하가 전하 수송, 재결합 및 개방전압 형성에 얼마나 큰 영향을 미치는지까지 결정하기 때문이다.

9. 에너지 및 위치에 따른 트랩 점유 상태 시각화

OghmaNano JV experiment window configured to write all simulation output to disk and dump the trap distribution as an energy-space map.
JV 실험 편집기입니다. ‘Output verbosity’ 값을 ‘disk’로 설정하여 모든 데이터를 디스크에 기록하고, ‘Dump trap distribution’ 값을 ‘Energy space map’으로 지정하십시오. 시뮬레이션을 다시 실행하면 출력 폴더에 trap_map 디렉터리가 생성됩니다.
Low-resolution trap occupation map showing charge density as a function of position and energy in the PM6:Y6 active layer.
JV 시뮬레이션 결과로 생성된 초기 트랩 점유도 맵입니다. 가로축은 소자 내 위치를, 세로축은 에너지를 나타냅니다. 색상 척도는 점유된 트랩의 밀도를 표시합니다. 전압 슬라이더를 조작하면 인가 전압 변화에 따른 트랩 점유 상태를 관찰할 수 있습니다.

트랩 상태 분포가 J-V 곡선 및 전하 밀도 분포에 미치는 영향을 살펴보았으므로, 이제 트랩 점유 상태를 직접 검토해보겠습니다. 시뮬레이션 출력 디렉터리로 이동하여 trap_map 디렉터리를 찾아보십시오. 해당 디렉터리가 보이지 않는다면 Electrical 리본 메뉴를 열고 JV 편집기를 클릭하십시오. 그러면 ??에 나타난 J-V 실험 창이 열리게 됩니다.

JV 편집기의 Output 섹션에서 Output verbosity 항목을 disk로 설정하여 모든 데이터를 디스크에 기록하도록 합니다. 그 다음 Dump trap distribution 항목을 Energy space map으로 지정합니다. 이후 시뮬레이션을 다시 실행하면 출력 폴더 내에 trap_map이라는 디렉터리가 생성됩니다. 이 디렉터리 내의 파일들을 열어보면 ??에 나타난 바와 같이 점유된 트랩 상태의 에너지-위치 분포도를 확인할 수 있습니다.

이 맵은 위치와 에너지에 따라 분포된 트랩 상태의 점유 상태를 나타냅니다. JV 스캔 과정에서 각 전압 지점마다 OghmaNano는 점유된 트랩 분포를 디스크에 기록합니다. 전압 슬라이더를 조작함으로써 소자가 낮은 전압에서 순방향 바이어스 방향으로 이동할 때 트랩 내의 캐리어 점유도가 어떻게 증가하는지 확인할 수 있습니다.

10. 트랩 맵의 해상도를 높이기

첫 번째 트랩 맵은 시뮬레이션용으로 활용하기에 적합하지만, 기본 모델에서는 트랩 밴드가 5개만 사용되고 메시 점의 수도 적기 때문에 해상도가 의도적으로 낮게 설정되어 있습니다. 보다 명확한 시각화를 위해 전기적 파라미터 편집기로 돌아가서 ‘트랩 개수’ 값을 5에서 10 또는 20으로 증가시켜 주십시오. 그 후 전기 툴바에서 메시 편집기를 열어 활성층 방향의 메시 점 개수를 약 100개로 늘리면 됩니다. 이 과정은 ??에 설명되어 있습니다.

더 높은 해상도의 메쉬와 트랩 이산화 설정을 사용하여 시뮬레이션을 다시 실행하십시오. 그 결과로 생성된 트랩 분포도는 ??, ??, ??과 유사한 모습을 보일 것입니다. 이 그래프들은 인가 전압에 따라 트랩 점유 밀도가 어떻게 변화하는지를 나타냅니다.

OghmaNano optical mesh editor showing spatial and wavelength mesh settings, including a spatial mesh with 200 points and wavelength range from 300 nm to 900 nm.
메쉬 편집기입니다. 공간 메쉬 점의 수를 늘리면 트랩 점유도 맵에서 위치 축이 보다 매끄러워집니다. 트랩 대역의 수를 늘리면 상태밀도에 대한 에너지 분해가 더 세밀해집니다.
High-resolution trap occupation map at low voltage showing occupied trap density as a function of position and energy.
저전압 조건에서의 고해상도 트랩 점유도 맵입니다. 이때 트랩에 포획된 전하 캐리어의 양은 여전히 적은 편이며, 에너지-위치 공간 전반에 걸쳐 분포하고 있습니다.
High-resolution trap occupation map at intermediate voltage showing increased filling of the trap distribution.
중간 전압에서의 트랩 점유 현상. 주입된 전하 캐리어 밀도가 증가함에 따라 트랩 분포 중 상당 부분이 점유되는 현상이 나타난다.
High-resolution trap occupation map at high voltage showing strong trap filling across the device.
더 높은 전압에서의 트랩 점유 현상. 준페르미 준위가 이동하고 소자가 더 많은 전하를 저장함에 따라 점유된 영역이 이동 및 확장된다.

트랩 맵을 통해 모델의 분포적 특성이 명확히 드러난다. 전하는 단일 트랩 에너지 준위에만 배치되는 것이 아니라, 특정 에너지 범위 전반에 걸쳐 분포하며 소자 내 위치에 따라 그 밀도가 달라진다. 이러한 특성이 바로 무질서 반도체에서 분포형 트랩 상태 모델이 유용한 주된 이유이다. 이 모델을 통해 에너지적 무질서 현상, 트랩 충전 현상 및 공간적 전기적 특성을 함께 분석할 수 있기 때문이다.

11. 단일 메쉬 지점에서의 트랩 점유도 출력하기

전체 에너지-공간 트랩 분포도는 소자 전체를 시각화하는 데 유용하지만, 특정 공간 위치에서의 트랩 점유도를 살펴보는 것이 물리적 현상을 이해하는 데 더 용이할 때도 있습니다. 이를 위해 JV 편집기를 다시 열고 ??에 나타난 대로 ‘에너지 공간 맵’ 대신 ‘단일 메쉬 지점’으로 ‘트랩 분포 출력’ 설정을 변경합니다. 그 후 y 좌표값을 50으로 지정하면 OghmaNano가 소자 내 50번째 메쉬 지점에서의 트랩 점유도 스펙트럼을 출력하게 됩니다.

시뮬레이션을 다시 실행하십시오. trap_map 출력 디렉터리 내에서 OghmaNano는 전자 트랩에 대해서는 energy_slice_nt.csv 파일을, 정공 트랩에 대해서는 energy_slice_pt.csv 파일을 생성합니다. 이 파일들에는 선택된 공간 위치에서 에너지에 따른 트랩 점유 밀도가 기록되어 있습니다. 전압 슬라이더를 조작함으로써 JV 스캔 과정 중에 트랩된 전하의 에너지 분포가 어떻게 변화하는지 관찰할 수 있습니다.

OghmaNano JV editor configured to dump the trap distribution at a single mesh point with y-position set to 50.
단일 메쉬 지점에서 트랩 점유도를 출력하도록 JV 시뮬레이션을 설정하는 방법.
Electron trap occupation spectrum at low voltage showing occupation as a function of energy.
저전압 조건에서의 전자 트랩 점유도
Electron trap occupation spectrum at intermediate voltage showing increased occupation across the trap distribution.
중간 전압에서의 전자 트랩 점유 상태
Electron trap occupation spectrum at higher voltage showing a larger occupation maximum shifted in energy.
높은 전압에서의 전자 트랩 점유 현상

??, ??, ??에 제시된 전자 트랩 점유 스펙트럼은 인가 전압이 증가함에 따라 트랩 점유 상태가 어떻게 변화하는지를 보여준다. 낮은 전압에서는 트랩 분포 중 비교적 적은 부분만이 점유된다. 전압이 상승하면 전하 캐리어 밀도가 증가하여 상태밀도 분포 내에서 더 넓은 에너지 영역까지 점차적으로 채워진다. 또한 장치 내부에 전하가 축적됨에 따라 국부적인 준페르미 준위가 트랩 분포를 따라 이동하므로 점유 최대값 역시 에너지상에서 이동하게 된다.

Hole trap occupation spectrum at low voltage showing occupation as a function of energy.
저전압 조건에서의 정공-트랩 점유 현상
Hole trap occupation spectrum at intermediate voltage showing increased occupation as the device is driven forward.
중간 전압에서의 정공-트랩 점유 상태
Hole trap occupation spectrum at higher voltage showing the maximum occupied density moving through the trap distribution.
더 높은 전압에서의 정공 트랩 점유 현상

??, ??, ??에 제시된 정공 트랩 스펙트럼들은 상태밀도의 HOMO 측면에서 동일한 물리적 과정을 보여준다. 소자가 순방향으로 구동되면서 캐리어 밀도가 증가할 때, 점유된 트랩 밀도 역시 전자 트랩의 경우와 마찬가지로 HOMO 측 트랩 분포 전반에 걸쳐 증가하고 이동한다.

이러한 1차원 에너지 단면들은 문제의 에너지적 측면과 공간적 측면을 분리해주므로 특히 유용하다. 전체 트랩 맵은 소자 내부에서 전하가 어디에 저장되는지를 보여주는 반면, 단일 메쉬 포인트에서 얻은 스펙트럼들은 해당 전하가 에너지상에서 어떻게 분포하는지를 정확히 나타낸다. 이 두 결과물을 종합하면 무질서한 반도체 소자 내부에서의 트랩 충전 현상, 준페르미 준위의 움직임 및 전하 저장 상태를 직관적으로 파악할 수 있다.

12. 깊은 위치에 있는 가우시안 형태의 재결합 활성 트랩 추가하기

OghmaNano equation selector showing predefined density-of-states functions including exponential, Gaussian, Lorentzian and power-law forms.
복잡한 상태밀도 편집기 내의 방정식 선택기입니다.
Complex density-of-states editor showing an exponential LUMO tail with an additional Gaussian deep trap state superimposed on the LUMO density of states.
가우시안 형태의 깊은 트랩 상태를 지수함수 형태의 LUMO 꼬리 분포 위에 중첩시켜 생성된 복합적인 상태밀도 분포.

복합 상태밀도 편집기를 이용하면 여러 해석적 함수들을 하나의 트랩 분포로 결합할 수 있습니다. 이를 통해 상태밀도가 순수한 지수함수형 꼬리나 순수한 가우시안 분포로만 구성될 필요가 없게 됩니다. 대신 여러 함수들을 중첩시켜서 얕은 꼬리 상태와 더 깊은 국소화된 트랩 밴드가 모두 포함된 보다 현실적인 무질서 상태밀도 모델을 구축할 수 있습니다.

LUMO 측 상태밀도에 또 다른 구성 요소를 추가하려면 복합 상태밀도 편집기의 LUMO 패널에서 + 버튼을 클릭하십시오. 함수 필드에 직접 수식식을 입력하거나 ??에 표시된 방정식 선택기를 열기 위해 점 세 개 버튼을 클릭할 수 있습니다. 이 방정식 선택기에는 지수함수형, 가우시안형, 로렌츠형 및 거듭제곱형 분포를 포함한 여러 사전 정의된 상태밀도 함수들이 포함되어 있습니다.

이 예시에서 LUMO 측의 상태밀도에는 활성화된 함수가 두 개 존재합니다. 첫 번째는 기존의 지수형 분포이며, 두 번째는 깊은 트랩을 나타내는 가우시안 분포입니다.

\[ \rho_\mathrm{G}(E)= a\exp\left[ -\left( \frac{c+E-E_C} {\sqrt{2}\,b} \right)^2 \right]. \]

매개변수 a는 상태밀도의 규모를 조절하며, b는 가우시안 분포의 에너지 폭을 결정하고, c는 트랩 상태가 밴드 가장자리로부터 얼마나 멀리 위치하는지를 나타냅니다. 본 예시에서는 c 값이 0.7 eV로 설정되어 있어 가우시안 트랩이 LUMO 전하 이동 수준에 비해 밴드갭 내부 깊숙한 위치에 존재하게 됩니다. 한편 HOMO 측의 상태밀도는 단순한 지수함수 형태로만 모델링됩니다.

이 모델은 에너지적으로 얕은 무질서 상태와 더 깊은 결함 밴드를 모두 포함하는 반도체를 물리적으로 나타낸다. 얕은 지수형 꼬리는 주로 전하 캐리어의 이동 및 트랩 현상을 운송 레벨 근처에서 제어하는 반면, 깊은 가우시안형 트랩 상태는 강력한 재결합 및 전하 저장 중심으로 작용한다. 각 함수마다 별도의 활성화 스위치가 마련되어 있으므로, 나머지 소자 모델을 변경하지 않고도 깊은 트랩의 영향만을 개별적으로 분석할 수 있다.

OghmaNano simulation type ribbon showing the Suns Voc simulation option selected for running open-circuit voltage as a function of light intensity.
시뮬레이션 유형 메뉴에서 Suns–Voc 실험 옵션을 선택합니다.
Suns-Voc comparison showing open-circuit voltage as a function of light intensity for simulations with and without a Gaussian deep trap state.
가우시안 형태의 깊은 트랩이 존재하거나 존재하지 않는 경우의 Suns–Voc 비교

깊은 트랩 상태가 재결합에 미치는 영향을 조사하기 위해 시뮬레이션을 실행하십시오. Suns–Voc 측정 시뮬레이션입니다. 파일을 열어주십시오. 시뮬레이션 유형 리본을 선택한 뒤 선택하십시오 Suns–Voc 측정, 도시된 바와 같음 ??그런 다음 메인 창에서 파란색 실행 버튼을 클릭하거나 키를 눌러 시뮬레이션을 실행하십시오. F9.

시뮬레이션이 완료되면 suns_voc.csv 파일에 조사 강도에 따른 개방전압 값이 기록됩니다. Windows 탐색기를 이용해 이 파일의 백업본을 생성한 뒤 suns_voc.bak로 이름을 변경하십시오. 이후 복합 상태밀도 편집기로 돌아가서 지수형 꼬리 모델은 활성화된 상태로 유지한 채 가우시안형 심층 트랩 행을 비활성화하십시오. 그런 다음 Suns–Voc 시뮬레이션을 다시 실행하시면 됩니다.

새로 생성된 suns_voc.csv 파일은 깊은 가우시안 트랩이 없는 소자를 나타내며, suns_voc.bak 파일은 해당 트랩이 포함된 시뮬레이션 결과를 담고 있습니다. 이 두 파일을 함께 그래프로 표현하면 ??에 나타난 비교 결과를 얻을 수 있습니다.

깊은 위치에 존재하는 가우시안형 트랩 상태는 밴드갭 내부에 추가적인 재결합 경로를 형성함으로써 개방전압을 감소시킨다. 이로 인해 조사 조건 하에서 형성되는 준페르미 준위 간의 분리 정도가 줄어들어 최대 개방전압 값 역시 낮아지게 된다. 이러한 영향은 트랩 보조 재결합 현상이 캐리어 동역학을 지배하는 낮은 광강도 조건에서 특히 두드러진다.

Suns–Voc 측정법은 얕은 에너지 불규칙성을 갖는 결함 상태와 재결합 활동성이 높은 깊은 결함 상태를 구별하는 데 매우 유용하다. 해당 장치는 개방전압 조건 하에서 측정되므로, 이 실험을 통해 캐리어 추출 전류의 영향 없이 내부적인 재결합 현상을 명확히 파악할 수 있다.

??에 제시된 Suns–Voc 비교 결과를 그래프로 나타내고자 한다면, 아래에 제시된 MATLAB/Octave 또는 Python 스크립트를 활용할 수 있습니다. 이 스크립트들은 suns_voc.csv와 suns_voc.bak를 비교하여 광강도에 따른 개방전압의 변화를 그래프로 표현합니다.

MATLAB/Octave 버전


clear;
close all;
clc;

% Load data
voc     = load('suns_voc.csv');
voc_bak = load('suns_voc.bak');
MATLAB 스크립트 전체를 표시

clear;
close all;
clc;

% Load data
voc     = load('suns_voc.csv');
voc_bak = load('suns_voc.bak');

% ============================================
% Figure : Suns-Voc
% ============================================

figure;

loglog(voc(:,1), abs(voc(:,2)), ...
    'LineWidth', 2);

hold on;

loglog(voc_bak(:,1), abs(voc_bak(:,2)), '--', ...
    'LineWidth', 2);

grid on;
box on;

xlabel('Light intensity (suns)');
ylabel('Open-circuit voltage (V)');

title('Suns-Voc comparison');

legend( ...
    'suns\_voc.csv', ...
    'suns\_voc.bak', ...
    'Location', 'northwest' ...
);

파이썬 버전


import numpy as np
import matplotlib.pyplot as plt

# Load data
voc = np.loadtxt("suns_voc.csv")
voc_bak = np.loadtxt("suns_voc.bak")
전체 Python 스크립트를 표시

import numpy as np
import matplotlib.pyplot as plt

# Load data
voc = np.loadtxt("suns_voc.csv")
voc_bak = np.loadtxt("suns_voc.bak")

# ============================================
# Figure : Suns-Voc
# ============================================

plt.figure()

plt.loglog(voc[:,0], np.abs(voc[:,1]),
           linewidth=2)

plt.loglog(voc_bak[:,0], np.abs(voc_bak[:,1]),
           '--',
           linewidth=2)

plt.grid(True)

plt.xlabel("Light intensity (suns)")
plt.ylabel("Open-circuit voltage (V)")

plt.title("Suns-Voc comparison")

plt.legend([
    "suns_voc.csv",
    "suns_voc.bak"
], loc="upper left")

plt.show()

요약

이 튜토리얼에서는 무질서한 반도체 소자 모델에 트랩 상태를 어떻게 명시적으로 포함시킬 수 있는지를 설명하였다. OghmaNano는 재결합 현상을 단일 SRH 결함 준위에서만 발생하는 것으로 간주하는 대신, 트랩의 상태밀도를 에너지에 따른 분포 형태로 기술할 수 있게 해준다. 이러한 접근법은 유기 반도체, 비정질 실리콘, 산화물 반도체 및 기타 박막 재료에서 특히 중요하다. 이들 재료에서는 국소화된 트랩 상태들이 밴드갭 전반에 걸쳐 분포하며 전하 캐리어 밀도, 준페르미 준위 위치, 재결합 현상 및 전하 캐리어 이동도 간의 상호관계에 큰 영향을 미치기 때문이다. 비록 실제 예시로는 PM6:Y6 유기 태양전지가 사용되었으나, 이 튜토리얼의 목적은 무질서한 반도체 소자 시뮬레이션에서 분포된 트랩 상태들이 어떻게 표현되고 해석되며 진단되는지를 보여주는 데 있다.

PM6:Y6 유기 태양전지 시뮬레이션을 기반으로, 암흑 상태와 조사 상태 모두에서 얕고 넓은 형태의 지수함수형 트랩 분포를 비교하였다. 트랩 분포의 폭이 넓어짐에 따라 소자는 더 많은 수의 국소화된 트랩 상태를 활용할 수 있게 되어 암흑 상태 및 조사 상태에서의 JV 곡선과 저장된 전하량이 변화하였다. 트랩 맵 결과를 통해 특정 위치, 에너지 준위 및 인가 전압에 따라 점유된 트랩 개체수가 어떻게 변하는지 직접적으로 확인할 수 있었다.

마지막으로, 지수형 분포에 깊은 위치에 있는 가우시안형 트랩 상태를 추가함으로써 복잡한 상태밀도 모델이 얕은 에너지 불규칙성과 재결합에 관여하는 깊은 결함 상태를 모두 어떻게 표현할 수 있는지를 보여주었다. Suns–Voc 시뮬레이션 결과에 따르면 이러한 깊은 트랩 상태는 트랩-보조 재결합을 촉진시키고 조사 하에서 준페르미 준위 분리를 감소시켜 개방전압을 낮추는 효과가 있음을 확인할 수 있었다. 종합적으로 이 튜토리얼은 트랩 분포가 무질서 반도체 시뮬레이션에서 단순한 보정 요소가 아니라 물리적으로 타당한 JV 곡선, 전하 밀도, 재결합률 및 광전지 성능을 도출하는 데 핵심적인 역할을 한다는 점을 입증한다.

다음 단계: 이 튜토리얼과 관련된 보다 광범위한 모델링 체계를 살펴보고자 한다면, 다음 페이지들이 학습을 이어가기에 적합한 자료입니다.