В этом примере показано, как минимизировать коэффициенты номера путем разработки минимальной фазы или фильтров минимального порядка.
Чтобы запуститься, настройте параметры фильтра и использование fdesign
создать конструктора для разработки фильтра.
N = 100;
Fp = 0.38;
Fst = 0.42;
Ap = 0.06;
Ast = 60;
Hf = fdesign.lowpass('Fp,Fst,Ap,Ast',Fp,Fst,Ap,Ast);
До сих пор мы только рассмотрели проекты линейной фазы. Линейная фаза желательна во многих приложениях. Тем не менее, если линейная фаза не является требованием, проекты минимальной фазы могут обеспечить существенные улучшения по линейным дубликатам фазы. Например, возвращаясь к случаю минимального порядка, проект minimum-phase/minimum-order для тех же технических требований может быть вычислен с:
Hd1 = design(Hf,'equiripple','systemobject',true); Hd2 = design(Hf,'equiripple','minphase',true,... 'systemobject',true); hfvt = fvtool(Hd1,Hd2,'Color','White'); legend(hfvt,'Linear-phase equiripple design',... 'Minimum-phase equiripple design')
Заметьте, что количество коэффициентов было сокращено от 146 до 117. Как второй пример, рассмотрите проект с полосой задерживания, затухающей линейным способом. Заметьте увеличенное затухание в полосе задерживания. Неравномерность в полосе пропускания также значительно меньше.
setspecs(Hf,'N,Fp,Fst',N,Fp,Fst); Hd3 = design(Hf,'equiripple','StopbandShape','linear',... 'StopbandDecay',53.333,'systemobject',true); setspecs(Hf,'Fp,Fst,Ap,Ast',Fp,Fst,Ap,Ast); Hd4 = design(Hf,'equiripple','StopbandShape','linear',... 'StopbandDecay',53.333,'minphase',true,'systemobject',true); hfvt2 = fvtool(Hd3,Hd4,'Color','White'); legend(hfvt2,'Linear-phase equiripple design with linearly decaying stopband',... 'Minimum-phase equiripple design with linearly decaying stopband')
Другой подход к минимизации количества коэффициентов, которое не включает проекты минимальной фазы, должен использовать многоступенчатые методы. Здесь мы показываем интерполированного КИХ (IFIR) подход.
Hd5 = ifir(Hf); hfvt3 = fvtool(Hd1,Hd5,'Color','White'); legend(hfvt3,'Linear-phase equirriple design',... 'Linear-phase IFIR design')
Количество ненулевых коэффициентов, требуемых в случае IFIR, равняется 111. Меньше и, чем equiripple линейная фаза и, чем проекты минимальной фазы.