FFT–Algorithmus (fast fourier transform, Gauß 1805, Cooley

Werbung
FFT–Algorithmus (fast fourier transform, Gauß 1805, Cooley-Tukey 1965)
Reeller Input yk k=0...7: 8 Funktionswerte
an den äquidistanten Stützstellen xk= k·2/8
(2-periodisch angenommen).
Beachte Reihenfolge der yk!
3
f ( x)  c0   (an cos(nx)  bn sin(nx))  c4 cos(4 x)
n 1
f ( xk )  yk
" f interpoliert ( xk , yk )"
Prof. Dr. Müller-Horsche
FH Augsburg
Ingenieurmathematik
Komplexer Output „Spektralwerte“ cn n=0...4:
Diese können wie angegeben in reelle a- und b-Werte
umgerechnet werden, mit denen dann die „trigonometrische
Interpolation“ der Funktionswerte (xk,yk) gelingt (s. Formel)
butterfly
y0
8·c0 immer reell, Mittelwert oder
„Gleichspannungsanteil“
y4
8·c1 a1 = 2·Re(c1) b1 = -2·Im(c1)
Grundwelle
y2
8·c2 a2 = 2·Re(c2) b2 = -2·Im(c2)
1. Oberwelle
y6
8·c3 a3 = 2·Re(c3) b3 = -2·Im(c3)
2. Oberwelle
y1
8·c4 immer reell
Oberwellenrest
y5
1 j
2
Zahl
Zahl
Zahl
Zahl
y3
y7
Erläuterung:
1  j
2
wird weitergeleitet
wird mit –1 multipliziert und weitergeleitet
wird mit j multipliziert und weitergeleitet
wird mit –j multipliziert und weitergeleitet
mit Inhalt des Rechtecks multiplizieren und
weiterleiten
alle von links in einen Kreis eingehenden Zahlen
werden addiert und ergeben den neuen Kreisinhalt
6
6
Prof. Dr. Müller-Horsche
FH Augsburg
Ingenieurmathematik
y6
y5
4
y
D( t )
0
y4
y7
y3
2
FFT–Algorithmus (Beispiel: Sägezahn)
y2
0 y0
0
y1
0.5
0
1
1.5
2
x t

 
2.5
3
3.5
4
x/3.998
y0
0
4
12
y4
4
-4
-4 + 4j
y2
2
y6
6
8
-4
8·c0 c0 = 3
24
4  2 2
 j 4 2 2

-4

1 
 8·c1 a1 =  1  2  = b1


8·c2 a2 = -1 b2 = 0
-4
4  2 2
 j 4  2 2

-4 - 4j
c0
 8·c a = 1  1 = -b
3
3
3
2
y1
y5
1
5
6
-4
12
-4
8·c4 c4 = 0
0
1 j
6
2
3
6
f ( t)
0
Fourier
Reihe
3
3
a1
-1,707 -1,621
b1
-1,707 -1,621
a2
-1
-0,811
b2
0
0
a3
-0,293 -0,180
b3
0,293
0,180
a4
0
0
b4
-
0
trigonometrische
Interpolation
4
y
y5
6
FFT
2
3
y7
3
0
-4
1  j
2
0
0
0
0
0.5
1
1.5
2
x t

 
2.5
3
3.5
4
x/3.998
Herunterladen