Title: Numerical Methods Fast Fourier Transform Part: Theoretical Development of Fast Fourier Transform http://numericalmethods.eng.usf.edu
1Numerical MethodsFast Fourier Transform
Part Theoretical Development of Fast Fourier
Transformhttp//numericalmethods.eng.usf.edu
2- For more details on this topic
- Go to http//numericalmethods.eng.usf.edu
- Click on Keyword
- Click on Fast Fourier Transform
3You are free
- to Share to copy, distribute, display and
perform the work - to Remix to make derivative works
4Under the following conditions
- Attribution You must attribute the work in the
manner specified by the author or licensor (but
not in any way that suggests that they endorse
you or your use of the work). - Noncommercial You may not use this work for
commercial purposes. - Share Alike If you alter, transform, or build
upon this work, you may distribute the resulting
work only under the same or similar license to
this one.
5Chapter 11.06 Theoretical Development of Fast
Fourier Transform
Lecture 16
Major All Engineering Majors Authors Duc
Nguyen http//numericalmethods.eng.usf.edu Numeri
cal Methods for STEM undergraduates
http//numericalmethods.eng.usf.edu
10/26/2020
5
6Theoretical Development of FFT
Recall Equation (5) from Chapter 11.05 Informal
Development of FFT,
(11.65)
where
(1)
Consider the case . In
this case, we can express and as 2-bit
binary numbers
10/26/2020
6
(2)
7Theoretical Development cont.
Eqs. (1) and (2) can also be expressed in
compact forms, as following
(3)
(4)
where
In the new notations, Eq.(11.65) becomes
(5)
10/26/2020
7
8Theoretical Development cont.
Consider
9Theoretical Development cont.
Notice that
Hence Eq. (5) can be simplified to
(7)
10/26/2020
9
10Theoretical Development cont.
Define
(8)
Eq. (8) can be modified to
(9)
11Theoretical Development cont.
Hence
(10)
In matrix notation, Eq.(10) can be written as
(11)
10/26/2020
11
12Theoretical Development cont.
It can be seen that Eq. (11) plays the same role
as Eq. (10) from the Informal Development ppt.
Now we can define
(12)
(13)
10/26/2020
12
13Theoretical Development cont.
Hence
(14)
Now we have
(15)
14Theoretical Development cont.
It can be seen that Eq. (15) plays the same role
as Eq. (12) from the Informal Development ppt.
Also, comparing Eq. (5) and Eq. (13), one gets
(16)
10/26/2020
14
15The End
- http//numericalmethods.eng.usf.edu
16Acknowledgement
- This instructional power point brought to you by
- Numerical Methods for STEM undergraduate
- http//numericalmethods.eng.usf.edu
- Committed to bringing numerical methods to the
undergraduate
17- For instructional videos on other topics, go to
- http//numericalmethods.eng.usf.edu/videos/
- This material is based upon work supported by the
National Science Foundation under Grant
0717624. Any opinions, findings, and conclusions
or recommendations expressed in this material are
those of the author(s) and do not necessarily
reflect the views of the National Science
Foundation.
18The End - Really
19Numerical MethodsFast Fourier Transform
Part Theoretical Development of FFT
http//numericalmethods.eng.usf.edu
20- For more details on this topic
- Go to http//numericalmethods.eng.usf.edu
- Click on Keyword
- Click on Fast Fourier Transform
21You are free
- to Share to copy, distribute, display and
perform the work - to Remix to make derivative works
22Under the following conditions
- Attribution You must attribute the work in the
manner specified by the author or licensor (but
not in any way that suggests that they endorse
you or your use of the work). - Noncommercial You may not use this work for
commercial purposes. - Share Alike If you alter, transform, or build
upon this work, you may distribute the resulting
work only under the same or similar license to
this one.
23Chapter 11.06 Theoretical Development (Contd.)
Lecture 17
The set of Eqs. (8), (12), and (16) represents
the original Cooley-Turkey 14 formulation of
the FFT.
(17)
(18)
where
10/26/2020
23
24Theoretical Development cont.
In the new notations, Eq. (5) from the Informal
Development ppt becomes
(19)
Consider
(20)
10/26/2020
24
25Theoretical Development cont.
Due to the definitions of (shown in Eq. (4)
of Informal Development), each of the 3 terms
inside the square bracket is equal to 1. Thus,
Eq. (19) can be simplified to
(21)
Define
(22)
(23)
(24)
10/26/2020
25
26Theoretical Development cont.
Hence
(25)
Remarks about Eq. (22)
(22a)
companion nodes
(22b)
10/26/2020
26
27Theoretical Development cont.
skip computation
2810/26/2020
28
29The End
- http//numericalmethods.eng.usf.edu
30Acknowledgement
- This instructional power point brought to you by
- Numerical Methods for STEM undergraduate
- http//numericalmethods.eng.usf.edu
- Committed to bringing numerical methods to the
undergraduate
31- For instructional videos on other topics, go to
- http//numericalmethods.eng.usf.edu/videos/
- This material is based upon work supported by the
National Science Foundation under Grant
0717624. Any opinions, findings, and conclusions
or recommendations expressed in this material are
those of the author(s) and do not necessarily
reflect the views of the National Science
Foundation.
32The End - Really
33Numerical MethodsFast Fourier Transform
Part Theoretical Development of
FFThttp//numericalmethods.eng.usf.edu
34- For more details on this topic
- Go to http//numericalmethods.eng.usf.edu
- Click on Keyword
- Click on Fast Fourier Transform
35You are free
- to Share to copy, distribute, display and
perform the work - to Remix to make derivative works
36Under the following conditions
- Attribution You must attribute the work in the
manner specified by the author or licensor (but
not in any way that suggests that they endorse
you or your use of the work). - Noncommercial You may not use this work for
commercial purposes. - Share Alike If you alter, transform, or build
upon this work, you may distribute the resulting
work only under the same or similar license to
this one.
37Chapter 11.06 General Case of FFT (Contd.)
Lecture 18
Consider the case where
(26)
(27)
Eq. (5) from Informal Development ppt becomes
(28)
where
(29)
10/26/2020
37
38General Case of FFT cont.
The first term of the Eq. (29) can be computed as
Since
Hence all terms inside the brackets are equal to
1. Thus,
(30)
10/26/2020
38
39General Case of FFT cont.
Similarly, the second term of Eq. (29) can be
computed as
(31)
(32)
Eq. (28) will eventually become
(33)
10/26/2020
39
40General Case of FFT cont.
Let
(34)
(35)
. .
(36)
(37)
10/26/2020
40
41The End
- http//numericalmethods.eng.usf.edu
42Acknowledgement
- This instructional power point brought to you by
- Numerical Methods for STEM undergraduate
- http//numericalmethods.eng.usf.edu
- Committed to bringing numerical methods to the
undergraduate
43- For instructional videos on other topics, go to
- http//numericalmethods.eng.usf.edu/videos/
- This material is based upon work supported by the
National Science Foundation under Grant
0717624. Any opinions, findings, and conclusions
or recommendations expressed in this material are
those of the author(s) and do not necessarily
reflect the views of the National Science
Foundation.
44The End - Really
45Numerical MethodsFast Fourier Transform
Part Theoretical Development of FFT
http//numericalmethods.eng.usf.edu
46- For more details on this topic
- Go to http//numericalmethods.eng.usf.edu
- Click on Keyword
- Click on Fast Fourier Transform
47You are free
- to Share to copy, distribute, display and
perform the work - to Remix to make derivative works
48Under the following conditions
- Attribution You must attribute the work in the
manner specified by the author or licensor (but
not in any way that suggests that they endorse
you or your use of the work). - Noncommercial You may not use this work for
commercial purposes. - Share Alike If you alter, transform, or build
upon this work, you may distribute the resulting
work only under the same or similar license to
this one.
49Chapter 11.06 FFT Algorithms (Contd.)
Lecture 19
Lets first define
(38)
(39)
where
(40)
(41)
(42)
(43)
10/26/2020
49
50FFT Algorithms cont.
Remarks
Using the above notations, Equation (5) from
Informal Development ppt can be expressed as
(44)
10/26/2020
50
51FFT Algorithms cont.
Consider
(45)
(46)
Due to the fact that
(47)
Substituting Eq. (46) into (44), one gets
(48)
10/26/2020
51
52General Case of FFT cont.
Define
(49)
(50)
Hence
(51)
53FFT Algorithms cont.
(52)
(53)
Expanding Eq. (52), one obtains
(52a)
10/26/2020
54General Case of FFT cont.
Similarly, expanding Eq. (53), one gets
(53a)
54
55FFT Algorithms cont.
For a typical term corresponding to
, Eq. (52a) gives
(52b)
(52c)
(53b)
10/26/2020
55
56General Case of FFT cont.
is presented in Figure 2.
57Partial/Incomplete Graph of FFT
10/26/2020
57
58The End
- http//numericalmethods.eng.usf.edu
59Acknowledgement
- This instructional power point brought to you by
- Numerical Methods for STEM undergraduate
- http//numericalmethods.eng.usf.edu
- Committed to bringing numerical methods to the
undergraduate
60- For instructional videos on other topics, go to
- http//numericalmethods.eng.usf.edu/videos/
- This material is based upon work supported by the
National Science Foundation under Grant
0717624. Any opinions, findings, and conclusions
or recommendations expressed in this material are
those of the author(s) and do not necessarily
reflect the views of the National Science
Foundation.
61The End - Really
62Numerical MethodsFast Fourier Transform
Part Theoretical Development of FFT
http//numericalmethods.eng.usf.edu
63- For more details on this topic
- Go to http//numericalmethods.eng.usf.edu
- Click on Keyword
- Click on Fast Fourier Transform
64You are free
- to Share to copy, distribute, display and
perform the work - to Remix to make derivative works
65Under the following conditions
- Attribution You must attribute the work in the
manner specified by the author or licensor (but
not in any way that suggests that they endorse
you or your use of the work). - Noncommercial You may not use this work for
commercial purposes. - Share Alike If you alter, transform, or build
upon this work, you may distribute the resulting
work only under the same or similar license to
this one.
66Chapter 11.06 FFT Algorithms (Contd.)
Lecture 20
In this case, utilizing Eqs. (40-43) into Eqs.
(38) and (39), one obtains
(54)
(55)
where
(56)
(57)
(58)
(59)
10/26/2020
66
67FFT Algorithms cont.
Then, Eq. (5) from Informal Development ppt
becomes
(60)
Consider
(61)
Substituting Eq. (61) into Eq. (60), one obtains
(62)
10/26/2020
67
68FFT Algorithms cont.
Define
(63)
(64)
Hence
(65)
Expanding (the summation) of Eqs. (63) and (64),
one gets
(66)
10/26/2020
68
69FFT Algorithms cont.
Assuming , and then the previous
equation becomes
(67)
Similarly, one has
(68)
(69)
10/26/2020
69
70FFT Algorithms cont.
10/26/2020
70
71FFT Algorithms cont.
10/26/2020
71
72The End
- http//numericalmethods.eng.usf.edu
73Acknowledgement
- This instructional power point brought to you by
- Numerical Methods for STEM undergraduate
- http//numericalmethods.eng.usf.edu
- Committed to bringing numerical methods to the
undergraduate
74- For instructional videos on other topics, go to
- http//numericalmethods.eng.usf.edu/videos/
- This material is based upon work supported by the
National Science Foundation under Grant
0717624. Any opinions, findings, and conclusions
or recommendations expressed in this material are
those of the author(s) and do not necessarily
reflect the views of the National Science
Foundation.
75The End - Really
76Numerical MethodsFast Fourier Transform
Part Theoretical Development of FFT
http//numericalmethods.eng.usf.edu
77- For more details on this topic
- Go to http//numericalmethods.eng.usf.edu
- Click on Keyword
- Click on Fast Fourier Transform
78You are free
- to Share to copy, distribute, display and
perform the work - to Remix to make derivative works
79Under the following conditions
- Attribution You must attribute the work in the
manner specified by the author or licensor (but
not in any way that suggests that they endorse
you or your use of the work). - Noncommercial You may not use this work for
commercial purposes. - Share Alike If you alter, transform, or build
upon this work, you may distribute the resulting
work only under the same or similar license to
this one.
80Chapter 11.06 General FFT Algorithms (Contd.)
Lecture 21
For the more general case, such as
(70)
10/26/2020
80
81General FFT Algorithms
Define (should refer/compare to Eqs. 38-39)
(71)
(72)
With (should refer to Eqs. 40-43)
(73)
(74)
82General FFT Algorithms cont.
(75)
Hence, Eqs. (71) to (74) will be simplified to
(76)
(77)
10/26/2020
82
83General FFT Algorithms cont.
(78)
(79)
84General FFT Algorithms cont.
Eq. (5) from Informal Development ppt can be
expressed as
(80)
where
(81)
(82)
(83)
84
10/26/2020
85General FFT Algorithms cont.
where
(84)
(85)
since
10/26/2020
85
86General FFT Algorithms cont.
and with
(86)
(87)
(88)
10/26/2020
86
87General FFT Algorithms cont.
Substituting Eqs. (85), (87), and (88) into Eq.
(83), and using Eq. (81), then Eq. (80) will
become
(89)
88General FFT Algorithms cont.
Define
(90)
(91)
(92)
Then
(93)
10/26/2020
88
89General FFT Algorithms cont.
(Connections between
and
FFT Algorithms)
10/26/2020
89
90General FFT Algorithms cont.
(94)
(95)
(96)
In fact, Eqs. (94) to (96) are identical to the
earlier derived Eqs.(22) to (24).
91The End
- http//numericalmethods.eng.usf.edu
92Acknowledgement
- This instructional power point brought to you by
- Numerical Methods for STEM undergraduate
- http//numericalmethods.eng.usf.edu
- Committed to bringing numerical methods to the
undergraduate
93- For instructional videos on other topics, go to
- http//numericalmethods.eng.usf.edu/videos/
- This material is based upon work supported by the
National Science Foundation under Grant
0717624. Any opinions, findings, and conclusions
or recommendations expressed in this material are
those of the author(s) and do not necessarily
reflect the views of the National Science
Foundation.
94The End - Really
95Numerical MethodsFast Fourier Transform
Part Twiddle Factor FFT Algorithmshttp//numer
icalmethods.eng.usf.edu
96- For more details on this topic
- Go to http//numericalmethods.eng.usf.edu
- Click on Keyword
- Click on Fast Fourier Transform
97You are free
- to Share to copy, distribute, display and
perform the work - to Remix to make derivative works
98Under the following conditions
- Attribution You must attribute the work in the
manner specified by the author or licensor (but
not in any way that suggests that they endorse
you or your use of the work). - Noncommercial You may not use this work for
commercial purposes. - Share Alike If you alter, transform, or build
upon this work, you may distribute the resulting
work only under the same or similar license to
this one.
99Chapter 11.06 Twiddle Factor FFT Algorithms
(Contd.)
Lecture 22
10/26/2020
99
100Twiddle Factor FFT Algorithms
Eq. (48)
can be re-written as
(97)
101Twiddle Factor FFT Algorithms cont.
(98)
(99)
(100)
101
10/26/2020
102Twiddle Factor FFT Algorithms cont.
Remarks
a) Consider the following term in Eq. (98)
(101)
10/26/2020
102
103Twiddle Factor FFT Algorithms cont.
10/26/2020
103
104Twiddle Factor FFT Algorithms cont.
10/26/2020
104
105Table 11.1a Fourier Coefficient Program (in
FORTRAN)
(a) Input Descriptions
.Period say, nterms say, 8 (number of
terms used, for computing
. nsegments 3 (number of segments, to define
the given periodic function)
. integration limits for all 3 segments
function
for the 1st segment
function
for the 2nd segment
function
for the 3rd segment
100
105
10/26/2020
106(b) Output Descriptions
The numerical values of the unknown Fourier
coefficients
are printed.
107 Fourier Coefficient Program (in MATLAB)
function f_coeff_final() clc clear close
all clear all inputdata coeff end
function inputdata() global n t1 ft1 ft11
t2 ft2 ft22 t3 ft3 ft33 t4 f4 nterms_ak n
100 nterms_ak 8
101
107
10/26/2020
108 Fourier Coefficient Program (in MATLAB)
seg 1 t1 -pi(pi/n)(-pi/2) ft1
-pi/2 ft11 (-pi/2. zeros(size(t1))) Seg
2 t2 (-pi/2)(pi/n)(pi/2) ft2 -t2 ft22
(-t2 zeros(size(t2))) Seg 3 t3
(pi/2)(pi/n)pi ft3 -pi/2 ft33 (-pi/2.
zeros(size(t3))) t4 t1 t2 t3 f4 ft11
ft22 ft33 end
109 Fourier Coefficient Program (in MATLAB)
function coeff() global t4 f4
nterms_ak t4_first t4(1) t4_last
t4(length(t4)) p_value ((t4_last -
t4_first)/2) period 2 pi angfreq 2 pi
/ period calculation of a0 a0 trapz(t4,f4)
/ (2pi) angfreq zeros(nterms_ak,1) for i
1nterms_ak angfreq(i) ipi/p_value end
102
109
10/26/2020
110 Fourier Coefficient Program (in MATLAB)
calculation of ak and bk a
zeros(nterms_ak,1) b zeros(nterms_ak,1) for
i 1nterms_ak theta
ipi.t4./p_value c_value cos(theta)
s_value sin(theta) a_value
c_value.f4 b_value s_value.f4
a(i) (trapz(t4,a_value))/p_value
b(i) (trapz(t4,b_value))/p_value end a
b
103
110
10/26/2020
111 Fourier Coefficient Program (in MATLAB)
f_ft (a0)ones(size(t4)) for i
1nterms_ak f_ft f_ft
(a(i).cos(ipi.t4./p_value))
(b(i).sin(ipi.t4./p_value)) end
figure plot(t4,f4) hold on
plot(t4,f_ft,'-.') grid on xlabel('t')
ylabel('f(t)') legend('f(t)', 'Fourier
series') end
104
111
10/26/2020
112 Fourier Coefficient Program (in MATLAB)
f_ft (a0)ones(size(t4)) for i
1nterms_ak f_ft f_ft
(a(i).cos(ipi.t4./p_value))
(b(i).sin(ipi.t4./p_value)) end
113 Fourier Coefficient Program (in MATLAB)
figure plot(t4,f4) hold on
plot(t4,f_ft,'-.') grid on xlabel('t')
ylabel('f(t)') legend('f(t)', 'Fourier
series') end
105
113
10/26/2020
114The End
- http//numericalmethods.eng.usf.edu
115Acknowledgement
- This instructional power point brought to you by
- Numerical Methods for STEM undergraduate
- http//numericalmethods.eng.usf.edu
- Committed to bringing numerical methods to the
undergraduate
116- For instructional videos on other topics, go to
- http//numericalmethods.eng.usf.edu/videos/
- This material is based upon work supported by the
National Science Foundation under Grant
0717624. Any opinions, findings, and conclusions
or recommendations expressed in this material are
those of the author(s) and do not necessarily
reflect the views of the National Science
Foundation.
117The End - Really