libdspl-2.0
Библиотека алгоритмов цифровой обработки сигналов
Функции анализа аналоговых и цифровых фильтров

Функции

int freqs (double *b, double *a, int ord, double *w, int n, complex_t *h)
 Расчет комплексного коэффициента передачи $ H(j \omega) $ аналогового фильтра. Подробнее...
 
int freqz (double *b, double *a, int ord, double *w, int n, complex_t *h)
 Расчет комплексного коэффициента передачи $ H \left(e^{j \omega} \right)$ цифрового фильтра. Подробнее...
 

Подробное описание

Функции анализа аналоговых и цифровых фильтров

Функции

◆ freqs()

int freqs ( double *  b,
double *  a,
int  ord,
double *  w,
int  n,
complex_t h 
)

Расчет комплексного коэффициента передачи $ H(j \omega) $ аналогового фильтра.


Функция рассчитывает значения комплексного коэффициента передачи $ H(j \omega)$ аналогового фильтра, заданного коэффициентами передаточной функции $ H(s) $:

\[ H(s) = \frac {\sum_{k = 0}^{N} b_k s^k} {\sum_{m = 0}^{N} a_m s^m}, \]

где $ N $ - порядок фильтра (параметр ord).

Комплексный коэффициент передачи рассчитывается путем подстановки $ s = j \omega $.

Аргументы
[in]bУказатель на вектор коэффициентов числителя передаточной функции $ H(s) $.
Размер вектора [ord+1 x 1].

[in]aУказатель на вектор коэффициентов знаменателя передаточной функции $ H(s) $.
Размер вектора [ord+1 x 1].

[in]ordПорядок фильтра. Количество коэффициентов числителя и знаменателя передаточной функции $ H(s) $ равно ord+1.

[in]wУказатель на вектор значений циклической частоты $ \omega $ (рад/с), для которого будет рассчитан комплексный коэффициент передачи $ H(j \omega) $.
Размер вектора [n x 1].

[in]nРазмер вектора циклической частоты w.

[out]hУказатель на вектор комплексного коэффициента передачи $ H(j \omega) $, рассчитанного для циклической частоты w.
Размер вектора [n x 1].
Память должна быть выделена.

Возвращает
RES_OK Комплексноый коэффициент передачи рассчитан успешно.
В противном случае код ошибки.
Автор
Бахурин Сергей www.dsplib.org
 

См. определение в файле filter_an.c строка 33

◆ freqz()

int freqz ( double *  b,
double *  a,
int  ord,
double *  w,
int  n,
complex_t h 
)

Расчет комплексного коэффициента передачи $ H \left(e^{j \omega} \right)$ цифрового фильтра.


Функция рассчитывает значения комплексного коэффициента передачи $ H \left(e^{j \omega} \right)$ цифрового фильтра, заданного коэффициентами передаточной функции $H(z)$:

\[ H(z) = \frac {\sum_{k = 0}^{N} b_k z^{-k}} {\sum_{m = 0}^{N} a_m z^{-m}}, \]

где $N$ - порядок фильтра (параметр ord).

Комплексный коэффициент передачи рассчитывается путем подстановки $z = e^{j \omega} $.

Аргументы
[in]bУказатель на вектор коэффициентов числителя передаточной функции $H(z)$.
Размер вектора [ord+1 x 1].

[in]aУказатель на вектор коэффициентов знаменателя передаточной функции $H(z)$.
Размер вектора [ord+1 x 1].

[in]ordПорядок фильтра. Количество коэффициентов числителя и знаменателя передаточной функции $H(z)$ равно ord+1.

[in]wУказатель на вектор значений нормированной циклической частоты $\omega$, для которого будет рассчитан комплексный коэффициент передачи $ H \left(e^{j \omega} \right)$.
Размер вектора [n x 1].

[in]nРазмер вектора нормированной циклической частоты w.

[out]hУказатель на вектор комплексного коэффициента передачи $ H \left(e^{j \omega} \right)$, рассчитанного для циклической частоты w.
Размер вектора [n x 1].
Память должна быть выделена.

Возвращает
RES_OK Комплексный коэффициент передачи расcчитан успешно.
В противном случае код ошибки.
Заметки
Комплексный коэффициент передачи $ H \left(e^{j \omega} \right)$ цифрового фильтра представляет собой $ 2 \pi-$периодическую функцию нормированной циклической частоты $\omega$. Поэтому анализ цифровых фильтров целесообразно вести на одном периоде повторения $ H \left(e^{j \omega} \right)$, т.е. в интервале $\omega$ от 0 до $2 \pi$, или от $-\pi$ до $ \pi$.
Кроме того известно, что для фильтра с вещественными коэффициентами $ H \left(e^{j \omega} \right) = H^* \left(e^{-j \omega} \right)$, а значит, анализ цифрового фильтра с вещественными коэффициентами достаточно вести для нормированной частоты $\omega$ от 0 до $\pi$.
Автор
Бахурин Сергей www.dsplib.org

См. определение в файле filter_an.c строка 333