Szybka transformacja Fouriera

Podobne dokumenty
9. Dyskretna transformata Fouriera algorytm FFT

Szybka transformacja Fouriera (FFT Fast Fourier Transform)

Transformata Fouriera i analiza spektralna

Analiza szeregów czasowych: 2. Splot. Widmo mocy.

uzyskany w wyniku próbkowania okresowego przebiegu czasowego x(t) ze stałym czasem próbkowania t takim, że T = t N 1 t

Kurs wyrównawczy - teoria funkcji holomorficznych

Przekształcenia widmowe Transformata Fouriera. Adam Wojciechowski

Analiza szeregów czasowych: 2. Splot. Widmo mocy.

dr inż. Artur Zieliński Katedra Elektrochemii, Korozji i Inżynierii Materiałowej Wydział Chemiczny PG pokój 311

Andrzej Leśnicki Laboratorium CPS Ćwiczenie 6 1/8 ĆWICZENIE 6. Dyskretne przekształcenie Fouriera DFT

Transformacja Fouriera i biblioteka CUFFT 3.0

Ćwiczenie 3. Właściwości przekształcenia Fouriera

Transformata Fouriera. Sylwia Kołoda Magdalena Pacek Krzysztof Kolago

Przekształcenia całkowe. Wykład 1

FFT i dyskretny splot. Aplikacje w DSP

Liczby zespolone. Magdalena Nowak. 23 marca Uniwersytet Śląski

LICZBY ZESPOLONE. 1. Wiadomości ogólne. 2. Płaszczyzna zespolona. z nazywamy liczbę. z = a + bi (1) i = 1 lub i 2 = 1

Przekształcenie Fouriera i splot

Przekształcenie całkowe Fouriera

IMPLEMENTATION OF THE SPECTRUM ANALYZER ON MICROCONTROLLER WITH ARM7 CORE IMPLEMENTACJA ANALIZATORA WIDMA NA MIKROKONTROLERZE Z RDZENIEM ARM7

CYFROWE PRZTWARZANIE SYGNAŁÓW (Zastosowanie transformacji Fouriera)

Politechnika Gdańska Wydział Elektrotechniki i Automatyki Katedra Inżynierii Systemów Sterowania. Podstawy Automatyki

Transformacje Fouriera * podstawowe własności

Przekształcenie Fouriera obrazów FFT

DYSKRETNE PRZEKSZTAŁCENIE FOURIERA C.D.

Andrzej Leśnicki Laboratorium CPS Ćwiczenie 7 1/7 ĆWICZENIE 7. Splot liniowy i kołowy sygnałów

Matematyka liczby zespolone. Wykład 1

Teoria sygnałów Signal Theory. Elektrotechnika I stopień (I stopień / II stopień) ogólnoakademicki (ogólno akademicki / praktyczny)

Za pierwszy niebanalny algorytm uważa się algorytm Euklidesa wyszukiwanie NWD dwóch liczb (400 a 300 rok przed narodzeniem Chrystusa).

Lista nr 1 - Liczby zespolone

Transformaty. Kodowanie transformujace

Wstęp do metod numerycznych Dyskretna transformacja Fouriera. P. F. Góra

Met Me ody numer yczne Wykład ykład Dr inż. Mic hał ha Łanc Łan zon Instyt Ins ut Elektr Elektr echn iki echn i Elektrot Elektr echn olo echn

Przekształcenie Z. Krzysztof Patan

2. Próbkowanie Sygnały okresowe (16). Trygonometryczny szereg Fouriera (17). Częstotliwość Nyquista (20).

Adam Korzeniewski p Katedra Systemów Multimedialnych

Przykładowe rozwiązania zadań. Próbnej Matury 2014 z matematyki na poziomie rozszerzonym

Dyskretne przekształcenie Fouriera cz. 2

PL B1. Sposób i układ pomiaru całkowitego współczynnika odkształcenia THD sygnałów elektrycznych w systemach zasilających

Macierze. Rozdział Działania na macierzach

W języku C dostępne są trzy instrukcje, umożliwiające tworzenie pętli: for, while oraz do. for (w1;w2;w3) instrukcja

2. Szybka transformata Fouriera

PRZETWARZANIE SYGNAŁÓW

Wstęp do informatyki. Maszyna RAM. Schemat logiczny komputera. Maszyna RAM. RAM: szczegóły. Realizacja algorytmu przez komputer

