Strona główna Przykłady Zrzuty ekranu Instrukcja obsługi Logo Bluesky. YouTube ☰
OghmaNano Platforma do symulacji wielofizycznych procesów zachodzących w optoelektronicznych urządzeniach i systemach fotonicznych. POBIERZ Przewodnik szybkiego uruchomienia

Metoda macierzowa przenoszenia (TMM)

1. Wprowadzenie

Metoda macierzy przenoszenia (TMM) to szybka i niezawodna technika modelowania rozchodzenia się światła w strukturach wielowarstwowych („typu kanapkowego”) przy padzie normalnym. Jest szeroko stosowana w urządzeniach takich jak ogniwa słoneczne, filtry optyczne, diody OLED i czujniki optyczne, gdzie konieczne jest określenie ilości światła pochłanianego, odbijanego i transmitowanego przez cienkie warstwy. Jeśli dopiero zaczynasz pracę z tą techniką, zapoznaj się z Czym jest metoda macierzy przenoszenia?. Bardziej szczegółowe opracowanie matematyczne znajduje się w Wyprowadzenie metody macierzy przenoszenia.

W porównaniu z metodami rozwiązywania równań opartymi na pełnej fali, takimi jak... Metoda FDTD (Metoda różnic skończonych w dziedzinie czasu), TMM pozwala uzyskać podobne wyniki, przy czym koszt obliczeniowy jest zazwyczaj o kilka rzędów wielkości niższeDzięki temu idealnie nadaje się do szybkiego iteracyjnego projektowania, przeprowadzania analiz parametrów oraz optymalizacji wielowarstwowych struktur, przy jednoczesnym uwzględnieniu kluczowych efektów interferencji i cienkich warstw, które wpływają na działanie urządzenia. Typowe zastosowania obejmują: projektowanie filtrów optycznych, powłoki antyrefleksyjne, Rezonatory Fabry’ego-Perota, perowskitowe ogniwa słoneczne, organiczne ogniwa słoneczneoraz Symulacje optycznego sprzężenia promieniowania w diodach OLED.Aby uzyskać wskazówki dotyczące wyboru odpowiedniej metody – TMM lub FDTD – zapoznaj się z informacjami zawartymi w Metoda FDTD a metoda macierzy przenoszenia.

👉 Chcesz od razu rozpocząć symulację? Wypróbuj krótki przewodnik dotyczący modelu macierzowego transformacji.

2. Uruchamianie symulacji TMM.

Narzędzie do symulacji Transfer Matrix można uruchomić z poziomu paska narzędzi „Optyka” w głównym oknie, wybierając opcję „Macierz transferu” (patrz Rysunek ??).

OghmaNano Transfer Matrix solver accessed from the Optical ribbon in the main menu, showing photon density and photon absorption rate in the device
Rozwiązujący problemy związane z macierzą przenoszenia, dostępny poprzez zakładkę „Optyka” w głównym menu. To okno umożliwia dostęp do różnych modeli optycznych i wyświetla wyniki, takie jak gęstość fotonów i współczynnik absorpcji wewnątrz urządzenia.

Kliknięcie przycisku „Uruchom symulację optyczną” (patrz Rysunek ??) pozwala na obliczenie rozkładu pola optycznego wewnątrz urządzenia oraz wyznaczenie takich parametrów, jak gęstość fotonów, gęstość zaabsorbowanych fotonów, szybkość generacji, widmo odbicia i widmo transmisji. Okno symulacji optycznej zapewnia również dostęp do alternatywnych modeli optycznych, w tym metody macierzy przenoszenia, metody TMM opartej na różnicach skończonych, wykresów generacji eksponencjalnej oraz wykresów generacji zdefiniowanych przez użytkownika.

