Anonymous user
User:Spekkio: Difference between revisions
no edit summary
No edit summary |
No edit summary |
||
Line 33:
maclaurin series for different functions sin/cos/sqrt/pow etc... (see my recent post in [[Talk:Nth root]])
<lang lisp>(defun pie() 31415926535897932384626433832795028841971693993751058209749/10000000000000000000000000000000000000000000000000000000000)
(defun factorial (n)
Line 51:
(defun binom (alpha n)
(if (= n 0)
1
(if (= n 1)
alpha
(* (binom alpha (- n 1)) (/ (+ (- alpha n) 1) n))))
)
(defun power (a b n)
(if (= n 0)
1
(+
(* (binom b n) (powint (- a 1) n))
(power a b (- n 1)))))
(defun
(let ((cosn
))
(handler-case
(progn
(float cosn)
(if (= (+ prev cosn) prev ) prev
(powerw a b (1+ n) (+ prev cosn)))
)
(arithmetic-error (x) prev ))
)
)
Line 74 ⟶ 82:
(if (< b 1)
0
(
)
(if (< a 2)
(
0
)
Line 83 ⟶ 91:
)
(defun logw(x n prev)
(let ((cosn (* 2 (/ (powint x (+ (* 2 n) 1)) (+ (* 2 n) 1)))
))
(handler-case
(progn
(float cosn)
(
)
(
)
)
(defun
(+ (* 2 (/ (powint x (+ (* 2 n) 1)) (+ (* 2 n) 1)))
(logS x (- n 1)) ) ))
(defun
(defun
(let ((n10 (+ 10 n)))
(let ((
(if
(= (
(
)
)
))
(defun
(if (> x 0)
(loge x)
nil
))
(defun
(let ((cosn (
))
(handler-case
(progn
(float cosn)
(expw x (1+ n) (+ prev cosn))
)
(arithmetic-error (x) prev ))
)
)
(defun
(defun
(defun
(defun
(defun pown (a b) (powern a b))
(defun
(let ((cosn
))
(handler-case
(progn
(float cosn)
(sinew x (1+ n) (+ prev cosn))
)
(arithmetic-error (x) (+ prev cosn) ))
)
)
(defun sine(x) (sinew x 0 0))
(defun cosinew(x n prev)
(let ((cosn (* (/ (powint -1 n) (factorial (* 2 n))) (powint x (* 2 n)))))
(handler-case
(progn
(float cosn)
(cosinew x (1+ n) (+ prev cosn))
)
(arithmetic-error (x) (+ prev cosn) ))
)
)
(defun cosine(x) (cosinew x 0 0))
(defun tang(x) (/ (sine x) (cosine x)))
(defun asinew(x n prev)
(let ((cosn (/ (* (factorial (* 2 n)) (powint x (+ (* 2 n) 1))) (* (powint 4 n) (powint (factorial n) 2) (+ (* 2 n) 1)))
))
(handler-case
(progn
(float cosn)
(asinew x (1+ n) (+ prev cosn))
)
(arithmetic-error (x) prev ))
)
)
(defun
(if (< x 1)
(if (> x -1)
(
(/ (pie) -2)
)
Line 178 ⟶ 214:
test:
test:
[14]> (
0.09012195
[14]> (asin 9/100)
Line 191 ⟶ 227:
Test 2:
[4]> (
1.0
[4]> (asin (sin 1))
Line 197 ⟶ 233:
Test 3:
[15]> (
0.70710677
[15]> (
0.70710677
[15]> (= (
T
|