4. Postęp arytmetyczny i geometryczny. Wartość bezwzględna, potęgowanie i pierwiastkowanie liczb rzeczywistych.

Splot i korelacja są podstawowymi pojęciami przetwarzania sygnałów.

1. Liczby zespolone Stwierdzić kiedy kwadrat liczby zespolonej jest liczbą. (i) rzeczywistą, (ii) ujemną, (iii) tylko urojoną?

Adaptacyjne Przetwarzanie Sygnałów. Filtracja adaptacyjna w dziedzinie częstotliwości

Różne reżimy dyfrakcji

Politechnika Wrocławska Wydział Elektroniki Mikrosystemów i Fotoniki Przetwarzanie sygnałów laboratorium ETD5067L

Transformata Laplace a to przekształcenie całkowe funkcji f(t) opisane następującym wzorem:

Przetwarzanie sygnału cyfrowego (LabVIEW)

KURS LICZB ZESPOLONYCH

LABORATORIUM PROCESORY SYGNAŁOWE W AUTOMATYCE PRZEMYSŁOWEJ. Zasady arytmetyki stałoprzecinkowej oraz operacji arytmetycznych w formatach Q

LUBELSKA PRÓBA PRZED MATURĄ 2018 poziom podstawowy

Elektrotechnika Skrypt Podstawy elektrotechniki

Plan wykładu. Własności statyczne i dynamiczne elementów automatyki:

Propagacja w przestrzeni swobodnej (dyfrakcja)

8. Analiza widmowa metodą szybkiej transformaty Fouriera (FFT)

Przetwarzanie sygnałów

3. Macierze i Układy Równań Liniowych

Cyfrowe Przetwarzanie Obrazów i Sygnałów

Wyk lad 5 W lasności wyznaczników. Macierz odwrotna

Liczby zespolone i ich zastosowanie do wyprowadzania tożsamości trygonometrycznych.

Pochodna i różniczka funkcji oraz jej zastosowanie do obliczania niepewności pomiarowych

Jarosław Wróblewski Analiza Matematyczna 2, lato 2016/17

FPGA IMPLEMENTATION OF FAST FOURIER TRANSFORM ALGORITHM IMPLEMENTACJA ALGORYTMU SZYBKIEJ TRANSFORMATY FOURIERA W UKŁADZIE PROGRAMOWALNYM FPGA

Politechnika Wrocławska Wydział Elektroniki Mikrosystemów i Fotoniki Przetwarzanie sygnałów laboratorium ETD5067L

Rozdział 5. Macierze. a 11 a a 1m a 21 a a 2m... a n1 a n2... a nm

EGZAMIN MATURALNY Z INFORMATYKI 17 MAJA 2016 POZIOM PODSTAWOWY. Godzina rozpoczęcia: 14:00 CZĘŚĆ I WYBRANE: Czas pracy: 75 minut

PORÓWNANIE TREŚCI ZAWARTYCH W OBOWIĄZUJĄCYCH STANDARDACH EGZAMINACYJNYCH Z TREŚCIAMI NOWEJ PODSTAWY PROGRAMOWEJ

I. Podstawy języka C powtórka

Ćwiczenie 11. Wprowadzenie teoretyczne

2.1. Postać algebraiczna liczb zespolonych Postać trygonometryczna liczb zespolonych... 26

dr inż. Ryszard Rębowski 1 WPROWADZENIE

DYSKRETNA TRANSFORMACJA FOURIERA

Metody numeryczne w przykładach

1. Liczby zespolone Stwierdzić kiedy kwadrat liczby zespolonej jest liczbą. (i) rzeczywistą, (ii) ujemną, (iii) tylko urojoną?

PODSTAWY AUTOMATYKI. MATLAB - komputerowe środowisko obliczeń naukowoinżynierskich - podstawowe operacje na liczbach i macierzach.

BAZA ZADAŃ KLASA 2 TECHNIKUM FUNKCJA KWADRATOWA

WYMAGANIA EDUKACYJNE Z MATEMATYKI KLASA III ZAKRES ROZSZERZONY (90 godz.) , x

1. Liczby zespolone i

15. Macierze. Definicja Macierzy. Definicja Delty Kroneckera. Definicja Macierzy Kwadratowej. Definicja Macierzy Jednostkowej

Technika audio część 2

ZADANIE 1. Ważenie (14 pkt)

NUMERYCZNE METODY ROZWIĄZYWANIA ROWNAŃ LINIOWYCH. PRZYGOTOWAŁA: ANNA BANAŚ KoMBo, WILiŚ

