Помимо практического значения подгонки такого многочлена к гауссову, вы можете просто проанализировать поведение вашего кода:
N=128;
y1=gausswin(N,4);
x1=[0:1/N:1-1/N]';
P=polyfit(x1,y1,12);
Вывод этого раздела всегда будет одинаковым, поэтомуВы можете выполнить это в MATLAB или Octave и просто извлечь полином P
для использования в вашем коде C, где вы включаете его как константу.Это менее гибко, чем переписывать все в C, но также быстрее.
В противном случае вы можете взглянуть на BLAS : BLAS определяет API для библиотек, используемых для линейной алгебры, таких как LAPACK (который используется MATLAB).Я подозреваю, что многие из этих библиотек будут реализовывать базовые операции, которые вам необходимы.
Добавление : Если у вас нет небольшого опыта работы с числовыми вычислениями или вы просто хотите отнять у вас много работы, вы можете рассмотреть Matlab Coder .