экспериментирую с БПФ и реальным сигналом.
Вся математика считается на PC. Принимаю выборку с внешнего АЦП и строю спектр.
Так вот было замечено, что получается погрешность по первой гармонике - очень мала. А потом чем выше гармоника, тем хуже. причём зависит не только от номера гармоники, но и от амплитуды.
скажем если 10-я гармоника амплитудой 0.5 то погрешность 2%, а если 5, то погрешность уже порядка 10%... почему так может быть? ещё заметил что погрешность вычисления сильно зависит спектрального состава вцелом.
Я понимаю, что чем выше гармоника - тем выше погрешность вычисления её амплитуды, но, когда я проверяю математику с массивом заполненым искуственно (просто заполняю массив в C вместо того чтобы выборки с АЦП принимать - то у меня погрешность по 40-й гармонике составляет 2.5%.
Чем может быть обусловлена такая разница? Я ждал что на железе будет чуть хуже, а тут несколько порядков!!!
|