Analiza szeregów czasowych: 1. Dyskretna transformata Fouriera i zagadnienia pokrewne

3. Przetwarzanie analogowo-cyfrowe i cyfrowo-analogowe... 43

PRÓBNY EGZAMIN MATURALNY Z INFORMATYKI

1. Liczby zespolone Stwierdzić kiedy kwadrat liczby zespolonej jest liczbą. (i) rzeczywistą, (ii) ujemną, (iii) tylko urojoną?

Matematyka dyskretna. Andrzej Łachwa, UJ, /15

Zajmijmy się najpierw pierwszym równaniem. Zapiszmy je w postaci trygonometrycznej, podstawiając z = r(cos ϕ + i sin ϕ).

Kolorowa płaszczyzna zespolona

ZADANIE 1 Ciag (a n ), gdzie n 1, jest rosnacym ciagiem geometrycznym. Wyznacz wartość największa 2xa 6 a 2 a 4 a 3 x 2 a 3 a 6. ZADANIE 2 ZADANIE 3

Liczby zespolone. P. F. Góra (w zastępstwie prof. K. Rościszewskiego) 27 lutego 2007

Politechnika Świętokrzyska. Laboratorium. Cyfrowe przetwarzanie sygnałów. Ćwiczenie 6. Transformata cosinusowa. Krótkookresowa transformata Fouriera.

Zadania do wykonania. Rozwiązując poniższe zadania użyj pętlę for.

CHARAKTERYSTYKI CZĘSTOTLIWOŚCIOWE

Algorytmy i struktury danych. Wykład 4

METODY MATEMATYCZNE I STATYSTYCZNE W INŻYNIERII CHEMICZNEJ

Transkrypt:

Szybka transformacja Fouriera (Opis i wydruki programów) Instytut Astronomii UMK, Toruń 1976

2 K. Borkowski PROGRAM OBLICZANIA TRANSFORMAT FOURIERA Wstęp Prezentowany tutaj program przeznaczony jest do obliczania obu transformat Fouriera na minikomputerze MOMIK 8b. Algorytm programu wywodzi się z następujących definicji dyskretnych przekształceo Fouriera (dalej zwanych DFT lub, dla transformaty odwrotnej, IDFT). N-1 A r = (1/N) z k W rk, r = 0, 1,, N-1 oraz k=0 N-1 z l = A r W -rl, l = 0, 1,..., N-1, r=0 gdzie W = exp(2 j/n), j 2 = -1. Własności DFT z małymi modyfikacjami pokrywają się z własnościami całkowych postaci przekształcenia Fouriera. Tak np., DFT ciągu przesuniętego cyklicznie o h wyrazów jest DFT tego ciągu, pomnożoną przez W -rh a DFT sumy dwóch funkcji jest sumą DFT tych funkcji. Inną bardzo pożyteczną własnością DFT jest ich związek z dyskretnym splotem (konwolucją lub filtrowaniem) a zatem także z dyskretną funkcją autokorelacyjną jako szczególnym przypadkiem splotu. Otóż można pokazad, że IDFT iloczynu dwóch DFT otrzymanych z dwóch ciągów jest dyskretnym splotem tych ciągów jeżeli tylko połowa wyrazów każdego z ciągów (np., pierwsze N/2 wyrazy) będzie identyczna z zerem, co zawsze można zapewnid podczas przygotowywania danych. Do opracowania programu wykorzystano jeden z algorytmów tzw. szybkiej transformacji Fouriera (FFT) przedstawionych w pracy Cochrana i in. (1967)* Jest to metoda polegająca na rozbiciu operacji DFT w czasie, zapewniająca maksymalne wykorzystanie pojemności pamięci operacyjnej (PAO) komputera. Program został napisany w języku symbolicznym Systemu Biurowego MERA 302/303. Przekształcanie ciągu 128 liczb zespolonych (jest to zarazem górna granica) trwa ok. 35 minut. *W.T.Coahran, J.W.Cooley, D.L.Favin, H.D.Helms, R.A.Kaenel, W.W.Lang, G.C.Maling, D.E.Nelson, C.M.Rader, P.D.Welch, What in the Fast Fourier Transform?, IBEE Trans. Audio and Electroacoustics, vol. 15, No. 2, June 1967. Algorytmy Do obliczania funkcji sinus i cosinus, występujących w DFT (FFT) w wyrazie W k = cos(2 k/n) - j sin(2 k/n), wykorzystano następujące zależności: sin(2 k/n) = (-1) m sin(2 k/n - m ) = sin x, gdzie m jest liczbą całkowitą a x /2, cos x' = sin(2.5 - x') sin x (((a 7 x 2 + a 5 ) x 2 + a 3 ) x 2 + a 1 ) x, gdzie: a 1 = 1, a 3 = -0.166657, a 5 = 0.0083132, a 7 = -0.0001852. Funkcje te wypełnia częśd programu pomiędzy etykietami oznaczonymi numerami 6 i 7 oraz w podprogramie oznaczonym etykietą 20. Sposób znajdowania transformat ilustruje schemat blokowy na rys. 1. Istotą algorytmu jest obliczanie transformat cząstkowych obejmujących kolejno N/2, N/4, N/8,..., 4, 2 i 1 elementów

