Przejdź do zawartości

Transformacja Fouriera

Z Wikipedii, wolnej encyklopedii
Wykresy dwóch funkcji rzeczywistych oraz ich transformaty Fouriera. Drugi sygnał, przesunięty w czasie względem pierwszego, pomimo identycznej postaci, ma inną transformatę Fouriera

Transformacja Fouriera – transformacja całkowa, która przyjmuje funkcję rzeczywistą jako daną wejściową i wyprowadza funkcję o wartościach zespolonych, która opisuje stopień, w jakim w funkcji wejściowej występują funkcje zespolone . Transformatą Fouriera nazywa się funkcję, która powstaje w wyniku działania transformacji Fouriera.

Zastosowanie transformacji Fouriera do określenia składowych akordu C dur fortepianu. Pierwsze trzy piki od lewej odpowiadają podstawowym częstotliwościom C, E, G. Pozostałe są wyższymi harmonicznymi.

Przykładowo, obliczanie transformaty Fouriera trwającego jakiś czas sygnału akustycznego oznacza obliczanie amplitud składowych zespolonych tego dźwięku (por. wykresy transformaty obok dla funkcji schodkowych).

Transformacja Fouriera jest operatorem liniowym działającym na przestrzeni funkcyjnej funkcji zmiennej rzeczywistej i dokonującym rozkładu danej funkcji w bazie ortonormalnej zespolonych funkcji eksponencjalnych poprzez liczenie iloczynów skalarnych danej funkcji z funkcjami bazy.

Transformacja Fouriera została nazwana na cześć Jeana Baptiste’a Josepha Fouriera.

Definicja transformacji Fouriera w postaci zespolonej dla funkcji jednej zmiennej

[edytuj | edytuj kod]

Podana tu zostanie definicja transformacji Fouriera w postaci zespolonej. Obok tej postaci występują także postacie całkowe transformaty Fouriera, wyrażone przez funkcje rzeczywiste sinus i cosinus, bez użycia jednostki urojonej; postacie te można otrzymać z transformaty Fouriera w postaci zespolonej; nie omawia jednak tego zagadnienia ten artykuł.

Założenia - warunki Dirichleta

[edytuj | edytuj kod]

Zakładamy, że funkcja spełnia pierwszy i drugi warunek Dirichleta, tj. jest to funkcja rzeczywista , określona na skończonym przedziale oraz[1]

  1. jest przedziałami monotoniczna w przedziale - tzn. jest w nim ograniczona i można podzielić ten przedział na skończoną liczbę podprzedziałów, wewnątrz których funkcja jest monotoniczna (czyli funkcja ta ma skończoną liczbę maksimów lokalnych i minimów lokalnych),
  2. jest ciągła w przedziale z wyjątkiem co najwyżej skończonej liczby punktów nieciągłości pierwszego rodzaju, przy czym w każdym punkcie nieciągłości spełniony jest warunek

Uwagi:

  1. Całkowalność funkcji, gwarantowana przez spełnienie warunków Dirichleta, jest istotnym wymogiem w obliczaniu transformaty Fouriera, która opiera się na obliczaniu całek. (Ten sam wymóg dotyczy szeregów Fouriera, bowiem współczynniki rozwinięcia w szereg Fouriera są wyrażone za pomocą całek.)
  2. Dla funkcji okresowej warunki Dirichleta wystarczy zbadać na dowolnym przedziale o długości równej okresowi funkcji .
  3. Warunki Dirichleta są to warunki wystarczające do tego, by dla funkcji, która je spełnia, istniała całka Fouriera i szereg Fouriera. Jednak nie są to warunki konieczne - istnieje klasa funkcji, które nie spełniają warunków Dirichleta, a mimo to mają całkę i szereg Fouriera. Także dla funkcji uogólnionych, tzw. dystrybucji (np. delta Diraca), które mają istotne znaczenie w obliczeniach fizyki cząstek elementarnych, definiuje się transformaty Fouriera.

