[an error occurred while processing this directive]
|
сложность вычислений определяется сложностью ф-и atan2. Atan2 после разборки по квадрантам вычисляется через atan(x/y). Вообще полезно найти и посмотреть эти функции в библиотеках С и ассемблерных. После этого остаётся выбрать себе аппроксимацию atan с достаточной для задачи точностью. С относительной точностью в 0.5% есть например такая апроксимация
в интервале от -pi/2 до +pi/2
atan(x) = (x<0) ? x*(1.0597+0.27131*x) : x*(1.0597-0.27131*x)
Для DSP скорее лучше вычислять без сравнений, через abs(x)
E-mail: info@telesys.ru