ホーム スクリーンショット ユーザーマニュアル Blueskyロゴ YouTube
OghmaNano 有機/ペロブスカイト太陽電池、OFET、OLEDをシミュレーション ダウンロード

Transfer matrix モデル (TMM)

1. イントロダクション

transfer matrix 法 (TMM) は、垂直入射条件下における 多層(「サンドイッチ型」)構造内の光伝搬をモデリングするための高速で信頼性の高い手法です。これは 太陽電池光学フィルタセンサーなどのデバイスで広く使用されており、 薄膜を通して光がどのように吸収反射透過されるかを定量化する必要がある場合に適しています。

FDTD のようなフルウェーブソルバと比べると、TMM は 通常 桁違いに低い計算コストで同様の知見を得ることができます。このため、 多層スタックの高速な設計反復、パラメータ掃引、最適化に理想的でありながら、デバイス挙動を支配する 主要な干渉効果および薄膜効果をなお捉えることができます。TMM は平面スタックにおける垂直入射の場合に最も単純ですが、 必要に応じて斜入射や偏光依存解析へ拡張することも可能です。

👉 今すぐシミュレーションを始めたいですか?: Transfer matrix モデルに関するクイックスタートチュートリアルを試してください

2. TMM ツールへのアクセス

Transfer Matrix simulation ツールは、 メインウィンドウのOptical リボンから Transfer matrix を選択することでアクセスできます (Figure ?? を参照)。

メインメニューの Optical リボンからアクセスした OghmaNano Transfer Matrix ソルバ。デバイス内の光子密度および光子吸収率を表示している
メインメニューの Optical リボンからアクセスできる Transfer Matrix ソルバ。 このウィンドウではさまざまな光学モデルにアクセスでき、デバイス内部の光子密度や 吸収率などの出力を表示します。

3. TMM シミュレーションの実行

Run optical simulation をクリックすると (Figure ?? を参照)、 構造内の光分布が波長および位置の関数として計算されます。 シミュレーションウィンドウ上部では、いくつかの光学モデルから選択できます。 Transfer matrix を選ぶと完全な光学シミュレーションが実行され、他のオプションは簡略化した近似を提供し、 代替の生成プロファイルを調べる際に有用です。

デバイス内の光子密度および光子吸収率を表示する OghmaNano Transfer Matrix 光学シミュレーションウィンドウ
Transfer Matrix 光学シミュレーションウィンドウ。 Play ボタンでシミュレーションを実行し、選択されたモードによって使用する光学モデルが決まります。
波長およびデバイス深さの関数として光子密度マップを表示する OghmaNano Transfer Matrix 光学シミュレーションウィンドウ
光子密度出力の例。 カラーマップは、デバイス内部の光子の空間分布およびスペクトル分布を、 波長と深さ(y 位置)の関数として示しています。

利用可能なシミュレーションモードは次のとおりです:

光学シミュレーションウィンドウには、光がデバイスとどのように相互作用するかを調べるための複数のタブがあります。 たとえば、?? は 構造内部の光子密度を示しており、層界面での反射によって明瞭な干渉パターンが生じていることが分かります。 ?? は、 ?? と同じデータを バンド図として表示したものです。 この別表示はウィンドウ内で右クリックしてメニューオプションを調整することでアクセスでき、 出版用のバンド図作成に特に有用です。 最後に、?? は 光学モデルの設定ウィンドウを示しています。 ここでの重要なパラメータは photon efficiency であり、吸収された光子 1 個あたりに何組の電子–正孔対が生成されるかを指定します。 有機デバイスでは、このパラメータは geminate recombination を考慮するために用いられますが、 無機系または高秩序系では通常 1.0 に近い値に設定すべきです。

デバイス全体の生成率プロファイルとエネルギー準位図のオーバーレイを表示する OghmaNano Transfer Matrix 光学シミュレーションウィンドウ
Transfer Matrix 光学シミュレーションウィンドウからの生成率出力。 黒線はデバイス内部の電荷キャリア生成率の空間分布を示し、 重ねて表示されたエネルギー準位図(右軸)は各材料層の HOMO および LUMO 準位の相対位置を示します。
デバイススタックのエネルギー準位図を表示する OghmaNano Transfer Matrix 光学シミュレーションウィンドウ
Transfer Matrix 光学シミュレーションウィンドウからのエネルギー準位図。 この図は各材料層の HOMO および LUMO 準位(またはバンド端)を示しており、 デバイススタック全体の電子構造の概要を提供します。 この表示では、生成率データや軸ラベルなどの追加情報を含めるか除外するかを切り替えることができます。
photon efficiency、generation rate file、QE spectra file、および output verbosity settings を表示する OghmaNano Transfer Matrix ソルバ設定ウィンドウ
Transfer Matrix ソルバの Configure → Output files ウィンドウ。 ここでの重要なパラメータは photon efficiency であり、吸収された光子 1 個あたりに何組の電子–正孔対が生成されるかを制御します。 もう一つの重要なオプションは output verbosity to disk で、ソルバがディスクへ書き込む詳細量を決定します。 すべての出力を書き出すことは光学シミュレーションを詳細に解析する際には有用ですが、通常の実行では出力詳細度を下げても十分であることが多いです。

