Digital Filter
Design &
Simulation 

StoZ Transfer Function Conversion The application STOZXFR.EXE was initially conceived as a tool for adjusting the poles and zeros of a zdomain transfer function in order to obtain a frequency response with either a desired magnitude response, a desired phase characteristic, or a desired delay characteristic. Because of the interaction between magnitude and phase it is not possible to achieve arbitrary magnitude and arbitrary phase simultaneously. The starting point could be a filter designed by DISPRO, or any zdomain transfer function, up to order 10. STOZXFR was then expanded to include the conversion of an sdomain transfer function to a zdomain transfer function. By adjusting the poles and/or zeros of the resulting zdomain transfer function, a closer match can be obtained to the sdomain frequency response. In DISPRO the conversion from splane
biquads to zplane biquads is done with the bilinearz mapping. If s = σ + jω
represents the complex variable for the analog transfer function, and s' the
complex variable for the warped analog transfer function, then s = 2/T tanh(s'T/2),
where T = 1/FS with FS the sampling frequency. To obtain a good
approximation to the analog filter FS/2 should be much greater than any of the
poles of the analog filter. When s and s' are realvalued,
then tanh(x) differs little from x for x ≤
.25, which corresponds to σ ≤
FS /2. Thus, realvalued poles and zeros are not materially affected by the
bilinearz mapping. For s = jω we have ω = tan(ω'T/2) which shows what we know,
namely that this mapping warps the frequency axis, converting the infinite range
in the s plane to the finite range of ±FS /2 in the s' and z planes. This
bilinearz mapping is most appropriately applied to standard filter designs,
simply because the classical filters with pass and stop bands depend upon corner
frequency specifications; the pole and zero values for the analog prototypes
are a function of these corner frequencies. In this case, prewarping of the
corner frequencies works very well in achieving a zplane design which
corresponds accurately to the splane prototype, as in DISPRO. Installation for Windows® 7 After making some modifications and compiling with Visual BASIC 5 the current version of STOZXFR.EXE now runs in Win7, both 32bit and 64bit. In order to run STOZXFR.EXE in Win7 you will have to perform a few extra steps in addition to downloading the files. Details are provided on the StoZ Download page. 
[This is the personal web site of Dr. John O'Donnell]
