Lines Matching refs:atan
6249 #--ENTRY POINT FOR ATAN(X), HERE X IS FINITE, NON-ZERO, AND NOT NAN'S
6268 #--THE IDEA IS ATAN(X) = ATAN(F) + ATAN( [X-F] / [1+XF] ).
6269 #--SO IF F IS CHOSEN TO BE CLOSE TO X AND ATAN(F) IS STORED IN
6270 #--A TABLE, ALL WE NEED IS TO APPROXIMATE ATAN(U) WHERE
6273 #--ATAN(U) IS A VERY SHORT POLYNOMIAL AND THE INDEXING TO
6277 #--ATAN(X) DIRECTLY WILL NEED TO USE A RATIONAL APPROXIMATION
6285 #--ARE ONLY 8 TIMES 16 = 2^7 = 128 |F|'S. SINCE ATAN(-|F|) IS
6286 #-- -ATAN(|F|), WE NEED TO STORE ONLY ATAN(|F|).
6300 #--WHILE THE DIVISION IS TAKING ITS TIME, WE FETCH ATAN(|F|)
6301 #--CREATE ATAN(F) AND STORE IT IN ATANF, AND
6311 asr.l &7,%d1 # INDEX INTO TBL OF ATAN(|F|)
6313 add.l %d1,%a1 # ADDRESS OF ATAN(|F|)
6316 mov.l (%a1)+,ATANFLO(%a6) # ATANF IS NOW ATAN(|F|)
6319 or.l %d1,ATANF(%a6) # ATANF IS NOW SIGN(F)*ATAN(|F|)
6325 #--U IN FP0, WE ARE NOW READY TO COMPUTE ATAN(U) AS
6344 fadd.x %fp1,%fp0 # ATAN(U), FP1 RELEASED
6349 fadd.x ATANF(%a6),%fp0 # ATAN(X)
6361 #--ATAN(X) BY X + X*Y*(B1+Y*(B2+Y*(B3+Y*(B4+Y*(B5+Y*B6)))))
6405 #--|X| < 2^(-40), ATAN(X) = X
6415 #--RETURN SIGN(X)*PI/2 + ATAN(-1/X).
6419 #--APPROXIMATE ATAN(-1/X) BY
6491 #--ENTRY POINT FOR ATAN(X) FOR DENORMALIZED ARGUMENT
6519 # asin(X) = atan( x / z ). #
6550 #--ASIN(X) = ATAN( X / SQRT( (1-X)(1+X) ) )
6584 #--|X| < 2^(-40), ATAN(X) = X
6620 # acos(X) = 2 * atan( sqrt(z) ). #
6643 #--ACOS(X) = 2 * ATAN( SQRT( (1-X)/(1+X) ) )
6656 bsr satan # ATAN(SQRT([1-X]/[1+X]))
6660 fadd.x %fp0,%fp0 # 2 * ATAN( STUFF )
8600 # atan(X) := sgn / (+0). #