5. 出力ファイル

概要: 光学シミュレーションを実行した後、結果の概要は光学シミュレーションウィンドウ (??)で確認できます。 詳細は上で説明したとおりです。より詳しい解析のために、追加情報はメインウィンドウの Output タブにもあります (??)。 ?? には 2 つの主要なアイコン、optical_output および optical_snapshots が表示されています。 optical_output をダブルクリックすると光学結果ウィンドウが開き (Figure ??)、 一方 optical_snapshots をダブルクリックすると Optical Snapshots ウィンドウが開きます (??)。 Optical Snapshots ウィンドウでは、光子密度、吸収光子、 デバイス内部の電場分布などの波長分解データを調べることができます。 各波長ごとに結果が保存されるため、このツールはデバイス性能を 光学スペクトル全体にわたって詳細に確認する手段を提供します。

optical_output および optical_snapshots ファイルを含む Transfer Matrix シミュレーション結果を表示する OghmaNano output タブ
Transfer Matrix シミュレーション結果を表示する Output タブ。 optical_output および optical_snapshots ファイルは、通常は光学シミュレーションを直接実行したときにのみ生成され、 結合電気シミュレーションの一部として光学ソルバが呼び出された場合には書き出されません。
ある波長における深さに対する吸収光子のプロットを表示する OghmaNano Optical Snapshots ウィンドウ
Optical Snapshots ウィンドウ。 このツールでは、光子密度、吸収光子、 およびデバイス内部の電場プロファイルなどの波長分解量を調べることができます。この例では、630 nm の波長の光に対する 深さの関数としての吸収光子をプロットしています。

Optical_snapshots: 上で説明した optical_snapshots フォルダは、グラフィカルインターフェースで表示したときに、 光子密度、吸収光子、光学電場の波長依存データにアクセスする手段を提供します。 しかし、これは単なる標準ディレクトリでもあるため、ファイルマネージャから直接探索することもできます。 Figure ?? に示すように、 このフォルダには 0 から 12 まで番号付けされたサブディレクトリが含まれており、それぞれが 1 つのシミュレーション波長に対応します。 これらのサブディレクトリのいずれか(たとえばディレクトリ 0)を開くと、 Figure ?? に示す出力ファイルが現れます。

これらのファイルには、吸収プロファイル、電場、光子密度、生成率などのデータが含まれており、 いずれも確認や後処理が容易なプレーンテキスト CSV 形式で書き出されます。 下の表は、典型的な波長ディレクトリの内容を要約したものです:

各サブディレクトリが 1 つのシミュレーション波長を表す 12 個のサブディレクトリを含む optical_snapshots フォルダ
optical_snapshots フォルダ。 0–12 の番号が付いたサブディレクトリは、それぞれ 1 つのシミュレーション波長の結果を含みます。
photons.csv、photons_abs.csv、および G.csv などの CSV ファイルを表示する optical_snapshots 内の directory 0 の内容
directory 0 の内容の例。 その波長に対する吸収、電場、光子密度、生成率データを含むファイルがあります。
メタデータおよびシミュレーション出力値を含む photons_abs.csv の内容例
photons_abs.csv の内容例。メタデータに続いて軸ラベルとデータ値が示されています。

これらの出力はプレーンテキストであるため、任意のエディタで開くことができます。 Figure ?? に示すように、 各 CSV の 1 行目にはプロット用メタデータ、2 行目には軸の説明、残りの行には生の数値データが含まれます。

単一波長の光学スナップショットによって生成されるファイル
ファイル名 説明
alpha.csv 選択した波長における y 位置 vs. 吸収
data.json 波長値およびプロット情報を含む JSON メタデータファイル
En.csv y 位置 (m) vs. 電場、負成分 (V/m)
Ep.csv y 位置 (m) vs. 電場、正成分 (V/m)
G.csv y 位置 (m) vs. 生成率 (\(m^{-3}s^{-1}\))
n.csv y 位置 (m) vs. 屈折率 n の実部
photons.csv y 位置 (m) vs. 光子密度 (\(m^{-3}\))
photons_abs.csv y 位置 (m) vs. 吸収光子 (\(m^{-3}s^{-1}\))