OghmaNano transfer matrix simulation showing photon density as a function of wavelength and depth in the device.
Gęstość fotonów obliczana metodą macierzy przenoszenia. Skala kolorów przedstawia liczbę fotonów obecnych w urządzeniu w zależności od długości fali i położenia. Efekty interferencyjne wynikające z odbić na granicach materiałów powodują powstawanie wzorców fal stojących i obszarów o zwiększonej intensywności optycznej.
OghmaNano transfer matrix simulation showing absorbed photon density as a function of wavelength and depth in the device.
Gęstość absorbowanych fotonów wewnątrz urządzenia. Ta wielkość określa szybkość absorpcji fotonów w zależności od długości fali i położenia i stanowi podstawę do obliczenia profilu fotogeneracji, wykorzystywanego przez solver elektryczny.

3. Tryby symulacji

OghmaNano optical simulation ribbon showing the available optical simulation modes.
Dostępne tryby symulacji optycznej w edytorze symulacji optycznej.

Chociaż to okno służy głównie do symulacji z wykorzystaniem metody macierzy przenoszenia, dostępne są różne modele optyczne. Niektóre z nich wykonują pełne obliczenia macierzy przenoszenia, podczas gdy inne wprowadzają uproszczenia lub modyfikacje tej metody, co może być przydatne do analizy działania urządzenia, weryfikacji założeń lub zmniejszenia złożoności symulacji.

W większości symulacji należy stosować klasyczny algorytm macierzowy lub algorytm TMM oparty na metodzie różnic skończonych. Pozostałe tryby stanowią uproszczone przybliżenia, których celem jest zapewnienie dodatkowych informacji na temat fizycznych właściwości, ułatwienie dopasowywania parametrów i debugowania oraz umożliwienie uwzględniania w symulacji zewnętrznie generowanych profili optycznych.

4. Pliki wynikowe

Okno symulacji optycznej zawiera kilka zakładek, które umożliwiają analizę interakcji światła z urządzeniem. Na przykład, ?? pokazuje gęstość fotonów wewnątrz struktury, gdzie odbicia na granicach warstw powodują powstawanie wyraźnych wzorów interferencyjnych. ?? prezentuje te same dane co ??, ale w formie diagramu pasmowego. Do tej alternatywnej wizualizacji można uzyskać dostęp, klikając prawym przyciskiem myszy w oknie i modyfikując opcje menu. Jest ona szczególnie przydatna do generowania diagramów pasmowych do publikacji. Na koniec, ?? pokazuje okno konfiguracyjne modelu optycznego. Kluczowym parametrem jest tutaj efektywność fotonów, która określa, ile par elektron-dziura powstaje na każdy pochłonięty foton. W urządzeniach organicznych parametr ten uwzględnia rekombinację geminatową, natomiast w urządzeniach nieorganicznych lub dobrze uporządkowanych powinien być zazwyczaj ustawiony blisko wartości 1,0.

OghmaNano Transfer Matrix optical simulation window showing the generation rate profile across the device with energy level diagram overlay
Wykres szybkości generowania nośników, uzyskany z okna symulacji optycznej opartej na metodzie macierzy przenoszenia. Czarna krzywa przedstawia rozkład przestrzenny szybkości generowania nośników wewnątrz urządzenia, natomiast nałożony diagram poziomów energii (oś po prawej stronie) wskazuje względne położenie poziomów HOMO i LUMO dla każdej warstwy materiału.
OghmaNano Transfer Matrix optical simulation window showing the energy level diagram of the device stack
Schemat poziomów energii uzyskany z okna symulacji optycznej metodą macierzy przenoszenia. Schemat przedstawia poziomy HOMO i LUMO (lub krawędzie pasm) każdej warstwy materiału, dając ogólny obraz struktury elektronowej całej warstwy urządzenia. Można przełączać widok, aby wyświetlać lub ukrywać dodatkowe informacje, takie jak dane dotyczące szybkości generowania lub etykiety osi.
OghmaNano Transfer Matrix solver configuration window showing photon efficiency, generation rate file, QE spectra file, and output verbosity settings
Okno „Konfiguracja” → „Pliki wyjściowe” w programie do rozwiązywania równań macierzowych transferu. Kluczowym parametrem jest tutaj efektywność fotonów, która określa, ile par elektron-dziura jest generowanych na każdy pochłonięty foton. Inną ważną opcją jest poziom szczegółowości danych zapisywanych na dysku, który decyduje o tym, jak dużo informacji program zapisuje. Zapisywanie wszystkich danych wyjściowych może być przydatne podczas szczegółowej analizy symulacji optycznej, ale w przypadku standardowych obliczeń często wystarczający jest mniejszy poziom szczegółowości.

