Calculating FFT for discrete values

I understand now that it is the periodicity of the function that makes the angles identical. I really appreciate your help!In summary, the conversation discusses a set of values and the question of calculating the FFT, Fourier spectrum, power spectrum, and phase spectrum. The expert provides a calculation for the Discrete Fourier Transform using the concept of symmetry to simplify the calculation for real-valued inputs. The expert also explains the periodicity of the function and how it results in identical angles.
  • #1
electronic engineer
145
3

Homework Statement


We have a set of values: f(n)=f(0,1,2)=(1,3,2)

so f(0)=1, f(1)=3, f(2)=2, where n=0,1,2the number of values N=3

The question is to calculate the FFT of this signal, the Fourier spectrum the power spectrum and phase spectrum.

I'm not sure concerning FFT. And also about the Fourier Spectrum what should I use to conduct it? the DFT or FFT?

Homework Equations


[/B]
The calculation of DFT for these values.

The Attempt at a Solution



I personally calculated the Discrete Fourier Transform in this way:

$$ F[n]=\sum_{k=0}^{N-1}f(k)e^{-j \frac{2\pi}{N}nk} $$

so I had a set of values: F(0),F(1),F(2)
 
Physics news on Phys.org
  • #2
For only 3 points, it seems unnecessary to try to do the FFT. However, the point of the FFT is to take advantage of symmetry.
F(1) = f(0) +f(1) e^{-j 2pi/N * 1 }+f(2) e^{-j 2pi/N * 2 }
F(2) = f(0) +f(1) e^{-j 2pi/N * 2 }+f(2) e^{-j 2pi/N * 4 }= f(0) +f(1) e^{-j 2pi/N * 2 }+f(2) e^{-j 2pi/N * 1 }
So whay you really have is (for real-valued inputs):
## F(0) = \pmatrix{ f(0), f(1), f(2) } \pmatrix{ 1\\1\\1} , ##
## F(1) = \pmatrix{ f(0), f(1), f(2) } \pmatrix{ 1\\ e^{-j 2\pi/N }\\ e^{ j 2\pi/N }}##
## F(2) = \pmatrix{ f(0), f(1), f(2) } \pmatrix{ 1\\ e^{j 2\pi/N }\\ e^{- j 2\pi/N }} = F(1) ^* ##
As I said, for 3 values, this is more a demonstration of the concept that F(N-k) = F(k)*, which should save you about 1 calculation by just replacing F(1) with its conjugate for F(2).
 
  • #3
RUber said:
For only 3 points, it seems unnecessary to try to do the FFT. However, the point of the FFT is to take advantage of symmetry.
F(1) = f(0) +f(1) e^{-j 2pi/N * 1 }+f(2) e^{-j 2pi/N * 2 }
F(2) = f(0) +f(1) e^{-j 2pi/N * 2 }+f(2) e^{-j 2pi/N * 4 }= f(0) +f(1) e^{-j 2pi/N * 2 }+f(2) e^{-j 2pi/N * 1 }
So whay you really have is (for real-valued inputs):
## F(0) = \pmatrix{ f(0), f(1), f(2) } \pmatrix{ 1\\1\\1} , ##
## F(1) = \pmatrix{ f(0), f(1), f(2) } \pmatrix{ 1\\ e^{-j 2\pi/N }\\ e^{ j 2\pi/N }}##
## F(2) = \pmatrix{ f(0), f(1), f(2) } \pmatrix{ 1\\ e^{j 2\pi/N }\\ e^{- j 2\pi/N }} = F(1) ^* ##
As I said, for 3 values, this is more a demonstration of the concept that F(N-k) = F(k)*, which should save you about 1 calculation by just replacing F(1) with its conjugate for F(2).

That is a very good and summarized answer. Thank you RUber :)
 
  • #4
But I still don't understand how e^(-j*2*pi/N *2)= e^(j*2*pi/N). Are these two angles identical??
 
  • #5
This is the symmetry of the function. ##e^{ix}## is 2pi periodic, so ##e^{ix}=e^{ix+i 2\pi}##
##e^{-j2\pi/N 2+j 2\pi}= e^{-j4\pi/3 +j6\pi/3}=e^{j*2*pi/N}.##
 
  • #6
RUber said:
This is the symmetry of the function. ##e^{ix}## is 2pi periodic, so ##e^{ix}=e^{ix+i 2\pi}##
##e^{-j2\pi/N 2+j 2\pi}= e^{-j4\pi/3 +j6\pi/3}=e^{j*2*pi/N}.##

OK, thank you again.
 

Related to Calculating FFT for discrete values

What is FFT and why is it used in calculating discrete values?

FFT stands for Fast Fourier Transform, and it is a mathematical algorithm used to convert time-domain data into frequency-domain data. It is commonly used in signal processing, data compression, and other scientific and engineering applications to analyze and manipulate data.

What are the steps involved in calculating FFT for discrete values?

The steps involved in calculating FFT for discrete values are as follows: 1) Take the discrete values and arrange them in a sequence, 2) Divide the sequence into even and odd numbered elements, 3) Calculate the FFT for each sub-sequence recursively, 4) Combine the results to get the final FFT for the entire sequence.

What is the time complexity of calculating FFT for discrete values?

The time complexity of calculating FFT for discrete values is O(n log n), where n is the number of discrete values. This means that the time taken to calculate the FFT increases proportionally to the logarithm of the number of discrete values, making it a very efficient algorithm for large datasets.

What are some common applications of FFT in scientific research?

FFT has a wide range of applications in scientific research, including digital signal processing, image processing, fluid dynamics, and quantum mechanics. It is also used in fields such as astronomy, geology, and biotechnology to analyze and interpret data.

Are there any limitations or drawbacks to using FFT for discrete values?

While FFT is a powerful and efficient algorithm, it does have some limitations. It requires the input data to be evenly spaced, and it is not suitable for non-periodic or non-stationary signals. Additionally, it can be sensitive to noise in the data, which can affect the accuracy of the results.

Similar threads

  • Electrical Engineering
Replies
4
Views
1K
  • General Math
Replies
12
Views
1K
  • Electrical Engineering
Replies
7
Views
772
  • MATLAB, Maple, Mathematica, LaTeX
Replies
8
Views
495
  • Precalculus Mathematics Homework Help
Replies
4
Views
890
Replies
26
Views
5K
  • Precalculus Mathematics Homework Help
Replies
3
Views
741
  • Engineering and Comp Sci Homework Help
Replies
1
Views
521
  • Precalculus Mathematics Homework Help
Replies
6
Views
966
  • Differential Equations
Replies
4
Views
2K
Back
Top