Startseite Beispiele Screenshots Benutzerhandbuch Bluesky-Logo YouTube ☰
OghmaNano Simulation von organischen/Perowskit-Solarzellen, OFETs und OLEDs DOWNLOAD Quick Start guide

Simulation optischer Filter mithilfe der Transfermatrixmethode

Schematic of the Transfer Matrix Method showing forward and backward propagating electromagnetic fields in a multilayer optical stack
Schematische Darstellung der Transfermatrixmethode (TMM) für eine mehrschichtige optische Struktur. Jede Schicht wird durch einen komplexen Brechungsindex \(n + jk\) und eine Dicke \(l\) beschrieben, während sich vorwärts und rückwärts ausbreitende elektromagnetische Wellen (\(E^+\) und \(E^-\)) an jeder Grenzfläche koppeln. Das gesamte optische Feld innerhalb der Anordnung wird durch die Ausbreitung der Felder durch die gesamte Schichtfolge ermittelt.

In diesem Tutorial verwenden wir den Solver für die optische Transfermatrix von OghmaNano, um Reflexion, Transmission und optische Interferenz in mehrschichtigen, dünnschichtigen optischen Filtern zu simulieren. Solche Strukturen werden häufig in Bragg-Reflektoren, dielektrischen Spiegeln, Antireflexbeschichtungen, OLEDs und dünnschichtigen Solarzellen eingesetzt, wobei die optischen Eigenschaften durch den Brechungsindex und die Dicke jeder Schicht in der Struktur gesteuert werden.

1. Hintergrund

Die Transfermatrixmethode (TMM) wird häufig zur Simulation von mehrschichtigen, dünnschichtigen optischen Strukturen verwendet, wie z. B. OLED-Mikrohohlräumen, Dünnschicht-Solarzellen, dielektrischen Spiegeln, verteilten Bragg-Reflektoren (DBRs), Antireflexbeschichtungen und wellenlängenabhängigen optischen Filtern. In diesen Strukturen wird bei senkrechtem Einfall Licht an jeder Grenzfläche zwischen Materialien mit unterschiedlichen Brechungsindizes teilweise reflektiert und transmittiert, wodurch optische Interferenz zwischen sich vorwärts und rückwärts ausbreitenden elektromagnetischen Wellen entsteht. Die Transfermatrixmethode modelliert diese Interferenz präzise und ermöglicht die genaue Berechnung der Reflexion, Transmission und optischen Absorption des gesamten mehrschichtigen Systems. Die optische Reaktion mehrschichtiger, dünnschichtiger Strukturen wird durch die Interferenz zwischen reflektierten und transmittierten elektromagnetischen Wellen innerhalb des Systems bestimmt. Eine schematische Darstellung der mehrschichtigen Struktur und der sich ausbreitenden optischen Felder ist in Abbildung ?? dargestellt.

Im Rahmen der Transfermatrix-Formalismus wird das elektrische Feld in jeder Schicht als die Summe einer sich vorwärts und einer sich rückwärts ausbreitenden Welle dargestellt.

\[ E_i(z)=E_i^{+}e^{-\zeta_i z}+E_i^{-}e^{\zeta_i z} \]

wobei \(E_i^{+}\) und \(E_i^{-}\) die jeweiligen Amplituden der vorwärts- bzw. rückwärtslaufenden Feldwellen sind und

\[ \zeta_i=\frac{2\pi}{\lambda}\bar{n}_i \]

wobei \(\bar{n}=n+j\kappa\) den komplexen Brechungsindex des Materials darstellt. Durch die Anwendung der Maxwell-Gleichungen und der elektromagnetischen Randbedingungen an jeder Grenzfläche erhält man die Fresnel-Reflexions- und -Transmissionskoeffizienten.

\[ r_{ij}=\frac{n_i-n_j}{n_i+n_j}, \qquad t_{ij}=\frac{2n_i}{n_i+n_j} \]

wodurch die optischen Felder auf beiden Seiten einer Grenzfläche durch eine Übergangsmatrix in Beziehung gesetzt werden können.

