Цитата(baralgin @ Apr 27 2010, 21:35)

Этот участок кода вызывает подозрение. На fixed-point'е веротно не будет работать(как надо). Наверное лучше разделить: сначала умножение, потом деление.
Да, флагом махать я начал раньше времени насчет "fixed-point". В общем, приведённый выше фрагмент кода работает с fixed-point коеффицентами, если в объявлении матриц коэффиециентов изменить тип на "double".
С fixed-point всё не так просто, как мне казалось. FDATOOL выкидывает форматы представления с фиксированной запятой в комментарии, так что породить код, который бы с ходу хавал бы хедер не выйдет.
Цитата(baralgin @ Apr 27 2010, 21:35)

Да и в целом код не выглядит ни оптимальным ни красивым.
Согласен. Но, думаю, более оптимальный и красивый код можно породить только если вычленить коэффиециенты из матриц NUM и DEN в какие-то другие структуры. И что самое главное, разделить на этапе написания кода блоки "gain" и фильтров.
Цитата(baralgin @ Apr 27 2010, 21:35)

Сам начал разбираться этим вопросом в последнии дни. Ваши приведённые примеры значительно помогли(мне

). Странно, но в дебрях матлабовского хэлпа ничего не находится по алгоритму вычисления. А в широком поле интернета только стандартная формула (типа y = w-1*y-1+w-2*y-2, wi = ... ), в которой коэффициентов много меньше чем в сабжевом хидере.
Была та же проблема. Формул куча, кода шиш. Породил какой-никакой код и выложил тут.
У приведённого выше кода есть большой плюс: он опирается на порождённый fdatool хедером с минимальными изменениями в нём.