GAUSS Third Party Applications
Digital Acoustics

Time Series Analysis and Graphics Library 2.0 for Windows
from Digital Acoustics

Overview
Since 1993, Time Series Analysis and Graphics Library (TSAGL) has been the standard general-purpose

signal processing, analysis and display package for GAUSS Programming Environement. It contains a host of basic and complex algorithms that allow the user to develop sophisticated programs for various signal processing, analysis and modeling tasks based upon individual requirements and specific needs. The algorithms are written in the form of GAUSS procedures. They can therefore be accessed quickly and easily from within the GAUSS environment.

You will find in the new version of TSAGL for Windows over 80 procedures to facilitate signal analysis, filtering, modeling, file input/output and signal display, manipulation and extraction using the Windows graphical interface capabilities. Many of the existing procedures have also been rewritten or improved. All procedures are gathered in five libraries. The following is a description of some of the features found in the TSAGL package. For a complete list of commands, please refer to the table below.

Standard Library
The TSAGL Standard Library consists of a suite of algorithm

s to manipulate and simulate signals in the time domain. These procedures make up the core of the package. Among the features present, one can list signal differentiation, integration and resampling. Algorithms that compute the auto-correlation, partial auto-correlation and cross-correlation series are available as well as procedures to generate synthetic signals for testing and simulation purposes. In addition, popular windowing functions for smoothing spectral estimates can be found in this library. Easy file name selection for

reading and writing signals can also be performed using new procedures added to the Windows version of the package.

Filter Library
Digital filtering of time series can be performed using various procedures supplied in the TSAGL Filter Library. For instance, standard Infinite Impulse Response (IIR) filters such as Butterworth, Bessel and Chebyshev are implemented along with Finite Impulse Response (FIR) lowpass, highpass, bandpass and bandstop filters. Procedures are also provided to carry out data filtering using moving average, smoothing, FIR and IIR type filters given the direct, cascade and parallel forms.

The Filter Library supports adaptive filtering of time and space series based on Hattingh's CANC approach, allowing the user to simulate the ANC and ALE methods.

Deconvolution or inverse filtering of signals may be carried out with the aid of algorithms that implement the concept of least-squares or Wiener filtering. Least-squares filtering procedures can serve as the building blocks in a program designed to tackle such problems as predictive deconvolution and forecasting. For example, these routines are called extensively by procedures in the Model Library to estimate the parameters of an ARMA process for spectral analysis purposes.

Spectrum Library

The Spectrum Library consists of algorithms commonly used in the analysis of time series. Using the Fast Fourier Transform, the library provides procedures for estimating the frequency content of signals, cross-spectral density and coherence between two time series. If a model-based approach is required, auto-regressive and auto-regressive/moving-average spectra can be calculated easily with the SPECTRAR and SPECARMA procedures.

Echo detection, source waveform estimation and homorphic deconvolution may be carried out via cepstral analysis using both real and complex cepstrum procedures found in this library.

Model Library
The Model Libr

ary contains routines for parametric modeling of time series. The Burg and Least-Squares auto-regressive procedures are provided for estimating the parameters of an auto-regressive process. ARMA modeling can be performed, for spectral analysis purposes, through the use of several procedures such as PADE and PADEARMA which employ the Euclidean algorithm to obtain an estimate of the AR

MA process' parameters.

A spline procedure has been added to allow easy and accurate interpolation of signals where required.

Waveform analysis curve fitting is supported to facilitate modeling where the data are noisy. This is especially useful when a priori knowledge of the underlying characteristics of the waveform is available.

Graphics Library
Time and frequency domain signals are edited and displayed using entirely new procedures in the TSAGL Graphics Library. Editing signals can easily be performed with one mouse click. The extracted portion of the signal is displayed automatically and can be used for further analysis. A given time series may be edited on the graphics screen as many times as it is necessary until the desired segment is isolated and returned to the calling program. This version of the library can produce graphics on any display and output printer/plotter supported by the Windows Operating System.

TSAGL Command Summary

Procedure
Description
align aligns two or more signals
autocor computes auto-correlation series
bandpass generates non-recursive band-pass filter
bandstop generates non-recursive band-stop filter
bartlett generates Bartlett window
bestfit finds the best polynomial to fit data
blackman generates Blackman window
brown generates brown noise
bsbdpass generates 2nd order Bessel band-pass filter
bsbdstop generates 2nd order Bessel band-stop filter
bshipass generates 2nd order Bessel high-pass filter
bslopass generates 2nd order Bessel low-pass filter
burg computes coefficients of AR process
bwbdpass 2nd order Butterworth band-pass filter
bwbdstop 2nd order Butterworth band-stop filter
bwhipass 2nd order Butterworth high-pass filter
bwlopass 2nd order Butterworth low-pass filter
canc carries out data adaptive filtering
cbbdpass 2nd order Chebyshev band-pass filter
cbbdstop 2nd order Chebyshev band-stop filter
cbhipass 2nd order Chebyshev high-pass filter
cblopass 2nd order Chebyshev low-pass filter
ciresp impulse response of cascade-form filter
coherenc computes coherence of 2 real-valued series
cplxceps computes complex cepstrum
crosscor computes cross-correlation series
crosspec cross-spectrum of 2 real-valued time series
decimate decimates a time series
derive differentiates a time series
diresp impulse response of direct-form filter
exponent finds parameters of exponential function
fft2 computes FFT on 2 series simultaneously
firfiltr carries out non-recursive digital filtering
genspline generates the spline curve
getfilename selects filename for input/output
goodness calculates the goodness of fit
graphics activates/deactivates graphics mode
hamming generates Hamming window
highpass generates non-recursive high-pass filter
iircfilt carries out cascade-form IIR filtering
iircspec spectrum of cascade-form IIR filter
iirdfilt carries out direct-form IIR filtering
iirpfilt carries out parallel-form IIR filtering
iirpspec spectrum of parallel-form IIR filter
ilsarma computes coefficients of ARMA process
integral integrates a series
interpol interpolates a time series using the FFT
iwavelet computes the inverse of a wavelet
kaiser generates Kaiser window
levinson solves least-squares normal equations
linefit fits a straight line
lnxlny plots series using natural log coordinates
logxlogy plots series using base 10 log coordinates
lowpass genrates non-recursive low-pass filter
lsar computes coefficients of AR process
modexpo finds coeff. of modified exp. function
nilsarma computes coefficients of ARMA process
pade approximates a polynomial by a ratio
padearma estimates coefficients of ARMA process
pautocor computes partial auto-correlation series
piresp impulse response of parallel-form filter
polydiv divides 2 polynomials
polydvqr returns quotient and remainder
polyfit generates coefficients of a polynomial curve
powerfcn finds parameters of the power function
predict computes coefficients of prediction filter
realceps computes real cepstrum
resample resamples series with a new sampling rate
ricker generates the Ricker wavelet
shape computes coefficients of shaping filter
smooth smooths signals using a moving-average filter
specarma power spectral density for ARMA process
spectrar power spectral density for AR process
spectrum power and phase spectra using FFT
spline generates the coefficients of spline curve
spike computes the optimum spike position
synsig builds a synthetic signal using sine function
tapered generates tapered window
uniform generates uniform window
vonhann generates vonhann window
xmodexpo finds parameters of exponential function
xy plots series using cartesian coordinates
xydb plots series with dependent axis in decibels