h39681 s 00002/00002/00148 d D 1.11 97/09/14 18:00:27 bevans 11 10 c Corrected the pointer to the TruncCon.m package e s 00004/00004/00146 d D 1.10 97/01/05 20:47:34 bevans 10 9 c Updated HTTP addresses e s 00002/00002/00148 d D 1.9 95/09/30 23:10:03 ble 9 8 c Switched order of listing of the two SPP products e s 00021/00005/00129 d D 1.8 95/09/29 15:00:54 ble 8 7 c Added summary of new features of SPP 3.0 e s 00005/00000/00129 d D 1.7 95/09/21 22:28:53 ble 7 6 c Added pointers back to the Ptolemy Project WWW page, and my mailing address for comments e s 00016/00025/00113 d D 1.6 95/09/20 19:24:36 ble 6 5 c Condensed explanation of compatibility with Windows 95 e s 00025/00008/00113 d D 1.5 95/09/12 23:08:21 ble 5 4 c Separated out Robert's work and added more pointers to Robert's work e s 00001/00001/00120 d D 1.4 95/09/11 23:16:08 ble 4 3 c Fixed typo e s 00086/00011/00035 d D 1.3 95/09/11 22:48:41 ble 3 2 c Overhauled description: added pointers to descriptions of the two commercial versions, listed tricks for using the packages, and gave fixes for Windows '95 users e s 00004/00002/00042 d D 1.2 95/09/05 15:54:18 ble 2 1 c Added software copyright information e s 00044/00000/00000 d D 1.1 95/09/04 20:35:03 ble 1 0 c date and time created 95/09/04 20:35:03 by ble e u U f i f e 0 t T I 1 Signal Processing Packages for Mathematica

Signal Processing Packages for Mathematica

D 3 Brian Evans is the author of the signal processing packages and notebooks for Mathematica, and an on-line demonstration of version 2.9.5 of these packages by Robert Bamberger at Washington State University is available. E 3 I 3 D 10 Brian Evans is the E 10 I 10 Brian Evans is the E 10 author of the Signal Processing Packages and Notebooks for D 10 Mathematica. E 10 I 10 Mathematica. E 10 E 3 The packages support both analog and digital signal processing theory and visualization in multiple dimensions. The packages implement common signals and systems, the Laplace, Fourier, z, DTFT, and DFT transforms, symbolic discrete and continuous convolution, and digital and analog IIR filter design. D 2 E 2 I 2 D 3

E 3 E 2 The Signal Processing Packages can also convert algebraic descriptions of algorithms to textual representations for the Ptolemy interpreter. The notebooks accompanying the packages include tutorials on analog filter design, convolution, and the z-transform. D 3 A freely distributable version of the packages and notebooks is available by anonymous FTP to E 3 I 3

D 5 Version 2.9.5 of the Signal Processing Packages was released in the Fall of 1993. An on-line demonstration of this version of the packages by Roberto Bamberger at Washington State University is available. E 5 I 5 The Signal Processing Packages have been under development since February of 1989, and Version 2.9.5 was released in the Fall of 1993. The Signal Processing Packages have been used in the teaching of signals and systems at different levels in the undergraduate engineering programs at the Georgia Institute of Technology, the Rose-Hulman Institute of Technology, and Washington State University. It has been used to teach convolution in civil engineering classes D 8 at the Pennsylvannia State University by E 8 I 8 at the Pennsylvania State University by E 8 Prof. Christopher J. Duffy.

Prof. Roberto Bamberger at Washington State University has been using the packages extensively in various signal processing courses. Based on version 2.9.5 of the signal processing packages, he has developed

E 5 D 8 Since the Fall of 1993, I have overhauled the interface to the packages D 5 to conform with the rest of Mathematica and add much new functionality. E 5 I 5 to conform with the rest of Mathematica, added many new functions (e.g. filter design), and fixed many bugs. E 5 D 4 The newest version, 3.0, is currently available in two commerical products: E 4 I 4 The newest version, 3.0, is currently available in two commercial products: E 8 I 8 Since the Fall of 1993, I have overhauled the packages to create version 3.0. Version 3.0 was released April 28, 1995, and Version 3.0.1 was released October 2, 1995, respectively, in the following commercial products: E 8 E 4

