Allpass фильтр для lowpass к комплексному полосно-заграждающему преобразованию
[AllpassNum,AllpassDen] = allpasslp2bsc(Wo,Wt)
[AllpassNum,AllpassDen] = allpasslp2bsc(Wo,Wt)
возвращает числитель, AllpassNum
и знаменатель, AllpassDen
, фильтра преобразования allpass первого порядка для выполнения реального преобразования частоты lowpass в комплексную полосу частот. Это преобразование эффективно помещает одну функцию исходного фильтра, расположенную на частоте -Wo, в необходимое целевое местоположение частоты, Wt1 и вторую функцию, первоначально на +
Во, на новом месте, Wt2. Принято, что Wt2 больше Wt1. Кроме того, преобразование меняет полосы пропускания с полосами остановок в целевом фильтре.
Относительные положения других функций исходного фильтра не изменяются в целевом фильтре. Это означает, что можно выбрать две функции исходного фильтра, F1 и F2, со F1 предыдущими F2. F1 функций все еще будут предшествовать F2 после преобразования. Однако расстояние между F1 и F2 не будет одинаковым до и после преобразования.
Выбор функции, подлежащей преобразованию lowpass в полосно-заграждающее, не ограничивается только частотой отключения исходного lowpass-фильтра. В целом возможен выбор любой функции; например, ребро полосы стопора, DC, глубокий минимум в полосе стопора или другие таковые.
Lowpass к полосно-пропускающему преобразованию также может использоваться для преобразования других типов фильтров; например, действительные узкополосные фильтры или резонаторы могут быть удвоены и расположены на двух разных желаемых частотах в любом месте вокруг единичного круга, образуя пару сложных узкополосных/резонаторов. Это преобразование может использоваться для разработки полосно-заграждающих фильтров для ослабления полосы или частотных эквалайзеров от высококачественного фильтра lowpass прототипа.
Спроектируйте фильтр allpass, меняющий реальный фильтр lowpass с частотой отключения W
o =0.5
в сложный полосно-заграждающий фильтр с ленточными ребрами W
t1 <reservedrangesplaceholder0> и
W
t2 <reservedrangesplaceholder0> точно определено:
Wo = 0.5; Wt = [0.2,0.4];
[AllpassNum, AllpassDen] = allpasslp2bsc(Wo, Wt);
[h, f] = freqz(AllpassNum, AllpassDen, 'whole');
Переменная | Описание |
---|---|
Wo | Значение частоты, которое будет преобразовано из фильтра прототипа. Он должен быть нормирован, чтобы быть между 0 и 1, с 1, соответствующим половине частоты дискретизации. |
Wt | Желаемые положения частоты в преобразованном целевом фильтре. Они должны быть нормированы, чтобы быть между -1 и 1, с 1, соответствующим половине частоты дискретизации. |
AllpassNum | Числитель фильтра отображения |
AllpassDen | Знаменатель фильтра отображения |