Loading special-functions/exponential-functions.lisp +11 −6 Original line number Diff line number Diff line ;; Exponential functions ;; Liam Healy, Tue Mar 21 2006 - 17:05 ;; Time-stamp: <2011-10-29 23:37:02EDT exponential-functions.lisp> ;; Time-stamp: <2011-11-24 22:56:28EST exponential-functions.lisp> ;; ;; Copyright 2006, 2007, 2008, 2009, 2011 Liam M. Healy ;; Distributed under the terms of the GNU General Public License Loading @@ -20,6 +20,8 @@ (in-package :gsl) ;;; /usr/include/gsl/gsl_sf_exp.h ;;;;**************************************************************************** ;;;; Exponential Functions ;;;;**************************************************************************** Loading @@ -30,7 +32,7 @@ "The exponential function.") (defmfun exp-scaled (x) "gsl_sf_exp_e10_e" ((x :double) (ret sf-result-e10)) "gsl_sf_exp_e10_e" ((x :double) (ret (:pointer (:struct sf-result-e10)))) :documentation ; FDL "The exponential function scaled. This function may be useful if the value of exp(x) would overflow the numeric range of double.") Loading @@ -43,7 +45,8 @@ return the product y \exp(x).") (defmfun exp-mult-scaled (x y) "gsl_sf_exp_mult_e10_e" ((x :double) (y :double) (ret sf-result-e10)) "gsl_sf_exp_mult_e10_e" ((x :double) (y :double) (ret (:pointer (:struct sf-result-e10)))) :documentation ; FDL "The product y \exp(x) with extended numeric range.") Loading Loading @@ -71,7 +74,8 @@ 2(\exp(x)-1-x)/x^2 = 1 + x/3 + x^2/(3*4) + x^3/(3*4*5) + ...") (defmfun exprel-n (n x) "gsl_sf_exprel_n_e" ((n :int) (x :double) (ret (:pointer (:struct sf-result)))) "gsl_sf_exprel_n_e" ((n :int) (x :double) (ret (:pointer (:struct sf-result)))) :documentation ; FDL "N-relative exponential, which is the n-th generalization of the functions #'exprel and #'exprel-2.") Loading @@ -88,7 +92,7 @@ (defmfun exp-err-scaled (x dx) "gsl_sf_exp_err_e10_e" ((x :double) (dx :double) (ret sf-result-e10)) ((x :double) (dx :double) (ret (:pointer (:struct sf-result-e10)))) :documentation ; FDL "Exponentiate x with an associated absolute error dx and with extended numeric range.") Loading @@ -103,7 +107,8 @@ (defmfun exp-mult-err-scaled (x dx y dy) "gsl_sf_exp_mult_err_e10_e" ((x :double) (dx :double) (y :double) (dy :double) (ret sf-result-e10)) ((x :double) (dx :double) (y :double) (dy :double) (ret (:pointer (:struct sf-result-e10)))) :documentation ; FDL "The product y \exp(x) for the quantities x, y with associated absolute errors dx, dy and with Loading special-functions/gamma.lisp +5 −5 Original line number Diff line number Diff line ;; Gamma functions ;; Liam Healy, Thu Apr 27 2006 - 22:06 ;; Time-stamp: <2011-10-30 00:37:46EDT gamma.lisp> ;; Time-stamp: <2011-11-24 22:42:00EST gamma.lisp> ;; ;; Copyright 2006, 2007, 2008, 2009, 2010, 2011 Liam M. Healy ;; Distributed under the terms of the GNU General Public License Loading Loading @@ -56,7 +56,7 @@ (ret (:pointer (:struct sf-result))) (sign (:pointer :double))) :return ((multiple-value-bind (val err) (cffi:convert-from-foreign ret '(:pointer (:struct sf-result))) (cffi:mem-ref ret '(:struct sf-result)) (values val (cffi:mem-ref sign :double) err ))) :documentation ; FDL "Compute the sign of the gamma function and the logarithm of Loading Loading @@ -167,7 +167,7 @@ log(|(a)_x|) and sgn = sgn((a)_x) where (a)_x := Gamma(a + x)/Gamma(a), subject to a, a+x not being negative integers." :return ((multiple-value-bind (val err) (cffi:convert-from-foreign ret '(:pointer (:struct sf-result))) (cffi:mem-ref ret '(:struct sf-result)) (values val (cffi:mem-ref sign :double) err )))) (defmfun relative-pochammer (a x) Loading special-functions/hypergeometric.lisp +5 −3 Original line number Diff line number Diff line ;; Hypergeometric function ;; Liam Healy, Fri Apr 28 2006 - 23:00 ;; Time-stamp: <2011-10-29 23:40:22EDT hypergeometric.lisp> ;; Time-stamp: <2011-11-24 22:46:31EST hypergeometric.lisp> ;; ;; Copyright 2006, 2007, 2008, 2009, 2011 Liam M. Healy ;; Distributed under the terms of the GNU General Public License Loading @@ -18,6 +18,8 @@ ;; You should have received a copy of the GNU General Public License ;; along with this program. If not, see <http://www.gnu.org/licenses/>. ;; /usr/include/gsl/gsl_sf_hyperg.h (in-package :gsl) (defmfun hypergeometric-0F1 (c x) Loading Loading @@ -72,7 +74,7 @@ (defmfun hypergeometric-U-e10 ((m integer) (n integer) x) "gsl_sf_hyperg_U_int_e10_e" ((m :int) (n :int) (x :double) (ret sf-result-e10)) ((m :int) (n :int) (x :double) (ret (:pointer (:struct sf-result-e10)))) :definition :method :export t :documentation ; FDL Loading @@ -82,7 +84,7 @@ (defmfun hypergeometric-U-e10 ((a float) (b float) x) "gsl_sf_hyperg_U_e10_e" ((a :double) (b :double) (x :double) (ret sf-result-e10)) ((a :double) (b :double) (x :double) (ret (:pointer (:struct sf-result-e10)))) :definition :method :documentation ; FDL "The confluent hypergeometric function Loading Loading
special-functions/exponential-functions.lisp +11 −6 Original line number Diff line number Diff line ;; Exponential functions ;; Liam Healy, Tue Mar 21 2006 - 17:05 ;; Time-stamp: <2011-10-29 23:37:02EDT exponential-functions.lisp> ;; Time-stamp: <2011-11-24 22:56:28EST exponential-functions.lisp> ;; ;; Copyright 2006, 2007, 2008, 2009, 2011 Liam M. Healy ;; Distributed under the terms of the GNU General Public License Loading @@ -20,6 +20,8 @@ (in-package :gsl) ;;; /usr/include/gsl/gsl_sf_exp.h ;;;;**************************************************************************** ;;;; Exponential Functions ;;;;**************************************************************************** Loading @@ -30,7 +32,7 @@ "The exponential function.") (defmfun exp-scaled (x) "gsl_sf_exp_e10_e" ((x :double) (ret sf-result-e10)) "gsl_sf_exp_e10_e" ((x :double) (ret (:pointer (:struct sf-result-e10)))) :documentation ; FDL "The exponential function scaled. This function may be useful if the value of exp(x) would overflow the numeric range of double.") Loading @@ -43,7 +45,8 @@ return the product y \exp(x).") (defmfun exp-mult-scaled (x y) "gsl_sf_exp_mult_e10_e" ((x :double) (y :double) (ret sf-result-e10)) "gsl_sf_exp_mult_e10_e" ((x :double) (y :double) (ret (:pointer (:struct sf-result-e10)))) :documentation ; FDL "The product y \exp(x) with extended numeric range.") Loading Loading @@ -71,7 +74,8 @@ 2(\exp(x)-1-x)/x^2 = 1 + x/3 + x^2/(3*4) + x^3/(3*4*5) + ...") (defmfun exprel-n (n x) "gsl_sf_exprel_n_e" ((n :int) (x :double) (ret (:pointer (:struct sf-result)))) "gsl_sf_exprel_n_e" ((n :int) (x :double) (ret (:pointer (:struct sf-result)))) :documentation ; FDL "N-relative exponential, which is the n-th generalization of the functions #'exprel and #'exprel-2.") Loading @@ -88,7 +92,7 @@ (defmfun exp-err-scaled (x dx) "gsl_sf_exp_err_e10_e" ((x :double) (dx :double) (ret sf-result-e10)) ((x :double) (dx :double) (ret (:pointer (:struct sf-result-e10)))) :documentation ; FDL "Exponentiate x with an associated absolute error dx and with extended numeric range.") Loading @@ -103,7 +107,8 @@ (defmfun exp-mult-err-scaled (x dx y dy) "gsl_sf_exp_mult_err_e10_e" ((x :double) (dx :double) (y :double) (dy :double) (ret sf-result-e10)) ((x :double) (dx :double) (y :double) (dy :double) (ret (:pointer (:struct sf-result-e10)))) :documentation ; FDL "The product y \exp(x) for the quantities x, y with associated absolute errors dx, dy and with Loading
special-functions/gamma.lisp +5 −5 Original line number Diff line number Diff line ;; Gamma functions ;; Liam Healy, Thu Apr 27 2006 - 22:06 ;; Time-stamp: <2011-10-30 00:37:46EDT gamma.lisp> ;; Time-stamp: <2011-11-24 22:42:00EST gamma.lisp> ;; ;; Copyright 2006, 2007, 2008, 2009, 2010, 2011 Liam M. Healy ;; Distributed under the terms of the GNU General Public License Loading Loading @@ -56,7 +56,7 @@ (ret (:pointer (:struct sf-result))) (sign (:pointer :double))) :return ((multiple-value-bind (val err) (cffi:convert-from-foreign ret '(:pointer (:struct sf-result))) (cffi:mem-ref ret '(:struct sf-result)) (values val (cffi:mem-ref sign :double) err ))) :documentation ; FDL "Compute the sign of the gamma function and the logarithm of Loading Loading @@ -167,7 +167,7 @@ log(|(a)_x|) and sgn = sgn((a)_x) where (a)_x := Gamma(a + x)/Gamma(a), subject to a, a+x not being negative integers." :return ((multiple-value-bind (val err) (cffi:convert-from-foreign ret '(:pointer (:struct sf-result))) (cffi:mem-ref ret '(:struct sf-result)) (values val (cffi:mem-ref sign :double) err )))) (defmfun relative-pochammer (a x) Loading
special-functions/hypergeometric.lisp +5 −3 Original line number Diff line number Diff line ;; Hypergeometric function ;; Liam Healy, Fri Apr 28 2006 - 23:00 ;; Time-stamp: <2011-10-29 23:40:22EDT hypergeometric.lisp> ;; Time-stamp: <2011-11-24 22:46:31EST hypergeometric.lisp> ;; ;; Copyright 2006, 2007, 2008, 2009, 2011 Liam M. Healy ;; Distributed under the terms of the GNU General Public License Loading @@ -18,6 +18,8 @@ ;; You should have received a copy of the GNU General Public License ;; along with this program. If not, see <http://www.gnu.org/licenses/>. ;; /usr/include/gsl/gsl_sf_hyperg.h (in-package :gsl) (defmfun hypergeometric-0F1 (c x) Loading Loading @@ -72,7 +74,7 @@ (defmfun hypergeometric-U-e10 ((m integer) (n integer) x) "gsl_sf_hyperg_U_int_e10_e" ((m :int) (n :int) (x :double) (ret sf-result-e10)) ((m :int) (n :int) (x :double) (ret (:pointer (:struct sf-result-e10)))) :definition :method :export t :documentation ; FDL Loading @@ -82,7 +84,7 @@ (defmfun hypergeometric-U-e10 ((a float) (b float) x) "gsl_sf_hyperg_U_e10_e" ((a :double) (b :double) (x :double) (ret sf-result-e10)) ((a :double) (b :double) (x :double) (ret (:pointer (:struct sf-result-e10)))) :definition :method :documentation ; FDL "The confluent hypergeometric function Loading