diff --git a/calculus/monte-carlo.lisp b/calculus/monte-carlo.lisp index 853b9bfa8e309c0f45c965553a1741bf8cac01dd..e88f4b814feb323aa57f856af938424e04ea220d 100644 --- a/calculus/monte-carlo.lisp +++ b/calculus/monte-carlo.lisp @@ -1,6 +1,6 @@ ;; Monte Carlo Integration ;; Liam Healy Sat Feb 3 2007 - 17:42 -;; Time-stamp: <2009-04-04 22:34:29EDT monte-carlo.lisp> +;; Time-stamp: <2009-04-26 23:21:18EDT monte-carlo.lisp> ;; $Id$ (in-package :gsl) @@ -44,7 +44,7 @@ ((dim0 lower-limits) sizet) (number-of-samples sizet) ((mpointer generator) :pointer) ((mpointer state) :pointer) - (result :double) (abserr :double)) + (result (:pointer :double)) (abserr (:pointer :double))) :inputs (lower-limits upper-limits) :callbacks (callback fnstruct-dimension (dimension) @@ -130,7 +130,7 @@ ((dim0 lower-limits) sizet) (number-of-samples sizet) ((mpointer generator) :pointer) ((mpointer state) :pointer) - (result :double) (abserr :double)) + (result (:pointer :double)) (abserr (:pointer :double))) :inputs (lower-limits upper-limits) :callbacks (callback fnstruct-dimension (dimension) @@ -226,7 +226,7 @@ ((dim0 lower-limits) sizet) (number-of-samples sizet) ((mpointer generator) :pointer) ((mpointer state) :pointer) - (result :double) (abserr :double)) + (result (:pointer :double)) (abserr (:pointer :double))) :inputs (lower-limits upper-limits) :callbacks (callback fnstruct-dimension (dimension) diff --git a/calculus/numerical-differentiation.lisp b/calculus/numerical-differentiation.lisp index 60be5847b2edd3968db76f1c0e7154e3c4f5ca82..3da56a910bc1add5423e2c68542a98594778a154 100644 --- a/calculus/numerical-differentiation.lisp +++ b/calculus/numerical-differentiation.lisp @@ -1,19 +1,16 @@ ;; Numerical differentiation. ;; Liam Healy Mon Nov 12 2007 - 22:07 -;; Time-stamp: <2009-04-04 22:24:31EDT numerical-differentiation.lisp> +;; Time-stamp: <2009-04-26 23:23:53EDT numerical-differentiation.lisp> ;; $Id$ (in-package :gsl) -;;; The example at the end needs to be made into a regression test. -;;; GSL function "callback" passing is identical to -;;; numerical-integration, so those definitions have been used. -;;; Some improvement could be made in naming/organization. +;;; /usr/include/gsl/gsl_diff.h (defmfun central-derivative (function x step) "gsl_deriv_central" ((callback :pointer) (x :double) (step :double) - (result :double) (abserr :double)) + (result (:pointer :double)) (abserr (:pointer :double))) :callbacks (callback fnstruct nil (function :double (:input :double) :slug)) :callback-dynamic (nil (function)) @@ -36,7 +33,7 @@ (defmfun forward-derivative (function x step) "gsl_deriv_forward" ((callback :pointer) (x :double) (step :double) - (result :double) (abserr :double)) + (result (:pointer :double)) (abserr (:pointer :double))) :callbacks (callback fnstruct nil (function :double (:input :double) :slug)) :callback-dynamic (nil (function)) @@ -61,7 +58,7 @@ (defmfun backward-derivative (function x step) "gsl_deriv_backward" ((callback :pointer) (x :double) (step :double) - (result :double) (abserr :double)) + (result (:pointer :double)) (abserr (:pointer :double))) :callbacks (callback fnstruct nil (function :double (:input :double) :slug)) :callback-dynamic (nil (function)) diff --git a/calculus/numerical-integration-with-tables.lisp b/calculus/numerical-integration-with-tables.lisp index c885afef9e30848c546d81532b2afc317bee837d..080d7e47532e39168080105c3f53f2435d57969d 100644 --- a/calculus/numerical-integration-with-tables.lisp +++ b/calculus/numerical-integration-with-tables.lisp @@ -1,6 +1,6 @@ ;; Numerical integration techniques that require tables ;; Liam Healy 2009-04-04 15:24:05EDT -;; Time-stamp: <2009-04-04 22:27:18EDT numerical-integration-with-tables.lisp> +;; Time-stamp: <2009-04-26 23:20:16EDT numerical-integration-with-tables.lisp> ;; $Id: $ (in-package :gsl) @@ -48,7 +48,7 @@ ((mpointer table) :pointer) (absolute-error :double) (relative-error :double) (limit sizet) ((mpointer workspace) :pointer) - (result :double) (abserr :double)) + (result (:pointer :double)) (abserr (:pointer :double))) :callbacks (callback fnstruct nil (function :double (:input :double) :slug)) :callback-dynamic (nil (function)) @@ -109,7 +109,7 @@ (absolute-error :double) (relative-error :double) (limit sizet) ((mpointer workspace) :pointer) ((mpointer table) :pointer) - (result :double) (abserr :double)) + (result (:pointer :double)) (abserr (:pointer :double))) :callbacks (callback fnstruct nil (function :double (:input :double) :slug)) :callback-dynamic (nil (function)) @@ -153,7 +153,7 @@ (limit sizet) ((mpointer workspace) :pointer) ((mpointer cycle-workspace) :pointer) ((mpointer table) :pointer) - (result :double) (abserr :double)) + (result (:pointer :double)) (abserr (:pointer :double))) :callbacks (callback fnstruct nil (function :double (:input :double) :slug)) :callback-dynamic (nil (function)) diff --git a/calculus/numerical-integration.lisp b/calculus/numerical-integration.lisp index fa6a784614297595ac9e8ef1185c2600dfd906c9..cd0e880af0a36df5a6ac90ce64c379055646b677 100644 --- a/calculus/numerical-integration.lisp +++ b/calculus/numerical-integration.lisp @@ -1,6 +1,6 @@ ;; Numerical integration ;; Liam Healy, Wed Jul 5 2006 - 23:14 -;; Time-stamp: <2009-04-04 22:25:57EDT numerical-integration.lisp> +;; Time-stamp: <2009-04-26 23:19:49EDT numerical-integration.lisp> ;; $Id$ (in-package :gsl) @@ -34,7 +34,8 @@ ((callback :pointer) (a :double) (b :double) (absolute-error :double) (relative-error :double) - (result :double) (abserr :double) (neval sizet)) + (result (:pointer :double)) (abserr (:pointer :double)) + (neval (:pointer sizet))) :callbacks (callback fnstruct nil (function :double (:input :double) :slug)) :callback-dynamic (nil (function)) @@ -78,7 +79,7 @@ (a :double) (b :double) (absolute-error :double) (relative-error :double) (limit sizet) (method integrate-method) ((mpointer workspace) :pointer) - (result :double) (abserr :double)) + (result (:pointer :double)) (abserr (:pointer :double))) :callbacks (callback fnstruct nil (function :double (:input :double) :slug)) :callback-dynamic (nil (function)) @@ -114,7 +115,8 @@ ((callback :pointer) (a :double) (b :double) (absolute-error :double) (relative-error :double) (limit sizet) - ((mpointer workspace) :pointer) (result :double) (abserr :double)) + ((mpointer workspace) :pointer) + (result (:pointer :double)) (abserr (:pointer :double))) :callbacks (callback fnstruct nil (function :double (:input :double) :slug)) :callback-dynamic (nil (function)) @@ -146,7 +148,8 @@ ((callback :pointer) ((c-pointer points) :pointer) ((dim0 points) sizet) (absolute-error :double) (relative-error :double) (limit sizet) - ((mpointer workspace) :pointer) (result :double) (abserr :double)) + ((mpointer workspace) :pointer) + (result (:pointer :double)) (abserr (:pointer :double))) :inputs (points) :callbacks (callback fnstruct nil (function :double (:input :double) :slug)) @@ -176,7 +179,8 @@ "gsl_integration_qagi" ((callback :pointer) (absolute-error :double) (relative-error :double) (limit sizet) - ((mpointer workspace) :pointer) (result :double) (abserr :double)) + ((mpointer workspace) :pointer) + (result (:pointer :double)) (abserr (:pointer :double))) :callbacks (callback fnstruct nil (function :double (:input :double) :slug)) :callback-dynamic (nil (function)) @@ -200,7 +204,8 @@ "gsl_integration_qagiu" ((callback :pointer) (a :double) (absolute-error :double) (relative-error :double) (limit sizet) - ((mpointer workspace) :pointer) (result :double) (abserr :double)) + ((mpointer workspace) :pointer) + (result (:pointer :double)) (abserr (:pointer :double))) :callbacks (callback fnstruct nil (function :double (:input :double) :slug)) :callback-dynamic (nil (function)) @@ -220,7 +225,8 @@ "gsl_integration_qagil" ((callback :pointer) (b :double) (absolute-error :double) (relative-error :double) (limit sizet) - ((mpointer workspace) :pointer) (result :double) (abserr :double)) + ((mpointer workspace) :pointer) + (result (:pointer :double)) (abserr (:pointer :double))) :callbacks (callback fnstruct nil (function :double (:input :double) :slug)) :callback-dynamic (nil (function)) @@ -245,7 +251,8 @@ ((callback :pointer) (a :double) (b :double) (c :double) (absolute-error :double) (relative-error :double) (limit sizet) - ((mpointer workspace) :pointer) (result :double) (abserr :double)) + ((mpointer workspace) :pointer) + (result (:pointer :double)) (abserr (:pointer :double))) :callbacks (callback fnstruct nil (function :double (:input :double) :slug)) :callback-dynamic (nil (function)) diff --git a/chebyshev.lisp b/chebyshev.lisp index 3eb896919f52869140c2a15770b29cec6f2f3779..e0879d69414c87e2a4df9c6fa061a0d12a37630b 100644 --- a/chebyshev.lisp +++ b/chebyshev.lisp @@ -1,6 +1,6 @@ ;; Chebyshev Approximations ;; Liam Healy Sat Nov 17 2007 - 20:36 -;; Time-stamp: <2009-04-04 22:27:16EDT chebyshev.lisp> +;; Time-stamp: <2009-04-26 23:25:30EDT chebyshev.lisp> ;; $Id$ (in-package :gsl) @@ -63,10 +63,10 @@ (defmfun evaluate-chebyshev-error (chebyshev x &optional order) ("gsl_cheb_eval_err" "gsl_cheb_eval_n_err") - ((((mpointer chebyshev) :pointer) (x :double) (result :double) - (abserr :double)) + ((((mpointer chebyshev) :pointer) (x :double) + (result (:pointer :double)) (abserr (:pointer :double))) (((mpointer chebyshev) :pointer) (order sizet) (x :double) - (result :double) (abserr :double))) + (result (:pointer :double)) (abserr (:pointer :double)))) :documentation ; FDL "Evaluate the Chebyshev series at a point x, returning result and an estimate of its absolute error. If order is supplied, diff --git a/data/array-tests.lisp b/data/array-tests.lisp index 5b65ab4a1111b3568f5e8d0d169c44ca87348e83..1d831867a492789f19b3146e488395640e6819f0 100644 --- a/data/array-tests.lisp +++ b/data/array-tests.lisp @@ -1,6 +1,6 @@ ;; Tests of array functions ;; Liam Healy 2008-10-20 22:41:48EDT array-tests.lisp -;; Time-stamp: <2009-01-11 22:19:58EST array-tests.lisp> +;; Time-stamp: <2009-04-11 22:33:59EDT array-tests.lisp> ;; $Id: $ ;;; Generate each file with #'write-test-to-file, e.g. @@ -15,13 +15,13 @@ ;;;; Bulk operations ;;;;**************************************************************************** -(generate-all-array-tests vector-set-all-add :no-complex +(generate-all-array-tests vector-set-all-add t (let ((v1 (array-default 3 t)) (v2 (array-default 3))) (set-all v1 (scalar-default)) (cl-array (elt+ v1 v2)))) -(generate-all-array-tests matrix-set-all-add :no-complex +(generate-all-array-tests matrix-set-all-add t (let ((m1 (array-default '(3 3) t)) (m2 (array-default '(3 3)))) (set-all m1 (scalar-default)) diff --git a/data/both.lisp b/data/both.lisp index 035852f1e81d3fe4b707cd163138dc32aefd4fe7..f95bfbbcb35ad91cbf7fa506779e8a6329532a90 100644 --- a/data/both.lisp +++ b/data/both.lisp @@ -1,6 +1,6 @@ ;; Functions for both vectors and matrices. ;; Liam Healy 2008-04-26 20:48:44EDT both.lisp -;; Time-stamp: <2009-04-25 18:29:10EDT both.lisp> +;; Time-stamp: <2009-04-26 22:29:34EDT both.lisp> ;; $Id$ (in-package :gsl) @@ -270,7 +270,7 @@ (defmfun min-index ((a matrix)) ("gsl_" :category :type "_min_index") - (((mpointer a) :pointer) (imin sizet) (jmin sizet)) + (((mpointer a) :pointer) (imin (:pointer sizet)) (jmin (:pointer sizet))) :definition :methods :element-types :no-complex :inputs (a) @@ -289,7 +289,7 @@ (defmfun max-index ((a matrix)) ("gsl_" :category :type "_max_index") - (((mpointer a) :pointer) (imax sizet) (jmax sizet)) + (((mpointer a) :pointer) (imin (:pointer sizet)) (jmin (:pointer sizet))) :definition :methods :element-types :no-complex :inputs (a) @@ -297,7 +297,7 @@ (defmfun minmax-index ((a vector)) ("gsl_" :category :type "_minmax_index") - (((mpointer a) :pointer) (imin sizet) (imax sizet)) + (((mpointer a) :pointer) (imin (:pointer sizet)) (jmin (:pointer sizet))) :definition :generic :element-types :no-complex :inputs (a) @@ -310,7 +310,9 @@ (defmfun minmax-index ((a matrix)) ("gsl_" :category :type "_minmax_index") - (((mpointer a) :pointer) (imin sizet) (jmin sizet) (imax sizet) (jmax sizet)) + (((mpointer a) :pointer) + (imin (:pointer sizet)) (jmin (:pointer sizet)) + (imax (:pointer sizet)) (jmax (:pointer sizet))) :definition :methods :element-types :no-complex :inputs (a) diff --git a/data/permutation.lisp b/data/permutation.lisp index a77d851616d68a52afe7a0b19bfa866395bad2f6..375178bcbd476e7226e245fcd96d8100c9abc06e 100644 --- a/data/permutation.lisp +++ b/data/permutation.lisp @@ -1,6 +1,6 @@ ;; Permutations ;; Liam Healy, Sun Mar 26 2006 - 11:51 -;; Time-stamp: <2009-03-17 20:27:01EDT permutation.lisp> +;; Time-stamp: <2009-04-26 22:47:28EDT permutation.lisp> ;; $Id$ (in-package :gsl) @@ -223,7 +223,7 @@ (defmfun permute-inverse (p (data #.+foreign-pointer-class+) &optional (size 1) (stride 1)) "gsl_permute_inverse" - (((mpointer p) :pointer) (data :pointer) (stride sizet) (n sizet)) + (((mpointer p) :pointer) (data :pointer) (stride sizet) (stride sizet)) :definition :method :inputs (p data) :outputs (data) diff --git a/histogram/statistics.lisp b/histogram/statistics.lisp index 2ab7d47871bcbfe936fb72c9acddbdb062555383..2fb48e2aea37b6d45cf6cae87a817c3b3f83a62c 100644 --- a/histogram/statistics.lisp +++ b/histogram/statistics.lisp @@ -1,10 +1,13 @@ ;; Statistics of histograms. ;; Liam Healy, Mon Jan 1 2007 - 16:13 -;; Time-stamp: <2008-12-26 14:46:23EST statistics.lisp> +;; Time-stamp: <2009-04-26 23:15:55EDT statistics.lisp> ;; $Id$ (in-package :gsl) +;;; /usr/include/gsl/gsl_histogram.h +;;; /usr/include/gsl/gsl_histogram2d.h + (defmfun mmax ((histogram histogram)) "gsl_histogram_max_val" (((mpointer histogram) :pointer)) @@ -50,7 +53,7 @@ (defmfun max-index ((histogram histogram2d)) "gsl_histogram2d_max_bin" (((mpointer histogram) :pointer) - (xindex sizet) (yindex sizet)) + (xindex (:pointer sizet)) (yindex (:pointer sizet))) :definition :method :c-return :void :documentation ; FDL @@ -71,7 +74,7 @@ (defmfun min-index ((histogram histogram2d)) "gsl_histogram2d_min_bin" (((mpointer histogram) :pointer) - (xindex sizet) (yindex sizet)) + (xindex (:pointer sizet)) (yindex (:pointer sizet))) :definition :method :c-return :void :documentation ; FDL diff --git a/histogram/updating-accessing.lisp b/histogram/updating-accessing.lisp index 14be3f90bd919696e7627e19308f6f03d9bfab63..b7344d49cfc1c958821b3c7c8670b242a08c3f8a 100644 --- a/histogram/updating-accessing.lisp +++ b/histogram/updating-accessing.lisp @@ -1,10 +1,13 @@ ;; Updating and accessing histogram elements. ;; Liam Healy, Mon Jan 1 2007 - 14:43 -;; Time-stamp: <2008-12-26 11:58:11EST updating-accessing.lisp> +;; Time-stamp: <2009-04-26 23:13:17EDT updating-accessing.lisp> ;; $Id$ (in-package :gsl) +;;; /usr/include/gsl/gsl_histogram.h +;;; /usr/include/gsl/gsl_histogram2d.h + (defmfun increment (histogram value &optional weight) ("gsl_histogram_increment" "gsl_histogram_accumulate") ((((mpointer histogram) :pointer) (value :double)) @@ -37,7 +40,7 @@ (defmfun range (histogram i) "gsl_histogram_get_range" (((mpointer histogram) :pointer) (i sizet) - (lower :double) (upper :double)) + (lower (:pointer :double)) (upper (:pointer :double))) :documentation ; FDL "Find the upper and lower range limits of the i-th bin of the histogram. If the index i is valid then the @@ -79,9 +82,9 @@ (defmfun histogram-find (histogram x-value &optional y-value) ("gsl_histogram_find" "gsl_histogram2d_find") - ((((mpointer histogram) :pointer) (x-value :double) (bin sizet)) + ((((mpointer histogram) :pointer) (x-value :double) (bin (:pointer sizet))) (((mpointer histogram) :pointer) (x-value :double) (y-value :double) - (xbin sizet) (ybin sizet))) + (xbin (:pointer sizet)) (ybin (:pointer sizet)))) :documentation ; FDL "Finds the bin number which covers the coordinate value in the histogram. The bin is located using a binary search. The diff --git a/init/defmfun-array.lisp b/init/defmfun-array.lisp index 7355b37f33014918e3ced7001c62b057302d6065..bc6a9adca51e6e6a7ad03ebe392dcc129a3ce33c 100644 --- a/init/defmfun-array.lisp +++ b/init/defmfun-array.lisp @@ -1,6 +1,6 @@ ;; Helpers for defining GSL functions on arrays ;; Liam Healy 2009-01-07 22:01:16EST defmfun-array.lisp -;; Time-stamp: <2009-04-25 23:27:05EDT defmfun-array.lisp> +;; Time-stamp: <2009-04-26 22:27:10EDT defmfun-array.lisp> ;; $Id: $ (in-package :gsl) @@ -200,7 +200,7 @@ (lambda (v) (subst (cl-cffi element-type) :element-c-type (subst (component-type element-type) :component-float-type v))) - c-arguments))) + c-arguments)) ;;; (actual-class-arglist '((v1 vector) (v2 vector) (m matrix) x) '(unsigned-byte 16)) ;;; ((V1 VECTOR-UNSIGNED-BYTE-16) (V2 VECTOR-UNSIGNED-BYTE-16) diff --git a/linear-algebra/blas1.lisp b/linear-algebra/blas1.lisp index 8d2d841dd78fa8a0397fc3ccc7535a283c7e1791..1328754d76825c0f662a268d7db823ce87be1737 100644 --- a/linear-algebra/blas1.lisp +++ b/linear-algebra/blas1.lisp @@ -1,14 +1,16 @@ ;; BLAS level 1, Vector operations ;; Liam Healy, Wed Apr 26 2006 - 15:23 -;; Time-stamp: <2009-01-15 21:28:41EST blas1.lisp> +;; Time-stamp: <2009-04-26 23:01:57EDT blas1.lisp> ;; $Id$ (in-package :gsl) +;;; /usr/include/gsl/gsl_blas.h + (defmfun dot ((vec1 vector) (vec2 vector)) ("gsl_blas_" :type "dot" :suffix) (((mpointer vec1) :pointer) ((mpointer vec2) :pointer) - (result :element-c-type)) + (result (:pointer :element-c-type))) :definition :generic :element-types :float-complex :inputs (vec1 vec2) diff --git a/linear-algebra/lu.lisp b/linear-algebra/lu.lisp index 637e8b7ecc7d318d845ddf2cb36c7d5207731430..7de390e64d22ceb374b1b4056154d1875980cb04 100644 --- a/linear-algebra/lu.lisp +++ b/linear-algebra/lu.lisp @@ -1,14 +1,17 @@ ;; LU decomposition ;; Liam Healy, Thu Apr 27 2006 - 12:42 -;; Time-stamp: <2009-03-17 20:42:37EDT lu.lisp> +;; Time-stamp: <2009-04-26 23:04:02EDT lu.lisp> ;; $Id$ (in-package :gsl) +;;; /usr/include/gsl/gsl_linalg.h + (defmfun LU-decomposition ((A matrix) &optional (permutation (make-permutation (dim0 A)))) ("gsl_linalg" :complex "_LU_decomp") - (((mpointer A) :pointer) ((mpointer permutation) :pointer) (signum :int)) + (((mpointer A) :pointer) ((mpointer permutation) :pointer) + (signum (:pointer :int))) :definition :generic :inputs (A) :outputs (A permutation) @@ -94,7 +97,7 @@ (defmfun LU-determinant ((LU matrix) signum) ("gsl_linalg" :complex "_LU_det") - (((mpointer LU) :pointer) (signum :int)) + (((mpointer LU) :pointer) (signum (:pointer :int))) :definition :generic :inputs (LU) :element-types :doubles @@ -119,7 +122,7 @@ (defmfun LU-sgndet ((LU matrix) signum) ("gsl_linalg" :complex "_LU_sgndet") - (((mpointer LU) :pointer) (signum :int)) + (((mpointer LU) :pointer) (signum (:pointer :int))) :definition :generic :inputs (LU) :element-types :doubles diff --git a/linear-algebra/qrpt.lisp b/linear-algebra/qrpt.lisp index b2bf31a570ba2d2aa15b311936d77ccd3e91f021..4f58c2527ff41b71f0011f11b818e9c7897617db 100644 --- a/linear-algebra/qrpt.lisp +++ b/linear-algebra/qrpt.lisp @@ -1,16 +1,18 @@ ;; QR with column pivoting ;; Liam Healy, Fri Apr 28 2006 - 16:53 -;; Time-stamp: <2009-02-23 22:11:10EST qrpt.lisp> +;; Time-stamp: <2009-04-26 23:05:14EDT qrpt.lisp> ;; $Id$ (in-package :gsl) +;;; /usr/include/gsl/gsl_linalg.h + (defmfun QRPT-decomposition (A tau p &optional (norm (make-marray 'double-float :dimensions (dim1 A)))) "gsl_linalg_QRPT_decomp" (((mpointer A) :pointer) ((mpointer tau) :pointer) ((mpointer p) :pointer) - (signum :int) ((mpointer norm) :pointer)) + (signum (:pointer :int)) ((mpointer norm) :pointer)) :inputs (A) :outputs (A tau p norm) :return (A tau signum p) @@ -40,7 +42,7 @@ "gsl_linalg_QRPT_decomp2" (((mpointer A) :pointer) ((mpointer q) :pointer) ((mpointer r) :pointer) ((mpointer tau) :pointer) - ((mpointer p) :pointer) (signum :int) + ((mpointer p) :pointer) (signum (:pointer :int)) ((mpointer norm) :pointer)) :inputs (A) :outputs (q r norm) diff --git a/polynomial.lisp b/polynomial.lisp index 2597d817c074f25a06e78bff650ca72020e9dfb9..087217a2ed3f38e02916e550012ccded2a5e81bc 100644 --- a/polynomial.lisp +++ b/polynomial.lisp @@ -1,6 +1,6 @@ ;; Polynomials ;; Liam Healy, Tue Mar 21 2006 - 18:33 -;; Time-stamp: <2009-04-02 21:58:22EDT polynomial.lisp> +;; Time-stamp: <2009-04-26 22:49:47EDT polynomial.lisp> ;; $Id$ (in-package :gsl) @@ -103,7 +103,8 @@ (defmfun solve-quadratic (a b c) "gsl_poly_solve_quadratic" - ((a :double) (b :double) (c :double) (root1 :double) (root2 :double)) + ((a :double) (b :double) (c :double) + (root1 (:pointer :double)) (root2 (:pointer :double))) :c-return :number-of-answers :documentation ; FDL "The real roots of the quadratic equation a x^2 + b x + c = 0. @@ -127,7 +128,8 @@ (defmfun solve-cubic (a b c) "gsl_poly_solve_cubic" ((a :double) (b :double) (c :double) - (root1 :double) (root2 :double) (root3 :double)) + (root1 (:pointer :double)) + (root2 (:pointer :double)) (root3 (:pointer :double))) :c-return :number-of-answers :documentation ; FDL "Find the real roots of the cubic equation, x^3 + a x^2 + b x + c = 0 diff --git a/random/gaussian-bivariate.lisp b/random/gaussian-bivariate.lisp index 1ecf094605a3731598f03530f4dfde73d24e1e3e..c1000cd68ffd7baf5f70d84fde4e85ba1fecd91a 100644 --- a/random/gaussian-bivariate.lisp +++ b/random/gaussian-bivariate.lisp @@ -1,6 +1,6 @@ ;; Gaussian bivariate distribution ;; Liam Healy, Sat Sep 2 2006 - 16:32 -;; Time-stamp: <2009-02-16 10:10:33EST gaussian-bivariate.lisp> +;; Time-stamp: <2009-04-26 23:06:34EDT gaussian-bivariate.lisp> ;; $Id$ (in-package :gsl) @@ -10,7 +10,7 @@ (defmfun bivariate-gaussian (generator sigma-x sigma-y rho) "gsl_ran_bivariate_gaussian" (((mpointer generator) :pointer) (sigma-x :double) (sigma-y :double) (rho :double) - (x :double) (y :double)) + (x (:pointer :double)) (y (:pointer :double))) :c-return :void :documentation ; FDL "Generate a pair of correlated Gaussian variates, with diff --git a/random/spherical-vector.lisp b/random/spherical-vector.lisp index 9eeddb564ce3cf2cc2a1aefaa627ba86e337eda8..d563ba6b19172d889ec4655891dc1514dd4cc3e0 100644 --- a/random/spherical-vector.lisp +++ b/random/spherical-vector.lisp @@ -1,6 +1,6 @@ ;; Spherical Vector distribution ;; Liam Healy, Sun Oct 22 2006 -;; Time-stamp: <2009-02-16 10:10:32EST spherical-vector.lisp> +;; Time-stamp: <2009-04-26 23:08:37EDT spherical-vector.lisp> ;; $Id$ (in-package :gsl) @@ -11,7 +11,8 @@ (defmfun direction-2d (generator) "gsl_ran_dir_2d" - (((mpointer generator) :pointer) (x :double) (y :double)) + (((mpointer generator) :pointer) + (x (:pointer :double)) (y (:pointer :double))) :c-return :void :documentation ; FDL "A random direction vector v = (x,y) in @@ -20,7 +21,8 @@ (defmfun direction-2d-trig-method (generator) "gsl_ran_dir_2d_trig_method" - (((mpointer generator) :pointer) (x :double) (y :double)) + (((mpointer generator) :pointer) + (x (:pointer :double)) (y (:pointer :double))) :c-return :void :documentation ; FDL "A random direction vector v = (x,y) in @@ -29,7 +31,8 @@ (defmfun direction-3d (generator) "gsl_ran_dir_3d" - (((mpointer generator) :pointer) (x :double) (y :double) (z :double)) + (((mpointer generator) :pointer) + (x (:pointer :double)) (y (:pointer :double)) (z (:pointer :double))) :c-return :void :documentation ; FDL "A random direction vector v = diff --git a/series-acceleration.lisp b/series-acceleration.lisp index b5ea3abffee999228586b295bd289caec2ac5da0..dd4dcd1890680152ded0dc66f48c6f6ce750a82c 100644 --- a/series-acceleration.lisp +++ b/series-acceleration.lisp @@ -1,6 +1,6 @@ ;; Series acceleration. ;; Liam Healy, Wed Nov 21 2007 - 18:41 -;; Time-stamp: <2009-01-26 21:31:38EST series-acceleration.lisp> +;; Time-stamp: <2009-04-26 23:27:40EDT series-acceleration.lisp> ;; $Id$ (in-package :gsl) @@ -36,7 +36,7 @@ (defmfun accelerate (array levin) "gsl_sum_levin_u_accel" (((c-pointer array) :pointer) ((dim0 array) sizet) ((mpointer levin) :pointer) - (accelerated-sum :double) (absolute-error :double)) + (accelerated-sum (:pointer :double)) (abserr (:pointer :double))) :inputs (array) :documentation ; FDL "From the terms of a series in array, compute the extrapolated @@ -64,7 +64,7 @@ (defmfun accelerate-truncated (array levin) "gsl_sum_levin_utrunc_accel" (((c-pointer array) :pointer) ((dim0 array) sizet) ((mpointer levin) :pointer) - (accelerated-sum :double) (absolute-error :double)) + (accelerated-sum (:pointer :double)) (abserr (:pointer :double))) :inputs (array) :documentation ; FDL "From the terms of a series in array, compute the extrapolated diff --git a/solve-minimize-fit/linear-least-squares.lisp b/solve-minimize-fit/linear-least-squares.lisp index 83347e27d9ba3053c2bde84bd7eb1404f3d3eaf8..6d1c4d6fff0b370029ee7ba13d892ba008fdc50c 100644 --- a/solve-minimize-fit/linear-least-squares.lisp +++ b/solve-minimize-fit/linear-least-squares.lisp @@ -1,6 +1,6 @@ ;; Linear least squares, or linear regression ;; Liam Healy <2008-01-21 12:41:46EST linear-least-squares.lisp> -;; Time-stamp: <2009-03-20 14:58:52EDT linear-least-squares.lisp> +;; Time-stamp: <2009-04-26 23:36:23EDT linear-least-squares.lisp> ;; $Id$ (in-package :gsl) @@ -22,16 +22,18 @@ (x y &optional weight (x-stride 1) (y-stride 1) (weight-stride 1)) ("gsl_fit_linear" "gsl_fit_wlinear") ((((c-pointer x) :pointer) (x-stride sizet) - ((c-pointer y) :pointer) (y-stride sizet) - ((dim0 x) sizet) (c0 :double) (c1 :double) - (cov00 :double) (cov01 :double) (cov11 :double) - (sumsq :double)) + ((c-pointer y) :pointer) (y-stride sizet) + ((dim0 x) sizet) + (c0 (:pointer :double)) (c1 (:pointer :double)) + (cov00 (:pointer :double)) (cov01 (:pointer :double)) + (cov11 (:pointer :double)) (sumsq (:pointer :double))) (((c-pointer x) :pointer) (x-stride sizet) - ((c-pointer weight) :pointer) (weight-stride sizet) - ((c-pointer y) :pointer) (y-stride sizet) - ((dim0 x) sizet) (c0 :double) (c1 :double) - (cov00 :double) (cov01 :double) (cov11 :double) - (chisq :double))) + ((c-pointer weight) :pointer) (weight-stride sizet) + ((c-pointer y) :pointer) (y-stride sizet) + ((dim0 x) sizet) + (c0 (:pointer :double)) (c1 (:pointer :double)) + (cov00 (:pointer :double)) (cov01 (:pointer :double)) + (cov11 (:pointer :double)) (sumsq (:pointer :double)))) :inputs (x weight y) :switch (weight weight-stride) :documentation ; FDL @@ -53,7 +55,7 @@ "gsl_fit_linear_est" ((x :double) (c0 :double) (c1 :double) (cov00 :double) (cov01 :double) (cov11 :double) - (y :double) (y-error :double)) + (y (:pointer :double)) (y-error (:pointer :double))) :documentation ; FDL "Use the best-fit linear regression coefficients c0, c1 and their covariance @@ -70,13 +72,15 @@ ("gsl_fit_mul" "gsl_fit_wmul") ((((c-pointer x) :pointer) (x-stride sizet) ((c-pointer y) :pointer) (y-stride sizet) - ((dim0 x) sizet) (c1 :double) (cov11 :double) - (sumsq :double)) + ((dim0 x) sizet) + (c1 (:pointer :double)) (cov11 (:pointer :double)) + (sumsq (:pointer :double))) (((c-pointer x) :pointer) (x-stride sizet) ((c-pointer weight) :pointer) (weight-stride sizet) ((c-pointer y) :pointer) (y-stride sizet) - ((dim0 x) sizet) (c1 :double) (cov11 :double) - (chisq :double))) + ((dim0 x) sizet) + (c1 (:pointer :double)) (cov11 (:pointer :double)) + (sumsq (:pointer :double)))) :inputs (x y weight) :switch (weight weight-stride) :documentation ; FDL @@ -95,7 +99,7 @@ (defmfun multiplier-estimate (x c1 cov11) "gsl_fit_mul_est" ((x :double) (c1 :double) (cov11 :double) - (y :double) (y-error :double)) + (y (:pointer :double)) (y-error (:pointer :double))) :documentation ; FDL "Use the best-fit linear regression coefficient c1 and its covariance cov11 to compute the fitted function @@ -171,14 +175,14 @@ ((mpointer observations) :pointer) ((mpointer parameters) :pointer) ((mpointer covariance) :pointer) - (chisq :double) + (chisq (:pointer :double)) ((mpointer workspace) :pointer)) (((mpointer model) :pointer) ((mpointer weight) :pointer) ((mpointer observations) :pointer) ((mpointer parameters) :pointer) ((mpointer covariance) :pointer) - (chisq :double) + (chisq (:pointer :double)) ((mpointer workspace) :pointer))) :inputs (model weight observations) :outputs (parameters covariance) @@ -211,19 +215,19 @@ ((((mpointer model) :pointer) ((mpointer observations) :pointer) (tolerance :double) - (rank sizet) + (rank (:pointer sizet)) ((mpointer parameters) :pointer) ((mpointer covariance) :pointer) - (chisq :double) + (chisq (:pointer :double)) ((mpointer workspace) :pointer)) (((mpointer model) :pointer) ((mpointer weight) :pointer) ((mpointer observations) :pointer) (tolerance :double) - (rank sizet) + (rank (:pointer sizet)) ((mpointer parameters) :pointer) ((mpointer covariance) :pointer) - (chisq :double) + (chisq (:pointer :double)) ((mpointer workspace) :pointer))) :inputs (model weight observations) :outputs (parameters covariance) @@ -252,7 +256,8 @@ (defmfun multi-linear-estimate (x coefficients covariance) "gsl_multifit_linear_est" (((mpointer x) :pointer) ((mpointer coefficients) :pointer) - ((mpointer covariance) :pointer) (y :double) (y-error :double)) + ((mpointer covariance) :pointer) + (y (:pointer :double)) (y-error (:pointer :double))) :inputs (x coefficients covariance) :documentation ; FDL "Use the best-fit multilinear regression coefficients diff --git a/special-functions/coulomb.lisp b/special-functions/coulomb.lisp index e2a85b128eac9da714dd9fe0540fa0aa9047f2b4..9f5362b7f34286325cfd852d16a4ca770547d8a6 100644 --- a/special-functions/coulomb.lisp +++ b/special-functions/coulomb.lisp @@ -1,10 +1,12 @@ ;; Coulumb functions ;; Liam Healy, Sat Mar 18 2006 - 23:23 -;; Time-stamp: <2009-01-11 10:14:54EST coulomb.lisp> +;; Time-stamp: <2009-04-26 22:57:18EDT coulomb.lisp> ;; $Id$ (in-package :gsl) +;;; /usr/include/gsl/gsl_sf_coulomb.h + ;;;;**************************************************************************** ;;;; Normalized Hydrogenic Bound States ;;;;**************************************************************************** @@ -33,7 +35,7 @@ "gsl_sf_coulomb_wave_FG_e" ((eta :double) (x :double) (L-F :double) (k :int) (F sf-result) (Fp sf-result) (G sf-result) (Gp sf-result) - (exp-F :double) (exp-G :double)) + (exp-F (:pointer :double)) (exp-G (:pointer :double))) :return ((val F) (val Fp) (val G) (val Gp) (dcref exp-F) (dcref exp-G) @@ -53,7 +55,7 @@ &aux (fc-array (vdf size-or-array))) "gsl_sf_coulomb_wave_F_array" ((L-min :double) ((1- (dim0 fc-array)) :int) (eta :double) (x :double) - ((c-pointer fc-array) :pointer) (F-exponent :double)) + ((c-pointer fc-array) :pointer) (F-exponent (:pointer :double))) :outputs (fc-array) :return (fc-array (dcref F-exponent)) :documentation ; FDL @@ -70,7 +72,7 @@ "gsl_sf_coulomb_wave_FG_array" ((L-min :double) ((1- (dim0 fc-array)) :int) (eta :double) (x :double) ((c-pointer fc-array) :pointer) ((c-pointer gc-array) :pointer) - (F-exponent :double) (G-exponent :double)) + (F-exponent (:pointer :double)) (G-exponent (:pointer :double))) :outputs (fc-array gc-array) :return (fc-array gc-array (dcref F-exponent) (dcref G-exponent)) :documentation ; FDL @@ -93,7 +95,7 @@ ((L-min :double) ((1- (dim0 fc-array)) :int) (eta :double) (x :double) ((c-pointer fc-array) :pointer) ((c-pointer fcp-array) :pointer) ((c-pointer gc-array) :pointer) ((c-pointer gcp-array) :pointer) - (F-exponent :double) (G-exponent :double)) + (F-exponent (:pointer :double)) (G-exponent (:pointer :double))) :outputs (fc-array fcp-array gc-array gcp-array) :return (fc-array fcp-array gc-array gcp-array @@ -111,7 +113,7 @@ &aux (fc-array (vdf size-or-array))) "gsl_sf_coulomb_wave_sphF_array" ((L-min :double) ((1- (dim0 fc-array)) :int) (eta :double) (x :double) - ((c-pointer fc-array) :pointer) (F-exponent :double)) + ((c-pointer fc-array) :pointer) (F-exponent (:pointer :double))) :outputs (fc-array) :return (fc-array (dcref F-exponent)) :documentation ; FDL diff --git a/special-functions/gamma.lisp b/special-functions/gamma.lisp index ce2ba1c7ab1a637da1c401544e4af594acaed9b4..6bc055388449ff1adc77f99df5378c66c30ecb61 100644 --- a/special-functions/gamma.lisp +++ b/special-functions/gamma.lisp @@ -1,6 +1,6 @@ ;; Gamma functions ;; Liam Healy, Thu Apr 27 2006 - 22:06 -;; Time-stamp: <2008-10-23 23:02:09EDT gamma.lisp> +;; Time-stamp: <2009-04-26 22:59:46EDT gamma.lisp> ;; $Id$ (in-package :gsl) @@ -9,6 +9,8 @@ ;;; Should functions returning sf-result and something else return the ;;; error at the end? +;;; /usr/include/gsl/gsl_sf_gamma.h + ;;;;**************************************************************************** ;;;; Gamma functions ;;;;**************************************************************************** @@ -33,7 +35,8 @@ is computed using the real Lanczos method.") (defmfun log-gamma-sign (x) - "gsl_sf_lngamma_sgn_e" ((x :double) (ret sf-result) (sign :double)) + "gsl_sf_lngamma_sgn_e" + ((x :double) (ret sf-result) (sign (:pointer :double))) :return ((val ret) (dcref sign) (err ret)) :documentation ; FDL "Compute the sign of the gamma function and the logarithm of @@ -127,7 +130,7 @@ (defmfun log-pochammer-sign (a x) "gsl_sf_lnpoch_sgn_e" - ((a :double) (x :double) (ret sf-result) (sign :double)) + ((a :double) (x :double) (ret sf-result) (sign (:pointer :double))) :documentation ; FDL "The logarithm of the Pochhammer symbol and its sign. The computed parameters are result =