3 pierwotnego ciągu danych i jednoczesne składanie ich w transformatę ostateczną. Zysk w szybkości działania takiej procedury uzyskuje się dzięki związkowi W k-n/2 = -W k. Na rys. 2 pokazano schemat operacji wykonywanych podczas FFT dla przypadku gdy N = 8. Kolejne stany PAO uwidaczniają się tam w węzłach siatki rozmieszczonych równolegle do danych wejściowych z k. Liczba zespolona odpowiadająca danemu węzłowi jest ważoną sumą liczb z dwu innych węzłów. Strzałki symbolizują kierunki przesyłania liczb a przypisane im wagi W l zaznaczono obok strzałek. Funkcja F(k,n) występująca w schemacie (rys. 1) obliczana jest wg wzoru: n F(k,n) = 2 n-1 {E(k/2 i-1 ) 2E(k/2 i )}, i=1 gdzie E oznacza całośd a n = lg 2 N. Obliczenia wykonywane są w podprogramie oznaczonym etykietą "14" (argument instrukcji sk i wa). Pamiętanie danych i wyników w PAO zorganizowano w ten sposób, że Rez k i ReA k mieszczą się w rejestrze pamięciowym o numerze k a Imz k i ImA k w rejestrze k+n. Użytkowanie programu Wczytanie i uruchomienie programu odbywa się na zasadach ogólnych Systemu Biurowego. W programie nie przewidziano możliwości zmian aktywnych wyjśd i wejśd, które są deklarowane przed uruchomieniem programu z klawiatury numerycznej w zależności od potrzeb użytkownika. Dane z aktywnego urządzenia wejściowego należy wprowadzad w następującej kolejności: Liczba n = lg 2 N, gdzie N ilośd wyrazów ciągu danych. Kolejne liczby zespolone ciągu; najpierw częśd rzeczywista, następnie urojona (Rez o, Imz o, Rez i, Imz i,...). Po uruchomieniu program realizuje DFT. W celu uzyskania transformaty odwrotnej (IDFT) dane należy podad w następującej kolejności: n, z o, z N-1, z N-2,, z 2, z 1. Ponadto, dla uzyskania właściwej normalizacji wyników, po wczytaniu należy wydusid klawisz 7" z rzędu KL" na pulpicie technicznym. Tę procedurę można uzasadnid następująco: jeśli z k = (1/N) A r W rk, to biorąc z k = z N-k i z N = z o i wykonując ponowną transformację, dostaje się: N-1 A r = (1/N) z k W rk = (1/N) z N-K W rk = (1/N) z k W -r(n-k) = k=0 k k = (1/N) ( z k W -rk ) W Nr = A r /N. k Wyniki obliczeo są wypisywane na aktywne wyjście w postaci tabeli, w kolejności: ReA o, ReA 1,..., ReA N, ImA o, ImA N-1, gdzie A i i-ty element transformaty Fouriera. Warto zauważyd, że mimo że pojemnośd PAO MOMIKA ogranicza maksymalny ciąg danych poddawanych przekształceniu do 128 punktów, nie wyklucza to możliwości uzyskiwania transformat dłuższych ciągów. Rys. 3 pokazuje sposób postępowania w przypadku ciągu złożonego z 256 elementów. Jest to metoda podziału DFT w domenie czasowej. Analogicznie można uzyskad transformaty ciągu 512 punktów. Toruo, dnia 10.03.1976 r. /K.B./

4 Rys. 1: Sied działao

5 Rys. 2. Rys. 3.

6

7

8

9