1 ;;; Compiled by f2cl version:
2 ;;; ("f2cl1.l,v 46c1f6a93b0d 2012/05/03 04:40:28 toy $"
3 ;;; "f2cl2.l,v 96616d88fb7e 2008/02/22 22:19:34 rtoy $"
4 ;;; "f2cl3.l,v 96616d88fb7e 2008/02/22 22:19:34 rtoy $"
5 ;;; "f2cl4.l,v 96616d88fb7e 2008/02/22 22:19:34 rtoy $"
6 ;;; "f2cl5.l,v 46c1f6a93b0d 2012/05/03 04:40:28 toy $"
7 ;;; "f2cl6.l,v 1d5cbacbb977 2008/08/24 00:56:27 rtoy $"
8 ;;; "macros.l,v fceac530ef0c 2011/11/26 04:02:26 toy $")
10 ;;; Using Lisp CMU Common Lisp snapshot-2012-04 (20C Unicode)
12 ;;; Options: ((:prune-labels nil) (:auto-save t) (:relaxed-array-decls t)
13 ;;; (:coerce-assigns :as-needed) (:array-type ':simple-array)
14 ;;; (:array-slicing nil) (:declare-common nil)
15 ;;; (:float-format double-float))
25 :element-type
'double-float
26 :initial-contents
'(-0.11726141513332787 -
0.2536152183079064
34 -
6.327616404661393e-13
36 -
4.4825338187012584e-17
37 2.9053844926250247e-19
38 -
1.6117321978414417e-21
40 -
3.2486937821119987e-26
41 1.2022376772274103e-28
42 -
3.952012212651349e-31
43 1.1616780822664534e-33)))
45 (declare (type (f2cl-lib:integer4
) ntj1
)
46 (type (double-float) xsml xmin
)
47 (type (simple-array double-float
(19)) bj1cs
)
48 (type f2cl-lib
:logical first$
))
49 (setq first$ f2cl-lib
:%true%
)
51 (declare (type (double-float) x
))
52 (prog ((ampl 0.0) (theta 0.0) (y 0.0) (dbesj1 0.0))
53 (declare (type (double-float) dbesj1 y theta ampl
))
58 (* 0.1f0
(f2cl-lib:freal
(f2cl-lib:d1mach
3)))))
59 (setf xsml
(f2cl-lib:fsqrt
(* 8.0 (f2cl-lib:d1mach
3))))
60 (setf xmin
(* 2.0 (f2cl-lib:d1mach
1)))))
61 (setf first$ f2cl-lib
:%false%
)
63 (if (> y
4.0) (go label20
))
65 (if (= y
0.0) (go end_label
))
67 (xermsg "SLATEC" "DBESJ1" "ABS(X) SO SMALL J1 UNDERFLOWS" 1 1))
68 (if (> y xmin
) (setf dbesj1
(* 0.5 x
)))
71 (* x
(+ 0.25 (dcsevl (- (* 0.125 y y
) 1.0) bj1cs ntj1
)))))
74 (multiple-value-bind (var-0 var-1 var-2
)
76 (declare (ignore var-0
))
79 (setf dbesj1
(* (f2cl-lib:sign ampl x
) (cos theta
)))
82 (return (values dbesj1 nil
)))))
84 (in-package #:cl-user
)
85 #+#.
(cl:if
(cl:find-package
'#:f2cl
) '(and) '(or))
86 (eval-when (:load-toplevel
:compile-toplevel
:execute
)
87 (setf (gethash 'fortran-to-lisp
::dbesj1
88 fortran-to-lisp
::*f2cl-function-info
*)
89 (fortran-to-lisp::make-f2cl-finfo
:arg-types
'((double-float))
91 :calls
'(fortran-to-lisp::d9b1mp
92 fortran-to-lisp
::dcsevl
93 fortran-to-lisp
::xermsg
94 fortran-to-lisp
::initds
95 fortran-to-lisp
::d1mach
))))