From d97df53d72f66db206da540e909679fa863b51b6 Mon Sep 17 00:00:00 2001 From: Abhinav Dronamraju Date: Wed, 29 Nov 2017 17:34:00 +0530 Subject: Added xml files and new functions --- macros/bilinear.sci | 13 +++++++++++++ 1 file changed, 13 insertions(+) (limited to 'macros/bilinear.sci') diff --git a/macros/bilinear.sci b/macros/bilinear.sci index d58dd2a..387b8d0 100644 --- a/macros/bilinear.sci +++ b/macros/bilinear.sci @@ -1,4 +1,17 @@ function [Zb, Za, Zg]= bilinear(Sb,varargin) +// Transform a s-plane filter specification into a z-plane specification +//Calling Sequence +// [ZB, ZA] = bilinear (SB, SA, T) +// [ZB, ZA] = bilinear (SZ, SP, SG, T) +// [ZZ, ZP, ZG] = bilinear (...) +//Description +//Transform a s-plane filter specification into a z-plane specification. Filters can be specified in either zero-pole-gain or transfer function form. The input form does not have to match the output form. 1/T is the sampling frequency represented in the z plane. +// +//Note: this differs from the bilinear function in the signal processing toolbox, which uses 1/T rather than T. +// +//Theory: Given a piecewise flat filter design, you can transform it from the s-plane to the z-plane while maintaining the band edges by means of the bilinear transform. This maps the left hand side of the s-plane into the interior of the unit circle. The mapping is highly non-linear, so you must design your filter with band edges in the s-plane positioned at 2/T tan(w*T/2) so that they will be positioned at w after the bilinear transform is complete. +//Examples +//[ZB,ZA]=bilinear([1],[2,3],3) funcprot(0); lhs= argn(1); rhs= argn(2); -- cgit