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

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

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

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

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

Каноническая форма отображения обычно используемого

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

HA (z) является th-порядком N allpass сопоставляющий фильтр, данный

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 к полосе пропускания. Вместо этого любые две функции передаточной функции могут быть перемещены (почти) на любые два других места частоты, если α1 и α2 выбраны, чтобы сохранить полюса HA (z) строго вне модульного круга (поскольку HA (z) заменяют z в прототипной передаточной функции). Кроме того, как сначала указано Constantinides, выбор внешнего знака влияет, может ли исходная функция в нуле быть перемещена (знак "минус", условие, известное как “мобильность DC”) или может ли частота Найквиста быть перемещена (“возникновение случая” мобильности Найквиста, когда ведущий знак положителен).

Выберите Features Subject to Transformation

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

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

Чтобы проиллюстрировать идею, действительное многоточечное преобразование второго порядка было применено три раза к тому же эллиптическому полуленточному фильтру для того, чтобы превратить его в полосовой фильтр. В каждом из этих трех случаев были выбраны две различных функции прототипного фильтра для того, чтобы получить полосовой фильтр с полосой пропускания в пределах от 0,25 к 0,75. Положение функции DC не было важно, но было бы выгодно, если бы это было в середине между ребрами полосы пропускания в целевом фильтре. В первом случае выбранными функциями были левые и правые ребра полосы полосы пропускания фильтра lowpass во втором случае, они были левым ребром полосы и DC в третьем случае, они были 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), с помощью th-порядка NA allpass фильтр, HA (z). Общая форма allpass, сопоставляющего фильтр, дана в Обзоре Преобразований. Отображение частоты является математической операцией, которая заменяет каждый задерживатель прототипного фильтра с фильтром allpass. Существует два способа выполнить такое отображение. Выбор подхода зависит от того, как прототип и целевые фильтры представлены.

Когда прототипный фильтр th-порядка N дан с нулевой полюсом формой

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 прототипного фильтра полиномами th-порядка NA должен быть N, к которому применяют операцию свертки, \times. Такой подход может вызвать погрешности округления для больших прототипных фильтров и/или фильтров отображения старшего разряда. В таком случае пользователь должен рассмотреть альтернативу для выполнения использования отображения через полюса и нули.

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

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

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

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

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

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

Недостатки

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

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

  • Запуск с новых проектов помогает избежать заблокированный - в компромиссах.

Преобразования частоты для действительных фильтров

Обзор

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

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

Действительное преобразование сдвига частоты использует allpass второго порядка, сопоставляющий фильтр. Это выполняет точное отображение одной выбранной функции частотной характеристики в ее новое местоположение, дополнительно перемещаясь и Найквиста и функции 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 просачивается любое направление. Обратите внимание на то, что, потому что целевой фильтр должен также быть действительным, ответ целевого фильтра будет по сути нарушен на частотах близко к Найквисту и близко к 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 хранения местоположения и зафиксированных функций Найквиста. Как действительное преобразование, это работает похожим способом к положительным и отрицательным частотам. Важно упомянуть, что использование отображения первого порядка гарантирует, что порядок фильтра после преобразования эквивалентен, это было первоначально.

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 к действительному Highpass

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

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

с α, данным

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

где

ωold — Местоположение частоты выбранной функции в прототипном фильтре

ωnew — Местоположение частоты той же функции в целевом фильтре

Пример ниже показов, как преобразовать фильтр lowpass в highpass, фильтрует с произвольно выбранной частотой среза. В коде MATLAB ниже, фильтр lowpass преобразован в highpass с частотой среза, переключенной от 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);

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

Действительный Lowpass к действительной полосе пропускания

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

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, просачивается любое направление. Обратите внимание на то, что, потому что целевой фильтр должен также быть действительным, ответ целевого фильтра будет по сути нарушен на частотах близко к Найквисту и близко к 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 к действительному полосовому отображению

Действительный Lowpass к действительному Bandstop

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

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

Действительный Lowpass к многополосному действительному

Это старшее преобразование выполняет точное отображение одной выбранной функции прототипной частотной характеристики фильтра во многие новые местоположения в целевом фильтре. Его наиболее популярный способ использования должен преобразовать действительный 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 или функция Найквиста:

S={1Nyquist1DC

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

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

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

Преобразование в качестве примера создает три полосы задерживания, от DC до 0,2, от 0,4 до 0,6 и от 0,8 до Найквиста:

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

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

Действительный Lowpass к многоточечному действительному

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

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

Для th-порядка 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 или функции Найквиста:

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 в целевом фильтре

Особый случай комплексного сдвига частоты является a, так называемым, Гильбертовым Трансформатором. Это может быть спроектировано путем установки параметра на |α | = 1, который является

α={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, чтобы объединить полосу пропускания

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

HA(z)=βαz1z1αβ

with α и β дают

α=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, чтобы объединить Bandstop

Это преобразование первого порядка выполняет точное отображение одной выбранной функции прототипной частотной характеристики фильтра в два новых места в целевом фильтре, создающем полосу задерживания между ними. И Найквист и функции 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, чтобы объединить отображение Bandstop

Действительный Lowpass, чтобы объединить многополосный

Это старшее преобразование выполняет точное отображение одной выбранной функции прототипной частотной характеристики фильтра во многие новые местоположения в целевом фильтре. Его наиболее популярный способ использования должен преобразовать действительный lowpass с предопределенной полосой пропускания и пульсациями полосы задерживания в многополосный фильтр с произвольными ребрами полосы. Порядок фильтра отображения должен быть четным, который соответствует четному числу ребер полосы в целевом фильтре. allpass комплекса th-порядка 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 комплекса th-порядка 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]);

Пример комплексной полосы пропускания, чтобы объединить полосовое отображение