Цифровые частотные преобразования

Детали и методология

Обзор преобразований

Преобразование существующих конечных импульсных характеристик или БИХ созданий фильтра в измененную БИХ форму часто выполняется с помощью частотных преобразований альпаса. Несмотря на то, что получившиеся проекты могут быть значительно дороже по размерности, чем прототип (оригинальный) фильтр, их простота использования в фиксированных или переменных приложениях является большим преимуществом.

Общая идея преобразования частоты состоит в том, чтобы взять существующий фильтр прототипа и получить из него другой фильтр, который сохраняет некоторые характеристики прототипа, в частотный диапазон. Функции преобразования достигают этого путем замены каждого элемента задержки фильтра прототипа фильтром allpass, тщательно спроектированным, чтобы иметь предписанную фазовую характеристику для достижения изменений, запрошенных проектировщиком.

Основной формой отображения, обычно используемой, является

HT(z)=Ho[HA(z)]

HA (z) является фильтром отображения allpass N I порядка, заданным

HA(z)=Si=0Nαizii=0NαizN+i=NA(z)DA(z)α0=1

где

Ho (z) - Передаточная функция фильтра прототипа

HA (z) - Передаточная функция фильтра отображения allpass

HT (z) - Передаточная функция целевого фильтра

Давайте рассмотрим простой пример преобразования, данного

HT(z)=Ho(z)

Целевой фильтр имеет свои полюса и нули, перевернутые через источник действительной и мнимой осей. Для реального прототипа фильтра он дает зеркальный эффект против 0,5, что означает, что lowpass Ho (z) дает начало реальному highpass HT (z). Это показано на следующем рисунке для фильтра прототипа, сконструированного как полуфазный эллиптический фильтр третьего порядка.

Пример простого зеркального преобразования

Выбор фильтра allpass для обеспечения отображения частоты необходим, чтобы обеспечить преобразование частоты частотной характеристики фильтра прототипа в целевой фильтр путем изменения положения частоты функций из фильтра прототипа без влияния на общую форму характеристики фильтра.

Фазовый отклик нормированного к π фильтра отображения может быть интерпретирована как функция перевода:

H(wnew)=ωold

Графическая интерпретация частотного преобразования показана на рисунке ниже. Комплексное многодиапазонное преобразование принимает реальный lowpass фильтр и преобразует его в ряд полос пропускания вокруг модуля круга.

Графическая интерпретация процесса отображения

Большинство преобразований частоты основаны на фильтре отображения allpass второго порядка:

HA(z)=±1+α1z1+α2z2α2+α1z1+z2

Две степени свободы, обеспечиваемые α1 и α2 выбором, не полностью используются обычным ограничительным набором «плоско-верхних» классических отображений, таких как lowpass и bandpass. Вместо этого любые две передаточные функции могут быть перенесены в (почти) любые два других положения частоты, если α1 и α2 выбраны так, чтобы держать полюса HA (z) строго вне модуля круга (поскольку HA (z) заменяется на z в передаточной функции прототипа). Кроме того, как впервые указал Константинид, выбор внешнего знака влияет на то, можно ли перемещать исходную функцию в нуле (знак минуса, условие, известное как «мобильность постоянного тока») или можно мигрировать частоту Найквиста (случай «мобильности Найквиста», возникающий, когда ведущий знак положителен).

Выбор функций, подлежащих преобразованию

Выбор соответствующего преобразования частоты для достижения необходимого эффекта и правильных функций фильтра прототипа очень важен и требует тщательного фактора. Не рекомендуется использовать преобразование первого порядка для управления несколькими функциями. Фильтр отображения не даст достаточной гибкости. Также нехорошо использовать преобразование более высокого порядка только для изменения частоты отключения lowpass. Увеличение порядка фильтра было бы слишком большим, не принимая во внимание дополнительную реплику фильтра прототипа, которая может быть создана в нежелательных местах.

Выбор признаков для реального Lowpass к полосно-пропускающему преобразованию

