evans@eedsp.gatech.edu (Brian Evans) (05/09/91)
Archive-name: math/dsp/sigproc/1991-05-03
Archive: vax.eedsp.gatech.edu:/Mathematica/SigProc2.0.tar.Z [130.207.226.2]
Original-posting-by: evans@eedsp.gatech.edu (Brian Evans)
Original-subject: Mathematica Signal Processing Packages and Notebooks
Reposted-by: emv@msen.com (Edward Vielmetti, MSEN)
(Public Domain)
Signal Processing Packages and Notebooks 2.0
for
Mathematica Version 1.2 and higher
by
Brian Evans, James McClellan, Kevin West,
Wallace McClure, and Lina Karam
Digital Signal Processing Laboratory
School of Electrical Engineering
Georgia Institute of Technology
Atlanta, GA 30332-0250
evans@eedsp.gatech.edu
(Download via anonymous ftp to vax.eedsp.gatech.edu--- see below)
---> Summary
Many people are developing Mathematica extensions for transform
analysis, linear systems theory, or signal processing. This is an
attempt at all three. The code has been under development for 2.5
years. The code is public domain but only Wolfram Research Inc and
the Georgia Tech Research Corporation can make money on it. The
exact licensing agreement is available from Wolfram Research.
These extensions are written from an engineering point of view
and are biased toward analog/digital signal processing. Mathematica
2.0 will come with some Laplace and Fourier transform capabilities
(written from a mathematicians point of view), but they will not be
able to transform expressions common in signal processing because
Mathematica 2.0 manipulates mathematical formulas not signal proces-
sing expressions.
---> Transform Capabilities
Fourier, Laplace and z-transforms are useful for analyzing linear
systems and signal processing operations. We have implemented packages
for all the transforms commonly used in signal processing:
(discrete signals) z-transform
discrete-time Fourier transform
discrete Fourier transform
(continuous signals) Laplace transform
Fourier transform
This transforms are implemented from the multidimensional, bilateral
definition which means that the z- and Laplace transform track the
region of convergence. The packages also track transform properties,
so it is also possible to deduce the stability or instability of a
linear system. Using the transforms, the packages can solve linear
constant-coefficient difference and differential equations for right-
sided (defined for t > t0) and left-sided (defined for t < t0)
functions. [2]
---> Knowledge Representation for Signals and Systems
We have added many functions (signal primitives) and operators
(system primitives) that are common in signal processing and linear
systems theory but missing in Mathematica: [1] [2] [3]
(basic signals) Kronecker impulse, Dirac delta, sinc,
continuous and discrete step functions,
continuous and discrete pulse functions,
aliased sinc, filter representations
(basic operators) aliasing, convolution, DFT, DTFT, backward
difference, downsampling, Fourier transform,
interleave samples, Laplace transform,
periodic, reverse, scale axis, shift,
summation, upsampling
The transform packages support all of these new objects.
---> Other Abilities of These Packages
(continuous signals) analog 1-D filter design
1-D piecewise convolution
plots of 1-D and 2-D signals
(discrete signals) 1-D convolution (in version 2.1)
plots of 1-D and 2-D sequences
(general plotting) pole-zero diagrams
root loci
frequency responses
---> Signal Processing Notebooks
In order to extend the use of these extensions in the educational
environment, we have written several notebooks on subjects that are
studied in transform theory and signal processing courses:
(tutorial notebooks) z-transform
piecewise convolution
analog filter design
(directed help/guide) signal processing examples
Mathematica as an educational tool
Laplace transform
(reference guide) signal processing usage information
In the tutorial notebooks, we give numerous examples such as might be
found in a standard textbook and solve problems that are at the level
of elementary homework problems. We use the notebook's animation
ability whenever possible. In the analog filter design notebook, for
example, we illustrate the dependence of the filter's magnitude
response on the filter order (and elsewhere on the ripple
control parameter) as an animation sequence. [3]
---> Current Educational Uses of these Extensions
(Georgia Tech) -- Problem sets and solutions for introductory DSP classes
-- Teaching by projecting notebook onto screen instead
of using a chalk board
(Stanford) -- Problem sets and solutions for computer music classes
-- Laboratory exercises as notebooks
(Rose-Hulman) -- Problem sets and solutions for undergraduate EE classes
(Univ. of Penn.) -- Teaching convolution using convolution notebook for
graduate-level Civil Engineering class in hydrology
-- Teaching by projecting notebook onto screen instead
of using a chalk board
(Wash. State) -- Option for students to use it or Matlab for course
project in junior-level EE class
---> How to get them
The Mathematica Journal distributed version 1.0 of these extensions
in the electronic supplement of the second issue of the Mathematica
Journal. This version had several bugs in it.
Wolfram Research Inc. is distributing version 2.0 of these extensions
at the cost of the distribution medium plus shipping and handling.
Version 2.0 is also available by anonymous ftp to vax.eedsp.gatech.edu
(and then change directories to Mathematica). The packages and notebooks
reside in a compressed tar file called "SigProc2.0.tar.Z" (about 1 Mb in
size).
---> Support
Even though this is a public domain release, I am very interested
in fixing bugs since I am currently doing a significant part of my
thesis research in the extended Mathematica environment and since
Wolfram Research Inc. is distributing it. So please send any bug
information about these extensions to "evans@eedsp.gatech.edu".
---> References
[1] B. Evans, J. McClellan, and W. McClure,
``Symbolic z-Transforms Using DSP Knowledge Bases''
IEEE International Conference on Acoustics, Speech, and Signal
Processing, April, 1990, pp. 1775-1778.
[2] B. Evans, J. McClellan, and W. McClure,
``Symbolic Transforms with Applications to Signal Processing,''
The Mathematica Journal, vol. 1, no. 1, pp. 70-80, Fall, 1990.
[3] B. Evans, J. McClellan, and K. West,
``Mathematica as an Educational Tool for Signal Processing,''
IEEE Southeastern Conference, April, 1991, pp. 1162-1166.
--
Brian L. Evans
Digital Signal Processing Laboratory
School of Electrical Engineering
Georgia Institute of Technology
Atlanta, GA 30332-0250
USENET: ...!{allegra,hplabs,ulysses}!gatech!eedsp!evans
INTERNET: evans@eedsp.gatech.edu
-- comp.archives file verification
vax.eedsp.gatech.edu
-rw-r--r-- 1 811 21 1076860 Apr 29 23:01 /Mathematica/SigProc2.0.tar.Z
found sigproc ok
vax.eedsp.gatech.edu:/Mathematica/SigProc2.0.tar.Z