Как к Фильтрации данных в командной строке

Простой фильтр полосы пропускания

Использование idfilt применять полосу пропускания и другие пользовательские фильтры к временному интервалу или частотному диапазону iddata объект.

В общем случае можно задать любой пользовательский фильтр. Используйте этот синтаксис, чтобы отфильтровать iddata объект data использование фильтра под названием filter:

fdata = idfilt(data,filter)

В самом простом случае можно задать фильтр полосы пропускания для данных временного интервала с помощью следующего синтаксиса:

fdata = idfilt(data,[wl wh])

В этом случае, w1 и wh представляйте низкие частоты и высокие частоты полосы пропускания, соответственно.

Можно задать несколько полос пропускания, можно следующим образом:

filter=[[w1l,w1h];[ w2l,w2h]; ....;[wnl,wnh]]

Фильтром является n- 2 матрица, где каждая строка задает полосу пропускания в радианах в секунду.

Задавать полосу задерживания между ws1 и ws2Использование

filter = [0 ws1; ws2 Nyqf]

где, Nyqf частота Найквиста.

Для данных временного интервала фильтрацией полосы пропускания являются расположенные каскадом Фильтры Баттерворта заданного порядка. Порядок фильтра по умолчанию равняется 5. Фильтр Баттерворта совпадает с butter в продукте Signal Processing Toolbox™. Для данных частотного диапазона выберите обозначенные фрагменты данных, чтобы выполнить фильтрацию полосы пропускания.

Определение пользовательского фильтра

Использование idfilt применять полосу пропускания и другие пользовательские фильтры к временному интервалу или частотному диапазону iddata объект.

В общем случае можно задать любой пользовательский фильтр. Используйте этот синтаксис, чтобы отфильтровать iddata объект data использование фильтра под названием filter:

fdata = idfilt(data,filter)

Можно задать общий single-input/single-output (SISO) система для фильтрации данные частотного диапазона или временной интервал. Для частотного диапазона только, можно задать (непараметрическую) частотную характеристику фильтра.

Вы используете этот синтаксис, чтобы отфильтровать iddata объект data использование пользовательского фильтра задано filter:

fdata = idfilt(data,filter)

filter может быть также любое следующее:

filter = idm
filter = {num,den}
filter = {A,B,C,D}

idm идентифицированная линейная модель SISO или объект LTI. Для получения дополнительной информации об объектах LTI, см. документацию Control System Toolbox™.

{num,den} задает фильтр как передаточную функцию как массив ячеек числителя и коэффициентов фильтра знаменателя.

{A,B,C,D} массив ячеек матриц пространства состояний SISO.

Специально для данных частотного диапазона вы задаете частотную характеристику фильтра:

filter = Wf

Здесь, Wf вектор из действительных или комплексных чисел, которые задают частотную характеристику фильтра, где вводы и выводы data на частоте data.Frequency(kf) умножаются на Wf(kf). Wf вектор-столбец с длиной, равной количеству частот в data.

Когда data содержит несколько экспериментов, Wf массив ячеек с длиной, равной количеству экспериментов в data.

Причинные и непричинные фильтры

Для данных временного интервала фильтрация является причинной по умолчанию. Причинные фильтры обычно вводят фазу, переключают результаты на нижний регистр. Использовать непричинный фильтр нулевой фазы (соответствующий filtfilt в продукте Signal Processing Toolbox), задайте третий аргумент в idfilt:

fdata = idfilt(data,filter,'noncausal')

Для данных частотного диапазона сигналы умножаются на частотную характеристику фильтра. С фильтрами, заданными, когда, полоса пропускания фильтрует, это вычисление дает идеал, фильтрация нулевой фазы (“фильтры кирпичной стены”). Удалены частоты, которые были присвоены нулевой вес фильтром (вне полосы пропускания или с помощью частотной характеристики).

Когда вы применяетесь idfilt к idfrd объект данных, данные сначала преобразованы в частотный диапазон iddata объект (см. Преобразование Между Данными Частотного диапазона и Частотной характеристики). Результат iddata объект.

Похожие темы