출력 파일 소개
출력 최소화
일반적으로 디스크에 쓰는 작업은 SSD가 장착된 가장 현대적인 컴퓨터에서도 느립니다. 기계식 디스크의 탐색 속도는 그 역사 동안 거의 증가하지 않았습니다. 따라서 출력 데이터를 하드 디스크에 기록하는 것이 종종 모든 시뮬레이션에서 가장 시간이 많이 걸리는 부분입니다. 기본적으로 OghmaNano는 모든 출력 파일을 디스크에 기록하는데, 이는 새로운 사용자가 OghmaNano가 제공할 수 있는 출력이 무엇인지 감을 잡을 수 있도록 하기 위함입니다. 그러나 시뮬레이션 속도를 높이기 위해서는 디스크에 기록되는 데이터 양을 제한해야 합니다. 시뮬레이션 편집기 창(정상 상태, 시간 영역 등..)에는 디스크에 덤프할 데이터 양을 결정하는 옵션이 있습니다. 이는 그림 19.1에 나와 있습니다.

"Output verbosity to disk" 옵션은 "None"과 "write everything to disk" 사이에서 전환할 수 있습니다. "None"이 선택되면 시뮬레이션 결과조차도 디스크에 기록되지 않으며, 어떤 출력도 디스크에 전혀 저장되지 않습니다. "write everything to disk"가 선택되면 시뮬레이션은 모든 것을 디스크에 덤프하므로 JV 곡선과 솔버의 모든 내부 변수가 디스크에 기록되어 사용자가 시뮬레이션 과정 동안 전하 운반자 밀도, 페르미 준위, 전위 등이 어떻게 변하는지 살펴볼 수 있습니다(섹션 19.1 참조). "Output verbosity to disk" 아래의 두 번째 옵션인 "dump trap distribution"은 에너지 및 위치 공간에서 트랩의 분포를 기록합니다. 섹션 [sec:trapmap]를 참조하십시오.
Snapshots 디렉토리 - dir
Trap_map 디렉토리 - dir
trap map 디렉토리에는 위치와 에너지 깊이의 함수로서 트랩 내 전하 운반자의 분포와 밀도가 포함됩니다. 예는 그림 19.4 [sec:trapmap]에 나와 있습니다.
광학 스냅샷 - dir
광학 시뮬레이션의 결과를 포함합니다.
Cache - dir
컴퓨터로 수학을 수행하게 하는 것은 전반적으로 느린 일입니다. 결과를 미리 계산한 뒤 조회 테이블에 답을 저장하는 편이 훨씬 빠릅니다. 이는 계산 속도를 크게 높일 수 있습니다. cahce dir에는 이러한 사전 계산의 결과가 저장되며, 원한다면 삭제해도 OghmaNano는 실행 시 다시 만들 것입니다.
Equilibrium 디렉토리
솔버는 어떤 시뮬레이션을 시작하기 전에 0V 인가 바이어스의 암조건에서 장치 방정식을 풉니다. 이 계산 결과는 이 디렉토리에 저장됩니다. 이렇게 하는 실질적 이유는 Newton 방법이 주어진 문제에 대해 합리적인 초기 추정을 제공해야만 동작하기 때문입니다. 따라서 솔버를 시작하기 위해 암조건 0V에서의 전하 운반자 밀도를 추정하고, 이후 Newton 방법을 사용하여 암조건 0V에서의 정확한 전하 운반자 밀도 프로파일을 계산합니다(결과는 equilibrium 디렉토리에 저장됨). 그 다음 이 지점에서 +1V 조명 조건과 같은 다른 해로 진행할 수 있습니다.
광학 시뮬레이션
| JSON 토큰 | 의미 | 단위 | Ref |
|---|---|---|---|
| \(J_{photo}\) | 광전류 밀도 \(Am^{-2}\) | ||
| \(I_{photo}\) | 광전류 \(A\) |
파일 형식
OghmaNano와 관련된 거의 모든 입력 및 출력 파일은 사람이 읽을 수 있으며, 이는 곧 일반적인 텍스트 파일이라는 뜻입니다. 모든 출력 파일은 입력 파일과 마찬가지로 gnuplot/excel에서 직접 플로팅할 수 있습니다. 현재 출력 파일은 .dat라고 불리지만, 단순한 텍스트 파일입니다. 모든 구성 파일은 json 형식이므로 직접 편집할 수 있으며 Python json 라이브러리를 사용해서도 편집할 수 있습니다.
.dat 파일
이 유형의 파일은 excel 또는 다른 플로팅 프로그램으로 가져올 수 있는 일반 텍스트 파일입니다. 이 파일은 x와 y의 두 개 데이터 열을 포함합니다. 또한 단위 등의 정보를 포함하는 프리앰블도 있습니다. OghmaNano는 .dat 파일에서 .csv 파일로 이동하고 있습니다.
.csv 파일
이 파일은 예상할 수 있는 그대로의 일반 csv 파일이며 어떤 텍스트 편집기로도 가져올 수 있습니다. 파일의 첫 번째 줄은 단위 등의 정보를 포함하는 json 문자열입니다. 이것은 무시해도 됩니다. 두 번째 줄은 x/y 데이터를 사람이 읽을 수 있는 형태로 설명하고, 그 이후의 나머지 파일에는 데이터가 들어 있습니다.
바이너리 .csv 파일 - 사람이 읽을 수 없는 파일
경우에 따라 텍스트 파일을 덤프하는 것이 실용적이지 않을 수 있습니다. 예를 들어 3D 구조를 다룰 때가 그렇습니다. 이 경우 OghmaNano는 csv 파일에서 사용하는 것과 동일한 json 헤더를 덤프한 다음, 데이터를 나타내는 일련의 C float를 덤프합니다.