Function: math-known-tan
math-known-tan is a byte-compiled function defined in calc-alg.el.gz.
Signature
(math-known-tan PLUS N MUL)
Source Code
;; Defined in /usr/src/emacs/lisp/calc/calc-alg.el.gz
(defun math-known-tan (plus n mul)
(setq n (math-mul n mul))
(and (math-num-integerp n)
(setq n (math-mod (math-trunc n) 120))
(if (> n 60)
(and (setq n (math-known-tan plus (- 120 n) 1))
(math-neg n))
(if (math-zerop plus)
(and (or calc-symbolic-mode
(memq n '(0 30 60)))
(cdr (assq n '( (0 . 0)
(10 . (- 2 (calcFunc-sqrt 3)))
(12 . (calcFunc-sqrt
(- 1 (* (/ 2 5) (calcFunc-sqrt 5)))))
(15 . (- (calcFunc-sqrt 2) 1))
(20 . (/ (calcFunc-sqrt 3) 3))
(24 . (calcFunc-sqrt
(- 5 (* 2 (calcFunc-sqrt 5)))))
(30 . 1)
(36 . (calcFunc-sqrt
(+ 1 (* (/ 2 5) (calcFunc-sqrt 5)))))
(40 . (calcFunc-sqrt 3))
(45 . (+ (calcFunc-sqrt 2) 1))
(48 . (calcFunc-sqrt
(+ 5 (* 2 (calcFunc-sqrt 5)))))
(50 . (+ 2 (calcFunc-sqrt 3)))
(60 . (var uinf var-uinf))))))
(cond ((eq n 0) (math-normalize (list 'calcFunc-tan plus)))
((eq n 60) (math-normalize (list '/ -1
(list 'calcFunc-tan plus))))
(t nil))))))