ИКТ-23 / ЛР4 ЦОС
.docxВариант 6
Задание 1
Вычислим n и Wn
clc
clear
close all;
Wp = 0.65;
Ws = 0.6;
Rp = 2.1;
Rs = 80;
[n, Wn] = buttord(Wp, Ws, Rp, Rs)
n =17
Wn =0.6000
Найдем b и a
clear all
clc
Rs = 15;
n = 17; %Порядок фильтра
Wn = 0.6;
[b, a]= cheby2(n, Rs, Wn, 'high')
b =
Columns 1 through 7
0.0022 -0.0066 0.0201 -0.0418 0.0774 -0.1213 0.1691
Columns 8 through 14
-0.2094 0.2329 -0.2329 0.2094 -0.1691 0.1213 -0.0774
Columns 15 through 18
0.0418 -0.0201 0.0066 -0.0022
a =
Columns 1 through 7
1.0000 2.8947 6.6702 9.6010 11.7991 10.7062 8.6037
Columns 8 through 14
5.2631 2.9588 1.2168 0.4978 0.1253 0.0412 0.0040
Columns 15 through 18
0.0018 -0.0001 0.0001 -0.0000
Строим импульсную характеристику
impz(b, a)
Строим АЧХ и ФЧХ
freqz(b, a)
Отображаем конфигурацию нулей и полюсов фильтров
[z, p, k] = tf2zp(b, a)
zplane(z, p)
Итоговый код выглядит так
clear all
clc
close all;
Wp = 0.65;
Ws = 0.6;
Rp = 2.1;
Rs = 80;
[n, Wn] = cheb2ord(Wp, Ws, Rp, Rs)
[b, a]= cheby2(n, Rs, Wn, 'high')
figure;
impz(b, a)
grid on
figure;
freqz(b, a)
figure
[z, p, k] = tf2zp(b, a);
zplane(z, p)
Задание 2
Задание 3
clc
clear all
close all
n = 22;
f = [0:0.0001:1];
m = abs(sin(10.*f));
Npt = 512; %вот эти данные даются по умолчанию
lap = 25;
w = kaiser(n, 4);
b = fir2(n, f, m, Npt, lap, kaiser(n+1, 4)); %Использовал функцию, которая позволяет синтезировать фильтры с использованием окон
impz(b)
grid on
figure
grid on
hold on
plot(f,m)
[H, f] = freqz(b);
plot(f/pi, abs(H),'r');