Приближение рациональной алгебраической функции к греху (x):
f = (C1 * x) / (C2 * x^2 + 1.)
с константами:
c1 = 1.043406062
c2 = .2508691922
Эти константы были найдены с помощью функции наименьших квадратов, DHFTI,Лоусон и Хансон.Это допустимо только в диапазоне от 0 до π / 2, поэтому уменьшите входное значение следующим образом:
IF (t < pi) THEN
IF (t < pi/2) THEN
x = t
ELSE
x = pi - t
END IF
ELSE
IF (t < (3./2)*pi) THEN
x = t - pi
ELSE
x = twopi - t
END IF
END IF
Затем рассчитайте:
f = (C1 * x) / (C2 * x*x + 1.0)
IF (t > pi) f = -f
Если входное значение находится за пределами [0, 2π], вам нужно взять х мод 2 πРезультаты должны быть в пределах 5% от настоящего синуса.