Podsumowanie: Po uruchomieniu symulacji optycznej można wyświetlić ogólny przegląd wyników w oknie symulacji optycznej (??), zgodnie z opisem powyżej. Bardziej szczegółową analizę można przeprowadzić, korzystając z dodatkowych informacji dostępnych w zakładce „Wyniki” w głównym oknie (??). W oknie ?? widoczne są dwie kluczowe ikony: „wyniki_optyczne” i „migawki_optyczne”. Kliknięcie dwukrotne ikony „wyniki_optyczne” otwiera okno wyników optycznych ( Rysunek ??), natomiast kliknięcie dwukrotne ikony „migawki_optyczne” otwiera okno „Migawki optyczne” (??). Okno „Migawki optyczne” umożliwia analizę danych rozdzielonych ze względu na długość fali, takich jak gęstość fotonów, liczba pochłoniętych fotonów oraz rozkład pola elektrycznego w urządzeniu. Ponieważ wyniki są przechowywane dla każdej długości fali, to narzędzie zapewnia szczegółowy obraz wydajności urządzenia w całym spektrum optycznym.

OghmaNano output tab showing results from the Transfer Matrix simulation including optical_output and optical_snapshots files
Zakładka „Wyniki” wyświetla wyniki symulacji macierzowej. Pliki optical_output i optical_snapshots są zazwyczaj tworzone tylko wtedy, gdy symulacja optyczna jest uruchamiana bezpośrednio i nie są zapisywane, gdy moduł symulacji optycznej jest wywoływany jako część połączonej symulacji elektrycznej.
OghmaNano Optical Snapshots window showing a plot of absorbed photons versus depth at a given wavelength
Okno „Obrazy optyczne”. To narzędzie umożliwia użytkownikowi analizę wielkości zależnych od długości fali, takich jak gęstość fotonów, liczba pochłoniętych fotonów oraz profile pola elektrycznego wewnątrz urządzenia. W tym przykładzie na wykresie przedstawiono liczbę pochłoniętych fotonów w zależności od głębokości dla światła o długości fali 630 nm.

Pliki ze zdjęciami optycznymi: opisany powyżej folder „pliki ze zdjęciami optycznymi” zapewnia dostęp do danych dotyczących gęstości fotonów, liczby pochłoniętych fotonów oraz pola elektrycznego w funkcji długości fali, co można zobaczyć za pomocą interfejsu graficznego. Jest to jednak po prostu standardowy katalog, do którego można również uzyskać dostęp bezpośrednio za pomocą menedżera plików. Jak pokazano na Rysunek ??, folder zawiera podkatalogi ponumerowane od 0 do 12, z których każdy odpowiada jednej symulowanej długości fali. Otwarcie jednego z tych podkatalogów (na przykład katalogu 0) ujawnia pliki wynikowe, które przedstawiono na Rysunek ??.

Pliki te zawierają dane, takie jak profile absorpcji, pola elektryczne, gęstości fotonów i współczynniki generacji, a wszystkie informacje zapisane są w prostym formacie CSV, co ułatwia ich przeglądanie lub dalszą obróbkę. Poniższa tabela podsumowuje zawartość typowego katalogu z danymi dotyczącymi długości fali:

Optical_snapshots folder containing 12 subdirectories, each representing one simulated wavelength
Folder o nazwie „optical_snapshots”. W każdym z podfolderów o numerach od 0 do 12 znajdują się wyniki symulacji dla jednej określonej długości fali.
Contents of directory 0 in optical_snapshots showing CSV files such as photons.csv, photons_abs.csv, and G.csv
Przykładowa zawartość katalogu 0. Pliki zawierają dane dotyczące absorpcji, pola elektrycznego, gęstości fotonów oraz szybkości generowania dla danej długości fali.
Example contents of photons_abs.csv including metadata and simulation output values
Przykładowa zawartość pliku photons_abs.csv, prezentująca metadane, a następnie etykiety osi i wartości danych.

