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.03532739323390277
0.3442898999246285
27 0.0359799365153615 0.001264615411446926
31 1.0349695257633625e-11
32 4.2598161427910826e-14
33 1.3744654358807508e-16
34 3.5708965285083736e-19
38 2.7128142180729857e-30
39 3.0825938879146666e-33)))
41 (declare (type (f2cl-lib:integer4
) ntk0
)
42 (type (double-float) xsml xmax
)
43 (type (simple-array double-float
(16)) bk0cs
)
44 (type f2cl-lib
:logical first$
))
45 (setq first$ f2cl-lib
:%true%
)
47 (declare (type (double-float) x
))
48 (prog ((xmaxt 0.0) (y 0.0) (dbesk0 0.0))
49 (declare (type (double-float) dbesk0 y xmaxt
))
54 (* 0.1f0
(f2cl-lib:freal
(f2cl-lib:d1mach
3)))))
55 (setf xsml
(f2cl-lib:fsqrt
(* 4.0 (f2cl-lib:d1mach
3))))
56 (setf xmaxt
(- (f2cl-lib:flog
(f2cl-lib:d1mach
1))))
59 (/ (* -
0.5 xmaxt
(f2cl-lib:flog xmaxt
)) (+ xmaxt
0.5))))))
60 (setf first$ f2cl-lib
:%false%
)
61 (if (<= x
0.0) (xermsg "SLATEC" "DBESK0" "X IS ZERO OR NEGATIVE" 2 2))
62 (if (> x
2.0) (go label20
))
64 (if (> x xsml
) (setf y
(* x x
)))
66 (+ (- (* (- (f2cl-lib:flog
(* 0.5 x
))) (dbesi0 x
)) 0.25)
67 (dcsevl (- (* 0.5 y
) 1.0) bk0cs ntk0
)))
71 (if (> x xmax
) (xermsg "SLATEC" "DBESK0" "X SO BIG K0 UNDERFLOWS" 1 1))
72 (if (> x xmax
) (go end_label
))
73 (setf dbesk0
(* (exp (- x
)) (dbsk0e x
)))
76 (return (values dbesk0 nil
)))))
78 (in-package #:cl-user
)
79 #+#.
(cl:if
(cl:find-package
'#:f2cl
) '(and) '(or))
80 (eval-when (:load-toplevel
:compile-toplevel
:execute
)
81 (setf (gethash 'fortran-to-lisp
::dbesk0
82 fortran-to-lisp
::*f2cl-function-info
*)
83 (fortran-to-lisp::make-f2cl-finfo
:arg-types
'((double-float))
85 :calls
'(fortran-to-lisp::dbsk0e
86 fortran-to-lisp
::dcsevl
87 fortran-to-lisp
::dbesi0
88 fortran-to-lisp
::xermsg
89 fortran-to-lisp
::initds
90 fortran-to-lisp
::d1mach
))))