Перейти к содержанию
    

IIR direct form I загрузка коэффициентов

Всем привет!

 

Есть функция, реализующая фильтр IIR direct form I.

На вход подаются коэффициенты A и B:

float A[2*N];

float B[2*N+1];

где N = число биквадратных стадий

 

Не пойму, почему так мало коэффициентов B ?

Ведь на каждую стадию приходится 3 коэффициента B (B0,B1,B2) и 2 коэффициента А (A1,A2)

Как правильно передать B коэффициенты, если их 3 на стадию ?

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Всем привет!

 

Есть функция, реализующая фильтр IIR direct form I.

На вход подаются коэффициенты A и B:

float A[2*N];

float B[2*N+1];

где N = число биквадратных стадий

 

Не пойму, почему так мало коэффициентов B ?

Ведь на каждую стадию приходится 3 коэффициента B (B0,B1,B2) и 2 коэффициента А (A1,A2)

Как правильно передать B коэффициенты, если их 3 на стадию ?

 

B0 можно приравнять к 1, поделив все коэф-ты B на него и введя усиление секции. Тогда будем иметь дело с 2 A, 2 B на секцию и общим усилением всех секций. Отсюда 2*N+1.

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

B0 можно приравнять к 1, поделив все коэф-ты B на него и введя усиление секции. Тогда будем иметь дело с 2 A, 2 B на секцию и общим усилением всех секций. Отсюда 2*N+1.

 

Все оказалось проще. Надо перемножить передаточные функции всех секций! Получается 2*N+1 кэфов A и 2*N+1 кэфов B. Отбрасываем кэф A0, он всегда = 1. Остается 2*N кэфов A.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Все оказалось проще. Надо перемножить передаточные функции всех секций! Получается 2*N+1 кэфов A и 2*N+1 кэфов B. Отбрасываем кэф A0, он всегда = 1. Остается 2*N кэфов A.

 

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...