\[ \begin{pmatrix} E_i^{+} \\ E_i^{-} \end{pmatrix} = \frac{1}{t_{ij}} \begin{pmatrix} 1 & r_{ij} \\ r_{ij} & 1 \end{pmatrix} \begin{pmatrix} E_j^{+} \\ E_j^{-} \end{pmatrix} \]

wobei die Ausbreitung durch eine Schicht der Dicke \(d_i\) wie folgt beschrieben werden kann:

\[ \begin{pmatrix} E_i^{+}(z+d_i) \\ E_i^{-}(z+d_i) \end{pmatrix} = \begin{pmatrix} e^{\zeta_i d_i} & 0 \\ 0 & e^{-\zeta_i d_i} \end{pmatrix} \begin{pmatrix} E_i^{+}(z) \\ E_i^{-}(z) \end{pmatrix} \]

Die vollständige, mehrschichtige optische Struktur wird daher durch die Multiplikation der Grenzflächen- und Ausbreitungsmatrizen jeder einzelnen Schicht berechnet.

\[ M=M_1M_2M_3 \cdots M_n \]

Daraus lässt sich die reflektierte, transmittierte und absorbierte optische Leistung direkt berechnen. Dieser Ansatz ist recheneffizient, numerisch stabil und erfordert lediglich einfache Matrixmultiplikationsoperationen, was ihn besonders geeignet für die Simulation von mehrschichtigen optischen Filtern und Dünnschichtinterferenzstrukturen macht.

Durch die Anpassung der Dicke und des Brechungsindex der einzelnen Schichten lassen sich optische Filter mit spezifischen spektralen Eigenschaften entwickeln. So kann beispielsweise eine einzelne dielektrische Viertelwellenschicht die Oberflächenreflexion bei einer bestimmten Wellenlänge reduzieren, während abwechselnd hoch- und niedrigbrechende Schichten einen Bragg-Reflektor mit einem ausgeprägten optischen Sperrbereich bilden.

2. Loslegen

Um Ihre erste Berechnung für einen optischen Filter zu starten, öffnen Sie das Fenster „Neue Simulation“ über die Registerkarte „Datei“ im Hauptmenü. Doppelklicken Sie auf das Beispiel „Optischer Filter“ (siehe ??) und speichern Sie die Simulation in einem Ordner auf Ihrer Festplatte. Anschließend wird das Hauptfenster (siehe ??) mit einem mehrschichtigen Aufbau aus etwa zehn abwechselnden Schichten angezeigt. Klicken Sie auf die Schaltfläche „Simulation starten“ (Wiedergabe), um die Spektren zu berechnen. Nach Abschluss der Berechnung werden die Ergebnisse im Reiter „Ausgabe“ (siehe ??) angezeigt.

New simulation window with the Optical filter example highlighted.
Das neue Simulationsfenster, wobei das Beispiel für den optischen Filter hervorgehoben ist.
Main window showing a multilayer optical filter stack.
Das Hauptfenster von OghmaNano für die Demo des optischen Filters, das eine etwa 10-schichtige Struktur anzeigt. Klicken Sie auf „Simulation starten“ (Wiedergabe), um die Spektren zu berechnen.
Output tab showing files and plots from the optical filter simulation.
Ausgabetabellen nach der Ausführung der Simulation des optischen Filters, einschließlich der generierten Spektren und Datendateien.

3. Überprüfung der Ergebnisse

Nachdem die Simulation ausgeführt wurde, doppelklicken Sie auf „Optische Ausgabe“ unter ??. Dadurch wird der Editor für die optische Simulation geöffnet. Der Editor enthält mehrere Registerkarten. Die erste Registerkarte, „Photonenverteilung“, wird automatisch angezeigt (siehe ??). Hier wird die Photonenkonzentration innerhalb des Resonators dargestellt, und die schichtförmige Struktur des Filters ist deutlich als vertikale Streifen erkennbar. Die zweite Registerkarte, „Absorbierte Photonenverteilung“ (siehe ??), zeigt, wo Photonen absorbiert werden. In diesem Beispiel ist die Absorption gering, aber nicht null, da eines der Materialien mit einem kleinen Absorptionskoeffizienten eingestellt wurde \(\alpha\). Schließlich zeigt die Registerkarte „Reflektiertes Licht“ (siehe ??) das Reflexionsspektrum an. Das Ergebnis zeigt eine starke Reflexion zwischen etwa 500 nm und 800 nm, während Licht außerhalb dieses Bereichs in unterschiedlichem Maße durchgelassen wird, was typisch für einen Bragg-Filter ist.

