Оценка порядка фильтра

9

Предположим, что неизвестное, но небольшое и конечное число полюсов и нулей в комплексной плоскости Z, все с комплексными сопряженными, вызывает некоторую реакцию. Строго из абсолютного значения набора точек, расположенных на одинаковом расстоянии вокруг единичного круга, скажем, больше, чем в 2 раза, числа полюсов и нулей этого отклика, можно оценить или вычислить количество полюсов и нулей, которые произвели эту выборочную величину ответ?

Добавлено: Требуется ли более 2X точек выборки для определения количества полюсов и нулей? (если учесть, что общая сумма меньше X).

Добавлено: Если существует более одного решения, можно ли найти или оценить минимальное решение (например, минимальное количество всех полюсов и нулей)?

hotpaw2
источник
Это гораздо более простая проблема без полюсов. По сути, это стало бы алгоритмом в команде matlab / octave firls.
Марк Боргердинг
Интересно, не могли бы вы проанализировать числитель и знаменатель частотной характеристики в терминах обобщенной проблемы собственных значений? Вы, вероятно, должны принять фазу (линейную для начинающих)
Марк Боргердинг
Я думаю, что все фильтры исключены! Если полюса и нули «достаточно близки», я думаю, что у вас будут проблемы, когда выборки ответа расположены на равном расстоянии. В любом случае, допустим, у вас плоский ответ, за исключением небольшого удара, где-то не слишком низкая частота. В зависимости от ваших предпочтений вы можете затем смоделировать это с помощью биквада (2 нуля и 2 полюса), или вы можете смоделировать его, используя вместо этого 4-6 нулей. Смежный вопрос: с учетом набора полюсов и нулей, какое минимальное количество точек отклика величины требуется для точного вычисления количества полюсов и нулей.
Ниарен
1
Я думаю, что проблема, как заявлено, не решаема. Вы можете взять любую произвольную систему и каскадировать ее с помощью одного или нескольких универсальных фильтров; это не повлияет на его величину отклика, но изменит количество полюсов / нулей в каскаде. Тогда для данного отклика величины будет бесконечно много чисел соответствующих полюсов и нулей. Это может быть другая история, если у вас был доступ к фазовой реакции системы. В противном случае вы могли бы точно оценить системный порядок (используя некоторую неуказанную схему). Хорошая проблема для размышления.
Джейсон Р
Исправлен вопрос об удалении бесконечного зоопарка всех проходных фильтров из решения.
hotpaw2

Ответы:

1

Теоретически это возможно сделать, хотя часто это не будет практичным.

ZКZК

ΣNзнак равно02*NбNZК-N-ЧАС(ZК)ΣNзнак равно12*NaNZК-Nзнак равноЧАС(ZК)
ZКω

Если M больше, чем N, то система уравнений линейно зависит. Вы можете найти порядок фильтра, начиная с N = 1 и увеличивая N, пока система уравнений не станет линейно зависимой. Наибольшее значение N, при котором система является линейно независимой, является фактическим порядком фильтра. Для этого подхода даже не имеет значения, какие частоты вы выбираете. Пока они различны, любой набор частот будет работать.

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

Hilmar
источник