Ładowanie... Sorry, your browser does not support inline SVG.

Transformacje

Transformacja Fouriera to transformacja przekształcająca funkcję ciągłą z dziedziny czasu w inną funkcję ciągłą dziedziny częstotliwości. Umożliwia opisanie funkcji ciągłej za pomocą ciągłej superpozycji częstotliwości. Wynikiem transformacji Fouriera jest transformata Fouriera.

Definicja

Dla funkcji $f(t)$ transformatę Fouriera określa się wzorem: $$\hat{f}(\xi)=\int\limits_{-\infty}^\infty f(t) e^{-2\pi i t \xi} dt$$ gdzie $i$ - jednostka urojona ($i^2=-1$), $\xi$ - częstotliwość

O ile na pierwszy rzut oka wzór ten może wydawać się bardzo skomplikowany (całkowanie iloczynu funkcji i eksponenty liczby zespolonej), to idea za nim stojąca jest banalnie prosta do zrozumienia i możliwa do zwizualizowania w intuicyjny sposób. Dzięki tej intuicji zrozumienie zasady działania transformacji Fouriera jest możliwe nawet przez osoby, które nie mają praktycznie żadnego doświadczenia z rachunkiem różniczkowym, czy teorią liczb zespolonych.

Podstawowe koncepcje

O ile możliwe jest opisanie transformacji Fouriera w ogóle bez używania liczb zespolonych (na przykład używając algebry liniowej), to opis używanie liczb zespolonych znacznie ułatwia opisanie wielu koncepcji zasady działania transformacji Fouriera.

Po pierwsze każdą liczbę zespoloną można zapisać za pomocą postaci kanoniczej, czyli $z=a+bi$, gdzie $i$ to jednostka urojona spełniająca równanie $i^2=-1$, lub za pomocą postaci trygonometrycznej, $z=|z|(\cos\phi+i\sin\phi)$, gdzie $|z|$ to moduł liczby zespolonej, a $\phi$ to jej argument.
Liczbę zespoloną można przedstawić na płaszczyźnie zespolonej, gdzie oś pozioma to oś rzeczywista, a pionowa to oś urojona.

Ważną koncepcją jest koncepcja mnożenia liczb zespolonych. Wzór na mnożenie liczb zespolonych w postaciach kanonicznych wygląda tak: $$z_1\times z_2 = (a+bi)\times(c+di) = (ac-bd) + i(ad+bc)$$ Dużo ciekawszy jest jednak wzór na mnożenie liczb w postaciach trygonometrycznych: $$z_1\times z_2 = |z_1| \times |z_2| \times (\cos(\alpha + \beta) + i\sin(\alpha + \beta))$$ Z tego wzoru wynika to, że moduł iloczynu jest równy iloczynowi modułów mnożników, a argument jest sumą argumentów.
Oznacza to, że pomnożenie dowolnej liczby przez $i$ można zinterpretować jako zwiększenie jej argumentu o kąt $\pi/2$.



Kolejną ważną koncepcją jest funkcja eksponencjalna o wykładniku urojonym: $$e^{it} $$ gdzie: $e$ - liczba Eulera $e\approx 2.7182...$, $i$ - jednostka urojona ($i^2=-1$), $t$ - dowolna liczba rzeczywista ($t\in\mathbb{R}$)

Z rachunku różniczkowego wynika, że wektor przyrostu wartości tej funkcji jest prostopadły do wektora reprezentującego wartość tej funkcji: $$\frac{d}{dt}e^{it}=ie^{it}$$ Oznacza to, że w zależności od $t$ wartością tej funkcji jest jakaś liczba zespolona leżąca na okręgu jednostkowym.
Korzystając ze wzoru Eulera, można rozpisać taką funkcję jako: $$e^{it}=\cos t+i\sin t$$
Przydatną własnością tej funkcji jest to, że możemy za jej pomocą "owinąć" inną funkcję na okręgu jednostkowym. Aby to zrobić, wystarczy pomnożyć naszą funkcję przez funkcję eksponencjalną: $$f(t)\times e^{it}$$ Spowoduje to, że dla każdego $t$ moduł wartości funkcji $e^{it}$ zostanie przeskalowany w zależności od wartości funkcji $f(t)$

Przykładowo możemy zobaczyć w jaki sposób można "owinąć" funkcję $\sin(6t)+1$ :

Właśnie ta koncepcja "owijania" leży u podstaw transformacji Fouriera, a dzięki zastosowaniu liczb rzeczywistych jesteśmy w stanie w prosty sposób zapisać ją matematycznie.

Zasada działania

Równanie $f(t) e^{it}$ już przynajmniej częściowo przypomina transformację Fouriera. Kolejnym krokiem będzie dodanie do tego równania zmiennej, która będzie kontrolowała częstotliwość owijania funkcji, w końcu dziedziną transformaty fouriera jest właśnie dziedzina częstotliwości.