I 8 In version 3.0, I have changed the syntax to conform with the rest of Mathematica, added many new functions, and fixed many bugs. Some of the new functionality includes more IIR digital filter design routines, symbolic filter design, multidimensional windows, a sampled data type for numerical signals, and separate convolution animation routines. Some the enhanced functionality includes improvements in the convolution routines to handle intervals with symbolic end points, graphical design of two-dimensional decimators, signal plotting, and the high-level digital and analog analysis/reporting functions. Version 3.0 comes with a compatibility file that implements obsolete functions and reports obsolete uses of syntax in files (e.g., in packages and notebooks). Many bugs, and inconsistencies in option handling, have been removed, especially in the transforms. Special thanks to John Novak at Wolfram Research Inc. for working with me on this upgrade. E 8

Downloading by FTP

Version 2.9.5 is the most recent one available by FTP: E 3 D 2 E 2 I 2

I 3

Compatibility with Mathematica

Version 2.9.5 of the Signal Processing Packages will work with Mathematica 2.0, 2.1, and 2.2. The Notebooks were written using Mathematica 2.1, and some irregularities will occur when they are opened under Mathematica 2.2.

When Mathematica 2.2 evaluates the command

Needs[ "SignalProcessing`Master`" ]
Mathematica will print out the warning message
Needs::nocont: Warning:Context SignalProcessing`Master`
  was not created when Needs was evaluated.
You can ignore this message.

Caveats

Some users dislike seeing the messages that are displayed when the above Needs command is evaluated. You can suppress the messages by using the following code to initialize the signal processing packages:
oldMessageStream = $Messages;
$Messages = Identity;
Needs[ "SignalProcessing`Master`" ];
$Messages = oldMessageStream;

D 6 The PC release of Version 2.9.5 will not work properly under Windows '95 because the PC release is in MS-DOS format with all of the filenames truncated to eight- character names plus three-character extensions. When Mathematica initializes the signal processing packages, it will look for the context "SignalProcessing`Support`" which Mathematica interprets as the file "SignalProcessing\Support.m". However, the directory "SignalProcessing" does not have an entry (mapping) under Windows '95 to an eight-character filename. The names of 25 of the packages and one directory have been truncated. There are three possible solutions:

The cleanest solution is the last one, and I have rewritten a package called TruncCon.m to truncate the filenames corresponding to long context names. Currently, the package only truncates signal processing contexts, but code exists in the package to truncate all contexts. You must load in the "TruncCon.m" package before evaluating E 6 I 6 The PC release of Version 2.9.5 will not work properly under Windows 95 because the PC release is in MS-DOS format with all of the filenames truncated to eight characters, but the contexts in signal processing packages are not truncated to eight characters. So, when Mathematica looks for the context SignalProcessing`Support`, Mathematica interprets it as "SignalProcessing\Support.m", but the directory SignalProcessing does not have an entry (mapping) under Windows 95 to an eight-character directory name, and Mathematica will report that it cannot find it. I have written a package called D 11 TruncCon.m that will truncate all E 11 I 11 TruncCon.m that will truncate all E 11 signal processing contexts to an MS-DOS filename format, but it can also be used to truncate context names of other packages. D 11 You must load in the TruncCon.m E 11 I 11 You must load in the TruncCon.m E 11 package before evaluating E 6
Needs[ "SignalProcessing`Master`" ]

Copyright

E 3 The Signal Processing Packages and Notebooks are copyright © 1989-1995 Georgia Tech Research Corporation. I 3 All Rights Reserved. E 3 E 2


I 7
Ptolemy Project
Send comments to Brian Evans at D 10 ble@eecs.berkeley.edu E 10 I 10 bevans@ece.utexas.edu E 10
E 7 E 1