Samouczek FDTD: Podwójna szczelina (ciągła fala sinusoidalna)
1. Wprowadzenie
Eksperyment z podwójną szczeliną jest klasycznym przykładem, który pokazuje, że światło zachowuje się jak fala. Spójne źródło światła oświetla dwie wąskie szczeliny, a rozproszone pole elektromagnetyczne rozchodzi się w obszarze za szczelinami. Ponieważ obie szczeliny emitują spójne fale, dochodzi do interferencji: w miejscach, gdzie fazy fal się pokrywają, powstają maksima natężenia, natomiast w miejscach, gdzie fazy są przeciwne, powstają minima. W efekcie powstaje charakterystyczny, wachlarzowaty wzór dyfrakcyjny, modulowany przez prążki interferencyjne.
Uruchomisz wbudowany przykład „Podwójna szczelina”, sprawdzisz, czy wykryto urządzenie OpenCL (aby symulacja mogła być uruchomiona na karcie graficznej, jeśli jest dostępna), a następnie przeanalizujesz zdjęcia rozkładu gęstości mocy, aby zobaczyć, jak fala rozchodzi się przez obie szczeliny i tworzy oczekiwany wzór interferencyjny w przestrzeni.
2. Tworzenie nowej symulacji.
Rozpocznij od głównego okna programu OghmaNano i kliknij „Nowa symulacja”. W oknie przeglądarki „Nowa symulacja” kliknij dwukrotnie „Przykłady FDTD”, a następnie ponownie kliknij dwukrotnie „Podwójna szczelina” (??, ??). Spowoduje to otwarcie głównego okna symulacji, które jest przedstawione na ilustracji ??.
3. Orientacja w głównym oknie.
Po załadowaniu przykładu geometria jest wyświetlana w zakładce „Struktura urządzenia” (??). W zakładce „Terminal” wyświetlane są wyniki działania solvera podczas symulacji, w tym informacje o gęstości siatki, kroku czasowym oraz o wybranym urządzeniu OpenCL. W zakładce „Wyniki” wyświetlana jest lista plików wygenerowanych przez symulację, w tym katalog ze zdjęciami, który zawiera dane dotyczące gęstości mocy w funkcji czasu.
4. Uruchamianie symulacji.
Rozpocznij obliczenia, klikając „Uruchom symulację” (▶) lub naciskając klawisz F9. Wyniki obliczeń pojawią się w zakładce „Terminal” (??). W tym przykładzie możesz zobaczyć zieloną linię stanu, która wskazuje, że OghmaNano przeszukuje system w poszukiwaniu urządzeń OpenCL oraz że znaleziono i wybrano urządzenie OpenCL.
Ma to znaczenie dla wydajności. Jeśli dostępna jest karta graficzna obsługująca OpenCL (zintegrowana lub dedykowana), OghmaNano może wykonywać obliczenia w ramach algorytmu FDTD na karcie graficznej, a nie na procesorze, co zazwyczaj znacznie przyspiesza tego typu obliczenia oparte na siatce. Większość nowoczesnych komputerów posiada co najmniej jedno urządzenie obsługujące OpenCL, dlatego w wielu przypadkach urządzenie to zostanie wybrane automatycznie. Jeśli nie zostanie znalezione żadne kompatybilne urządzenie, symulacja nadal będzie wykonywana na procesorze, ale zajmie to więcej czasu.
5. Sprawdzanie wyników.
Po zakończeniu symulacji otwórz zakładkę „Wyniki”, aby wyświetlić pliki wygenerowane przez symulację. Lista wyników jest wyświetlana w ??. Stąd możesz otworzyć folder snapshots/, który zawiera wartości pól, zależne od czasu, zapisane podczas symulacji.
snapshots/, aby wyświetlić wykresy gęstości mocy w funkcji czasu.6. Przeglądanie aktualnych wartości gęstości mocy.
Kliknij dwukrotnie folder snapshots/ w zakładce „Wyniki”, aby otworzyć okno przeglądarki danych. Następnie wybierz power_density.csv jako plik, na podstawie którego ma zostać utworzony wykres. Suwak znajdujący się na dole okna przeglądarki pozwala na przeglądanie danych w czasie, dzięki czemu można obserwować, jak zmienia się gęstość energii elektromagnetycznej w trakcie symulacji.
Sekwencja przedstawiona na ilustracjach ??–?? pokazuje oczekiwane zjawiska fizyczne. Ciągła fala sinusoidalna rozchodzi się w strukturze, dociera do dwóch otworów, a następnie ulega dyfrakcji w obszarze za szczelinami. Ponieważ występują dwa spójne źródła, rozchodzące się fale interferują ze sobą, tworząc obszar dyfrakcji w kształcie wachlarza, w którym występują naprzemienne pasma odpowiadające konstruktywnej i destruktywnej interferencji.
Schemat kolorów wyświetlacza obrazów można zmienić, klikając opcję „Kolory”. Nie wpływa to na wynik symulacji; zmienia jedynie sposób, w jaki te same dane są przypisywane do wyświetlanej palety kolorów. W przypadku publikacji lub celów dydaktycznych może być przydatne przełączanie palet, aby łatwiej było dostrzec prążki interferencyjne na tle.
7. Analiza tego, co widzisz.
Kluczową cechą wyniku doświadczenia z podwójną szczeliną jest połączenie dwóch efektów. Po pierwsze, każda szczelina powoduje dyfrakcję, więc nawet pojedyncza szczelina rozszerzyłaby pole promieniowania, tworząc rozproszoną dystrybucję. Po drugie, ponieważ mamy do czynienia z dwiema szczelinami zasilanymi przez to samo koherentne źródło, pola promieniowania pozostają w fazie, a ich superpozycja tworzy prążki interferencyjne. Na zdjęciach efekt ten objawia się jako uporządkowany wzór w obszarze za szczelinami, gdzie pasma o wysokiej gęstości mocy są oddzielone obszarami o niższej gęstości mocy.
W przypadku ciągłej emisji fali sinusoidalnej (CW) początkowo występuje krótkotrwały stan przejściowy, w którym obszar wypełnia się wprowadzonym polem, po którym następuje faza, w której pole oscyluje sinusoidalnie, a rozkład gęstości mocy wydaje się stabilny w czasie, jeśli obserwujemy go w określonych odstępach czasu. Jeśli zauważysz silne, niepożądane odbicia, nieoczekiwane jasne pasy w pobliżu granic lub niestabilne, rosnące pole, prawdopodobnymi przyczynami są nieodpowiednie warunki brzegowe, niewystarczająca grubość warstwy pochłaniającej lub zbyt duży krok czasowy w stosunku do wybranej rozdzielczości siatki.
8. Szybkie testy i najczęstsze przyczyny awarii.
- Niespodziewane odbicia: sprawdź, czy włączono i odpowiednio ustawiono absorbujące warstwy brzegowe (CPML) oraz czy źródła nie znajdują się zbyt blisko granicy.
- Jeśli wzór wygląda „poszarpano” lub jest zniekształcony, należy zwiększyć rozdzielczość przestrzenną w pobliżu szczelin, ponieważ ostre elementy są najbardziej wrażliwe na rozproszenie siatki.
- Wolne działanie: sprawdź w oknie Terminalu, czy wybrano odpowiednie urządzenie OpenCL; jeśli program działa na procesorze, będzie działać wolniej.
- Upewnij się, że nie występują zakłócenia w działaniu wentylatora: sprawdź, czy sygnał wzbudzający jest spójny i czy na wykresie przedstawiasz
power_density.csvw zależności odsnapshots/, a nie jakiś niezwiązany z tym sygnał.
9. Aktywacja detektorów optycznych.
W przypadku eksperymentu z podwójną szczeliną można opcjonalnie rejestrować moc światła padającego na zdefiniowane przez użytkownika obszary detektorów. Detektory te pełnią funkcję małych okien monitorujących, umieszczonych w obszarze symulacji: w trakcie działania programu OghmaNano oblicza moc przepływającą przez każdy obszar detektora i zapisuje dane w postaci szeregu czasowego w katalogu wyjściowym.
Aby włączyć detektory, przejdź do sekcji „Optyka” na pasku narzędzi i znajdź przycisk „Detektory optyczne”, który jest oznaczony ikoną kamery w stylu CCD (??).
Kliknięcie przycisku „Detektory optyczne” otwiera edytor detektorów. W tym przykładzie znajdują się dwa detektory (oznaczone jako jeden i dwa), a oba są początkowo wyłączone. Gdy detektor jest wyłączony, na pasku narzędzi wyświetla się czerwona ikona stanu „Wyłączony”. Kliknij wyłączony przycisk, aby go włączyć; wskaźnik zmieni kolor na zielony, co oznacza, że detektor jest aktywny (??, ??). Powtórz tę czynność dla drugiego detektora, aby oba były włączone.
W edytorze detektora można również zobaczyć jego położenie (x, y, z) oraz rozmiar wyrażony w mikrometrach. W ramach tego samouczka nie trzeba zmieniać żadnej z tych wartości; przykład jest wstępnie skonfigurowany, aby zademonstrować ważny aspekt fizyczny: jeden detektor znajduje się w obszarze o wysokiej intensywności rozproszonego promieniowania, a drugi w obszarze, w którym rozproszone pole jest stosunkowo słabe.
10. Ponownie uruchom i wyświetl wyniki działania detektora.
Po włączeniu detektorów uruchom ponownie symulację (▶ lub F9). Po zakończeniu symulacji otwórz zakładkę „Wyniki”. Powinny się teraz wyświetlić dwa dodatkowe wpisy w wynikach, odpowiadające wynikom detektorów (np. detector0 i detector1), jak pokazano na ilustracji ??. Kliknij dwukrotnie każdy wpis detektora, aby otworzyć wykres zależności mocy od czasu (??, ??).
Najłatwiej zrozumieć różnicę między tymi dwoma wykresami, porównując ich skale pionowe. Jeden detektor rejestruje moc na poziomie zaledwie kilku mikrowatów (lub mniej), podczas gdy drugi rejestruje znacznie silniejszy sygnał, gdy pole rozproszone do niego dociera. Opóźnione rozpoczęcie rejestracji na obu wykresach jest przewidywalne: symulacja rozpoczyna się w momencie t=0, gdy źródło jest włączone, a detektory nie mogą zareagować, dopóki fala elektromagnetyczna nie rozprzestrzeni się od źródła, przez szczeliny i przez przestrzeń, aż do ich lokalizacji.
11. Fizyczna interpretacja: detektory i wzory dyfrakcyjne
Celem umieszczenia dwóch detektorów jest powiązanie danych w dziedzinie czasu z przestrzennym wzorem dyfrakcyjnym. W układzie z dwiema szczelinami struktura pola dalekiego nie jest jednorodna: istnieją kierunki, w których wkład obu szczelin sumuje się konstruktywnie (wysoka intensywność), oraz kierunki, w których sumuje się destruktywnie (niska intensywność). Innymi słowy, pole dyfrakcyjne tworzy obszary o wysokiej i niskiej intensywności, a zmierzona moc detektora zależy w dużym stopniu od tego, czy detektor znajduje się w obszarze o wysokiej, czy niskiej intensywności.
Jest to wyraźnie widoczne na podglądzie obrazu, na którym znajdują się detektory (??). Jeden z detektorów znajduje się w ścieżce silnego, zdyspergowanego promienia, dlatego gromadzi znaczną ilość energii optycznej. Drugi detektor znajduje się w obszarze, w którym interferencja ma głównie charakter destrukcyjny (minimum wzoru), więc stosunkowo niewielka ilość energii pada na jego powierzchnię. Dlatego właśnie dwa sygnały wyjściowe różnią się o kilka rzędów wielkości, mimo że detektory są zasadniczo identyczne.
Z punktu widzenia zasad działania, jest to ta sama fizyka, która znajduje zastosowanie w optycznej metrologii i obrazowaniu: detektor nie mierzy abstrakcyjnej „całkowitej mocy” symulacji, lecz mierzy tę część pola, która przechodzi przez jego ograniczoną powierzchnię w określonym miejscu. Przesunięcie detektora o niewielką odległość może spowodować zmianę z jasnego obszaru na sąsiedni ciemny obszar, co może drastycznie zmienić mierzoną moc. W praktycznych systemach ta wrażliwość jest właśnie powodem, dla którego wzorce dyfrakcji i interferencji są użyteczne: zawierają one informacje geometryczne (odległość między szczelinami, rozmiar apertury, długość fali) w postaci mierzalnych rozkładów intensywności.
12. Regulacja szczeliny.
Jedną z zalet numerycznego eksperymentu FDTD jest możliwość interaktywnej modyfikacji geometrii, co pozwala na natychmiastową analizę wynikających z tego zmian w zachowaniu optycznym. W tej sekcji modyfikujemy położenie centralnego elementu blokującego, który tworzy podwójną szczelinę, i obserwujemy, jak wpływa to na wzór dyfrakcyjny oraz na moc rejestrowaną przez dwa detektory optyczne.
Korzystając z myszy w oknie urządzenia 3D, wybierz środkowy blok, który tworzy podwójną szczelinę, i przeciągnij go w lewo, zgodnie z ilustracją ??. Zazwyczaj obiekty nie mogą się przecinać podczas przeciągania, ale jeśli blok zetknie się z innym obiektem, możesz przytrzymać klawisz Shift podczas przeciągania. Dzięki temu blok może przechodzić przez inne elementy, co ułatwia jego przesuwanie.
Po przesunięciu bloku należy ponownie uruchomić symulację (▶ lub F9). Otrzymany rozkład pola optycznego jest wyświetlany w ??.
W tej konfiguracji wiązka światła nie rozszczepia się już na dwie porównywalne źródła dyfrakcyjne. Zamiast tego, światło przechodzi głównie przez jedno otwarcie i rozchodzi się do przodu w bardziej skupiony sposób. Nadal występuje pewna dyfrakcja, ponieważ każde skończone otwarcie powoduje rozpraszanie zgodnie z zasadami optyki falowej, ale wzór interferencyjny, który wcześniej powstawał dzięki dwóm koherentnym szczelinom, jest teraz znacznie słabszy. W rezultacie detektory odbierają znacznie mniej energii optycznej w porównaniu z pierwotną geometrią.
13. Przesuwanie bloku w kierunku źródła.
Następnie modyfikujemy geometrię w inny sposób. Ponownie używając myszy, przeciągnij środkowy blok do tyłu, w kierunku źródła światła, zgodnie z ilustracją ??. Podobnie jak wcześniej, możesz przytrzymać klawisz Shift podczas przeciągania, aby umożliwić przechodzenie bloku przez inne obiekty, jeśli to konieczne.
Po ponownym ustawieniu bloku należy ponownie uruchomić symulację. Wynikowe rozłożenie pola przedstawiono na rysunku ??.
Przesunięcie elementu blokującego bliżej źródła zmienia efektywną geometrię apertury, a tym samym wpływa na przestrzenny rozkład transmitowanego pola optycznego. Ponieważ dyfrakcja jest silnie zależna od kształtu i położenia apertury względem padającej fali, nawet stosunkowo niewielkie zmiany geometryczne mogą znacząco modyfikować wynikającą z tego strukturę interferencji. W tym przypadku załamane promienie wychodzą pod różnymi kątami, a wzór interferencyjny ulega odpowiedniej zmianie.
To pokazuje kluczową cechę symulacji optyki falowej: wzorce dyfrakcyjne są w pełni determinowane przez geometrię i długość fali. Poprzez modyfikację fizycznej konfiguracji struktury można zbadać, w jaki sposób kształt apertury, odległość między szczelinami i rozmieszczenie przeszkód wpływają na wynikową dystrybucję pola optycznego oraz na moc mierzoną przez detektory umieszczone w obszarze symulacji.
14. Dodawanie obiektywu za pomocą edytora siatki.
W poprzednich sekcjach analizowaliśmy, w jaki sposób zmiana geometrii apertury wpływa na wzór dyfrakcji. W tej ostatniej sekcji przechodzimy o krok dalej i demonstrujemy, jak przekształcić prosty obiekt w bardziej złożoną siatkę za pomocą edytora siatek. Jest to potężny sposób pracy w OghmaNano: można zacząć od prostych elementów, aby wyrobić sobie intuicję, a następnie stopniowo wprowadzać bardziej realistyczne elementy optyczne, takie jak soczewki, powierzchnie krzywoliniowe i importowane siatki CAD.
Najpierw zmień orientację widoku urządzenia, aby odpowiadała obrazowi ??. Następnie kliknij prawym przyciskiem myszy na środkowy blok struktury z podwójną szczeliną i otwórz edytor siatki. Otworzy się edytor przedstawiony na obrazku ??. W edytorze siatki kliknij przycisk „Soczewka” i wprowadź parametry dokładnie tak, jak pokazano na obrazku ??.
Korzystając z tych parametrów, można wygenerować obiekt w kształcie soczewki. Jeśli pozostawimy soczewkę w domyślnej orientacji, w widoku urządzenia będzie ona wyglądać jak „płaska” soczewka, jak pokazano na ilustracji ??. W tym samouczku nie chcemy, aby soczewka leżała płasko w płaszczyźnie symulacji, ponieważ pole optyczne nie będzie z nią wchodzić w znaczącą interakcję. Soczewkę należy obrócić, aby stała pionowo i przechwytywała rozchodzącą się falę.
15. Obracanie obiektywu i ustawianie materiału optycznego.
Aby obrócić nowo utworzony obiekt soczewki, kliknij prawym przyciskiem myszy na soczewkę i otwórz edytor obiektów. Otworzy się edytor, który można zobaczyć na ilustracji ??. Ustaw kąty obrotu na 90, 90 i 0 (dla osi x, y i z), zgodnie z ilustracją. Obrót ten spowoduje, że soczewka będzie ustawiona pionowo wzdłuż ścieżki propagacji i będzie mogła efektywnie oddziaływać na docierające pole.
Podczas pracy w edytorze obiektów, ustaw właściwość optycznej przezroczystości soczewki, wybierając odpowiedni materiał, jak pokazano na ilustracji: materiał nieorganiczny/Si/Green-2008. Jest to wygodny profil współczynnika załamania światła w szerokim zakresie, odpowiedni dla krzemu i idealny do demonstracji zjawisk załamania i ogniskowania. Po przypisaniu tego materiału, soczewka staje się prawdziwym obiektem refrakcyjnym, a nie tylko elementem geometrycznym blokującym światło.
Po ustawieniu parametrów obrotu i materiału, geometria powinna wyglądać tak, jak na rysunku ??, gdzie soczewka jest umieszczona pionowo w obszarze symulacji.
16. Uruchomienie symulacji FDTD z uwzględnieniem soczewki.
Uruchom ponownie symulację, uwzględniając obecność soczewki. Na ilustracji ?? przedstawiono przykładowy rozkład gęstości mocy. Można wyraźnie zobaczyć, jak nadchodząca fala oddziałuje z zakrzywioną powierzchnią refrakcyjną: część pola przechodzi przez soczewkę i ulega refrakcji, a część jest odbijana z powrotem w kierunku źródła.
Przesłane pole tworzy obszar o znacznie gęstszej strukturze czoła fali wewnątrz i wokół soczewki, a wychodzące pole wykazuje oznaki skupienia: przesyłana energia koncentruje się w mniejszym obszarze, zamiast swobodnie się rozprzestrzeniać, jak to ma miejsce w przypadku soczewki bez powłoki. Jednocześnie odbicie od soczewki kieruje znaczną część mocy optycznej z powrotem w kierunku obszaru apertury, co zmniejsza ilość mocy docierającej do detektorów znajdujących się dalej. To dokładnie to, czego można się spodziewać z punktu widzenia fizyki: element refrakcyjny powoduje niezgodność impedancji na swoich powierzchniach, a jeśli soczewka nie jest pokryta warstwą antyrefleksyjną lub nie ma odpowiedniego współczynnika załamania, odbicie Fresnela może być znaczne.
Ten przykład ilustruje, dlaczego narzędzia do „transformacji siatki” są ważne w praktycznych symulacjach. Nawet proste systemy szybko zaczynają charakteryzować się obecnością zakrzywionych powierzchni i specjalnie zaprojektowanych elementów optycznych. Możliwość przekształcenia prostego bloku w soczewkę (lub dowolny inny obiekt siatkowy) pozwala na projektowanie elementów optycznych bezpośrednio w tym samym środowisku, które jest wykorzystywane do symulacji FDTD. Tego samego podejścia można użyć do tworzenia i badania mikrosoczewek, koncentratorów, elementów optycznych dyfrakcyjnych, struktur kształtujących front fal lub importowanych geometrii CAD, aby uzyskać realistyczne modele urządzeń.