Educational Matlab GUIs

On this page are Graphical User Interfaces developed by the members of the Center for Signal and Information Processing (CSIP), a part of the School of Electrical and Computer Engineering at the Georgia Institute of Technology.

Individual GUIs can be downloaded from the links to ZIP files given below, or

All of the GUIs are contained in the DSP/SP First toolbox (see installation instructions).

• For MATLAB 9.3 (R2017b) and earlier versions:     (Feb-15, 2018)
• For Octave open-source version the spfirst library has been updated by Joshua Milas from Rochester Institute of Technology.

Most of these GUIs appear in the textbook DSP First (2nd edition), and also in the textbook Signal Processing First,
published by Pearson Education / A Pearson Education Company / Upper Saddle River, New Jersey 07458

##### Complex Spin Demo
 The Complex Spin Demo is a program that illustrates phasors spinning in the complex plane and the resulting real and imaginary parts of the signal, together with the corresponding spectral lines. MATLAB Command Name:   `cspin` Download:   (Version 1.48) Requirements:   Matlab R2016a or greater Tested on:   UNIX, Windows and Macintosh Last update:   07-Dec-2016

##### Spectrogram Demo
 The Spectrogram Demo is a program that illustrates the spectrogram of a linear chirp, sum of sinusoids, or user recorded audio signal. MATLAB Command Name:   `specgramdemo` Download:   (Version 2.82) Requirements:   Matlab R2016a or greater Tested on:   UNIX, Windows and Macintosh Last update:   23-Jul-2017

##### Filter Design Demo
 The Filter Design Demo is a program that designs simple FIR and IIR digital filters, along with tutorial visualizations of the filter design process. Features: Parks-McClellan FIR Design showing the iterations of the Remez Exchange method FIR Design with many different window types IIR Design of Butterworth filters Numerous plot options: magnitude/phase response, pole-zero diagram, and impulse response MATLAB Command Name:   `filterdesign` Download:   (Version 2.85) Requirements:   Matlab 7.2 or greater Tested on:   UNIX, Windows and Macintosh Last update:   17-Apr-2017

##### PEZ Demo
 PEZdemo allows the user to select the poles and zeros of a system and then change those poles and zero dynamically. The z-plane, Fourier domain and time-domain are all updated simultaneously. MATLAB Command Name:   `pezdemo` Download:   (Version 2.9) Requirements:   Matlab 6.0 or greater Tested on:   Windows Last update:   30-Mar-2016

##### FourierSeries
 FourierSeriesDemo is a GUI that shows Fourier Series synthesis for different number of Fourier coefficients. Different signals can be selected: square wave, sawtooth, triangle and rectified sinusoids. MATLAB Command Name:   `fseriesdemo` Download:   (Version 1.44) Requirements:   Matlab 6 or greater Tested on:   Windows, Linux Last update:   30-Mar-2016

##### PhasorRaces
 PhasorRaces began as a speed drill for testing complex addition. Now it includes many other related operations that can be tested in a "drill" scenario: adding sinusoids, z-transforms, etc. A timer starts as soon as the problem is posed, so that a student can try to solve questions quickly and accurately. MATLAB Command Name:   `phrace` Download:   (Version 1.16) Requirements:   Matlab 6 or greater Tested on:   Windows Last update:   30-Mar-2016

##### SinDrill
 SinDrill is a program that tests the users ability to determine basic parameters of a sinusoid. After a plot of a sinusoid is displayed, the user must correctly guess its amplitude, frequency, and phase. MATLAB Command Name:   `sindrill` Download:   (Version 2.14) Requirements:   Matlab 6 or greater Tested on:   UNIX, Windows and Macintosh Last update:   15-Feb-18

ZDrill
 ZDrill is a program that tests the users ability to calculate the result of simple operations on complex numbers. The program emphasizes the vectorial view of a complex number. The following six operations are supported: Add Subtract Multiply Divide Inverse Conjugate MATLAB Command Name:   `zdrill` Download:   (Version 2.14) Requirements:   Matlab 6 or greater Tested on:   UNIX, Windows and Macintosh Last update:   15-Feb-2018

##### CLTI Demo
 CLTI Demo is a program that illustrates the relationship between the input and output of a continuous-time linear time-invariant (LTI) filter when the input is a sinusoidal signal. The user is allowed to control the parameters of both the input sinusoid and the analog LTI filter. MATLAB Command Name:   `cltidemo` Download:   (Version 2.6) Requirements:   Matlab 6 or greater Tested on:   UNIX, Windows and Macintosh Last update:   15-Feb-2018

##### DLTI Demo
 DLTI Demo is a program that illustrates the relationship between the input and output of a discrete-time linear time-invariant (LTI) filter when the input is a sinusoidal signal. The user is allowed to control the parameters of both the input sinusoid and the digital filter. MATLAB Command Name:   `dltidemo` Download:   (Version 2.77) Requirements:   Matlab 6 or greater Tested on:   UNIX, Windows and Macintosh Last update:   15-Feb-2018

##### Continuous-Discrete Sampling Demo
 The Continuous-Discrete Sampling Demo is a program that shows the continuous and discrete spectra (and signals) during sampling. Features: Users can change the input frequency and sampling rate. Frequency axis can be labeled in hertz or radians/sec. Reconstruction through D/A is also shown. MATLAB Command Name:   `con2dis` Download:   (Version 2.31) Requirements:   Matlab 6 or greater (not yet tested on Macintosh) Tested on:   UNIX, Windows Last update:   15-Feb-2018

##### Discrete Convolution Demo
 The Discrete Convolution Demo is a program that helps visualize the process of discrete-time convolution. Features: Users can choose from a variety of different signals. Signals can be dragged around with the mouse with results displayed in real-time. Tutorial mode lets students hide convolution result until requested. Various plot options enable the tool to be effectively used as a lecture aid in a classroom environment. MATLAB Command Name:   `dconvdemo` Download:   (Version 3.18) Requirements:   Matlab 6 or greater Tested on:   UNIX, Windows and Macintosh Last update:   7-Mar-2017

##### Continuous Convolution Demo
 The Continuous Convolution Demo is a program that helps visualize the process of continuous-time convolution. Features: Users can choose from a variety of different signals. Signals can be dragged around with the mouse with results displayed in real-time. Tutorial mode lets students hide convolution result until requested. Various plot options enable the tool to be effectively used as a lecture aid in a classroom environment. MATLAB Command Name:   `cconvdemo` Download:   (Version 2.18) Requirements:   Matlab 6 or greater Tested on:   UNIX, Windows and Macintosh Last update:   30-Oct-2017