Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
К.Р. Синтез цифровых фильтов.DOC
Скачиваний:
43
Добавлен:
15.11.2019
Размер:
2.16 Mб
Скачать

6.1. Анализ фильтров и выполнение

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

ABS – абсолютное значение и перевод строки в число:

ABS(X) – абсолютное значение элементов . Когда комплексное, то ABS(X) – комплексные модули (величина) элементов X.

Смотри также ANGLE, UNWRAP.

ABS(S), где – строковая переменная MATLAB, возвращает числовое значение, записанное в ASCII-символах строки.

Смотри также SETSTR.

ANGLE – угол фазы:

ANGLE(H) возвращает углы фазы (в радианах) матрицы с комплексными элементами.

Смотри также ABS, UNWRAP.

CONV – свертка и умножение многочленов:

C = CONV(A, B) свертывает вектора и . Результат – вектор длины LENGTH(A) + LENGTH(B) – 1.

Если и – вектора с полиномиальными коэффициентами, то свертывание их эквивалентно умножению двух многочленов.

Смотри также XCORR, DECONV, CONV2.

FFTFILT – метод overlap/add (перекрыть/добавить) фильтрации с использо-ванием FFT:

Y = FFTFILT(B,X) фильтрует вектор с FIR-фильтром B, используя метод перекрыть/добавить;

Y = FFTFILT(B,X,N) использует метод перекрыть/добавить для фильтрования с , используя -точечный метод FFT.

Смотри также FILTER.

FILTER – цифровой фильтр:

Y = FILTER(B, A, X) фильтрует данные вектора с фильтром, описанным векторами и для создания фильтрованных данных Y. Фильтр – реализация прямой формы 2 стандартного разностного уравнения

[Y, Zf] = FILTER(B,A,X,Zi) дает доступ к начальному и конечному состояниям задержек Zi и Zf.

Смотри также FILTFILT.

FILTFILT – прямая и обратная цифровая фильтрация с нулевой фазой:

Y = FILTFILT(B,A,X) фильтрует данные в векторе с фильтром, описанным векторами A и B для создания фильтрованных данных . Фильтр описывается разностным уравнением:

После прямой фильтрации отфильтрованная последовательность разворачивается и вновь пропускается через фильтр. В результирующей последовательности отсутствуют фазовые искажения, при этом фильтр имеет двойной порядок. Длина входного должна быть больше, чем мах(length(b)–1,length(a)–1).

Смотри также FILTER.

Filtic – cоздание начального состояния для функции filter:

Z = filtic(B,A,Y,X) конвертирует пришедший входной вектор и выходной в начальное значение реализованной в прямой форме 2 переменной Z, необходимое в структуре фильтра. Вектора и содержат входную и выходную последовательности в таком порядке:

где nb = length(B)–1 и na = length(A)–1. Короткие входные вектора и дополняются нулями до длины nb и na соответственно. Если или длиннее, чем или , то значения, превосходящие длины, не подходят для инициализации фильтра, а потому игнорируются.

Z = filtic(B,A,Y ) предполагает, что в прошлом.

Смотри также FILTER.

Freqs – частотная характеристика аналогового фильтра:

H = FREQS(B,A,W) возвращает вектор (комплексный частотный отклик) фильтра

.

Частотный отклик имеет значения в точках вектора . Амплитуда и фаза могут быть получены вызовом FREQS(B,A,W) без выходных параметров.

[H,W] = FREQS(B,A) автоматически выбирает значение частоты 200, на котором и вычисляется частотная характеристика.

FREQS(B,A,N) выбирает частот.

Смотри также LOGSPACE, POLYVAL, INVFREQS и FREQZ.