function astar=smooth_a(a,gama); % Syntax: astar=smooth_a(a,gama); % % function for smoothing the response of synthesis filter 1/A(z) % a is the vector of prediction coefficients [1 a1 a2 ... aP], % of length P+1, where P is the prediction order. % astar are coefficients of filter 1/A*(z), obtained % from 1/A(z) by substitution z^(-1)--->gama z^(-1) % gama (optional) is the "smoothening factor", default 0.996 % % The effect of this function is deplacing of the poles from the unity circle. % If the poles are to too concentrated, one can approximate % the minimum bandwidth of a max. introduces by a pole by: % B=1/pi * Fe * (1-gama) % for gama=0.996 and Fe=8000Hz, B=10Hz if (nargin == 1), gama=0.996; end P=length(a)-1; powers=(0:P)'; factors=gama*ones(size(a)) .^ powers; astar = a.*factors;