ReWiA 2.0 html manual
FFT szybka tranformacja Fouriera
Zapis FFT direction
Parametry
direction
typu Bool, wartość 1 oznacza FFT prostą, wartość 0 oznacza FFT odwrotną.
Komenda dokonuje zespolonej transformacji Fouriera. Współrzędne Real
powinny być w polu wskazywanym przez YPTR, współrzędne Imag w polu wskazywanym
przez ZPTR. Komenda nie przelicza dziedzin w osi X, traktuje punkty w widmie
jako równoodległe (współrzędne w osi są pozostawiane bez zmian). Komenda FFT
wymaga aby ilość punktów była potęgą liczby 2. Komenda PADZERO zwiększa ilość
punktów do najbliższej potęgi liczby 2. Jeżeli mamy w widmie tylko Y to należy
komendami APPEND i PTRS dodać pole ze współrzędnymi Imag. Prosta FFT w wyniku
pozostawia : punkt o numerze 0 - wartość stała, punkty 1 do połowy widma -
dodatnie harmoniczne, punkty od ostatniego punktu do połowy - ujemne
harmoniczne. Odwrotna FFT oczekuje takiego samego uporządkowania danych.
Komenda przydatna do filtrowania widm, obliczania widm mocy, periodogramów,
korelacji, itd. Algorytm jest adaptacją podanego w Numerical Recipes for C.
Sensowne jest wykonywanie FFT tylko dla typów pól 6 (REAL*4) i 7 (REAL*8).
Algorytm może liczyć się długo dla długich widm (opóźnia go przede wszystkim
pamięć wirtualna).
Przykłady
- obliczanie widma mocy :
APPEND cs:0 6
PTRS * * * * * * * 0 **
PADZERO
FFT 1
SET * * * sqrt(yi*yi+zi*zi)
DELETE cs:0
- filtrowanie widma (obcinanie harmonicznych powyżej 64) :
APPEND cs:0 6
PTRS * * * * * * * 0 **
PADZERO
FFT 1
SET * 64 last-64 0
SET cs:0 64 last-64 0
FFT 0
DELETE cs:0