Contents
Scaling of freqeuncy responses
disp('second order blocks')
disp(SOS)
N = 1024;
[H1,w] = freqz(SOS(1,1:3),SOS(1,4:6),N);
[H2,w] = freqz(SOS(2,1:3),SOS(2,4:6),N);
[H3,w] = freqz(SOS(3,1:3),SOS(3,4:6),N);
MAX1 = max(abs(H1));
MAX2 = max(abs(H2.*H1/MAX1));
MAX3 = max(abs(H3.*(H2/MAX2).*(H1/MAX1)));
fprintf('Scaling factors for section 1, 2 and 3 : %g , %g , %g\n\n',1/MAX1,1/MAX2,1/MAX3)
SOSs =SOS;
SOSs(1,1:3) = SOS(1,1:3)/MAX1;
SOSs(2,1:3) = SOS(2,1:3)/MAX2;
SOSs(3,1:3) = SOS(3,1:3)/MAX3;
disp('after scaling')
disp(SOSs)
[H1,w] = freqz(SOSs(1,1:3),SOSs(1,4:6),N);
[H2,w] = freqz(SOSs(2,1:3),SOSs(2,4:6),N);
[H3,w] = freqz(SOSs(3,1:3),SOSs(3,4:6),N);
second order blocks
1.0000 0.7724 1.0000 1.0000 -1.5743 0.6496
1.0000 -0.9573 1.0000 1.0000 -1.5520 0.7965
1.0000 -1.2851 1.0000 1.0000 -1.5629 0.9396
Scaling factors for section 1, 2 and 3 : 0.0271663 , 0.229457 , 0.508501
after scaling
0.0272 0.0210 0.0272 1.0000 -1.5743 0.6496
0.2295 -0.2197 0.2295 1.0000 -1.5520 0.7965
0.5085 -0.6535 0.5085 1.0000 -1.5629 0.9396
Graphics - Frequency responses
FIG1 = figure('Name','lab3_4 : Frequency responses - scaled ',...
'NumberTitle','off');
subplot(2,2,1),plot(w/pi,abs(H1),w/pi,abs(H2),w/pi,abs(H3)), grid
xlabel('\Omega / \pi \rightarrow'), ylabel('|H_i(ej\Omega)| \rightarrow')
title('Sections 1,2 and 3')
subplot(2,2,3),plot(w/pi,20*log10(abs(H1)),w/pi,20*log10(abs(H2)),...
w/pi,20*log10(abs(H3))), grid
xlabel('\Omega / \pi \rightarrow'), ylabel('|H_i(e^{j\Omega})| in dB \rightarrow')
title('Sections 1,2 and 3')
subplot(2,2,2),plot(w/pi,abs(H1.*H2.*H3)), grid
xlabel('\Omega / \pi \rightarrow'), ylabel('|H(ej\Omega)| \rightarrow')
title('Cascade')
subplot(2,2,4),plot(w/pi,20*log10(abs(H1.*H2.*H3))), grid
xlabel('\Omega / \pi \rightarrow'), ylabel('|H(e^{j\Omega})| in dB \rightarrow')
title('Cascade')