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 ??).
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.
3. Tryby symulacji
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.
- Macierz transferu: Wykonuje klasyczne obliczenia z wykorzystaniem macierzy transferu, stosując formalizm warstwowy opisany w Teoria macierzy transferu. W tym podejściu urządzenie jest reprezentowane jako stos warstw, a pole optyczne jest propagowane przez strukturę za pomocą macierzy transferu. Uwzględniane są wielokrotne odbicia, efekty interferencji, straty transmisji i absorpcja optyczna. Jest to zalecany model optyczny dla konwencjonalnych urządzeń warstwowych, takich jak ogniwa słoneczne, OLED-y, filtry optyczne i cienkowarstwowe czujniki.
- Metoda skończonych różnic TMM: Wykonuje te same obliczenia optyczne, wykorzystując reprezentację równania falowego w postaci skończonych różnic. Zamiast propagować macierze od warstwy do warstwy, urządzenie jest dzielone na siatkę, a pola optyczne propagujące się w kierunku do przodu i do tyłu są rozwiązywane między sąsiednimi punktami siatki. W przypadku konwencjonalnych struktur warstwowych wyniki są zazwyczaj prawie identyczne z wynikami uzyskanymi za pomocą klasycznej metody macierzy przenoszenia, a wszelkie różnice wynikają zazwyczaj z dyskretyzacji numerycznej. Zaletą metody skończonych różnic jest to, że niektóre urządzenia nie nadają się naturalnie do prostego opisu opartego na warstwach. Przykłady obejmują trójwymiarowe moduły perowskitowe, struktury o zmiennej grubości lub siatki DFB, w których geometria może nadal zawierać warstwy, ale naturalniej opisuje się ją za pomocą siatki skończonych różnic. W takich sytuacjach formuła oparta na skończonych różnicach często lepiej integruje się z resztą procesu symulacji. Szczegółowe informacje znajdują się w Teoria macierzy przenoszenia – rozwiązywanie w jednej dużej macierzy.
- Funkcja wykładnicza: przybliża absorpcję światła za pomocą funkcji wykładniczej malejącej: \[I = I_{0} e^{-\alpha x}\]. Przesyłanie sygnału między warstwami opisuje równanie: \[T = 1 - \frac{n_1 - n_0}{n_1 + n_0}\]. Pomija się efekty odbicia i interferencji. Model ten jest często przydatny, gdy analizuje się działanie urządzenia, ponieważ eliminuje efekty rezonansowe i fale stojące, co pozwala na oddzielne zbadanie wpływu absorpcji światła.
- Płaski profil: Oblicza straty transmisji na granicach międzywarstwowych, wykorzystując \[T = 1 - \frac{n_1 - n_0}{n_1 + n_0}\], a następnie przekształca uzyskany profil generacji w jednorodny profil przestrzenny w obrębie każdej warstwy. To przybliżenie jest przydatne podczas badania transportu nośników, pułapkowania, rekombinacji lub dynamicznych właściwości elektrycznych, ponieważ silnie zależny od położenia profil generacji może zaciemniać podstawowe mechanizmy fizyczne. Eliminując zmienność przestrzenną w szybkości generacji optycznej, często łatwiej jest zrozumieć, jak zachowuje się model elektryczny.
- Z pliku: Importuje profil generowania danych z zewnętrznego pliku, zamiast obliczać go wewnętrznie. Profile generowania danych można importować z zewnętrznych symulacji optycznych lub tworzyć na podstawie spektrów wydajności kwantowej.
- Stała wartość: umożliwia bezpośrednie określenie stałej szybkości generowania w każdej warstwie. Ten tryb jest przydatny w uproszczonych badaniach, ćwiczeniach dopasowujących i analizach parametrów, w których szczegółowe właściwości optyczne nie są istotne. Na przykład, można go użyć do zbadania, w jaki sposób wielkości, takie jak prąd zwarciowy lub napięcie w obwodzie otwartym, zmieniają się w zależności od szybkości generowania.
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.
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.
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.
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:
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.
| 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 ??.
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.| 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).
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:
- Problem 1: Symulacja różnych skal długości – Metody numeryczne mają trudności w obliczeniach, gdy w jednym równaniu występują bardzo duże i bardzo małe liczby. Może to prowadzić do błędów zaokrągleń i błędów numerycznych.
- Problem 2: Długość fali światła – Ponieważ długość fali światła widzialnego jest znacznie mniejsza niż 1 cm, symulacja warstwy o grubości jednego centymetra wymagałaby niezwykle drobnej siatki przestrzennej, aby uwzględnić efekty interferencji, co jest niewykonalne.
- Problem 3: Utrata koherencji – Model macierzowy transferu zakłada, że światło pada pod kątem prostym i że warstwy są wolne od defektów. W przypadku grubych podłoży rozpraszanie i niejednorodności powodują, że te założenia przestają być prawdziwe, a pole świetlne staje się niespójne.
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.