Filter Analysis
abs Magnitude
angle Phase angle freqs Laplace transform
requency response freqspace Frequency spacing for
frequency response.
freqz Z-transform frequency response
freqzplot Plot frequency response data
grpdelay Group delay
impz Discrete impulse
response unwrap Unwrap phase zplane Discrete pole-zero plot
Filter Implementation
filtfilt Zero-phase version of filter
filtic Determine filter initial conditions
latcfilt Lattice filter implemen-tation
upfirdn Up sample, FIR filter, down sample
FIR Filter Design
convmtx Convolution matrix cremez Complex and nonlinear
phase equiripple FIR filter design
fir1 Window based FIR
filter design - low, high, band, stop, multi
fir2 FIR arbitrary shape
filter design using the frequency sampling method
fircls Constrained Least Squares filter design – arbitrary response fircls1 Constrained Least
Squares FIR filter design – low and highpass firls Optimal least-squares
FIR filter design firrcos Raised cosine FIR
filter design intfilt Interpolation FIR
filter design
kaiserord Kaiser window design based filter order estimation
remez Optimal Chebyshev-norm FIR filter design remezord Remez design based
filter order estimation sgolay Savitzky-Golay FIR
smoothing filter design
IIR Digital Filter Design
butter Butterworth filter design cheby1 Chebyshev type I filter
design
cheby2 Chebyshev type II filter design
ellip Elliptic filter design maxflat Generalized Butterworth
lowpass filter design yulewalk Yule-Walker filter design
IIR Filter Order Estimation
buttord Butterworth filter order estimation
cheb1ord Chebyshev type I filter order estimation cheb2ord Chebyshev type II filter
order estimation ellipord Elliptic filter order
estimation
Analog Lowpass Filter Prototypes
besselap Bessel filter prototype buttap Butterworth filter
prototype
cheb1ap Chebyshev type I filter prototype (passband ripple)
cheb2ap Chebyshev type II filter prototype (stopband ripple)
ellipap Elliptic filter prototype
Analog Filter Design
besself Bessel analog filter design
butter Butterworth filter design cheby1 Chebyshev type I filter
design
cheby2 Chebyshev type II filter design
ellip Elliptic filter design
Analog Filter Transformation
lp2bp Lowpass to bandpass analog filter transformation lp2bs Lowpass to bandstop
analog filter transformation lp2hp Lowpass to highpass
analog filter transformation lp2lp Lowpass to lowpass
analog filter
analog to digital conversion
Linear System Transformations
latc2tf Lattice or lattice ladder to transfer function conversion
polystab Polynomial stabilization polyscale Scale roots of polynomial
residuez Z-transform partial frac-tion expansion
sos2ss Second-order sections to state-space conversion sos2tf Second-order sections to
transfer function con-version
sos2zp Second-order sections to zero-pole conversion ss2sos State-space to
second-order sections conversion
ss2tf State-space to transfer function conversion ss2zp State-space to zero-pole
conversion tf2latc Transfer function to
lattice or lattice ladder conversion
tf2sos Transfer function to second-order sections conversion
tf2ss Transfer function to state-space conversion tf2zp Transfer function to
zero-pole conversion zp2sos Zero-pole to
second-order sections conversion
zp2ss Zero-pole to state-space conversion
zp2tf Zero-pole to transfer function conversion triang Triangular window
Transforms
czt Chirp-z transform
dct Discrete cosine
transform dftmtx Discrete Fourier
transform matrix
fft Fast Fourier transform
fft2 2-D fast Fourier
transform fftshift Swap vector halves hilbert Discrete-time analytic
signal via Hilbert transform
idct Inverse discrete cosine transform
ifft Inverse fast Fourier transform
ifft2 Inverse 2-D fast Fourier transform
Cepstral Analysis
cceps Complex cepstrum icceps Inverse complex
cepstrum rceps Real cepstrum and
minimum phase reconstruction
Statistical Signal Processing and Spectral Analysis
cohere Coherence function estimate
corrcoef Correlation coefficients corrmtx Autocorrelation matrix
cov Covariance matrix
csd Cross spectral density
pburg Power spectral density estimate via Burg's method
pcov Power spectral density estimate via the covari-ance method
peig Power spectral density estimate via the eigen-vector method periodogram Power spectral density
estimate via the periodogram method pmcov Power spectral density
estimate via the modified covariance method
pmtm Power spectral density estimate via the Thomson multitaper method
pmusic Power spectral density estimate via the MUSIC method
pwelch Power spectral density estimate via Welch's method
pyulear Power spectral density estimate via the Yule-Walker AR Method rooteig Sinusoid frequency and
power estimation via the eigenvector algorithm rootmusic Sinusoid frequency and
power estimation via the MUSIC algorithm
tfe Transfer function
estimate
arburg AR parametric modeling via Burg's method arcov AR parametric modeling
via covariance method armcov AR parametric modeling
via modified covariance method
aryule AR parametric modeling via the Yule-Walker method
invfreqs Analog filter fit to frequency response invfreqz Discrete filter fit to frequency response prony Prony's discrete filter
fit to time response stmcb Steiglitz-McBride
iteration for ARMA modeling
ac2rc Autocorrelation is2rc Inverse sine parameters
to reflection coefficients conversion
lar2rc Log area ratios to reflec-tion coefficients conversion levinson Levinson-Durbin
recursion
lpc Linear predictive
coefficients using auto-correlation method lsf2poly Line spectral frequencies
to prediction
to line spectral frequen-cies conversion poly2rc Prediction polynomial
to reflection coefficients conversion
rc2ac Reflection coefficients to autocorrelation sequence conversion rc2is Reflection coefficients to
inverse sine parameters conversion
rc2lar Reflection coefficients to log area ratios conversion
rc2poly Reflection coefficients to prediction polynomial conversion
rlevinson Reverse Levinson-Durbin recursion schurrc Schur algorithm
decimate Resample data at a lower sample rate
interp Resample data at a higher sample rate interp1 General 1-D
interpolation. (MATLAB Toolbox)
resample Resample sequence with new sampling rate spline Cubic spline
interpolation upfirdn Up sample, FIR filter,
down sample Waveform Generation
chirp Swept-frequency cosine generator
diric Dirichlet (periodic sinc) function
gauspuls Gaussian RF pulse generator
gmonopuls Gaussian monopulse generator
pulstran Pulse train generator rectpuls Sampled aperiodic
rectangle generator sawtooth Sawtooth function sinc Sinc or sin(pi*x)/(pi*x)
function
square Square wave function tripuls Sampled aperiodic
triangle generator
vco Voltage controlled
oscillator
Specialized Operations
buffer Buffer a signal vector into a matrix of data frames
cell2sos Convert cell array to second-order-section matrix
cplxpair Order vector into complex conjugate pairs demod Demodulation for
communications simulation
(Slepian sequences) eqtflength Equalize the length of a discrete-time transfer function modulate Modulation for
communications simulation
seqperiod Find minimum-length repeating sequence in a vector
sos2cell Convert second-order-section matrix to cell array
specgram Spectrogram, for speech signals
stem Plot discrete data
sequence strips Strip plot
udecode Uniform decoding of the input
uencode Uniform quantization and encoding of the input into N-bits
Graphical User Interfaces
fdatool Filter Design and Analysis Tool sptool Signal Processing Tool
Signal and Linear System Models
The Signal Processing Toolbox provides a broad range of models for representing signals and linear time-invariant systems, allowing you to choose the method that best suits your application, including representations for transfer functions state space, and zero-pole-gain. The toolbox also includes functions for transforming models from one representation to another.
Filter Design
The Signal Processing Toolbox features a full suite of design methods for finite impulse response (FIR) and infinite impulse response (IIR) digital filters. These methods support the rapid design and evaluation of lowpass, highpass, bandpass, bandstop, and multi-band filters such as Butterworth, Chebyshev, elliptic, Yule-Walker, window-based, least-squares, and Parks-McClellan. The filter structures available include the direct forms I and II, lattice, lattice-ladder, and second-order sections. You can comment among the various realizations with tools provided.
Spectral Analysis
The Signal Processing Toolbox provides unsurpassed facilities for frequency-domain analysis and spectral estimation. Several of these methods are based on a highly opti-mized FFT. The toolbox includes functions
for computing the discrete Fourier, discrete cosine, Hilbert, and other transforms useful in analysis, coding, and filtering. The spectral analysis methods available include Welch's, Burg's, modified covariance, Yule-Walker, the multitaper method, and the MUSIC method.
Visualization
The GUIs in the Signal Processing Toolbox let you interactively view and measure signals, design and apply filters, and perform spectral analysis while exploring the effects of different analysis parameters and methods.
They are particularly useful for visualizing time-frequency information, spectra, and pole-zero locations. For example, you can interactively design a filter by graphically placing the poles and zeroes in the z-plane.
The Signal Processing Toolbox provides two GUIs:
FDATool is a comprehensive tool for designing and analyzing digital filters that helps you:
• Access most FIR and IIR filter design methods in the toolbox using a simplified, graphical interface
• Analyze filters by exchanging magnitude, phase, impulse, and step responses and by calculating group delay and pole-zero plots
• Import previously designed filters and filter coefficients that you have stored in the MATLAB workspace. Export filter coefficients
• Access additional filter design methods and quantization features of the Filter Design Toolbox (when that optional product is installed)
• Print filter response directly from the GUI with the option to annotate plots
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
Power Spectral Density Estimates for a 4th Order AR Model
Normalized Angular Frequency (∗π rads/sample)
Power Spectral Density (dB / rads/sample)
MUSIC
Spectral analysis of a signal using a range of parametric and nonparametric techniques.
SPTool’s Filter Designer includes a Pole/Zero editor that lets you design a filter through the graphical placement of poles and zeroes. The Filter Viewer lets you view all characteristics of the filter.
SPToolis a suite of GUI tools providing access to many of the signal, filter, and spectral analysis functions that helps you:
• Measure and analyze the time-domain information of one or more signals and send audio signal to the PC’s sound card
• Design and edit FIR and IIR filters of various lengths and types and with standard (lowpass, highpass, bandpass, bandstop, and multiband) configura-tions, as well as design filters by graphically placing poles and zeroes in the z-plane
• View the characteristics of a designed or imported filter, including its magnitude response, phase response, group delay, pole-zero plot, impulse response, and step response
• Apply the filter to a selected signal
• Graphically analyze frequency-domain data using a variety of spectral estimation methods, including Burg, FFT, multitaper (MTM), MUSIC, eigenvector, Welch, and Yule-Walker AR
An Interactive Demo
The Signal Processing Toolbox provides specgramdemo, a user-friendly GUI that interactively calculates a signal’s time-frequency distribution.Specgramdemopresents:
• The original time series data
• The spectrogram of the input signal
• The power spectral density of the input signal
• A colorbar indicating the color scale of the spectrogram
• A signal panner that lets you focus in and out on the signal
You can evaluate time/frequency informa-tion in the spectrogram by using the signal panner or the crosshair locator. This will allow you to locate data points in the spec-trogram. They will display and interactively update a frequency slice of the input signal, a time slice of signal, and a readout of time and frequency values.
You can call the specgramdemofrom the MATLAB command line by typing specgramdemo(y,FS)where y is the input signal and Fs is the signal’s sampling rate. Context-sensitive help is available for specgramdemo.
Product Requirements
The Signal Processing Toolbox runs on all MathWorks supported platforms. It requires MATLAB 6. ■
The MathWorks
Tel: 508.647.7000 info@mathworks.com www.mathworks.com 9317v03 11/00© 2000 by The MathWorks, Inc. MATLAB, Simulink, Stateflow, Handle Graphics, and Real-Time Workshop are registered trademarks, and Target Language Compiler is a trademark of The MathWorks, Inc. Other product or brand names are trademarks or registered trademarks of their respective holders.
Specgramdemo is a user-friendly GUI that provides interactive calculations of a signal’s time-frequency distribution.
For demos, application examples, tutorials, user stories, and pricing:
• Visit www.mathworks.com
• Contact The MathWorks directly US & Canada 508-647-7000 Benelux +31 (0)182 53 76 44 France +33 (0)1 41 14 67 14 Germany +49 (0)89 995901 0 Spain +34 93 362 13 00 Switzerland +41 (0)31 954 20 20
UK +44 (0)1223 423 200
Visit www.mathworks.comto obtain contact information for authorized MathWorks representatives in countries throughout Asia Pacific, Latin America, the Middle East, Africa, and the rest of Europe.
The Fixed-Point Blockset allows engineers to efficiently design control systems and digital filters that will be implemented using fixed-point arithmetic. A block diagram containing detailed fixed-point information about the system model is constructed in Simulink®. You can perform a bit-true simulation to observe the effects of limited range and precision.
Simulations are automatically instrumented to log overflows, saturations, and signal extremes. Tools are provided to automate scaling decisions and to compare the fixed-point implementation against a floating-fixed-point benchmark. When combined with Real-Time Workshop®, an efficient, integer-only C code representation of the design can be auto-matically generated. This C code can be used in a production target or for rapid prototyp-ing. When Real-Time Workshop Embedded Coder is used, real-time C code can be gen-erated for use on an integer production, embedded target.