Transformacja z dziedziny czasu w dziedzinę pulsacji

[edytuj | edytuj kod]

Transformacja z dziedziny czasu w dziedzinę pulsacji (częstości kołowej) ma postać[2]

gdzie:

– funkcja (oryginał) w dziedzinie czasu,
– transformata Fouriera (widmo Fouriera) w dziedzinie pulsacji,
- jednostka urojona

Transformacja odwrotna

[edytuj | edytuj kod]

Transformacja odwrotna zadana jest całką[2]

- pozwala odtworzyć funkcję pierwotną z jej widma.

Widmo amplitudowe i fazowe

[edytuj | edytuj kod]

Transformatę funkcji rzeczywistej można zapisać następująco[3]:

Używa się następujących nazw:

  • - charakterystyka widmową (gęstością widma, krótko: widmo) funkcji
  • - charakterystyka amplitudowa (widmo amplitudowe) funkcji
  • - charakterystyka fazowa (widmo fazowe) funkcji

Widmo amplitudowe jest funkcją rzeczywistą; można je obliczyć ze wzoru:

Widmo fazowe jest funkcją rzeczywistą; można je obliczyć ze wzorów

Stąd:

Funkcję w płaszczyźnie zespolonej reprezentuje wektor o końcu w punkcie , który obraca się wokół początku układu współrzędnych przeciwnie do ruchu wskazówek zegara, gdy rośnie wartość zmiennej . Pokazano też rzut tego wektora na oś rzeczywistą, kreślącego cosinusoidę .

Sens transformaty Fouriera jest następujący:

Transformata jest liczbą zespoloną, której moduł i faza określają amplitudę i fazę składowej o pulsacji , wchodzącej w skład sygnału . Obliczenie transformaty Fouriera pozwala więc znaleźć amplitudy i fazy wszystkich takich składowych w sygnale.

Przykład obliczeń wraz w wykresami funkcji, opisujących charakterystyki widmową, amplitudową i fazową podano dalej.

Obracający się przeciwnie do ruchu wskazówek zegara wektor ma dodatnią częstotliwość rad/s. Nie pokazano wektora obracającego się zgodnie z ruchem wskazówek zegara, który ma ujemną częstotliwość rad/s. Końce obu wektorów obracają się po okręgu jednostkowym, ale w przeciwnych kierunkach.

Transformacja unitarna Fouriera

[edytuj | edytuj kod]

Unitarną transformacją Fouriera z dziedziny czasu w dziedzinę pulsacji (częstości kołowej) nazywa się transformacją zadaną wzorem, który różni się od wzoru wyżej podanego jedynie stałą, stojącą przed znakiem całki, tj.[4]

Transformacja odwrotna unitarna

Komentarz

[edytuj | edytuj kod]
  • Czynnik przed transformatą i transformatą odwrotną występuje umownie; zamiast takiej postaci może występować czynnik przed transformatą prostą, albo (częściej) przed transformacją odwrotną.
  • Jeżeli jednak czynnik wynosi wtedy transformacja i transformacja odwrotna są izometriami przestrzeni
  • Pierwsza z dwu powyższych definicji jest popularniejsza, nie posiada jednak własności unitarności.

Interpretacja ujemnych częstotliwości

[edytuj | edytuj kod]

W definicji transformaty Fouriera w postaci zespolonej mamy częstotliwości w zakresie od do , występujące w funkcji . W klasycznym rozumieniu teorii dotyczącej drgań i fal częstości kołowe są wielkościami dodatnimi. Co oznaczają więc ujemne wartości częstotliwości? Sytuacja jest tu nieco inna niż w opisie zjawisk drgań i fal za pomocą liczb rzeczywistych, gdzie definiuje się pojęcie częstotliwości. Tu mamy do czynienia z funkcjami zespolonymi o częstotliwościach z zakresu liczb rzeczywistych. Każda funkcja może być przedstawiona jako obracający się w płaszczyźnie zespolonej wektor (wielkość obrotu zależy od czasu występującego w każdej takiej funkcji), którego koniec porusza się po okręgu o promieniu równym 1 (tzw. okrąg jednostkowy).