Чтобы проиллюстрировать идею, реальное многоточечное преобразование второго порядка было применено три раза к одному и тому же эллиптическому полупрозрачному фильтру, чтобы сделать его полосно-пропускающим фильтром. В каждом из трех случаев две различные функции прототипного фильтра были выбраны в порядок для получения полосно-пропускающего фильтра с полосой пропускания в диапазоне от 0,25 до 0,75. Положение функции постоянного тока не было важным, но было бы выгодно, если бы оно находилось посередине между ребрами полосы пропускания в целевом фильтре. В первом случае выбранные функции были левым и правым ребрами полосы пропускания фильтра lowpass, во втором случае они были левым ребром полосы и DC, в третьем случае они были DC и правым ребром полосы.

Результат выбора различных функций

Результаты всех трех подходов совершенно разные. Для каждого из них только выбранные функции располагались именно там, где они требовались. В первом случае DC перемещается к левому ребру полосы пропускания так же, как все другие функции, близкие к левому краю, сжимаются там. Во втором случае правое ребро полосы пропускания выталкивали из ожидаемой цели, так как требовалось точное положение DC. В третьем случае левую полосу ребра протягивали к постоянному току, порядку позиционировать ее на правильной частоте. Вывод состоит в том, что, если только DC может быть где угодно в полосе пропускания, ребра полосы пропускания должны были быть выбраны для преобразования. В большинстве случаев, требующих позиционирования полос пропускания и полосок упора, конструкторы должны всегда выбирать положение ребер фильтра прототипа в порядок, чтобы убедиться, что они получают ребра целевого фильтра в правильных местах. Частотные характеристики для трех рассмотренных случаев показаны на рисунке. Фильтр прототипа представлял собой эллиптический lowpass третьего порядка с частотой отключения 0,5.

MATLAB® здесь приведен код, используемый для генерации рисунка.

Фильтр прототипа является полуполосой эллиптическим, действительным, третьим порядком lowpass фильтром:

[b, a] = ellip(3, 0.1, 30, 0.409);

В этом примере устанавливают требования для создания действительного полосно-пропускающего фильтра с ребрами полосы пропускания в 0,1 и 0,3 из действительного lowpass фильтра, имеющего частоту отключения в 0,5. Это делается тремя различными способами. При первом подходе выбирают обоих ребер полосы пропускания, при втором подходе выбирают левый край полосы пропускания и DC, а при третьем подходе берут DC и правое ребро полосы пропускания:

[num1,den1] = iirlp2xn(b, a, [-0.5, 0.5], [0.1, 0.3]);
[num2,den2] = iirlp2xn(b, a, [-0.5, 0.0], [0.1, 0.2]);
[num3,den3] = iirlp2xn(b, a, [ 0.0, 0.5], [0.2, 0.3]);

Отображение фильтра прототипа с целевым фильтром

В целом отображение частоты преобразует фильтр прототипа, Ho (z), в целевой фильтр, HT (z), с помощью NA фильтра allpass первого порядка, HA (z). Общая форма фильтра отображения allpass представлена в Overview of Transformations. Частотное отображение является математической операцией, которая заменяет каждый удалитель фильтра прототипа фильтром allpass. Существует два способа выполнения такого отображения. Выбор подхода зависит от того, как представлены фильтры прототипа и цели.

Когда задан N фильтр прототипа I порядка с формой полюс-ноль

Ho(z)=i=1N(zzi)i=1N(zpi)

отображение заменит каждый шест, pi и каждый ноль, zi, на количество полюсов и нулей, равное порядку фильтра отображения allpass:

Ho(z)=i=1N(Sk=0N1αkzkzik=0N1αkzNk)i=1N(Sk=0N1αkzkpik=0N1αkzNk)

Корневое нахождение должно использоваться на скобках в порядок, чтобы найти полюса и нули целевого фильтра.

Когда фильтр прототипа описан в форме числитель-знаменатель:

