Analiza danych środowiskowych III rok OŚ Wykład 3 Andrzej Leśniak KGIS, GGiOŚ AGH Szereg i transformata Fouriera Cel wykładu: Wykrywanie i analiza okresowości w szeregach czasowych
Przepływ wody w rzece Neuse (USA) Przepływ m 3 /dzień 365 dni 1 rok Czas [dni] Temperatura powietrza Black Rock Forest 365 dni 1 rok
Temperatura powietrza Black Rock Forest 1 dzień time, days Występują różne cykle zmienna okresowość danych Cykliczność zjawisk i ich okresy astronomiczne inne naturalne antropogeniczne rotacja Ziemi 1 dzień fale morskie kilka sekund Prąd elektryczny 6 Hz obieg wokół Słońca 1 rok uderzenia serca 4-1/min Gramofon 33 1/3 Przypływy mórz 1 g, 1 dzień, 1 miesiąc
Drgania sinusoidalne f(t)= C cos{ π(t-t ) / T } 3 cosine example amplituda, C 1 d(t) -1 - okres, T -3 1 3 4 5 6 7 8 9 time, time, t t przesunięcie (ew. faza), t Okresowość może występować zarówno w danych które są zależne od czasu jak i od zmiennej przestrzennej zmienne w czasie f(t)= C cos{ πt / T } amplituda, C okres, T częstotliwość, f=1/t częstotliwość kątowa, ω= π/t f(t)= C cos(ωt) zmienne w przestrzeni f(x)= C cos{ πx / λ} amplituda, C długość fali, λ częstość f=1/λ liczba falowa, k= π/ λ f(x)= C cos(kx)
cykliczność danych w przestrzeni i liczby falowe naturalne antropogeniczne wydmy dziesiątki setki metrów słoje drzew kilka milimetrów grzędy na polu ziemniaczanym kilkadziesiąt cm Łączenie sinusa i kosinusa pozwala wyeliminować przesunięcie czasu gdzie oraz
Dowód jest dość prosty pamiętając, że:
Szereg Fouriera Model liniowy zbudowany wyłącznie z funkcji sinus i kosinus dane = suma funkcji sinus i kosinus ω - zmienne pomocnicze A, B to parametry modelu zasadniczy problem jak dobrać częstotliwości kątowe (wartości i ich maksymalna liczba)? Dla danych spróbkowanych ze stałym krokiem większe niż f N = 1 t nie będą wykryte. t częstotliwości częstotliwość Nyquista wartości częstotliwości : zakładamy, że częstotliwości są rozłożone równomiernie począwszy od częstotliwości zero do częstotliwości max (tj. do f ), czyli ω = ( n 1) ω N Ilość punktów na osi częstotliwości: Ilość danych N = ilość parametrów (A i i B i ) do określenia. Dla częstotliwości ω = cos()=1 i sin()= Ilość różnych częstotliwości N/+1 f N = 1 t ω N = π f N = π t ( π t) π ω 1 ω = = f = = N N t π N t n
Ilość częstotliwości: dlaczegon/+1 a nie N/? pierwszy i ostatni sinus w szeregu Fouriera są pomijane ponieważ są tożsamościowo równe zeru: ( t) B1 sin = B B N + 1 N + 1 sin ω N + 1 t = B π sin n t = t N + 1 N sin ω t = B N + 1 N sin π t = N t cos(½nδω t) cos(t) cos(δω t) sin(δωt) cos(δω t) sin(δω t) - - - - - - 5 5 5 5 5 5 1 1 1 1 1 1 time, s 15 15 15 15 15 15 5 5 5 5 5 5 3 3 3 3 3 3
x x ( t) = sin( πf ) x Twierdzenie Nyquista o próbkowaniu t ( n) = sin( πf n t) po spróbkowaniu Ponieważ sinus jest funkcją okresową można zapisać: ( n) = π f n t) = sin(πf n t + π ) sin( m Drugi wyraz można zapisać jako: m sin( πf n t + πm) = sin π ( f + ) n t n t ( n) = πf n t) = sin( ( f + kf ) n t) x sin( π s jeśli m = kn t = 1 f to s Podczas próbkowania z częstotliwością f s próbek/s nie ma możliwości rozróżnienia spróbkowanych przebiegów sinusoidalnych o częstotliwości f Hz i f +kf s Hz (k liczba całkowita) 1 d 1 (t) = cos(ω 1 t), with ω 1 = ω d 1 (t) d1(t) -1-5 1 15 time, t d (t) = cos{ω t}, with ω =(+N) ω, time, t 1 d (t) d(t) -1-5 1 15 time, t time, t
Pytanie zasadnicze: czy na podstawie zapisu dyskretnego można odtworzyć funkcję ciągłą? A jeśli tak, to jakie musi ona spełniać warunki? Odpowiedź: Sygnał musi mieć ograniczone pasmo częstotliwościowe tj. X(ω) = dla ω > ω max Sygnałami o ograniczonym paśmie mogą być zarówno sygnały o ograniczonej energii, jak i o ograniczonej mocy. Jedno jest jasne zbyt rzadkie próbkowanie powoduje niejednoznaczność w definiowaniu krzywej ciągłej. Zachodzi w tym wypadku zjawisko aliasingu. (ang. Alias: Two names for the same person, or thing) Innymi słowami: kiedy m=n+n lub kiedy ω m =ω n +ω ny tylko przedziałω ny na osi ω jest określony jednoznacznie, powiedzmy od -ω ny do+ω ny punkty ekwiwalentne na osi ω ω ny ω ny ω ny 3ω ny ω
problemy jakie rodzi aliasing wysokie częstotliwości maskują niskie częstotliwości remedium: należy usunąć wysokie częstotliwości z danych przed ich spróbkowaniem (analogowe filtry antyaliasingowe) Dyskretny Szereg Fouriera B N/
Rozwiązanie: metodą najmniejszych kwadratów est T -1 T może zostać znacznie uproszczone, gdyż znamy postać analityczną wyrażenia i Szereg Fouriera nieujemne częstotliwości tylko dla zakresu od doω ny Używając liczb zespolonych wzór powyższy można zapisać w postaci: częstotliwości nieujemne częstotliwości ujemne
Rozwiązanie zagadnienia najmniejszych kwadratów dla obliczenia n lub Dyskretna transformacja Fouriera Jak rysować A i B, tj, wyliczone parametry modelu? propozycja 1 widmowa gęstość mocy versus częstotliwość propozycja amplituda gęstości spektralnej versus częstotliwość
amplituda amplituda gęstości spectrum spektralnej gęstości spectrum spektralnej 3 1 15 1.5.1.15..5.3.35.4.45.5 frequency, cycles per day 5 Wielkość przepływu w rzece Neuse częstotliwość, cykli na dzień 6. dni 18.6 dni wszystko co interesujące blisko początku, wobec tego lepiej rysować okres, T=1/f 365. dni 1 3 4 5 6 7 8 9 1 period, days okres, dni Dlaczego wolimy postać zespoloną szeregu Fouriera? Jedna funkcja, exp(),jest lepsza niż dwie, cos() & sin() Działania algebraiczne na exp() są prostsze niż na cos() & sin(), e.g. exp(a) / exp(b) = exp( a b) co znacznie upraszcza wzory. Tradycja i opinia większości bo każdy używa postaci zespolonej! NAJWAŻNIEJSZE - MatLab używa postaci zespolonej!!!.