Dla dodatnich wartości wektory obracają się przeciwnie do wskazówek zegara, dla ujemnych wartości wektory obracają się zgodnie ze wskazówkami zegara.

Piękna ilustrację transformacji Fouriera, w tym sens ujemnych częstotliwości, przedstawia animowane omówienie pt. But what is the Fourier Transform? A visual introduction

Inne oznaczenia

[edytuj | edytuj kod]

Transformatę Fouriera oznacza się także symbolem[2]

gdzie - jednostka urojona (oznaczenie stosowane często w elektrotechnice, teorii przetwarzania sygnałów)

Oznaczenie to podkreśla, iż mamy do czynienia z transformatą Fouriera w postaci zespolonej. Używa się także symboliki na oznaczenie transformacji odwrotnej; wtedy mamy:

Przykład obliczania transformaty Fouriera

[edytuj | edytuj kod]
Transformata Fouriera funkcji : jej część rzeczywista, urojona, moduł

Mamy daną funkcję

Obliczamy

czyli

Część rzeczywista obliczanej transformaty jest równa zeru z uwagi na nieparzystość funkcji , natomiast część zespolona ma wartość

Stąd

Widmo amplitudowe czyli moduł transformaty :

Wyniki obliczeń pokazano na wykresach.

Obliczanie numeryczne transformaty Fouriera

[edytuj | edytuj kod]

Obliczanie transformaty Fouriera w ogólnym przypadku nie jest proste i wymaga na ogół całkowania numerycznego. Poniżej podano kod programu w języku Python, który liczy zespoloną transformatę Fouriera wg wzoru całkowego i rysuje wykresy jej części rzeczywistej, urojonej oraz modułu.

Użytkownik może ustalić:

  1. Definicję funkcji (linia nr 15)
  2. Liczbę określającą zakres częstotliwości (linia nr 32)
  3. Program można testować, korzystając np. z darmowego notatnika colab google online.
import numpy as np
from scipy.integrate import quad
import matplotlib.pyplot as plt

''' Definicja funkcji f(t)=t
def f(t):
    if np.abs(t) < 1:
        return t
    elif np.abs(t) == 1:
        return 0.5 * np.sign(t)
    else:
        return 0
'''

# Definicja funkcji f(t) - impuls prostokątny 
def f(t):
    if abs(t-a) < 1:
        return 1
    elif abs(t-a) == 1:
        return 0.5 * np.sign(t)
    else:
        return 0

# Definicja transformacji Fouriera
def fourier_transform(omega):
    integrand = lambda t: f(t) * np.exp(-1j * omega * t)
    real_part = quad(lambda t: np.real(integrand(t)), -np.inf, np.inf)[0]
    imag_part = quad(lambda t: np.imag(integrand(t)), -np.inf, np.inf)[0]
    return real_part + 1j * imag_part

# Zakres częstotliwości omega
N = 10
omega_values = np.linspace(-N, N, 500)
fourier_values = np.array([fourier_transform(omega) for omega in omega_values])

# Wykresy: Re, Im oraz |F(ω)|
plt.figure(figsize=(14, 20))

# Wykres części rzeczywistej
plt.subplot(3, 1, 1)
plt.plot(omega_values, fourier_values.real, label=r"Re$\{\hat{f}(\omega)\}$", color='blue')
plt.title("Część rzeczywista transformaty Fouriera", fontsize=30)
plt.xlabel(r"$\omega$", fontsize=20)
plt.ylabel(r"Re$\{\hat{f}(\omega)\}$", fontsize=14)
plt.grid(True)
plt.legend(fontsize=20)