Ponieważ dane wyjściowe są w postaci zwykłego tekstu, można je otworzyć w dowolnym edytorze. Jak pokazano na ilustracji: Rysunek ??każdy plik CSV rozpoczyna się od linii zawierającej metadane dotyczące tworzenia wykresu, druga linia opisuje osie, a w pozostałych liniach znajdują się surowe dane liczbowe.

Files produced by a single-wavelength optical snapshot
Nazwa pliku Opis
alpha.csv współrzędna y w funkcji absorpcji przy wybranej długości fali
data.json Plik metadanych w formacie JSON, zawierający wartość długości fali oraz informacje dotyczące tworzenia wykresu.
En.csv współrzędna y (m) w zależności od pola elektrycznego, składowa ujemna (V/m)
Ep.csv współrzędna y (m) w zależności od pola elektrycznego, składowa dodatnia (V/m)
G.csv współrzędna y (m) w zależności od tempa generowania (\(m^{-3}s^{-1}\))
n.csv współrzędna y (m) w zależności od rzeczywistej części współczynnika załamania światła n
photons.csv współrzędna y (m) w zależności od gęstości fotonów (\(m^{-3}\))
photons_abs.csv współrzędna y (m) w zależności od liczby pochłoniętych fotonów (\(m^{-3}s^{-1}\))

Szczegółowa analiza folderu optical_output: Folder optical_snapshots zawiera wyniki rozdzielone ze względu na długość fali (osobny podfolder dla każdej symulowanej długości fali), natomiast folder optical_output zawiera dane zintegrowane w zakresie długości fali w postaci dwuwymiarowych map przedstawiających zależność długości fali od położenia. Dane te pozwalają na ogólne zrozumienie, w jaki sposób światło oddziałuje z urządzeniem w całym spektrum, w tym kluczowych parametrów, takich jak szybkość generowania nośników ładunku, gęstość fotonów, znormalizowana gęstość fotonów, transmisja i odbicie. Zawartość folderu przedstawiono na Rysunek ??.

Pliki wymienione w Rysunek ?? są szczegółowo opisane w Tabela ??.

Contents of the optical_output directory showing summary files generated by the Transfer Matrix simulation
Katalog optical_output zawiera zagregowane pliki danych, w których przedstawiono wyniki obliczeń dla różnych długości fal, uzyskane za pomocą metody macierzy przenoszenia.
Files produced in the optical_output directory
Nazwa pliku Opis Rodzaj fabuły
data.json Plik metadanych zawierający ustawienia symulacji w formacie JSON. 1D
G_y.csv współrzędna y (m) w zależności od szybkości generowania ładunku (\(m^{-3} s^{-1}\)) 2D
G_zxy.csv zależność między pozycją w osi x i y (w metrach) a szybkością generowania ładunku (\(m^{-3} s^{-1}\)) 2D
Htot_zxy.csv zależność między pozycją w osi x i y (w metrach) a generacją ciepła mierzoną optycznie (\(W m^{-3}\)) 2D
light_src_id_xxx.csv Długość fali (m) w zależności od natężenia światła emitowanego przez określone źródło (\(W/m\)) 2D
photons_abs_yl.csv Długość fali (m) w zależności od współrzędnej y (m) i liczby pochłoniętych fotonów (\(m^{-3} s^{-1}\)) 2D
photons_yl.csv Długość fali (m) w zależności od współrzędnej y (m) i gęstości fotonów (\(m^{-3}\)) 2D
photons_yl_norm.csv Długość fali (m) w zależności od pozycji na osi y (m) i znormalizowanej gęstości fotonów (jednostki umowne). 2D
reflect.csv Długość fali (m) w odniesieniu do światła odbitego od warstw urządzenia. 1D
transmit.csv Długość fali (m) w odniesieniu do światła przechodzącego przez warstwy urządzenia. 1D

6. Symulacja warstw o dużej gęstości optycznej (warstwy niespójne).

