Цитата(thermit @ Jan 25 2015, 18:05)

Какие еще контрольные данные? Задается шаблон фильтра. По рассчитанным к-там строится ачх и смотрится факт ее вписывания/не вписывания в шаблон. На моей памяти, все было нормально с этой либой.
Ну я вообще сравнивал по коэффициентам. Очень уж сильный разнобой. В случае с FDesign вообще получил коэффициенты больше единицы, для БИХ-фильтра разве возможно? Наверное, не так её юзаю.
Контрольный пример. В WinFilter задаю ФНЧ с БИХ, порядок 2, Баттерворт, частота дискретизации 44100, частота среза 9кГц.
Получаю коэффициенты:
float ACoef[NCoef+1] = {
0.21320719693741449000,
0.42641439387482899000,
0.21320719693741449000
};
float BCoef[NCoef+1] = {
1.00000000000000000000,
-0.33915118494314400000,
0.19197997269398712000
};
Строю АЧХ. Соответствует.
Теперь по FDesign:
В переменной типа Filt_Params задаю:
apass1:=-1;
apass2:=-1;
astop1:=-80; //В децибелах? Иначе ругается.
astop2:=-80;
wpass1:=9000; //В герцах или круговая частота?
wpass2:=9000;
wstop1:=9100;
wstop2:=9100;
fsamp:=44100;
gain:=0;
acoefs:=@aCoeff;
bcoefs:=@bCoeff;
order:=2;
select:=#0;
approx:=#0;
implem:=#0;
Это задавалось из дельфей, но переменные передаются правильно, цеплялся дебаггером.
Вызываю функцию Calc_Butter_Coefs (оно?).
Получаю ACoeffs: (0, 0, 1.96522672836027), BCoeffs: (1, 1.98253712618972, 1.96522672836027)
Может, глянешь, есть под рукой примеры применения этой чудо-либы?