# Wykres części urojonej
plt.subplot(3, 1, 2)
plt.plot(omega_values, fourier_values.imag, label=r"Im$\{\hat{f}(\omega)\}$", color='red')
plt.title("Część urojona transformaty Fouriera", fontsize=30)
plt.xlabel(r"$\omega$", fontsize=20)
plt.ylabel(r"Im$\{\hat{f}(\omega)\}$", fontsize=14)
plt.grid(True)
plt.legend(fontsize=20)

# Wykres modułu |F(ω)|
plt.subplot(3, 1, 3)
plt.plot(omega_values, np.abs(fourier_values), label=r"$|\hat{f}(\omega)|$", color='green')
plt.title("Moduł transformaty Fouriera", fontsize=30)
plt.xlabel(r"$\omega$", fontsize=20)
plt.ylabel(r"$|\hat{f}(\omega)|$", fontsize=14)
plt.grid(True)
plt.legend(fontsize=20)

plt.tight_layout()
plt.show()

Całki Fouriera jako całki niewłaściwe

[edytuj | edytuj kod]

Obliczanie transformaty Fouriera zadane jest de facto poprzez całki niewłaściwe, gdyż zmienna jest określona w granicach od do . Obliczanie takich całek sprowadza się do liczenia tzw. wartości głównej całki (wg definicji podanej przez Cauchy'ego)[2], tj. do liczenia jej jako granicy z całek obliczonych na skończonym przedziale całkowania:

Rzeczywiste sygnały zawsze mają skończony czas trwania. Natomiast można je teoretycznie przedłużać do nieskończoności - wtedy ma zastosowanie powyższy wzór.

Także funkcja pierwotna rekonstruowana z jej transformaty poprzez transformację odwrotną jest zadana przez całkę niewłaściwą, gdyż zmienna jest określona w granicach od do . I także obliczanie tej całki sprowadza się do liczenia wartości głównej całki[2], tj. do liczenia jej jako granicy z całek obliczonych na skończonym przedziale całkowania wg wzoru:

Interpretacja i związek z transformatą Laplace’a

[edytuj | edytuj kod]

W całce Fouriera funkcje harmoniczne mnożone są przez sygnał ; wynikowa całka dostarcza informacji nt. zawartości poszczególnych harmonicznych, wchodzących w skład sygnału (dokonuje rozkładu sygnału na jego widmo).

Transformacja Laplace’a wykonuje podobne działanie, ale o bardziej ogólnym charakterze: Za pomocą całki Laplace'a funkcja rzeczywista , reprezentująca zmieniający się w czasie sygnał (np. pole elektryczne fali, przychodzącej do odbiornika), jest transformowana na płaszczyznę S ( płaszczyznę zespoloną); dokonuje się to poprzez scałkowanie iloczynu funkcji z wyrażeniami typu dla czasu od do :

przy tym jest liczbą zespoloną, stałą w procesie obliczania całki.

Funkcje w całce Laplace'a de facto mają postać . Dzięki temu pozwalają dokonać nie tylko analizy zawartości harmonicznych w sygnale , ale również efektów zaniku sygnału lub jego wzrastania w czasie, poprzez funkcję Na przykład krzywa sinusoidalna tłumiona może być modelowana za pomocą transformacji Laplace'a. Transformacja Fouriera stanowi więc szczególny przypadek przekształcenia Laplace’a dla

Podobnie uogólnieniem dyskretnej transformaty Fouriera stanowi transformata Z, z którą powiązana jest transformata Laplace’a (zob. metoda Tustina).

Własności transformaty Fouriera

[edytuj | edytuj kod]

W tym rozdziale wprowadzono trzeci sposób definiowania transformaty Fouriera za pomocą częstotliwości , przy czym zachodzi związek .

  • W przypadku jednowymiarowym funkcja jest klasy czyli jest całkowalna w przedziale
  • jest funkcją ciągłą. Nie musi natomiast być całkowalna w
  • Jeśli to
  • Jeśli i to
  • gdzie operacja oznacza splot funkcji f i g
  • Jeśli pochodna funkcji należy do i funkcja zeruje się poza pewnym przedziałem skończonym, to z całkowania przez części wynika, że:

Właściwości transformat

[edytuj | edytuj kod]
Funkcja Transformata Fouriera
unitarna, częstotliwość
Transformata Fouriera
unitarna, pulsacja (częstość kołowa)
Transformata Fouriera
pulsacja (częstość kołowa)
Uwagi

101 Liniowość
102 Przesunięcie oryginału w dziedzinie „czasu”
103 Przesunięcie widma w dziedzinie częstotliwości, dualne względem 102
104 Dla dużych wartości zawęża się wokół zera, a poszerza się i spłaszcza.
105
106 Transformata pochodnej
107 Ta właściwość jest dualna względem 106
108 Notacja oznacza splot funkcji i – tę właściwość określamy jako twierdzenie o splocie
109 Właściwość dualna względem 108
110 Dla funkcji rzeczywistej i parzystej w postaci unitarnej oraz funkcjami rzeczywistymi i parzystymi.
111 Dla funkcji rzeczywistej i nieparzystej w postaci unitarnej oraz funkcjami urojonymi i nieparzystymi.

Najprzydatniejsze pary transformat

[edytuj | edytuj kod]

W przestrzeniach funkcji dobrze określonych, takich jak lub przestrzeń funkcji szybko malejących w nieskończoności transformacja Fouriera przyporządkowuje wzajemnie jednoznacznie funkcji (oryginałowi) jej transformatę. Oryginał i jego transformata określana są wtedy jako para fourierowska.

Funkcje całkowalne z kwadratem

[edytuj | edytuj kod]

W tabeli zestawiony jest oryginał oraz jego transformaty w dziedzinie częstotliwości i pulsacji[5].

Uwaga: Tu oznacza zmienną funkcji pierwotnej , zamiast oznaczenia .

Funkcja Transformata Fouriera
unitarna, częstotliwość
Transformata Fouriera
unitarna, pulsacja (częstość kołowa)
Transformata Fouriera
pulsacja (częstość kołowa)
Uwagi

201 Funkcja prostokątna i normalizowana funkcja sinc, definiowana jako
202 Relacja dualna do 201. funkcja prostokątna jest filtrem dolnoprzepustowym, a funkcja sinc jest odpowiedzią impulsową dla takiego filtra.
203 Funkcja jest funkcją trójkątną
204 Związek dualny względem 203.
205 jest funkcją skoku Heaviside’a,
206 Funkcja Gaussa jest funkcją własną przekształcenia Fouriera dla odpowiednio dobranego Funkcja jest całkowalna dla
207 Dla
208

 


 


 

oznacza funkcję Bessela -tego rzędu, pierwszego rodzaju. to wielomiany Czebyszewa drugiego rodzaju. (patrz punkty 315 i 316 poniżej).
209 Secans hiperboliczny jest funkcją własną transformcji Fouriera

Dystrybucje

[edytuj | edytuj kod]

Dystrybucje, określane też jako funkcje uogólnione nie posiadają transformat w sensie określonym przez powyższe definicje. Możliwe jest jednak uogólnienie pojęcia transformaty i przyjęcie, że uzyskujemy w wyniku przejścia do granicy ciągu transformat lub wychodząc od szeregu Fouriera funkcji okresowej.

Funkcja Transformata Fouriera
unitarna, częstotliwość
Transformata Fouriera
unitarna, pulsacja (częstość kołowa)
Transformata Fouriera
pulsacja (częstość kołowa)
Uwagi

301 oznacza deltę Diraca.
302 Co wynika z zasady 301.
303 Co wynika z własności 103 i 301.
304 Co wynika ze 101 i 303 przy zastosowaniu wzoru Eulera:
305 Co wynika ze 101 i 303, przy zastosowaniu
306
307
308 Gdzie jest liczbą naturalną a jest -tą pochodną delty Diraca. Wynika to ze 107 i 301. Stosując tę formułę z 101, można transformować dowolne wielomiany.
309 Gdzie to funkcja znaku. Zauważmy, że nie jest dystrybucją. Własność przydatna w odniesieniu do transformaty Hilberta.
310 Uogólnienie 309.
311
312 Dualne do 309.
313 Funkcja jest funkcją Heaviside’a; to wynika ze 101, 301 i 312.
314 Funkcja grzebieniowa. Do wyznaczenia z 302 i 102, wraz z faktem, że jako dystrybucje.
315 funkcją Bessela pierwszego rodzaju, rzędu zerowego.
316 Uogólnienie 315. Funkcja jest funkcją Bessela -tego rzędu, pierwszego rodzaju. Funkcja jest wielomianem Czebyszewa pierwszego rodzaju.

Zastosowanie dla potrzeb przetwarzania sygnałów

[edytuj | edytuj kod]
 Osobny artykuł: Transmitancja widmowa.

Zależność określającą transmitancję widmową można wyznaczyć:

Pojedyncza zespolona składowa harmoniczna o amplitudzie pulsacji i fazie

(gdzie oznacza jednostkę urojoną), generuje odpowiedź na wyjściu układu w postaci sygnału sinusoidalnego o amplitudzie i fazie

Warto zwrócić uwagę na fakt, że częstotliwość pozostała taka sama, jedynie amplituda i faza sygnału uległy zmianie w układzie. Transmitancja opisuje charakter tych zmian w całym spektrum częstotliwości (tj. dla każdej częstotliwości ). Moduł transmitancji opisuje wzmocnienie układu:

a argument tej transmitancji opisuje przesunięcie fazowe wprowadzane przez układ:

Transmitancja

Dla przypadku układów dyskretnych wyrażenie

definiuje dyskretną transmitancję widmową.

Transformacja Fouriera wielowymiarowa

[edytuj | edytuj kod]

Transformatę Fouriera można określić dla funkcji , gdzie jest przestrzenią wektorową funkcji całkowalnych na , za pomocą wzoru[6]:

gdzie:

  • jednostka urojona
  • iloczyn skalarny wektorów

Twierdzenia

[edytuj | edytuj kod]

Tw. 1 Transformata jest funkcją istotnie ograniczoną: (wynika to z twierdzenia Riemanna-Lebesgue’a).

Tw. 2 W przypadku gdy funkcja jest ponadto całkowalna z kwadratem (czyli ), transformata jest również całkowalna z kwadratem. Innymi słowy, transformacja Fouriera jest odwzorowaniem przestrzeni:

Tw. 3 Twierdzenie Plancherela wówczas mówi, że odwzorowanie to przedłuża się do izometrii przestrzeni na siebie.

Zobacz też

[edytuj | edytuj kod]

Przypisy

[edytuj | edytuj kod]
  1. W. Żakowski i W. Leksiński ↓, s. 351.
  2. a b c d e W. Żakowski i W. Leksiński ↓, s. 360.
  3. W. Żakowski i W. Leksiński ↓, s. 361-362.
  4. W. Żakowski i W. Leksiński ↓, s. 365.
  5. David W. Kammler, A First Course in Fourier Analysis, Upper Saddle River, NJ: Prentice Hall, 2000, ISBN 0-13-578782-3, OCLC 43118245.
  6. Hanna Marcinkowska: Dystrybucje, przestrzenie Sobolewa, równania różniczkowe. PWN, 1993, s. 56–60. ISBN 83-01-10864-9.

Bibliografia

[edytuj | edytuj kod]
  • T. Trajdos, Matematyka dla inżynierów, PWN, Warszawa 1974, s. 555-567. ISBN 978-83-204-0152-3
  • W. Żakowski, W. Leksiński, Matematyka cz. IV, Wydawnictwo Naukowo-Techniczne, Warszawa 1978, s. 551-571. ISBN 978-83-01-19359-1

Linki zewnętrzne

[edytuj | edytuj kod]
Polskojęzyczne
Anglojęzyczne