optical_output フォルダの詳細: optical_snapshots ディレクトリが波長分解結果(シミュレーション波長ごとに 1 サブフォルダ)を保存する一方で、 optical_output ディレクトリには、波長 vs. 位置 の二次元マップという形で 波長積分データが含まれています。 これらの出力は、電荷キャリア生成率、光子密度、規格化光子密度、透過、反射などの主要量を含め、 光がデバイスとどのように相互作用するかをスペクトル全体にわたって概観する手段を提供します。 ディレクトリの内容は Figure ?? に示されています。

Figure ?? に示すファイルは、 Table ?? に 詳しく説明されています。

Transfer Matrix シミュレーションによって生成された要約ファイルを表示する optical_output ディレクトリの内容
Transfer Matrix ソルバによって生成された波長積分要約ファイルを含む optical_output ディレクトリ。
optical_output ディレクトリで生成されるファイル
ファイル名 説明 プロット種別
data.json JSON 形式のシミュレーション設定を含むメタデータファイル 1D
G_y.csv y 位置 (m) vs. 電荷生成率 (\(m^{-3} s^{-1}\)) 2D
G_zxy.csv zxy 位置 (m) vs. 電荷生成率 (\(m^{-3} s^{-1}\)) 2D
Htot_zxy.csv zxy 位置 (m) vs. 光学熱生成 (\(W m^{-3}\)) 2D
light_src_id_xxx.csv 波長 (m) vs. 指定光源からの光強度 (\(W/m\)) 2D
photons_abs_yl.csv 波長 (m) vs. y 位置 (m) vs. 吸収光子 (\(m^{-3} s^{-1}\)) 2D
photons_yl.csv 波長 (m) vs. y 位置 (m) vs. 光子密度 (\(m^{-3}\)) 2D
photons_yl_norm.csv 波長 (m) vs. y 位置 (m) vs. 規格化光子密度 (a.u.) 2D
reflect.csv 波長 (m) vs. デバイススタックからの反射光 1D
transmit.csv 波長 (m) vs. デバイススタックを透過した光 1D

6. 光学的に厚い層のシミュレーション(非コヒーレント層)

コヒーレント層および非コヒーレント層の設定を表示する OghmaNano layer editor
coherent 層と incoherent 層の両方を表示した layer editor。
Optical Thickness ボタンを表示する OghmaNano Transfer Matrix ウィンドウ
Transfer Matrix ウィンドウの Optical Thickness ボタン。
層の有効光学厚さを設定するための OghmaNano 設定ウィンドウ
層の 有効光学厚さ を設定するための設定ウィンドウ。

一般的なオプトエレクトロニクスデバイスの活性層厚さは 10 nm から 100 nm 程度です。 しかし、これらのデバイスはしばしば 10 mm から 1 cm の厚さを持つ基板上に形成されます。 多くの場合、デバイス自体だけでなく基板の光学効果もシミュレーションすることが有用です。 そのためには、ナノメートルからメートルまでの長さスケールをまたぐことのできるシミュレーションツールが必要です。 これを行う上で主な課題は 3 つあります:

OghmaNano はこれらの問題に 2 つの方法で対処します。 第一に、ユーザーは層を 非コヒーレント として扱うことができ、 吸収のみを考慮して位相情報を無視できます。 この方法は問題 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}}\) はエディタにおける実際の層厚です。 この方法は数値的問題を軽減するだけでなく、より有用なプロットも生成します。 つまり、基板が軸を支配せず、デバイス層がなお明瞭に見えるようになります。

この機能を使用するには、 Figure ?? に示すようにデバイス構造を設定してください。 その後、Transfer Matrix ウィンドウで Optical Thickness ボタンをクリックします (Figure ??)。 これにより設定ダイアログが開きます (Figure ??)。 ここで任意の層の有効光学厚さを指定できます。 示した例では、ガラス基板を 1 m に設定しています。

4. TMM はいつ実行されるのか?

transfer matrix シミュレーションは 2 つの方法で実行できます。 第一に、Play ボタンをクリックして直接起動できます。 あるいは、電気シミュレーションを実行した際に光学モデルが自動的に実行されるため、追加のユーザー操作は不要です。

この 2 つのモードの主な違いは出力にあります。 直接実行した場合、光学シミュレーションはより完全な出力ファイル群をディスク上に生成します。 一方、電気シミュレーションの一部として呼び出された場合は、電気ソルバを遅くしないように、出力は必要最小限のデータのみに削減されます。

👉 TMM 理論: transfer matrix 理論を理解するには 次のセクションへ進んでください。