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-2020-04 (21D 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 "FFTPACK5")
20 (defun mradb4 (m ido l1 cc im1 in1 ch im2 in2 wa1 wa2 wa3
)
21 (declare (type (array double-float
(*)) wa3 wa2 wa1 ch cc
)
22 (type (f2cl-lib:integer4
) in2 im2 in1 im1 l1 ido m
))
23 (f2cl-lib:with-multi-array-data
24 ((cc double-float cc-%data% cc-%offset%
)
25 (ch double-float ch-%data% ch-%offset%
)
26 (wa1 double-float wa1-%data% wa1-%offset%
)
27 (wa2 double-float wa2-%data% wa2-%offset%
)
28 (wa3 double-float wa3-%data% wa3-%offset%
))
29 (prog ((ic 0) (i 0) (idp2 0) (m1 0) (m2 0) (k 0) (sqrt2 0.0d0
) (m2s 0)
31 (declare (type (double-float) sqrt2
)
32 (type (f2cl-lib:integer4
) m1d m2s k m2 m1 idp2 i ic
))
34 (f2cl-lib:int-add
(f2cl-lib:int-mul
(f2cl-lib:int-sub m
1) im1
)
36 (setf m2s
(f2cl-lib:int-sub
1 im2
))
37 (setf sqrt2
(f2cl-lib:fsqrt
2.0d0
))
38 (f2cl-lib:fdo
(k 1 (f2cl-lib:int-add k
1))
42 (f2cl-lib:fdo
(m1 1 (f2cl-lib:int-add m1 im1
))
45 (setf m2
(f2cl-lib:int-add m2 im2
))
46 (setf (f2cl-lib:fref ch-%data%
48 ((1 in2
) (1 ido
) (1 l1
) (1 4))
52 (f2cl-lib:fref cc-%data%
54 ((1 in1
) (1 ido
) (1 4) (1 l1
))
56 (f2cl-lib:fref cc-%data%
58 ((1 in1
) (1 ido
) (1 4) (1 l1
))
61 (f2cl-lib:fref cc-%data%
63 ((1 in1
) (1 ido
) (1 4) (1 l1
))
65 (f2cl-lib:fref cc-%data%
67 ((1 in1
) (1 ido
) (1 4) (1 l1
))
69 (setf (f2cl-lib:fref ch-%data%
71 ((1 in2
) (1 ido
) (1 l1
) (1 4))
74 (f2cl-lib:fref cc-%data%
76 ((1 in1
) (1 ido
) (1 4) (1 l1
))
78 (f2cl-lib:fref cc-%data%
80 ((1 in1
) (1 ido
) (1 4) (1 l1
))
83 (f2cl-lib:fref cc-%data%
85 ((1 in1
) (1 ido
) (1 4) (1 l1
))
87 (f2cl-lib:fref cc-%data%
89 ((1 in1
) (1 ido
) (1 4) (1 l1
))
91 (setf (f2cl-lib:fref ch-%data%
93 ((1 in2
) (1 ido
) (1 l1
) (1 4))
97 (f2cl-lib:fref cc-%data%
99 ((1 in1
) (1 ido
) (1 4) (1 l1
))
101 (f2cl-lib:fref cc-%data%
103 ((1 in1
) (1 ido
) (1 4) (1 l1
))
106 (f2cl-lib:fref cc-%data%
108 ((1 in1
) (1 ido
) (1 4) (1 l1
))
110 (f2cl-lib:fref cc-%data%
112 ((1 in1
) (1 ido
) (1 4) (1 l1
))
114 (setf (f2cl-lib:fref ch-%data%
116 ((1 in2
) (1 ido
) (1 l1
) (1 4))
119 (f2cl-lib:fref cc-%data%
121 ((1 in1
) (1 ido
) (1 4) (1 l1
))
123 (f2cl-lib:fref cc-%data%
125 ((1 in1
) (1 ido
) (1 4) (1 l1
))
128 (f2cl-lib:fref cc-%data%
130 ((1 in1
) (1 ido
) (1 4) (1 l1
))
132 (f2cl-lib:fref cc-%data%
134 ((1 in1
) (1 ido
) (1 4) (1 l1
))
138 (f2cl-lib:arithmetic-if
(f2cl-lib:int-sub ido
2)
143 (setf idp2
(f2cl-lib:int-add ido
2))
144 (f2cl-lib:fdo
(k 1 (f2cl-lib:int-add k
1))
147 (f2cl-lib:fdo
(i 3 (f2cl-lib:int-add i
2))
150 (setf ic
(f2cl-lib:int-sub idp2 i
))
152 (f2cl-lib:fdo
(m1 1 (f2cl-lib:int-add m1 im1
))
155 (setf m2
(f2cl-lib:int-add m2 im2
))
156 (setf (f2cl-lib:fref ch-%data%
157 (m2 (f2cl-lib:int-sub i
1) k
1)
158 ((1 in2
) (1 ido
) (1 l1
) (1 4))
161 (f2cl-lib:fref cc-%data%
162 (m1 (f2cl-lib:int-sub i
1) 1 k
)
163 ((1 in1
) (1 ido
) (1 4) (1 l1
))
165 (f2cl-lib:fref cc-%data%
166 (m1 (f2cl-lib:int-sub ic
1) 4 k
)
167 ((1 in1
) (1 ido
) (1 4) (1 l1
))
170 (f2cl-lib:fref cc-%data%
171 (m1 (f2cl-lib:int-sub i
1) 3 k
)
172 ((1 in1
) (1 ido
) (1 4) (1 l1
))
174 (f2cl-lib:fref cc-%data%
175 (m1 (f2cl-lib:int-sub ic
1) 2 k
)
176 ((1 in1
) (1 ido
) (1 4) (1 l1
))
178 (setf (f2cl-lib:fref ch-%data%
180 ((1 in2
) (1 ido
) (1 l1
) (1 4))
184 (f2cl-lib:fref cc-%data%
186 ((1 in1
) (1 ido
) (1 4) (1 l1
))
188 (f2cl-lib:fref cc-%data%
190 ((1 in1
) (1 ido
) (1 4) (1 l1
))
193 (f2cl-lib:fref cc-%data%
195 ((1 in1
) (1 ido
) (1 4) (1 l1
))
197 (f2cl-lib:fref cc-%data%
199 ((1 in1
) (1 ido
) (1 4) (1 l1
))
201 (setf (f2cl-lib:fref ch-%data%
202 (m2 (f2cl-lib:int-sub i
1) k
2)
203 ((1 in2
) (1 ido
) (1 l1
) (1 4))
207 (f2cl-lib:fref wa1-%data%
208 ((f2cl-lib:int-sub i
2))
212 (f2cl-lib:fref cc-%data%
213 (m1 (f2cl-lib:int-sub i
1) 1 k
)
214 ((1 in1
) (1 ido
) (1 4) (1 l1
))
216 (f2cl-lib:fref cc-%data%
217 (m1 (f2cl-lib:int-sub ic
1) 4 k
)
218 ((1 in1
) (1 ido
) (1 4) (1 l1
))
221 (f2cl-lib:fref cc-%data%
223 ((1 in1
) (1 ido
) (1 4) (1 l1
))
225 (f2cl-lib:fref cc-%data%
227 ((1 in1
) (1 ido
) (1 4) (1 l1
))
230 (f2cl-lib:fref wa1-%data%
231 ((f2cl-lib:int-sub i
1))
235 (f2cl-lib:fref cc-%data%
237 ((1 in1
) (1 ido
) (1 4) (1 l1
))
239 (f2cl-lib:fref cc-%data%
241 ((1 in1
) (1 ido
) (1 4) (1 l1
))
244 (f2cl-lib:fref cc-%data%
245 (m1 (f2cl-lib:int-sub i
1) 3 k
)
246 ((1 in1
) (1 ido
) (1 4) (1 l1
))
248 (f2cl-lib:fref cc-%data%
249 (m1 (f2cl-lib:int-sub ic
1) 2 k
)
250 ((1 in1
) (1 ido
) (1 4) (1 l1
))
252 (setf (f2cl-lib:fref ch-%data%
254 ((1 in2
) (1 ido
) (1 l1
) (1 4))
258 (f2cl-lib:fref wa1-%data%
259 ((f2cl-lib:int-sub i
2))
263 (f2cl-lib:fref cc-%data%
265 ((1 in1
) (1 ido
) (1 4) (1 l1
))
267 (f2cl-lib:fref cc-%data%
269 ((1 in1
) (1 ido
) (1 4) (1 l1
))
272 (f2cl-lib:fref cc-%data%
273 (m1 (f2cl-lib:int-sub i
1) 3 k
)
274 ((1 in1
) (1 ido
) (1 4) (1 l1
))
276 (f2cl-lib:fref cc-%data%
277 (m1 (f2cl-lib:int-sub ic
1) 2 k
)
278 ((1 in1
) (1 ido
) (1 4) (1 l1
))
281 (f2cl-lib:fref wa1-%data%
282 ((f2cl-lib:int-sub i
1))
286 (f2cl-lib:fref cc-%data%
287 (m1 (f2cl-lib:int-sub i
1) 1 k
)
288 ((1 in1
) (1 ido
) (1 4) (1 l1
))
290 (f2cl-lib:fref cc-%data%
291 (m1 (f2cl-lib:int-sub ic
1) 4 k
)
292 ((1 in1
) (1 ido
) (1 4) (1 l1
))
295 (f2cl-lib:fref cc-%data%
297 ((1 in1
) (1 ido
) (1 4) (1 l1
))
299 (f2cl-lib:fref cc-%data%
301 ((1 in1
) (1 ido
) (1 4) (1 l1
))
303 (setf (f2cl-lib:fref ch-%data%
304 (m2 (f2cl-lib:int-sub i
1) k
3)
305 ((1 in2
) (1 ido
) (1 l1
) (1 4))
309 (f2cl-lib:fref wa2-%data%
310 ((f2cl-lib:int-sub i
2))
315 (f2cl-lib:fref cc-%data%
316 (m1 (f2cl-lib:int-sub i
1) 1 k
)
317 ((1 in1
) (1 ido
) (1 4) (1 l1
))
319 (f2cl-lib:fref cc-%data%
320 (m1 (f2cl-lib:int-sub ic
1) 4 k
)
321 ((1 in1
) (1 ido
) (1 4) (1 l1
))
324 (f2cl-lib:fref cc-%data%
325 (m1 (f2cl-lib:int-sub i
1) 3 k
)
326 ((1 in1
) (1 ido
) (1 4) (1 l1
))
328 (f2cl-lib:fref cc-%data%
329 (m1 (f2cl-lib:int-sub ic
1) 2 k
)
330 ((1 in1
) (1 ido
) (1 4) (1 l1
))
333 (f2cl-lib:fref wa2-%data%
334 ((f2cl-lib:int-sub i
1))
338 (f2cl-lib:fref cc-%data%
340 ((1 in1
) (1 ido
) (1 4) (1 l1
))
342 (f2cl-lib:fref cc-%data%
344 ((1 in1
) (1 ido
) (1 4) (1 l1
))
347 (f2cl-lib:fref cc-%data%
349 ((1 in1
) (1 ido
) (1 4) (1 l1
))
351 (f2cl-lib:fref cc-%data%
353 ((1 in1
) (1 ido
) (1 4) (1 l1
))
355 (setf (f2cl-lib:fref ch-%data%
357 ((1 in2
) (1 ido
) (1 l1
) (1 4))
361 (f2cl-lib:fref wa2-%data%
362 ((f2cl-lib:int-sub i
2))
366 (f2cl-lib:fref cc-%data%
368 ((1 in1
) (1 ido
) (1 4) (1 l1
))
370 (f2cl-lib:fref cc-%data%
372 ((1 in1
) (1 ido
) (1 4) (1 l1
))
375 (f2cl-lib:fref cc-%data%
377 ((1 in1
) (1 ido
) (1 4) (1 l1
))
379 (f2cl-lib:fref cc-%data%
381 ((1 in1
) (1 ido
) (1 4) (1 l1
))
384 (f2cl-lib:fref wa2-%data%
385 ((f2cl-lib:int-sub i
1))
390 (f2cl-lib:fref cc-%data%
391 (m1 (f2cl-lib:int-sub i
1) 1 k
)
392 ((1 in1
) (1 ido
) (1 4) (1 l1
))
394 (f2cl-lib:fref cc-%data%
395 (m1 (f2cl-lib:int-sub ic
1) 4 k
)
396 ((1 in1
) (1 ido
) (1 4) (1 l1
))
399 (f2cl-lib:fref cc-%data%
400 (m1 (f2cl-lib:int-sub i
1) 3 k
)
401 ((1 in1
) (1 ido
) (1 4) (1 l1
))
403 (f2cl-lib:fref cc-%data%
404 (m1 (f2cl-lib:int-sub ic
1) 2 k
)
405 ((1 in1
) (1 ido
) (1 4) (1 l1
))
407 (setf (f2cl-lib:fref ch-%data%
408 (m2 (f2cl-lib:int-sub i
1) k
4)
409 ((1 in2
) (1 ido
) (1 l1
) (1 4))
413 (f2cl-lib:fref wa3-%data%
414 ((f2cl-lib:int-sub i
2))
419 (f2cl-lib:fref cc-%data%
420 (m1 (f2cl-lib:int-sub i
1) 1 k
)
421 ((1 in1
) (1 ido
) (1 4) (1 l1
))
423 (f2cl-lib:fref cc-%data%
424 (m1 (f2cl-lib:int-sub ic
1) 4 k
)
425 ((1 in1
) (1 ido
) (1 4) (1 l1
))
428 (f2cl-lib:fref cc-%data%
430 ((1 in1
) (1 ido
) (1 4) (1 l1
))
432 (f2cl-lib:fref cc-%data%
434 ((1 in1
) (1 ido
) (1 4) (1 l1
))
437 (f2cl-lib:fref wa3-%data%
438 ((f2cl-lib:int-sub i
1))
443 (f2cl-lib:fref cc-%data%
445 ((1 in1
) (1 ido
) (1 4) (1 l1
))
447 (f2cl-lib:fref cc-%data%
449 ((1 in1
) (1 ido
) (1 4) (1 l1
))
452 (f2cl-lib:fref cc-%data%
453 (m1 (f2cl-lib:int-sub i
1) 3 k
)
454 ((1 in1
) (1 ido
) (1 4) (1 l1
))
456 (f2cl-lib:fref cc-%data%
457 (m1 (f2cl-lib:int-sub ic
1) 2 k
)
458 ((1 in1
) (1 ido
) (1 4) (1 l1
))
460 (setf (f2cl-lib:fref ch-%data%
462 ((1 in2
) (1 ido
) (1 l1
) (1 4))
466 (f2cl-lib:fref wa3-%data%
467 ((f2cl-lib:int-sub i
2))
472 (f2cl-lib:fref cc-%data%
474 ((1 in1
) (1 ido
) (1 4) (1 l1
))
476 (f2cl-lib:fref cc-%data%
478 ((1 in1
) (1 ido
) (1 4) (1 l1
))
481 (f2cl-lib:fref cc-%data%
482 (m1 (f2cl-lib:int-sub i
1) 3 k
)
483 ((1 in1
) (1 ido
) (1 4) (1 l1
))
485 (f2cl-lib:fref cc-%data%
486 (m1 (f2cl-lib:int-sub ic
1) 2 k
)
487 ((1 in1
) (1 ido
) (1 4) (1 l1
))
490 (f2cl-lib:fref wa3-%data%
491 ((f2cl-lib:int-sub i
1))
496 (f2cl-lib:fref cc-%data%
497 (m1 (f2cl-lib:int-sub i
1) 1 k
)
498 ((1 in1
) (1 ido
) (1 4) (1 l1
))
500 (f2cl-lib:fref cc-%data%
501 (m1 (f2cl-lib:int-sub ic
1) 4 k
)
502 ((1 in1
) (1 ido
) (1 4) (1 l1
))
505 (f2cl-lib:fref cc-%data%
507 ((1 in1
) (1 ido
) (1 4) (1 l1
))
509 (f2cl-lib:fref cc-%data%
511 ((1 in1
) (1 ido
) (1 4) (1 l1
))
516 (if (= (mod ido
2) 1) (go end_label
))
518 (f2cl-lib:fdo
(k 1 (f2cl-lib:int-add k
1))
522 (f2cl-lib:fdo
(m1 1 (f2cl-lib:int-add m1 im1
))
525 (setf m2
(f2cl-lib:int-add m2 im2
))
526 (setf (f2cl-lib:fref ch-%data%
528 ((1 in2
) (1 ido
) (1 l1
) (1 4))
531 (f2cl-lib:fref cc-%data%
533 ((1 in1
) (1 ido
) (1 4) (1 l1
))
535 (f2cl-lib:fref cc-%data%
537 ((1 in1
) (1 ido
) (1 4) (1 l1
))
540 (f2cl-lib:fref cc-%data%
542 ((1 in1
) (1 ido
) (1 4) (1 l1
))
544 (f2cl-lib:fref cc-%data%
546 ((1 in1
) (1 ido
) (1 4) (1 l1
))
548 (setf (f2cl-lib:fref ch-%data%
550 ((1 in2
) (1 ido
) (1 l1
) (1 4))
554 (f2cl-lib:fref cc-%data%
556 ((1 in1
) (1 ido
) (1 4) (1 l1
))
558 (f2cl-lib:fref cc-%data%
560 ((1 in1
) (1 ido
) (1 4) (1 l1
))
563 (f2cl-lib:fref cc-%data%
565 ((1 in1
) (1 ido
) (1 4) (1 l1
))
567 (f2cl-lib:fref cc-%data%
569 ((1 in1
) (1 ido
) (1 4) (1 l1
))
571 (setf (f2cl-lib:fref ch-%data%
573 ((1 in2
) (1 ido
) (1 l1
) (1 4))
577 (f2cl-lib:fref cc-%data%
579 ((1 in1
) (1 ido
) (1 4) (1 l1
))
581 (f2cl-lib:fref cc-%data%
583 ((1 in1
) (1 ido
) (1 4) (1 l1
))
586 (f2cl-lib:fref cc-%data%
588 ((1 in1
) (1 ido
) (1 4) (1 l1
))
590 (f2cl-lib:fref cc-%data%
592 ((1 in1
) (1 ido
) (1 4) (1 l1
))
594 (setf (f2cl-lib:fref ch-%data%
596 ((1 in2
) (1 ido
) (1 l1
) (1 4))
601 (f2cl-lib:fref cc-%data%
603 ((1 in1
) (1 ido
) (1 4) (1 l1
))
605 (f2cl-lib:fref cc-%data%
607 ((1 in1
) (1 ido
) (1 4) (1 l1
))
610 (f2cl-lib:fref cc-%data%
612 ((1 in1
) (1 ido
) (1 4) (1 l1
))
614 (f2cl-lib:fref cc-%data%
616 ((1 in1
) (1 ido
) (1 4) (1 l1
))
623 (return (values nil nil nil nil nil nil nil nil nil nil nil nil
)))))
625 (in-package #:cl-user
)
626 #+#.
(cl:if
(cl:find-package
'#:f2cl
) '(and) '(or))
627 (eval-when (:load-toplevel
:compile-toplevel
:execute
)
628 (setf (gethash 'fortran-to-lisp
::mradb4
629 fortran-to-lisp
::*f2cl-function-info
*)
630 (fortran-to-lisp::make-f2cl-finfo
631 :arg-types
'((fortran-to-lisp::integer4
) (fortran-to-lisp::integer4
)
632 (fortran-to-lisp::integer4
) (array double-float
(*))
633 (fortran-to-lisp::integer4
) (fortran-to-lisp::integer4
)
634 (array double-float
(*)) (fortran-to-lisp::integer4
)
635 (fortran-to-lisp::integer4
) (array double-float
(*))
636 (array double-float
(*)) (array double-float
(*)))
637 :return-values
'(nil nil nil nil nil nil nil nil nil nil nil nil
)