gitmyhub

dspfirst

MATLAB ★ 52 updated 25d ago

DSP demos from dspfirst.gatech.edu ported to Python

Python rewrites of 13 interactive MATLAB signal processing demos from the DSP First course, using free open-source libraries so students can run them without a MATLAB license.

PythonPyQt6NumPySciPyMatplotlibsetup: easycomplexity 2/5

This repository takes interactive demo programs from a Georgia Tech digital signal processing course and rewrites them in Python. The originals ran in MATLAB, a paid technical computing environment common in engineering and science. The Python versions use free, open-source libraries: PyQt6 for graphical windows and controls, plus numpy, scipy, and matplotlib for the math and charts. Installing those four packages is the only setup required before running any of the demos.

The demos map to topics covered in the "DSP First" textbook series, written by three professors: James McClellan, Ronald Schafer, and Mark Yoder. That series spans three books published between 1998 and 2016. The concepts covered include sinusoidal waveforms, Fourier series, z-transforms, digital and analog filters, convolution, pole-zero plots, spectrograms, and continuous-to-discrete sampling. There are thirteen demos in total, each a standalone Python script you run from the command line. Each one opens an interactive graphical window.

The README shows side-by-side screenshots of the original MATLAB output and the new Python output for every demo, making it easy to compare how closely the ports match the source. The repository was built using Claude Code to help with the conversion work.

This project is mainly useful for students or instructors who want to follow DSP course material without a MATLAB license. The Python tools it depends on are free and widely available. The README does not explain the underlying math or signal processing concepts; it assumes the reader is working through the textbook alongside the demos.

Where it fits