From: Raymond T. <rt...@us...> - 2003-08-04 17:04:17
|
Update of /cvsroot/maxima/maxima/src In directory sc8-pr-cvs1:/tmp/cvs-serv6876/src Modified Files: bessel.lisp Log Message: Make sure all calls to SLATEC routines are done with appropriate arg types that's what they expect. Index: bessel.lisp =================================================================== RCS file: /cvsroot/maxima/maxima/src/bessel.lisp,v retrieving revision 1.23 retrieving revision 1.24 diff -u -d -r1.23 -r1.24 --- bessel.lisp 13 Jun 2003 16:52:02 -0000 1.23 +++ bessel.lisp 4 Aug 2003 17:04:14 -0000 1.24 @@ -192,9 +192,9 @@ ;; and i1 instead of jn, if possible. (let ((arg (realpart arg))) (cond ((zerop order) - (slatec:dbesi0 arg)) + (slatec:dbesi0 (float arg))) ((= order 1) - (slatec:dbesi1 arg)) + (slatec:dbesi1 (float arg))) (t (multiple-value-bind (n alpha) (floor (float order)) @@ -245,9 +245,9 @@ ;; and i1 instead of jn, if possible. (let ((arg (realpart arg))) (cond ((zerop order) - (slatec:dbesk0 arg)) + (slatec:dbesk0 (float arg))) ((= order 1) - (slatec:dbesk1 arg)) + (slatec:dbesk1 (float arg))) (t (multiple-value-bind (n alpha) (floor (float order)) @@ -443,28 +443,28 @@ (let ((arg (realpart arg))) (cond ((zerop order) (cond ((>= arg 0) - (slatec:dbesy0 arg)) + (slatec:dbesy0 (float arg))) (t ;; For v = 0, this simplifies to ;; ;; %y[0](-z) = %y[0](z) + 2*%i*%j[0](z) (simplify `((mplus) - ,(slatec:dbesy0 (- arg)) + ,(slatec:dbesy0 (float (- arg))) ((mtimes) $%i - ,(* 2 (slatec:dbesj0 (- arg))))))))) + ,(* 2 (slatec:dbesj0 (float (- arg)))))))))) ((= order 1) (cond ((>= arg 0) - (slatec:dbesy1 arg)) + (slatec:dbesy1 (float arg))) (t ;; For v = 1, this simplifies to ;; ;; %y[1](-z) = -%y[1](z) - 2*%i*%j[1](v) (simplify `((mplus) - ,(slatec:dbesy1 (- arg)) + ,(slatec:dbesy1 (float (- arg))) ((mtimes) $%i - ,(* -2 (slatec:dbesj1 (- arg))))))))) + ,(* -2 (slatec:dbesj1 (float (- arg)))))))))) (t (multiple-value-bind (n alpha) (floor (float order)) |