"introspec" читается как "интроспек". некоторые читают как "интроспец", но я никакой не спец. я спек.
Кстати о параболах. Я как раз недавно натыкался на одну статью. Там приводились коэффициенты многочлена 3-го порядка (кубической параболы) для приближения косинуса на интервале от 0 до pi/2. Так вот, многочлена третьего порядка оказалось достаточно, чтобы погрешность была менее 0.001! Для наших же целей 8-битной точности может оказаться достаточно и многочлена 2-го порядка, т.е. параболы. Ее коэффициенты должны быть вычислены методом минимакс-аппроксимации. Ну а получив четверть периода, можно, используя симметрию, получить и полный период.
---------- Post added at 13:07 ---------- Previous post was at 13:04 ----------
Вот коэффициенты минимакс-полинома третьего порядка для косинуса на интервале 0..pi/2:
y = 0.9998864206+0.00469*x-0.530309*x^2+0.063046*x^3;
Максимальная абсолютная погрешность для приведенной выше формулы - 0.000114
С любовью к вам, Yandex.Direct
Размещение рекламы на форуме способствует его дальнейшему развитию
Последний раз редактировалось introspec; 09.10.2013 в 14:14.
"introspec" читается как "интроспек". некоторые читают как "интроспец", но я никакой не спец. я спек.
Кубический полином вычислять - сложнее. А квадратичный - может и ненамного сложнее. Константы при умножении закодировать жестко, как я это сделал для своей реализации рекурсивного алгоритма. А там видно будет. Значение x^2 можно вычислять так же, как это делается в алгоритме Брезенхама - по рекуррентному соотношению y[i] = y[i-1] + 2*x*dx
Побочный результат такого алгоритма - парабола. Ее можно использовать для быстрого умножения, подобно тому, как это сделано в Elite.
Последний раз редактировалось Barmaley_m; 09.10.2013 в 14:24.
А что, Брезенхейм не прокатил?
Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)