Contents

% IIR system in lattice-ladder structure
% lab9_2.m * mw * 11/01/2006

Filter coefficients

b = [1 2.203 2.203 1];       % denominator
a = [1 -.9531 .8714 -.2895]; % numerator

Ladder structure coefficients

k = latca2k(a);  % lattice coefficients
v = zeros(1,4);  % ladder coefficients
v(4) = b(4)/a(1);
v(3) = b(3) - v(4)*a(2);
v(2) = b(2) - v(3)*k(1)*(1+k(2))-v(4)*a(3);
v(1) = b(1) - v(2)*k(1) - v(3)*k(2) - v(4)*a(4);

Impulse response

x = [1 zeros(1,20)];
[uf,vf,y] = latclad(k,v,x);

Impulse response - MATLAB functions

[K,V] = tf2latc(b,a);    % reflection and ladder coefficients (MATLAB function)
[F,G] = latcfilt(K,V,x); % lattice-ladder structure (MATLAB function)
Y = filter(b,a,x);       % direct form II (MATLAB function)

Compare system outputs

fprintf('lab9_2 : System output signals\n')
fprintf('   y[n]     F[n]     Y[n]  :    vf[n]    G[n]\n')
for n=0:10
    fprintf('%7.4f  %7.4f  %7.4f  :  %7.4f  %7.4f\n',y(n+1),F(n+1),Y(n+1),vf(n+1),G(n+1))
end
lab9_2 : System output signals
   y[n]     F[n]     Y[n]  :    vf[n]    G[n]
 1.0000   1.0000   1.0000  :  -0.2895  -0.2895
 3.1561   3.1561   3.1561  :   0.5955   0.5955
 4.3397   4.3397   4.3397  :  -0.1333  -0.1333
 2.6754   2.6754   2.6754  :   0.2703   0.2703
-0.3180  -0.3180  -0.3180  :   0.5461   0.5461
-1.3781  -1.3781  -1.3781  :   0.2464   0.2464
-0.2618  -0.2618  -0.2618  :  -0.1628  -0.1628
 0.8592   0.8592   0.8592  :  -0.2118  -0.2118
 0.6482   0.6482   0.6482  :   0.0113   0.0113
-0.2068  -0.2068  -0.2068  :   0.1482   0.1482
-0.5131  -0.5131  -0.5131  :   0.0701   0.0701