Computing M Sample DFT by Hand

In summary, the M sample DFT of f(m) = cos(2*pi*(f*m)) for 0 <= m <= M-1, where M = 128 and f = 1/16, can be simplified using Euler's identity and a geometric series identity. The result is a function that depends on the values of f and M, and can be further simplified if f is a multiple of M.
  • #1
Number2Pencil
208
1

Homework Statement



Compute the M sample DFT of:

f(m) = cos(2*pi*(f*m)) for 0 <= m <= M-1

where M = 128, f = 1/16

This should be done by hand, and the solution will reduce to a very simple form.

Homework Equations





The Attempt at a Solution



I slaved through this problem and got an answer that seems to have the same shape and magnitude as the dft function in MATLAB, but it is not what I'd consider a "very simple form." Could you please check my work and see if there is any major simplifications I missed?

First, we look at the generic formula for the DFT:

[tex]
\tilde{x(k)} = \sum_{n=0}^{N-1} x(n) e^{\frac{-j 2 \pi k n}{N}}
[/tex]

where x(k) is the frequency values at normalized frequency k, x(n) is the input sample, and N is the number of samples taken. For this problem, this formula is:
[tex]
\tilde{f(k)} = \sum_{n=0}^{M-1} cos(2 \pi f_x n) e^{\frac{-j 2 \pi k n}{M}}
[/tex]


We can utilize Euler's identity:

[tex]
cos(x) = \frac {e^{jx}+e^{-jx}}{2}
[/tex]

[tex]
\tilde{f(k)} = \sum_{n=0}^{M-1} (\frac{e^{j2 \pi f_x n}+e^{-j 2 \pi f_x n}}{2}) e^{\frac{-j 2 \pi k n}{M}}
[/tex]

Distributing the outside exponential, separating into two summations:

[tex]
\tilde{f(k)}
= \sum_{n=0}^{M-1}

\frac
{e^{j 2 \pi f_x n}e^{-j 2 \pi k \frac{1}{M}n}}
{2}

+
= \sum_{n=0}^{M-1}
\frac
{e^{-j 2 \pi f_x n}e^{-j2 \pi k \frac{1}{M}n}}
{2}

[/tex]

Combine terms:

[tex]
\tilde{f(k)}
= \sum_{n=0}^{M-1}
\frac{1}{2}
e^{j 2 \pi n (f-\frac{1}{M}k)}
+
= \sum_{n=0}^{M-1}
\frac{1}{2}
e^{-j 2 \pi n (f+\frac{1}{M}k)}
[/tex]

The form of a geometric sum:

[tex]
\sum_{n=0}^{M-1} a^n = \frac{1-a^M}{1-a}
[/tex]

In this case:

[tex]
a = e^{j 2 \pi (f-\frac{1}{M}k)}
[/tex]

Resulting in:


[tex]
\tilde{f(k)} = \frac{1}{2}
\frac
{1 - e^{j2 \pi (f-\frac{1}{M}k)M}}
{1-e^{j2 \pi (f - \frac{1}{M}k)}}

+ \frac{1}{2}
\frac
{1-e^{-j 2 \pi (f+\frac{1}{M}k)M}}
{1-e^{-j 2 \pi (f+\frac{1}{M}k)}}
[/tex]

There is a specific identity to be used:

[tex]
\frac{1-e^{jaN}}{1-e^{ja}} = \frac{e^{\frac{ja(N-1)}{2}}sin(\frac{aN}{2})}{sin(\frac{a}{2})}
[/tex]

In our case:

[tex]
\tilde{x(k)} = \frac{1}{2}
\frac{
e^{\frac{[j2 \pi (f-\frac{1}{M}k)][M-1]}{2}}
sin(\frac{[2 \pi (f-\frac{1}{M}k)]M}{2})}
{
sin(\frac{2 \pi (f-\frac{1}{M}k)}{2})
} +

\frac{1}{2}
\frac{
e^{\frac{[-j2 \pi (f+\frac{1}{M}k)][M-1]}{2}}
sin(\frac{[-2 \pi (f+\frac{1}{M}k)]M}{2})}
{
sin(\frac{-2 \pi (f+\frac{1}{M}k)}{2})
}
[/tex]

Plugging in the original values:

[tex]
\tilde{f(x)} = \frac{1}{2}e^{127 j \pi (\frac{1}{16}-\frac{1}{128}k)}
\frac
{sin[128 \pi (\frac{1}{16} - \frac{1}{128}k)]}
{sin[\pi (\frac{1}{16} - \frac{1}{128}k)]}
+
\frac{1}{2}e^{-j 127 \pi (\frac{1}{16}+\frac{1}{128}k)}
\frac
{sin[128 \pi (\frac{1}{16}+\frac{1}{128}k)]}
{sin[\pi (\frac{1}{16}+\frac{1}{128}k]}
[/tex]
 
Physics news on Phys.org
  • #2
Return to the sum of the geometric series. Consider the case that [itex]f = \frac{\ell}{M}[/itex] where [itex]\ell[/itex] is an integer.
 

Related to Computing M Sample DFT by Hand

1. What is a DFT and why is it important in computing?

A DFT (Discrete Fourier Transform) is a mathematical algorithm used to convert a signal from its original domain (usually time or space) to a representation in the frequency domain. This is important in computing because it allows us to analyze and manipulate signals in the frequency domain, which can be more intuitive and useful for certain applications.

2. How do you compute a DFT by hand?

To compute a DFT by hand, you will need to follow a series of steps that involve multiplication, addition, and complex number operations. First, you will need to convert your signal into a series of complex numbers. Then, you will apply the DFT formula, which involves multiplying each complex number by a series of complex exponential functions and summing the results. Finally, you will need to convert the resulting complex numbers back into their original form in the frequency domain.

3. What are the benefits of computing a DFT by hand?

Computing a DFT by hand can be beneficial for understanding the underlying principles and operations involved in the transformation process. It can also be useful for small-scale or educational purposes, where using a computer may not be necessary or practical.

4. What are some common applications of DFT?

DFT has a wide range of applications in various fields such as signal processing, image processing, audio processing, data compression, and more. Some examples include analyzing and manipulating audio signals in music production, filtering and noise reduction in images, and data compression in telecommunications.

5. Are there any limitations to computing a DFT by hand?

Computing a DFT by hand can be time-consuming and prone to human error, especially for larger signals. It also requires a good understanding of complex numbers and mathematical operations, which may be challenging for some individuals. Therefore, for practical applications, it is often more efficient to use a computer to compute the DFT.

Similar threads

  • Calculus and Beyond Homework Help
Replies
3
Views
508
  • Calculus and Beyond Homework Help
Replies
1
Views
411
  • Calculus and Beyond Homework Help
Replies
1
Views
307
  • Calculus and Beyond Homework Help
Replies
1
Views
597
  • Calculus and Beyond Homework Help
Replies
16
Views
647
  • Calculus and Beyond Homework Help
Replies
1
Views
505
  • Calculus and Beyond Homework Help
Replies
5
Views
691
  • Calculus and Beyond Homework Help
Replies
2
Views
985
  • Calculus and Beyond Homework Help
Replies
7
Views
884
  • Calculus and Beyond Homework Help
Replies
9
Views
970
Back
Top