[an error occurred while processing this directive]
|
Хочу использовать новый для себя метод определения частоты, могу поделиться, если общественность желает. Может другую тему открыть?
Нашел в сети еще один алгоритм расчета арктангенса, привожу его ниже, может кому пригодится.
Для вычисления арктангенса использован следующий алгоритм:
Вначале проверить знак x, изменить знак, сделав аргумент неотрицательным.
Затем если x>1, обратить его: x1=1/x.
Затем сокращаем область определения, используя формулу:
atan(x)=pi/6+atan((x*sqrt(3)-1)/(x+sqrt(3))).
Здесь sqrt(3) квадратный корень из 3. При этом необходимо запомнить число шагов (возможно, ноль).
После этого, арктангенс на интервале [0,pi/12] аппроксимируется формулой (для single precision, в случае double формула должна быть улучшена!):
atan(x) = x*(0.55913709/(1.4087812+x2) +0.60310579-0.05160454*x2)
Затем к полученному результату добавляется столько pi/6, сколько было шагов сокращения области определения. Затем, в случае обращения, аргумента, результат вычитается из pi/2. Затем, если была смена знака, у результата меняем знак.
E-mail: info@telesys.ru