Skip to main content
Version: Next

Prerequisite Theory

:::info Prerequisites

This section assumes familiarity with the below:

  • Complex numbers (including Euler’s formula)
  • Basic trigonometry and calculus
  • Introductory concepts in signals
  • Systems such as periodicity and sampling

No advanced math beyond these basics is required, but some intuition for time and frequency domains will be helpful.

:::

The list of prerequisites and helpful resources can be found below.

Quick study path (suggested)

TopicSuggested Time on Topic (in hours)
Pythagorean theorem1
Complex numbers & trigonometry4-8
Basic calculus (integrals / limits)4-8
Linear Algebra (vectors, basis)4-8
Signals & sampling (Nyquist, aliasing)6-10
Practical DFT/FFT & coding (NumPy/Scipy)4-8

Total: = 23-43 hours

Helpful resources

Quick Recap — Pythagorean Theorem

  • NASA — Pythagorean Theorem

Foundations — Complex numbers & trigonometry

Basic calculus / prerequisite math

  • Khan Academy — Single variable calculus (integrals & limits)

  • Paul’s Online Math Notes — Calculus I / II

Linear algebra (optional but helpful)

  • Gilbert Strang’s MIT OCW lectures / bookIntroduction to Linear Algebra

  • 3Blue1Brown — Essence of linear algebra (playlist)

Signals & systems / sampling theory

DFT / FFT practicals and coding

  • NumPy / SciPy docs — numpy.fft and scipy.fft

    • Practical examples for computing FFTs, fftshift, real-input symmetry, and inverse transforms.
    • NumPy
    • SciPy
  • Richard Lyons — Understanding Digital Signal Processing (book)

  • Small hands-on project:
    • Load a simple 1-D signal (sine + noise), compute np.fft.fft, plot magnitude/phase, then ifft to verify reconstruction.
    • Try zero-padding and fftshift to see visualization effects.

Visual / interactive tools

  • Desmos or GeoGebra — quickly plot complex exponentials, sines/cosines, and see effects of phase/amplitude changes.
  • Online FFT visualizers — interactively play with windowing, zero-padding and see spectral leakage (search for “FFT visualizer” or “spectral leakage demo”).