;; from http://r...content-available-to-author-only...e.org/wiki/Numerical_integration#Common_Lisp
(defun left-rectangle (f a b n &aux (d (/ (- b a) n)))
(* d (loop for x from a below b by d summing (funcall f x))))
(defun integral (f)
(left-rectangle f 0 1 10))
(defun integral-range (f a b)
(* (- b a) (integral #'(lambda (x) (funcall f (float (+ a (* x (- b a)))))))))
(defun test-fn (x) (* x 2))
(trace test-fn)
(let ((i (integral-range #'test-fn 3 9)))
(format t "Result of numerical integration: ~a~%" i)
(format t "Error of numerical integration: ~a~%" (abs (- i (- (* 9 9) (* 3 3))))))
OzsgZnJvbSBodHRwOi8vci4uLmNvbnRlbnQtYXZhaWxhYmxlLXRvLWF1dGhvci1vbmx5Li4uZS5vcmcvd2lraS9OdW1lcmljYWxfaW50ZWdyYXRpb24jQ29tbW9uX0xpc3AKKGRlZnVuIGxlZnQtcmVjdGFuZ2xlIChmIGEgYiBuICZhdXggKGQgKC8gKC0gYiBhKSBuKSkpCiAgKCogZCAobG9vcCBmb3IgeCBmcm9tIGEgYmVsb3cgYiBieSBkIHN1bW1pbmcgKGZ1bmNhbGwgZiB4KSkpKQoKKGRlZnVuIGludGVncmFsIChmKQogIChsZWZ0LXJlY3RhbmdsZSBmIDAgMSAxMCkpCgoKKGRlZnVuIGludGVncmFsLXJhbmdlIChmIGEgYikKICAoKiAoLSBiIGEpIChpbnRlZ3JhbCAjJyhsYW1iZGEgKHgpIChmdW5jYWxsIGYgKGZsb2F0ICgrIGEgKCogeCAoLSBiIGEpKSkpKSkpKSkKCihkZWZ1biB0ZXN0LWZuICh4KSAoKiB4IDIpKQoodHJhY2UgdGVzdC1mbikKICAKKGxldCAoKGkgKGludGVncmFsLXJhbmdlICMndGVzdC1mbiAzIDkpKSkKICAoZm9ybWF0IHQgIlJlc3VsdCBvZiBudW1lcmljYWwgaW50ZWdyYXRpb246IH5hfiUiIGkpCiAgKGZvcm1hdCB0ICJFcnJvciBvZiBudW1lcmljYWwgaW50ZWdyYXRpb246IH5hfiUiIChhYnMgKC0gaSAoLSAoKiA5IDkpICgqIDMgMykpKSkpKQ==