Photon distribution within the cavity showing the layer structure.
Photonenverteilung innerhalb der mehrschichtigen Kavität.
Photon distribution absorbed showing weak absorption in some layers.
Karte der Photonabsorption, die eine schwache Absorption in ausgewählten Schichten zeigt.
Reflected light spectrum showing strong reflection between 500 nm and 800 nm.
Reflektiertes Lichtspektrum mit einer starken Reflexion zwischen 500 nm und 800 nm.
Transmitted light spectrum showing band-stop behaviour of the multilayer filter.
Das Transmissionsspektrum zeigt das Bandbremsverhalten des Filters.

Das Spektrum des durchgelassenen Lichts bestätigt das Bandbremsverhalten des Filters. Licht im Bereich von etwa 300 nm bis 500 nm wird effektiv durchgelassen, während Wellenlängen im Bereich von 500–800 nm stark blockiert werden. Bei längeren Wellenlängen über 800 nm zeigt sich eine gewisse erneute Durchlässigkeit, was die Multiband-Eigenschaft der Filtercharakteristik verdeutlicht.

4. Bearbeiten des Filters

Layer editor showing the multilayer stack with editable thicknesses and materials.
Der Schichteneditor zeigt die mehrschichtige Struktur an; die Dicke und das Material können für jede einzelne Schicht bearbeitet werden.

Um den Schichtstapel zu überprüfen oder zu ändern, öffnen Sie im Hauptfenster den Reiter „Gerätestruktur“ und klicken Sie auf „Schichteditor“ (siehe ??). Der Editor listet jede Schicht des Geräts mit ihrer Dicke, dem optischen Material und den Einstellungen auf. Sie können die Schichtdicken direkt in der Tabelle bearbeiten, Materialien ändern, Schichten hinzufügen oder entfernen und sie bei Bedarf für Ihr Filterdesign neu anordnen.

5. Messung der Dicke optischer Filter durch Scannen

Als Nächstes werden wir uns die automatische Analyse der Filterbreiten ansehen. Dies ermöglicht es Ihnen, Filter zu entwerfen, diese automatisch zu analysieren und zu untersuchen, wie sich die Struktur des Filters sowohl auf die Transmission als auch auf die Reflexion auswirkt. Durch die Durchführung systematischer Analysen können Sie schnell einen Überblick über viele verschiedene Filterdesigns erstellen und dasjenige auswählen, das am besten zu Ihrer Anwendung passt.

Navigieren Sie im Hauptfenster zum Reiter „Automatisierung“ und klicken Sie auf „Parameterscan“ (siehe ??). Das Fenster „Parameterscan“ wird geöffnet, und es sollte bereits einen neuen Scan-Eintrag mit dem Namen „neu“ geben. Klicken Sie doppelt auf diesen Eintrag, und das Fenster zur Konfiguration des Scans wird angezeigt (siehe ??). Klicken Sie abschließend auf „Scan starten“, um die Berechnung zu beginnen. Je nach Anzahl der von Ihnen ausgewählten Parameterwerte kann der Scan einige Zeit in Anspruch nehmen.

OghmaNano main window with the Automation ribbon and Parameter Scan highlighted.
Die Automatisierungs-Symbolleiste, wobei die Schaltfläche „Parameterscan“ hervorgehoben ist.
Parameter scan setup window showing layer thickness values to scan.
Fenster zur Konfiguration der Parametersuchfunktion. Definieren Sie die zu durchsuchenden Werte und klicken Sie dann auf „Suche starten“.