OghmaNano layer editor showing configuration of coherent and incoherent layers
Edytor warstw wyświetlający zarówno warstwy koherentne, jak i niekoherentne.
OghmaNano Transfer Matrix window showing the Optical Thickness button
Przycisk „Grubość optyczna” w oknie „Macierz transferu”.
OghmaNano configuration window for setting the effective optical thickness of a layer
Okno konfiguracji służące do ustawiania efektywnej grubości optycznej warstwy.

Typowe urządzenia optoelektroniczne posiadają aktywne warstwy o grubości od 10 nm do 100 nm. Jednak urządzenia te są często osadzane na podłożach o grubości od 10 mm do 1 cm. W wielu przypadkach warto symulować nie tylko samo urządzenie, ale także efekty optyczne podłoża. Wymaga to narzędzia do symulacji, które może obejmować zakres długości od nanometrów do metrów. Istnieją trzy główne wyzwania związane z tym procesem:

OghmaNano rozwiązuje te problemy na dwa sposoby. Po pierwsze, umożliwia użytkownikowi traktowanie warstwy jako niespójnej, uwzględniając jedynie absorpcję i pomijając informacje o fazie. Takie podejście rozwiązuje problemy 2 i 3. Opcję tę można ustawić w edytorze warstw ( Rysunek ??). W kolumnie oznaczonej jako „Rozwiąż problem optyczny” warstwy oznaczone jako „Tak – n/k” uwzględniają zarówno fazę, jak i absorpcję, natomiast te oznaczone jako „Tak – k” uwzględniają jedynie tłumienie, traktując je w efekcie jako niespójne warstwy.

Po drugie, aby poradzić sobie z problemem nr 1 (duże różnice w skali długości), OghmaNano umożliwia przypisanie efektywnej grubości optycznej dowolnej warstwie. Na przykład, w edytorze warstw można zdefiniować podłoże o grubości 100 nm, ale przypisać mu efektywną głębokość 1 m. Wewnętrznie realizowane jest to poprzez skalowanie współczynnika absorpcji:

\[\alpha_{\text{effective}}(\lambda) = \alpha(\lambda)\,\frac{L_{\text{effective}}}{L_{\text{simulation}}}\]

gdzie \(\alpha_{\text{effective}}\) to przeskalowany współczynnik absorpcji używany w symulacji, \(\alpha\) to współczynnik absorpcji materiału, \(L_{\text{effective}}\) to pożądana efektywna grubość (np. 1 m), a \(L_{\text{simulation}}\) to rzeczywista grubość warstwy w edytorze. Takie podejście zmniejsza problemy numeryczne i pozwala również uzyskać bardziej czytelne wykresy, na których podłoże nie dominuje na osiach, a warstwy urządzenia pozostają wyraźnie widoczne.

Aby skorzystać z tej funkcji, należy skonfigurować strukturę urządzenia zgodnie z ilustracją Rysunek ??. Następnie w oknie Macierzy Transferu należy kliknąć przycisk Grubość optyczna Rysunek ??. Otworzy to okno dialogowe konfiguracji Rysunek ??, w którym można określić efektywną grubość optyczną dowolnej warstwy. Na ilustracji pokazano przykład, w którym grubość podłoża szklanego ustawiono na 1 m.

4. Kiedy odbywa się bieg TMM?

Symulację opartą na macierzy transferowej można uruchomić na dwa sposoby. Po pierwsze, można ją uruchomić bezpośrednio, klikając przycisk „Uruchom”. Alternatywnie, model optyczny jest uruchamiany automatycznie za każdym razem, gdy przeprowadzana jest symulacja elektryczna, co nie wymaga żadnych dodatkowych działań ze strony użytkownika.

Główna różnica między tymi dwoma trybami polega na wynikach. Uruchomiona bezpośrednio, symulacja optyczna generuje bardziej obszerny zestaw plików wynikowych, które są zapisywane na dysku. Natomiast, gdy jest uruchamiana jako część symulacji elektrycznej, wyniki są ograniczone do niezbędnych danych, aby uniknąć spowolnienia działania solvera elektrycznego.

👉 Teoria TMM: Idź do następna sekcja aby zrozumieć teorię macierzy przenoszenia.