Function: math-to-exponentials
math-to-exponentials is a byte-compiled function defined in
calcalg2.el.gz.
Signature
(math-to-exponentials EXPR)
Source Code
;; Defined in /usr/src/emacs/lisp/calc/calcalg2.el.gz
(defun math-to-exponentials (expr)
(and (consp expr)
(= (length expr) 2)
(let ((x (nth 1 expr))
(pi (if calc-symbolic-mode '(var pi var-pi) (math-pi)))
(i (if calc-symbolic-mode '(var i var-i) '(cplx 0 1))))
(cond ((eq (car expr) 'calcFunc-exp)
(list '^ '(var e var-e) x))
((eq (car expr) 'calcFunc-sin)
(or (eq calc-angle-mode 'rad)
(setq x (list '/ (list '* x pi) 180)))
(list '/ (list '-
(list '^ '(var e var-e) (list '* x i))
(list '^ '(var e var-e)
(list 'neg (list '* x i))))
(list '* 2 i)))
((eq (car expr) 'calcFunc-cos)
(or (eq calc-angle-mode 'rad)
(setq x (list '/ (list '* x pi) 180)))
(list '/ (list '+
(list '^ '(var e var-e)
(list '* x i))
(list '^ '(var e var-e)
(list 'neg (list '* x i))))
2))
((eq (car expr) 'calcFunc-sinh)
(list '/ (list '-
(list '^ '(var e var-e) x)
(list '^ '(var e var-e) (list 'neg x)))
2))
((eq (car expr) 'calcFunc-cosh)
(list '/ (list '+
(list '^ '(var e var-e) x)
(list '^ '(var e var-e) (list 'neg x)))
2))
(t nil)))))