Wenn Sie auf „Scan starten“ klicken, führen Sie das in ?? gezeigte kleine Programm aus. Wir werden dieses Programm später erläutern, aber im Wesentlichen ändert es die Dicke der Schicht mit dem höchsten Brechungsindex über eine Reihe von Werten. Öffnen Sie die Registerkarte „Ausgabe“ im Fenster „Parameterscan“ (siehe ??): Sie sehen vier Verzeichnisse, von denen jedes einer der gescannten Dicken entspricht. Jedes Verzeichnis enthält eine vollständige Simulation mit den üblichen Dateien, wobei sich die Verzeichnisse nur in der Dicke der jeweiligen Schicht unterscheiden.

Im Stammverzeichnis des Scanordners finden Sie auch spezielle „Multikurven“-Symbole (CSV-Dateien mit einem mehrzeiligen Symbol). Diese fassen die entsprechenden Kurven aus allen Teilsimulationen zusammen. Doppelklicken Sie auf „optical_output“, um es zu öffnen (siehe ??). Sie sehen dann reflect.csv und transmit.csv. Durch das Öffnen von reflect.csv wird die Reflexion aller gescannten Schichtdicken in einem Diagramm dargestellt, wie in ?? gezeigt.

Parameter scan Output tab showing subfolders for each scanned thickness.
Parameter-Scan, Registerkarte „Ausgabe“: Für jeden gescannten Dickenwert wird ein eigener Ordner erstellt.
Inside a scanned-thickness folder showing reflect.csv and transmit.csv aggregate files.
Innerhalb eines Unterordners für Scans: zusammengefasste Daten von reflect.csv und transmit.csv.
Combined reflectance plot overlaying curves from all scanned thicknesses.
Die kombinierte Reflexionsleistung aller gescannten Schichtdicken.

6. Das Programm zur Durchführung von Parameterscans verstehen

Wenn Sie sich ?? noch einmal ansehen, werden Sie fünf Zeilen sehen. Jede Zeile gibt einen zu scannenden Parameter an. In diesem Beispiel ist der Parameter die Dicke (dy) bestimmter Schichten in der Epitaxieschichtfolge. Die Einträge sind epitaxy.layer0.dy, epitaxy.layer2.dy, epitaxy.layer4.dy, epitaxy.layer6.dy und epitaxy.layer8.dy. Diese Zeilen entsprechen den Schichten mit hohem Brechungsindex in der Bauelementstruktur.

In der ersten Zeile sehen Sie eine Liste von Dickenwerten: 1.0e-7, 2e-7, 4e-7, 8e-7. Dies sind die Werte, die der Scan layer0 zuweist. Für diese Zeile ist die Operation auf „Scannen“ eingestellt, was bedeutet, dass das Programm die Dicke von layer0 systematisch über diese angegebenen Werte variiert.

Für die übrigen Schichten (layer2, layer4, layer6 und layer8) ist die Operation mit epitaxy.layer0.dy verknüpft. In der Spalte „Werte“ wird dies als Duplikat angezeigt. Dies weist das Programm an, den aktuell für layer0 eingestellten Wert zu kopieren und auf die anderen Schichten mit hohem Brechungsindex anzuwenden. Im Wesentlichen bedeutet dies, dass sich die anderen Schichten mit hohem Brechungsindex jedes Mal automatisch auf die gleiche Dicke einstellen, wenn sich layer0 ändert.

Zusammenfassend lässt sich sagen, dass dieses Programm eine Reihe von Dickenwerten für eine hochbrechende Schicht durchläuft und diese Dicke dann auf alle anderen hochbrechenden Schichten im Stapel überträgt. Für jeden Fall wird die Berechnung durchgeführt, wodurch Sie untersuchen können, wie sich die Filterleistung in Abhängigkeit von der Schichtdicke verändert.

7. Zusammenfassung

In diesem Teil des Tutorials haben Sie gelernt, wie Sie die automatische Auslegung von optischen Filtern mithilfe von Parameterscans durchführen können. Sie haben die Schichtdicken systematisch variiert, Parameter auf mehrere Schichten angewendet und untersucht, wie sich diese Änderungen auf die Transmission und Reflexion auswirken. Mit diesen Werkzeugen können Sie nun schnell viele verschiedene Filterdesigns bewerten und die Strukturen identifizieren, die am besten für Ihre Anwendung geeignet sind.