Aby zmienić częstotliwość, z jaką owijamy funkcję, należy pomnożyć wykładnik funkcji eksponencjalnej przez jakąś liczbę rzeczywistą. $$f(t) e^{it\xi}, \xi \in \mathbb{R}$$
Dodatkowo możemy też jeszcze pomnożyć przez $2\pi$, co spowoduje, że $\xi = 1$ odpowiada jednemu owinięciu przedziału funkcji o długości 1 wokół okręgu jednostkowego dokładnie 1 raz.
W zapisie transformacji Fouriera z różnych powodów stosuje się współczynnik $-2\pi$, ale jedyna zmiana polega na tym, że funkcja owija się zgodnie z ruchem wskazówek zegara.

Funkcja $f(t)e^{-2\pi t \xi}$ dla $f(t)=\sin(2\pi 3t)+1$ w zależności od $\xi$, czyli częstotliwości może wyglądać tak:

Ciekawą właściwością, jaką można tu zauważyć, jest to, że dla $\xi = 3$, czyli częstotliwości owijania równej częstotliwości początkowej funkcji, większa część wykresu znajduje się poniżej osi rzeczywistej, a wiele punktów się pokrywa.

Jest to kluczowa obserwacja potrzebna do zrozumienia zasady działania transformacji Fouriera.
Aby to opisać matematycznie można spróbować obliczyć średnią wszystkich punktów funkcji dla każdej częstotliwości.
Aby to zrobić, można zastosować całkowanie. Licząc całkę zespoloną funkcji i dzieląc ją przez wielkość dziedziny funkcji, możemy otrzymać średnią całkową funkcji (czyli środek masy wykresu): $$\frac{1}{L}\int\limits_{0}^L f(t) e^{-2\pi i t \xi} dt$$ Tak zmienia się środek masy wykresu w zależności od częstotliwości (na prawym wykresie przedstawiono moduł środka masy, jako że jest on liczbą zespoloną):



W transformacji Fouriera nie używa się jednak średniej całkowej, lecz po prostu całkę. Efektem tego jest to, że w zależności od wielkości dziedziny funkcji początkowej, transformata będzie odpowiednio przeskalowana.
Wzór transformacji będzie więc wyglądał tak: $$\hat{f}(\xi)=\int\limits_{0}^L f(t) e^{-2\pi i t \xi} dt$$ Tak zmienia się wartość całki w zależności od częstotliwości (na prawym wykresie przedstawiono moduł całki, jako że jest ona liczbą zespoloną):



Na wykresie modułu transformaty można zauważyć, że osiąga ona duże wartości nie tylko dla $\xi = 3$, ale także dla $\xi = 0$. Wynika to z tego, że wykres funkcji początkowej był przesunięty w górę ($\sin(2\pi 3t)+1$).
Tak wygląda transformata dla $\sin(2\pi 3t)$:




Bardzo ważną właściwością transformacji Fouriera, jest to, że jest ona liniowa, tzn. że suma transformat dwóch funkcji jest równa transformacie sumy tych funkcji: $$h(t)=a\cdot f(t) + b \cdot g(t) \Rightarrow \hat{h}(\xi) = a \cdot \hat{f}(\xi) + b \cdot \hat{g}(\xi)$$ Można to zobaczyć na przykładzie funkcji $\sin(2\pi x) + \sin(2\pi 2x)$:




Widać, że wykres specyficznie się zachowuje (większość wykresu po jednej stronie, pokrywanie wartości) dla częstotliwości 1 i 2, czyli tych, które były użyte do konstrukcji funkcji początkowej.

Uzupełnienie

W przedstawionym omówieniu przedstawiona została koncepcja transformacji Fouriera o przedziałach ograniczonych: $$\hat{f}(\xi)=\int\limits_{0}^L f(t) e^{-2\pi i t \xi} dt$$ W większości przypadków jednak transformację Fouriera określa się na przedziałach nieograniczonych, stosując całkę niewłaściwą: $$\hat{f}(\xi)=\int\limits_{-\infty}^\infty f(t) e^{-2\pi i t \xi} dt$$ Aby "przerobić" omawiane przykłady na takie o nieograniczonej dziedzinie, można by było kontynuować funkcję według wzoru (np. sinusa) lub założyć, że dla argumentów z poza dziedziny funkcja przyjmuje wartość 0. W pierwszym przypadku otrzymalibyśmy już coś w rodzaju szeregów Fouriera, a w drugim transformata pozostałaby taka sama, jak w ograniczonym przypadku.

Choć we wszystkich przypadkach użyta została funkcja sinusa, to transformację Fouriera wykonuje się przede wszystkim na funkcjach, które nie są okresowe (dla funkcji okresowych dużo lepsze jest stosowanie szeregów Fouriera).

Na poniższych wykresach można zobaczyć transformację dla funkcji nieokresowej $(\cos(2\pi 3x) + \cos(2\pi 2x))e^{-0.2π x^2}$ na nieograniczonym przedziale:



Jak widać, dla takiej funkcji wykres transformaty Fouriera wygląda na dużo gładszy.