EngeeDSP.FastTransversalFilter
Быстрый трансверсальный адаптивный КИХ-фильтр по методу наименьших квадратов.
| Библиотека |
|
Описание
Системный объект EngeeDSP.FastTransversalFilter вычисляет выходные данные и ошибку фильтрации, используя быстрый трансверсальный адаптивный КИХ-фильтр, работающий по методу наименьших квадратов.
Чтобы реализовать адаптивный КИХ-фильтр, выполните следующие действия:
-
Создайте объект EngeeDSP.FastTransversalFilter и установите его свойства.
-
Вызовите объект с аргументами, как если бы это была функция.
Чтобы узнать подробнее о том, как работать с системными объектами, см. Системные объекты Engee.
Синтаксис
Создание
-
ftf = EngeeDSP.FastTransversalFilter()— возвращает системный объект быстрого трансверсального адаптивного КИХ-фильтраftf, работающего по методу наименьших квадратов. Этот объект вычисляет отфильтрованный выходной сигнал и ошибку фильтрации на основе заданных входного и требуемого сигналов. -
ftf = EngeeDSP.FastTransversalFilter(length)— возвращает системный объект быстрого трансверсального адаптивного КИХ-фильтраftf, работающего по методу наименьших квадратов, у которого для свойства Length установлено значениеlength. -
ftf = EngeeDSP.FastTransversalFilter(___,Name=Value)— возвращает системный объект быстрого трансверсального адаптивного КИХ-фильтраftf, работающего по методу наименьших квадратов, с заданными свойствами в виде парыName=Value, гдеName— имя свойства, аValue— соответствующее значение. Можно указать несколько пар «имя-значение», порядок пар не имеет значения. Неуказанные свойства сохраняют свои значения по умолчанию.
Аргументы
Входные аргументы
#
d —
требуемый сигнал
скаляр | вектор-столбец
Details
Быстрый трансверсальный фильтр адаптирует свои коэффициенты для минимизации ошибки err и максимально точного приближения входного сигнала x к требуемому сигналу d.
Входной сигнал x и требуемый сигнал d должны иметь одинаковый размер и тип данных.
| Типы данных |
|
| Поддержка комплексных чисел |
Да |
Выходные аргументы
#
y —
отфильтрованный выходной сигнал
скаляр | вектор-столбец
Details
#
err —
разница между выходным и требуемым сигналами
скаляр | вектор-столбец
Details
Разница между выходным сигналом y и требуемым сигналом d, возвращаемая в виде скаляра или вектора-столбца. Цель адаптивного фильтра — минимизация этой ошибки. Объект адаптирует свои коэффициенты, стремясь к оптимальным значениям, при которых выходной сигнал максимально приближен к требуемому.
| Типы данных |
|
| Поддержка комплексных чисел |
Да |
Свойства
#
Length —
длина вектора коэффициентов фильтра
Целое число типа Int64
Details
Длина вектора коэффициентов фильтра, заданная как положительное целое число.
Значение по умолчанию — 32.
#
InitialPredictionErrorPower —
начальная мощность ошибки предсказания
Вещественное число
Details
Начальное значение векторов ошибки прямого и обратного предсказания, заданное как положительный скаляр. Это значение должно быть достаточно большим, чтобы обеспечить устойчивость и предотвратить чрезмерно частое срабатывание механизма восстановления коэффициента усиления Калмана.
Значение по умолчанию — 10.
#
ForgettingFactor —
коэффициент забывания для быстрого трансверсального фильтра
Вещественное число
Details
Коэффициент забывания для быстрого трансверсального фильтра, заданный как скаляр в диапазоне (0, 1]. Значение 1 означает бесконечную память при адаптации для поиска новых коэффициентов фильтра.
Для достижения наилучших результатов установите значение этого свойства в диапазоне [1 − 0.5/L, 1], где L — значение свойства Length.
Значение по умолчанию — 1.
Зависимости
Чтобы использовать это свойство, установите для свойства Method значение "Fast transversal least-squares".
# InitialConversionFactor — начальное значение коэффициента преобразования для быстрого трансверсального фильтра
Details
Начальное значение коэффициента преобразования для быстрого трансверсального фильтра.
Значение этого свойства зависит от свойства Method:
-
"Fast transversal least-squares"— свойство InitialConversionFactor должно представлять собой положительный скаляр, который меньше или равен1. В этом случае значением по умолчанию является1. -
"Sliding-window fast transversal least-squares"— свойство InitialConversionFactor должно представлять собой вектор из двух элементов. Первый элемент вектора должен находиться в диапазоне[0, 1], а второй — быть меньше или равным−1. В этом случае значением по умолчанию является[1, −1].
#
LockCoefficients —
фиксация коэффициентов фильтра
Логический тип
Details
Фиксация значений коэффициентов фильтра, заданная как false (по умолчанию) или true. Значение false означает, что объект непрерывно обновляет коэффициенты фильтра. Если для этого свойства установлено значение true, коэффициенты фильтра не обновляются и их значения остаются неизменными.
#
SlidingWindowBlockLength —
ширина скользящего окна
Вещественное число
Details
Ширина скользящего окна, заданная как целое положительное число, которое больше или равно значению свойства Length. По умолчанию используется значение свойства Length.
Зависимости
Чтобы использовать это свойство, установите для свойства Method значение "Sliding-window fast transversal least-squares".