1 ;;; Compiled by f2cl version:
2 ;;; ("f2cl1.l,v 95098eb54f13 2013/04/01 00:45:16 toy $"
3 ;;; "f2cl2.l,v 95098eb54f13 2013/04/01 00:45:16 toy $"
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 95098eb54f13 2013/04/01 00:45:16 toy $"
7 ;;; "f2cl6.l,v 1d5cbacbb977 2008/08/24 00:56:27 rtoy $"
8 ;;; "macros.l,v 1409c1352feb 2013/03/24 20:44:50 toy $")
10 ;;; Using Lisp CMU Common Lisp snapshot-2013-11 (20E Unicode)
12 ;;; Options: ((:prune-labels nil) (:auto-save t) (:relaxed-array-decls t)
13 ;;; (:coerce-assigns :as-needed) (:array-type ':array)
14 ;;; (:array-slicing t) (:declare-common nil)
15 ;;; (:float-format single-float))
17 (in-package "ODEPACK")
20 (defun dpjibt (neq y yh nyh ewt rtem savr s wm iwm res jac adda
)
21 (declare (type (f2cl-lib:integer4
) nyh
)
22 (type (array double-float
(*)) wm s savr rtem ewt yh y
)
23 (type (array f2cl-lib
:integer4
(*)) iwm neq
))
25 (symbol-macrolet ((el0 (aref (dls001-part-0 *dls001-common-block
*) 210))
26 (h (aref (dls001-part-0 *dls001-common-block
*) 211))
27 (tn (aref (dls001-part-0 *dls001-common-block
*) 216))
28 (ierpj (aref (dls001-part-1 *dls001-common-block
*) 13))
29 (jcur (aref (dls001-part-1 *dls001-common-block
*) 15))
30 (miter (aref (dls001-part-1 *dls001-common-block
*) 26))
31 (n (aref (dls001-part-1 *dls001-common-block
*) 31))
32 (nfe (aref (dls001-part-1 *dls001-common-block
*) 34))
33 (nje (aref (dls001-part-1 *dls001-common-block
*) 35)))
34 (f2cl-lib:with-multi-array-data
35 ((neq f2cl-lib
:integer4 neq-%data% neq-%offset%
)
36 (iwm f2cl-lib
:integer4 iwm-%data% iwm-%offset%
)
37 (y double-float y-%data% y-%offset%
)
38 (yh double-float yh-%data% yh-%offset%
)
39 (ewt double-float ewt-%data% ewt-%offset%
)
40 (rtem double-float rtem-%data% rtem-%offset%
)
41 (savr double-float savr-%data% savr-%offset%
)
42 (s double-float s-%data% s-%offset%
)
43 (wm double-float wm-%data% wm-%offset%
))
44 (prog ((nb 0) (mwid 0) (mbsq 0) (mb 0) (lpc 0) (lpb 0) (lblox 0)
45 (lenp 0) (k1 0) (k 0) (j2 0) (j1 0) (j 0) (ires 0) (ipc 0)
46 (ipb 0) (ipa 0) (iic 0) (iib 0) (iia 0) (ier 0) (i 0)
47 (srur 0.0d0
) (r 0.0d0
) (hl0 0.0d0
) (fac 0.0d0
) (con 0.0d0
))
48 (declare (type (double-float) con fac hl0 r srur
)
49 (type (f2cl-lib:integer4
) i ier iia iib iic ipa ipb ipc ires
50 j j1 j2 k k1 lenp lblox lpb lpc mb
52 (setf nje
(f2cl-lib:int-add nje
1))
56 (setf mb
(f2cl-lib:fref iwm-%data%
(1) ((1 *)) iwm-%offset%
))
57 (setf nb
(f2cl-lib:fref iwm-%data%
(2) ((1 *)) iwm-%offset%
))
58 (setf mbsq
(f2cl-lib:int-mul mb mb
))
59 (setf lblox
(f2cl-lib:int-mul mbsq nb
))
60 (setf lpb
(f2cl-lib:int-add
3 lblox
))
61 (setf lpc
(f2cl-lib:int-add lpb lblox
))
62 (setf lenp
(f2cl-lib:int-mul
3 lblox
))
63 (f2cl-lib:computed-goto
(label100 label200
) miter
)
66 (multiple-value-bind (var-0 var-1 var-2 var-3 var-4 var-5
)
67 (funcall res neq tn y s savr ires
)
68 (declare (ignore var-0 var-2 var-3 var-4
))
73 (setf nfe
(f2cl-lib:int-add nfe
1))
74 (if (> ires
1) (go label600
))
75 (f2cl-lib:fdo
(i 1 (f2cl-lib:int-add i
1))
79 (setf (f2cl-lib:fref wm-%data%
80 ((f2cl-lib:int-add i
2))
85 (var-0 var-1 var-2 var-3 var-4 var-5 var-6 var-7 var-8
)
93 (f2cl-lib:array-slice wm-%data%
98 (f2cl-lib:array-slice wm-%data%
103 (f2cl-lib:array-slice wm-%data%
108 (declare (ignore var-0 var-2 var-3 var-6 var-7 var-8
))
116 (f2cl-lib:fdo
(i 1 (f2cl-lib:int-add i
1))
120 (setf (f2cl-lib:fref wm-%data%
121 ((f2cl-lib:int-add i
2))
125 (f2cl-lib:fref wm-%data%
126 ((f2cl-lib:int-add i
2))
133 (multiple-value-bind (var-0 var-1 var-2 var-3 var-4 var-5
)
134 (funcall res neq tn y s savr ires
)
135 (declare (ignore var-0 var-2 var-3 var-4
))
140 (setf nfe
(f2cl-lib:int-add nfe
1))
141 (if (> ires
1) (go label600
))
142 (setf mwid
(f2cl-lib:int-mul
3 mb
))
143 (setf srur
(f2cl-lib:fref wm-%data%
(1) ((1 *)) wm-%offset%
))
144 (f2cl-lib:fdo
(i 1 (f2cl-lib:int-add i
1))
148 (setf (f2cl-lib:fref wm-%data%
149 ((f2cl-lib:int-add
2 i
))
153 (f2cl-lib:fdo
(k 1 (f2cl-lib:int-add k
1))
156 (f2cl-lib:fdo
(j 1 (f2cl-lib:int-add j
1))
162 (f2cl-lib:int-sub k
1)
164 (f2cl-lib:fdo
(i j1
(f2cl-lib:int-add i mwid
))
171 (f2cl-lib:fref y-%data%
176 (f2cl-lib:fref ewt-%data%
180 (setf (f2cl-lib:fref y-%data%
(i) ((1 *)) y-%offset%
)
182 (f2cl-lib:fref y-%data%
(i) ((1 *)) y-%offset%
)
185 (multiple-value-bind (var-0 var-1 var-2 var-3 var-4 var-5
)
186 (funcall res neq tn y s rtem ires
)
187 (declare (ignore var-0 var-2 var-3 var-4
))
192 (setf nfe
(f2cl-lib:int-add nfe
1))
193 (if (> ires
1) (go label600
))
194 (f2cl-lib:fdo
(i 1 (f2cl-lib:int-add i
1))
198 (setf (f2cl-lib:fref rtem-%data%
203 (f2cl-lib:fref rtem-%data%
207 (f2cl-lib:fref savr-%data%
212 (f2cl-lib:fdo
(i j1
(f2cl-lib:int-add i mwid
))
215 (setf (f2cl-lib:fref y-%data%
(i) ((1 *)) y-%offset%
)
216 (f2cl-lib:fref yh-%data%
224 (f2cl-lib:fref y-%data%
229 (f2cl-lib:fref ewt-%data%
233 (setf fac
(/ (- hl0
) r
))
234 (setf iia
(f2cl-lib:int-sub i j
))
238 (f2cl-lib:int-sub j
1)
241 (f2cl-lib:int-sub k1
1)
243 (f2cl-lib:fdo
(j2 1 (f2cl-lib:int-add j2
1))
247 (setf (f2cl-lib:fref wm-%data%
248 ((f2cl-lib:int-add ipa j2
))
252 (f2cl-lib:fref rtem-%data%
253 ((f2cl-lib:int-add iia j2
))
257 (if (<= k1
1) (go label223
))
258 (setf iib
(f2cl-lib:int-sub iia mb
))
260 (f2cl-lib:int-sub
(f2cl-lib:int-add ipa lblox
)
262 (f2cl-lib:fdo
(j2 1 (f2cl-lib:int-add j2
1))
266 (setf (f2cl-lib:fref wm-%data%
267 ((f2cl-lib:int-add ipb j2
))
271 (f2cl-lib:fref rtem-%data%
272 ((f2cl-lib:int-add iib j2
))
277 (if (>= k1 nb
) (go label225
))
278 (setf iic
(f2cl-lib:int-add iia mb
))
280 (f2cl-lib:int-add ipa
281 (f2cl-lib:int-mul
2 lblox
)
283 (f2cl-lib:fdo
(j2 1 (f2cl-lib:int-add j2
1))
287 (setf (f2cl-lib:fref wm-%data%
288 ((f2cl-lib:int-add ipc j2
))
292 (f2cl-lib:fref rtem-%data%
293 ((f2cl-lib:int-add iic j2
))
298 (if (/= k1
3) (go label227
))
301 (f2cl-lib:int-sub ipa
(f2cl-lib:int-mul
2 mbsq
))
302 (f2cl-lib:int-mul
2 lblox
)))
303 (f2cl-lib:fdo
(j2 1 (f2cl-lib:int-add j2
1))
307 (setf (f2cl-lib:fref wm-%data%
308 ((f2cl-lib:int-add ipc j2
))
312 (f2cl-lib:fref rtem-%data%
318 (if (/= k1
(f2cl-lib:int-sub nb
2)) (go label229
))
319 (setf iib
(f2cl-lib:int-sub n mb
))
321 (f2cl-lib:int-add ipa
322 (f2cl-lib:int-mul
2 mbsq
)
324 (f2cl-lib:fdo
(j2 1 (f2cl-lib:int-add j2
1))
328 (setf (f2cl-lib:fref wm-%data%
329 ((f2cl-lib:int-add ipb j2
))
333 (f2cl-lib:fref rtem-%data%
334 ((f2cl-lib:int-add iib j2
))
339 (setf k1
(f2cl-lib:int-add k1
3))
344 (multiple-value-bind (var-0 var-1 var-2 var-3 var-4 var-5
)
345 (funcall res neq tn y s savr ires
)
346 (declare (ignore var-0 var-2 var-3 var-4
))
351 (setf nfe
(f2cl-lib:int-add nfe
1))
352 (if (> ires
1) (go label600
))
355 (var-0 var-1 var-2 var-3 var-4 var-5 var-6 var-7
)
362 (f2cl-lib:array-slice wm-%data%
367 (f2cl-lib:array-slice wm-%data%
372 (f2cl-lib:array-slice wm-%data%
377 (declare (ignore var-0 var-2 var-5 var-6 var-7
))
384 (multiple-value-bind (var-0 var-1 var-2 var-3 var-4 var-5 var-6
)
386 (f2cl-lib:array-slice wm-%data%
391 (f2cl-lib:array-slice wm-%data%
396 (f2cl-lib:array-slice wm-%data%
401 (f2cl-lib:array-slice iwm-%data%
407 (declare (ignore var-0 var-1 var-2 var-3 var-4 var-5
))
409 (if (/= ier
0) (setf ierpj
1))
416 (values nil nil nil nil nil nil nil nil nil nil nil nil nil
)))))))
418 (in-package #:cl-user
)
419 #+#.
(cl:if
(cl:find-package
'#:f2cl
) '(and) '(or))
420 (eval-when (:load-toplevel
:compile-toplevel
:execute
)
421 (setf (gethash 'fortran-to-lisp
::dpjibt
422 fortran-to-lisp
::*f2cl-function-info
*)
423 (fortran-to-lisp::make-f2cl-finfo
424 :arg-types
'((array fortran-to-lisp
::integer4
(*))
425 (array double-float
(*)) (array double-float
(*))
426 (fortran-to-lisp::integer4
) (array double-float
(*))
427 (array double-float
(*)) (array double-float
(*))
428 (array double-float
(*)) (array double-float
(*))
429 (array fortran-to-lisp
::integer4
(*)) t t t
)
430 :return-values
'(nil nil nil nil nil nil nil nil nil nil nil nil
432 :calls
'(fortran-to-lisp::ddecbt
))))