HT(z)=β0zN+β1zN1++βNα0zN+α1zN1++αN|z=HA(z)

Тогда процесс отображения потребует ряда сверток в порядок, чтобы вычислить числитель и знаменатель целевого фильтра:

HT(z)=β1NA(z)N+β2NA(z)N1DA(z)++βNDA(z)Nβ1NA(z)N+β2NA(z)N1DA(z)++βNDA(z)N

Для каждого αi коэффициентов и βi фильтра прототипа полиномы NA порядка должны быть свернуты N времени. Такой подход может вызвать ошибки округления для больших фильтров прототипа и/или фильтров отображения высокого порядка. В таком случае пользователь должен рассмотреть альтернативу выполнения отображения с помощью полюсов и нулей.

Сводные данные частотных преобразований

Преимущества

  • Большинство преобразований частоты описываются решениями закрытой формы или могут быть вычислены из набора линейных уравнений.

  • Они дают предсказуемые и знакомые результаты.

  • Высоты пульсации от фильтра прототипа сохраняются в целевом фильтре.

  • Они являются архитектурно привлекательными для переменных и адаптивных фильтров.

Недостатки

  • Бывают случаи, когда использование методов оптимизации для разработки необходимого фильтра дает лучшие результаты.

  • Преобразования высокого порядка увеличивают размерность целевого фильтра, что может дать дорогие конечные результаты.

  • Начиная с свежих проектов помогает избежать взломанных компромиссов.

Частотные преобразования для реальных фильтров

Обзор

В этом разделе рассматриваются реальные преобразования частоты, которые берут реальный фильтр прототипа lowpass и преобразуют его в другой реальный целевой фильтр. Целевой фильтр имеет свою частотную характеристику, измененную относительно частотной характеристики фильтра прототипа в соответствии с характеристикой приложенного частотного преобразования.

Реальный сдвиг частоты

Реальное преобразование сдвига частоты использует фильтр отображения allpass второго порядка. Он выполняет точное отображение одной выбранной характеристики частотной характеристики в новое место, дополнительно перемещая функции Nyquist и DC. Это эффективно перемещает всю реакцию lowpass фильтра на расстояние, заданное выбором функции из фильтра прототипа и целевого фильтра. Как реальное преобразование, оно работает подобным образом для положительных и отрицательных частот.

HA(z)=z11αz1αz1

с α, заданной

α={cosπ2(ωold2ωnew)cosπ2ωoldfor|cosπ2(ωold2ωnew)|<1sinπ2(ωold2ωnew)sinπ2ωoldotherwise

где

ωold - Частотное расположение выбранной функции в фильтре прототипа

ωnew - Положение функции первоначально на ωold в целевом фильтре

В следующем примере показано, как это преобразование может использоваться, чтобы переместить ответ lowpass прототипа в любом направлении. Обратите внимание, что поскольку целевой фильтр также должен быть реальным, реакция целевого фильтра будет по своей сути нарушена на частотах, близких к Nyquist и близких к DC. Вот код MATLAB для генерации примера на рисунке.

Фильтр прототипа является полуполосой эллиптическим, действительным, третьим порядком lowpass фильтром:

[b, a] = ellip(3, 0.1, 30, 0.409);

Преобразование примера перемещает функцию первоначально с 0,5 до 0,9:

[num,den] = iirshift(b, a, 0.5, 0.9);

Пример реального отображения сдвига частоты

Реальный Lowpass к реальному Lowpass

Реальный lowpass к реальному lowpass преобразования использует allpass-фильтр отображения первого порядка. Он выполняет точное отображение одной функции частотной характеристики в новое местоположение, сохраняя постоянными функции DC и Nyquist. Как реальное преобразование, оно работает подобным образом для положительных и отрицательных частот. Важно отметить, что использование отображения первого порядка гарантирует, что порядок фильтра после преобразования тот же, что и изначально.

HA(z)=(1αz1αz1)

с α, заданными

α=sinπ2(ωoldωnew)sinπ2(ωoldωnew)

где

ωold - Частотное расположение выбранной функции в фильтре прототипа

ωnew - Частотное расположение той же функции в целевом фильтре

В приведенном ниже примере показано, как изменить частоту отключения фильтра прототипа. Код MATLAB для этого примера показан на следующем рисунке.

Фильтр прототипа является полуполосой эллиптическим, действительным, третьим порядком:

[b, a] = ellip(3, 0.1, 30, 0.409);

Частота среза перемещается от 0,5 до 0,75:

[num,den] = iirlp2lp(b, a, 0.5, 0.75);

Пример реального Lowpass к реальному Lowpass Отображения

Реальный Lowpass к Real Highpass

Реальный фильтр lowpass к реальному преобразованию фильтра highpass использует фильтр отображения allpass первого порядка. Он выполняет точное отображение одной характеристики частотной характеристики в новое место, дополнительно меняя функции DC и Nyquist. Как реальное преобразование, оно работает подобным образом для положительных и отрицательных частот. Так же, как и в предыдущем преобразовании из-за использования отображения первого порядка, порядок фильтра до и после преобразования одинаковый.

HA(z)=(1+αz1α+z1)

с α, заданными

α=(cosπ2(ωold+ωnew)cosπ2(ωoldωnew))

где

ωold - Частотное расположение выбранной функции в фильтре прототипа

ωnew - Частотное расположение той же функции в целевом фильтре

В приведенном ниже примере показано, как преобразовать фильтр lowpass в фильтр highpass с произвольно выбранной частотой среза. В коде MATLAB ниже lowpass преобразуется в высокочастотный с частотой отключения, сдвинутой от 0,5 до 0,75. Результаты показаны на рисунке.

Фильтр прототипа является полуполосой эллиптическим, действительным, третьим порядком:

[b, a] = ellip(3, 0.1, 30, 0.409);

Пример перемещает частоту среза от 0,5 до 0,75:

[num,den] = iirlp2hp(b, a, 0.5, 0.75);

Пример Real Lowpass к Real Highpass Mapping

Реальный Lowpass к Real Bandpass

Реальный фильтр lowpass к реальному преобразованию полосно-пропускающего фильтра использует фильтр отображения allpass второго порядка. Он выполняет точное отображение двух функций частотной характеристики в их новое местоположение, дополнительно перемещая функцию постоянного тока и сохраняя функцию Найквиста фиксированным. Как реальное преобразование, оно работает подобным образом для положительных и отрицательных частот.

HA(z)=(1β(1+α)z1αz2αβ(1+α)z1+z2)

с α и β, заданными

α=sinπ4(2ωoldωnew,2+ωnew,1)sinπ4(2ωold+ωnew,2ωnew,1)

β=cosπ2(ωnew,1+ωnew,2)

где

ωold - Частотное расположение выбранной функции в фильтре прототипа

ωnew,1 - Положение признака первоначально в (- ωold) в целевом фильтре

ωnew,2 - Положение признака первоначально на (+ ωold) в целевом фильтре

В приведенном ниже примере показано, как переместить ответ lowpass прототипа в обоих направлениях. Обратите внимание, что поскольку целевой фильтр также должен быть реальным, реакция целевого фильтра будет по своей сути нарушена на частотах, близких к Nyquist и близких к DC. Вот код MATLAB для генерации примера на рисунке.

Фильтр прототипа является полуполосой эллиптическим, действительным, третьим порядком lowpass фильтром:

[b, a] = ellip(3, 0.1, 30, 0.409);

Преобразование примера создает полосу пропускания между 0,5 и 0,75:

[num,den] = iirlp2bp(b, a, 0.5, [0.5, 0.75]);

Пример реального Lowpass к Real Bandpass Mapping

Реальный Lowpass к реальному бандстопу

Реальный фильтр lowpass к реальному преобразованию полосно-заграждающего фильтра использует фильтр отображения allpass второго порядка. Он выполняет точное отображение двух функций частотной характеристики в их новое местоположение, дополнительно перемещая функцию Найквиста и сохраняя функцию постоянного тока фиксированным. Это эффективно создает диапазон остановки между выбранными частотными местоположениями в целевом фильтре. Как реальное преобразование, оно работает подобным образом для положительных и отрицательных частот.

HA(z)=1β(1+α)z1+αz2αβ(1+α)z1+z2

с α и β, заданными

α=cosπ4(2ωold+ωnew,2ωnew,1)cosπ4(2ωoldωnew,2+ωnew,1)β=cosπ2(ωnew,1+ωnew,2)

где

ωold - Частотное расположение выбранной функции в фильтре прототипа

ωnew,1 - Положение признака первоначально в (- ωold) в целевом фильтре

ωnew,2 - Положение признака первоначально на (+ ωold) в целевом фильтре

В следующем примере показано, как это преобразование может быть использовано для преобразования прототипа lowpass фильтра с частотой среза 0,5 в действительный полосно-заграждающий фильтр с той же структурой полосы пропускания и упорной полосы и стопорной полосы, расположенной между 0,5 и 0,75. Вот код MATLAB для генерации примера на рисунке.

Фильтр прототипа является полуполосой эллиптическим, действительным, третьим порядком lowpass фильтром:

[b, a] = ellip(3, 0.1, 30, 0.409);

Преобразование примера создает полосу остановки от 0,5 до 0,75:

[num,den] = iirlp2bs(b, a, 0.5, [0.5, 0.75]);

Пример реального Lowpass к реальному Bandstop Mapping

Реальный Lowpass к Real Multiband

Это преобразование высокого порядка выполняет точное отображение одной выбранной функции частотной характеристики фильтра прототипа в несколько новых местоположений в целевом фильтре. Его наиболее распространенным использованием является преобразование действительной lowpass с предопределенными полосой пропускания и рябью стоповой полосы в действительный многодиапазонный фильтр с N произвольными ребрами полосы пропускания, где N является порядком фильтра отображения allpass.

HA(z)=Si=0Nαizii=0NαizN+iα0=1

Коэффициенты, α заданы

{α0=1k=1,,Nαk=Ssinπ2(Nωnew+(1)kωold)sinπ2((N2k)ωnew+(1)kωold)

где

ωold,k - Частотное расположение первой функции в фильтре прототипа

ωnew,k - Положение функции первоначально на ωold,k в целевом фильтре

Коэффициент мобильности, S, задает мобильность или функцию DC или Nyquist:

S={1Nyquist1DC

Приведенный ниже пример показов, как это преобразование может использоваться, чтобы преобразовать lowpass-фильтр прототипа с частотой отключения 0,5 в фильтр, имеющий ряд полос, расположенных на произвольных частотах ребра 1/5, 2/5, 3/5 и 4/5. Параметрический S был таким, что в DC есть ремень. Вот код MATLAB для генерации рисунка.

Фильтр прототипа является полуполосой эллиптическим, действительным, третьим порядком lowpass фильтром:

[b, a] = ellip(3, 0.1, 30, 0.409);

Преобразование примера создает три пробки, от DC до 0,2, от 0,4 до 0,6 и от 0,8 до Nyquist:

[num,den] = iirlp2mb(b, a, 0.5, [0.2, 0.4, 0.6, 0.8], `pass');

Пример реального Lowpass к Real Multiband Mapping

Реальный Lowpass к реальной Multipoint

Это высокоупорядоченное частотное преобразование выполняет точное отображение ряда выбранных функций частотной характеристики фильтра прототипа на их новые местоположения в целевом фильтре. Фильтр отображения задается общим БИХ полинома формой передаточной функции, как описано ниже.

HA(z)=Si=0Nαizii=0NαizN+iα0=1

Для многоточечного частотного преобразования N-го порядка коэффициенты α

{i=1NαNizold,kznew,kiSznew,kNi=zold,kSznew,kzold,k=ejπωold,kznew,k=ejπωnew,kk=1,,N

где

ωold,k - Частотное расположение первой функции в фильтре прототипа

ωnew,k - Положение функции первоначально на ωold,k в целевом фильтре

Коэффициент мобильности, S, задает мобильность функции DC или Nyquist:

S={1Nyquist1DC

В приведенном ниже примере показано, как это преобразование может использоваться, чтобы переместить функции фильтра lowpass прототипа первоначально в -0,5 и 0,5 в их новые положения в 0,5 и 0,75, эффективно меняя положение полосы пропускания фильтра. Вот код MATLAB для генерации рисунка.

Фильтр прототипа является полуполосой эллиптическим, действительным, третьим порядком lowpass фильтром:

[b, a] = ellip(3, 0.1, 30, 0.409);

Преобразование примера создает полосу пропускания от 0,5 до 0,75:

[num,den] = iirlp2xn(b, a, [-0.5, 0.5], [0.5, 0.75], `pass');

Пример преобразования реального Lowpass в реальное многоточечное отображение

Частотные преобразования для сложных фильтров

Обзор

В этом разделе рассматриваются комплексные преобразования частот, которые берут комплексный фильтр прототипа и преобразуют его в другой комплексный целевой фильтр. Целевой фильтр имеет частотную характеристику, измененную относительно частотной характеристики фильтра прототипа, согласно характеристике приложенного частотного преобразования от:

Комплексный сдвиг частоты

Комплексное преобразование сдвига частоты является простейшим преобразованием первого порядка, которое выполняет точное отображение одной выбранной функции частотной характеристики в ее новое местоположение. При этом он вращает весь отклик прототипа lowpass фильтра на расстояние, заданное выбором функции из фильтра прототипа и целевого фильтра.

HA(z)=αz1

с α, заданными

α=ej2π(νnewνold)

где

ωold - Частотное расположение выбранной функции в фильтре прототипа

ωnew - Положение функции первоначально на ωold в целевом фильтре

Частным случаем комплексного сдвига частоты является, так называемый, Гильберт Трансформатор. Его можно спроектировать, установив параметр равным |<reservedrangesplaceholder1>|=<reservedrangesplaceholder0>, то есть

α={1forward1inverse

В приведенном ниже примере показано, как применить это преобразование для поворота отклика lowpass прототипа в обоих направлениях. Обратите внимание, что поскольку преобразование может быть достигнуто простым оператором сдвига фазы, все функции фильтра прототипа будут перемещены на ту же величину. Вот код MATLAB для генерации примера на рисунке.

Фильтр прототипа является полуполосой эллиптическим, действительным, третьим порядком lowpass фильтром:

[b, a] = ellip(3, 0.1, 30, 0.409);

Преобразование примера перемещает функцию первоначально с 0,5 до 0,3:

[num,den] = iirshiftc(b, a, 0.5, 0.3);

Пример комплексного отображения сдвига частоты

Реальный Lowpass к комплексному бандпасу

Это преобразование первого порядка выполняет точное отображение одного выбранной функции частотной характеристики фильтра прототипа в два новых положения в целевом фильтре, создавая полосу пропускания между ними. Функции Nyquist и DC могут быть перемещены с остальной частотной характеристикой.

HA(z)=βαz1z1αβ

с α и β даются

α=sinπ4(2ωoldωnew,2+ωnew,1)sinπ(2ωold+ωnew,2ωnew,1)β=ejπ(ωnewωold)

где

ωold - Частотное расположение выбранной функции в фильтре прототипа

ωnew,1 - Положение признака первоначально в (- ωold) в целевом фильтре

ωnew,2 - Положение признака первоначально на (+ ωold) в целевом фильтре

В следующем примере показано использование такого преобразования для преобразования действительного полуполосного lowpass в комплексный полосно-пропускающий фильтр с ребрами полосы в 0,5 и 0,75. Вот код MATLAB для генерации примера на рисунке.

Фильтр прототипа является полосой эллиптическим, действительным, третьим порядком lowpass фильтром:

[b, a] = ellip(3, 0.1, 30, 0.409);

Преобразование создает полосу пропускания от 0,5 до 0,75:

[num,den] = iirlp2bpc(b, a, 0.5, [0.5 0.75]);

Пример реального Lowpass к комплексному полосно-пропускающему отображению

Реальный Lowpass к комплексному полосно-заграждающему

Это преобразование первого порядка выполняет точное отображение одного выбранной функции частотной характеристики фильтра прототипа в два новых местоположения в целевом фильтре, создавая пробку между ними. Функции Nyquist и DC могут быть перемещены с остальной частотной характеристикой.

HA(z)=βαz1αβz1

с α и β даются

α=cosπ(2ωold+νnew,2νnew,1)cosπ(2ωoldνnew,2+νnew,1)β=ejπ(ωnewωold)

где

ωold - Частотное расположение выбранной функции в фильтре прототипа

ωnew,1 - Положение признака первоначально в (- ωold) в целевом фильтре

ωnew,2 - Положение признака первоначально на (+ ωold) в целевом фильтре

В приведенном ниже примере показано использование такого преобразования для преобразования действительного полуполосного lowpass в комплексный полосно-заграждающий фильтр с ребрами полосы в 0,5 и 0,75. Вот код MATLAB для генерации примера на рисунке.

Фильтр прототипа является полуполосой эллиптическим, действительным, третьим порядком lowpass фильтром:

[b, a] = ellip(3, 0.1, 30, 0.409);

Преобразование создает полосу остановки от 0,5 до 0,75:

[num,den] = iirlp2bsc(b, a, 0.5, [0.5 0.75]);

Пример реального Lowpass к комплексному полосно-заграждающему отображению

Реальный Lowpass к комплексному мультидиапазону

Это преобразование высокого порядка выполняет точное отображение одной выбранной функции частотной характеристики фильтра прототипа в несколько новых местоположений в целевом фильтре. Его наиболее распространенным использованием является преобразование действительной lowpass с предопределенными полосой пропускания и рябью стоповой полосы в многодиапазонный фильтр с произвольными краями полосы ребер. Порядок фильтра отображения должен быть четным, что соответствует четному числу ребер полосы пропускания в целевом фильтре. Комплексный фильтр отображения allpass N-го порядка задается следующей формой общей передаточной функции:

HA(z)=Si=0Nαizii=0Nαi±zN+iα0=1

Коэффициенты, α, вычисляются из системы линейных уравнений:

{i=1N(αi)[cosβ1,kcosβ2,k]+(αi)[sinβ1,k+sinβ2,k]=cosβ3,ki=1N(αi)[sinβ1,ksinβ2,k](αi)[cosβ1,k+cosβ2,k]=sinβ3,kβ1,k=π[νold(1)k+νnew,k(Nk)]β2,k=π[ΔC+νnew,kk]β3,k=π[νold(1)k+νnew,kN]k=1N

где

ωold - Частотное расположение выбранной функции в фильтре прототипа

ωnew,i - Положение функций первоначально на ± ωold в целевом фильтре

Параметр S является дополнительным коэффициентом поворота на ΔC частотного расстояния, что дает дополнительную гибкость достижения необходимого отображения:

S=ejπΔC

Пример показывает использование такого преобразования для преобразования прототипа фильтра реального lowpass с частотой отключения 0,5 в многополосный комплексный фильтр с полосой ребер 0,2, 0,4, 0,6 и 0,8, создавая две полосы пропускания вокруг модуля круга. Вот код MATLAB для генерации рисунка.

Пример реального Lowpass к комплексному многодиапазонному отображению

Фильтр прототипа является полуполосой эллиптическим, действительным, третьим порядком lowpass фильтром:

[b, a] = ellip(3, 0.1, 30, 0.409);

Преобразование примера создает две комплексные полосы пропускания:

[num,den] = iirlp2mbc(b, a, 0.5, [0.2, 0.4, 0.6, 0.8]);

Реальный Lowpass к комплексной многоточке

Это преобразование высокого порядка выполняет точное отображение ряда выбранных функций частотной характеристики фильтра прототипа на их новые местоположения в целевом фильтре. Комплексный фильтр отображения allpass N-го порядка задается следующей формой общей передаточной функции.

HA(z)=Si=0Nαizii=0Nαi±zN+iα0=1

Коэффициенты, α могут быть вычислены из системы линейных уравнений:

{i=1N(αi)[cosβ1,kcosβ2,k]+(αi)[sinβ1,k+sinβ2,k]=cosβ3,ki=1N(αi)[sinβ1,ksinβ2,k](αi)[cosβ1,k+cosβ2,k]=sinβ3,kβ1,k=π2[ωold,k+ωnew,k(Nk)]β2,k=π2[2ΔC+ωnew,kk]β3,k=π2[ωold,k+ωnew,kN]k=1N

где

ωold,k - Частотное расположение первой функции в фильтре прототипа

ωnew,k - Положение функции первоначально на ωold,k в целевом фильтре

Параметр S является дополнительным коэффициентом поворота на ΔC частотного расстояния, что дает дополнительную гибкость достижения необходимого отображения:

S=ejπΔC

В следующем примере показано, как это преобразование может использоваться, чтобы переместить одну выбранную функцию lowpass прототипа первоначально на -0,5 к двум новым частотам -0,5 и 0,1 и вторую функцию фильтра прототипа с 0,5 на новые местоположения в -0,25 и 0,3. Это создает две несимметричные полосы пропускания вокруг модуля круга, создавая комплексный фильтр. Вот код MATLAB для генерации рисунка.

Фильтр прототипа является полуполосой эллиптическим, действительным, третьим порядком lowpass фильтром:

[b, a] = ellip(3, 0.1, 30, 0.409);

Преобразование примера создает две несимметричные полосы пропускания:

[num,den] = iirlp2xc(b,a,0.5*[-1,1,-1,1], [-0.5,-0.25,0.1,0.3]);

Пример реального Lowpass к комплексному многоточечному отображению

Комплексная полоса пропускания к комплексной полосе пропускания

Это преобразование первого порядка выполняет точное отображение двух выбранных функций частотной характеристики фильтра прототипа в два новых местоположения в целевом фильтре. Наиболее распространенным его использованием является регулирование ребер комплексного полосно-пропускающего фильтра.

HA(z)=α(γβz1)z1βγ

с α и β даются

α=sinπ4((ωold,2ωold,1)(ωnew,2ωnew,1))sinπ4((ωold,2ωold,1)+(ωnew,2ωnew,1))α=ejπ(ωold,2ωold,1)γ=ejπ(ωnew,2ωnew,1)

где

ωold,1 - Частотное расположение первой функции в фильтре прототипа

ωold,2 - Частотное расположение второй функции в фильтре прототипа

ωnew,1 - Положение функции первоначально на ωold,1 в целевом фильтре

ωnew,2 - Положение функции первоначально на ωold,2 в целевом фильтре

Следующий пример показывает, как это преобразование может использоваться, чтобы изменить положение полосы пропускания фильтра прототипа, реального или комплексного. В приведенном ниже примере ширина полосы пропускания прототипа фильтра составляет от 0,5 до 0,75. Его преобразуют в полосу пропускания между -0,5 и 0,1. Вот код MATLAB для генерации рисунка.

Фильтр прототипа является полуполосой эллиптическим, действительным, третьим порядком lowpass фильтром:

[b, a] = ellip(3, 0.1, 30, 0.409);

Преобразование примера создает полосу пропускания от 0,25 до 0,75:

[num,den] = iirbpc2bpc(b, a, [0.25, 0.75], [-0.5, 0.1]);

Пример комплексного преобразования полосы пропускания в комплексное отображение полосы пропускания