Lines Matching +full:x +full:- +full:real +full:- +full:ip

2   compile with cc -DTESTING_FFTPACK fftpack.c in order to build the
26 - Neither the names of NCAR's Computational and Information Systems
32 - Redistributions of source code must retain the above copyright
35 - Redistributions in binary form must reproduce the above copyright
57 typedef fftpack_real real; typedef
61 real r, i;
65 static real c_abs(f77complex *c) { return sqrt(c->r*c->r + c->i*c->i); } in c_abs()
81 static void passfb(integer *nac, integer ido, integer ip, integer l1, integer idl1, in passfb() argument
82 real *cc, real *c1, real *c2, real *ch, real *ch2, const real *wa, real fsign) in passfb()
90 real wai, war; in passfb()
96 #define cc_ref(a_1,a_2,a_3) cc[((a_3)*ip + (a_2))*ido + a_1] in passfb()
102 ch -= ch_offset; in passfb()
104 c1 -= c1_offset; in passfb()
105 cc_offset = 1 + ido * (1 + ip); in passfb()
106 cc -= cc_offset; in passfb()
108 ch2 -= ch2_offset; in passfb()
110 c2 -= c2_offset; in passfb()
111 --wa; in passfb()
115 ipp2 = ip + 2; in passfb()
116 ipph = (ip + 1) / 2; in passfb()
117 idp = ip * ido; in passfb()
121 jc = ipp2 - j; in passfb()
125 ch_ref(i, k, jc) = cc_ref(i, j, k) - cc_ref(i, jc, k); in passfb()
136 jc = ipp2 - j; in passfb()
140 ch_ref(i, k, jc) = cc_ref(i, j, k) - cc_ref(i, jc, k); in passfb()
150 idl = 2 - ido; in passfb()
153 lc = ipp2 - l; in passfb()
156 c2_ref(ik, l) = ch2_ref(ik, 1) + wa[idl - 1] * ch2_ref(ik, 2); in passfb()
157 c2_ref(ik, lc) = fsign*wa[idl] * ch2_ref(ik, ip); in passfb()
162 jc = ipp2 - j; in passfb()
165 idlj -= idp; in passfb()
167 war = wa[idlj - 1]; in passfb()
181 jc = ipp2 - j; in passfb()
183 ch2_ref(ik - 1, j) = c2_ref(ik - 1, j) - c2_ref(ik, jc); in passfb()
184 ch2_ref(ik - 1, jc) = c2_ref(ik - 1, j) + c2_ref(ik, jc); in passfb()
185 ch2_ref(ik, j) = c2_ref(ik, j) + c2_ref(ik - 1, jc); in passfb()
186 ch2_ref(ik, jc) = c2_ref(ik, j) - c2_ref(ik - 1, jc); in passfb()
197 for (j = 2; j <= ip; ++j) { in passfb()
205 for (j = 2; j <= ip; ++j) { in passfb()
210 … c1_ref(i - 1, k, j) = wa[idij - 1] * ch_ref(i - 1, k, j) - fsign*wa[idij] * ch_ref(i, k, j); in passfb()
211 c1_ref(i, k, j) = wa[idij - 1] * ch_ref(i, k, j) + fsign*wa[idij] * ch_ref(i - 1, k, j); in passfb()
217 idj = 2 - ido; in passfb()
218 for (j = 2; j <= ip; ++j) { in passfb()
224 c1_ref(i - 1, k, j) = wa[idij - 1] * ch_ref(i - 1, k, j) - fsign*wa[idij] * ch_ref(i, k, j); in passfb()
225 c1_ref(i, k, j) = wa[idij - 1] * ch_ref(i, k, j) + fsign*wa[idij] * ch_ref(i - 1, k, j); in passfb()
238 static void passb2(integer ido, integer l1, const real *cc, real *ch, const real *wa1) in passb2()
245 real ti2, tr2; in passb2()
253 ch -= ch_offset; in passb2()
255 cc -= cc_offset; in passb2()
256 --wa1; in passb2()
262 ch_ref(1, k, 2) = cc_ref(1, 1, k) - cc_ref(1, 2, k); in passb2()
264 ch_ref(2, k, 2) = cc_ref(2, 1, k) - cc_ref(2, 2, k); in passb2()
270 ch_ref(i - 1, k, 1) = cc_ref(i - 1, 1, k) + cc_ref(i - 1, 2, k); in passb2()
271 tr2 = cc_ref(i - 1, 1, k) - cc_ref(i - 1, 2, k); in passb2()
273 ti2 = cc_ref(i, 1, k) - cc_ref(i, 2, k); in passb2()
274 ch_ref(i, k, 2) = wa1[i - 1] * ti2 + wa1[i] * tr2; in passb2()
275 ch_ref(i - 1, k, 2) = wa1[i - 1] * tr2 - wa1[i] * ti2; in passb2()
284 static void passb3(integer ido, integer l1, const real *cc, real *ch, const real *wa1, const real *… in passb3()
286 static const real taur = -.5f; in passb3()
287 static const real taui = .866025403784439f; in passb3()
294 real ci2, ci3, di2, di3, cr2, cr3, dr2, dr3, ti2, tr2; in passb3()
302 ch -= ch_offset; in passb3()
304 cc -= cc_offset; in passb3()
305 --wa1; in passb3()
306 --wa2; in passb3()
317 cr3 = taui * (cc_ref(1, 2, k) - cc_ref(1, 3, k)); in passb3()
318 ci3 = taui * (cc_ref(2, 2, k) - cc_ref(2, 3, k)); in passb3()
319 ch_ref(1, k, 2) = cr2 - ci3; in passb3()
322 ch_ref(2, k, 3) = ci2 - cr3; in passb3()
327 tr2 = cc_ref(i - 1, 2, k) + cc_ref(i - 1, 3, k); in passb3()
328 cr2 = cc_ref(i - 1, 1, k) + taur * tr2; in passb3()
329 ch_ref(i - 1, k, 1) = cc_ref(i - 1, 1, k) + tr2; in passb3()
333 cr3 = taui * (cc_ref(i - 1, 2, k) - cc_ref(i - 1, 3, k)); in passb3()
334 ci3 = taui * (cc_ref(i, 2, k) - cc_ref(i, 3, k)); in passb3()
335 dr2 = cr2 - ci3; in passb3()
338 di3 = ci2 - cr3; in passb3()
339 ch_ref(i, k, 2) = wa1[i - 1] * di2 + wa1[i] * dr2; in passb3()
340 ch_ref(i - 1, k, 2) = wa1[i - 1] * dr2 - wa1[i] * di2; in passb3()
341 ch_ref(i, k, 3) = wa2[i - 1] * di3 + wa2[i] * dr3; in passb3()
342 ch_ref(i - 1, k, 3) = wa2[i - 1] * dr3 - wa2[i] * di3; in passb3()
352 static void passb4(integer ido, integer l1, const real *cc, real *ch, in passb4()
353 const real *wa1, const real *wa2, const real *wa3) in passb4()
360 real ci2, ci3, ci4, cr2, cr3, cr4, ti1, ti2, ti3, ti4, tr1, tr2, tr3, tr4; in passb4()
368 ch -= ch_offset; in passb4()
370 cc -= cc_offset; in passb4()
371 --wa1; in passb4()
372 --wa2; in passb4()
373 --wa3; in passb4()
378 ti1 = cc_ref(2, 1, k) - cc_ref(2, 3, k); in passb4()
380 tr4 = cc_ref(2, 4, k) - cc_ref(2, 2, k); in passb4()
382 tr1 = cc_ref(1, 1, k) - cc_ref(1, 3, k); in passb4()
384 ti4 = cc_ref(1, 2, k) - cc_ref(1, 4, k); in passb4()
387 ch_ref(1, k, 3) = tr2 - tr3; in passb4()
389 ch_ref(2, k, 3) = ti2 - ti3; in passb4()
391 ch_ref(1, k, 4) = tr1 - tr4; in passb4()
393 ch_ref(2, k, 4) = ti1 - ti4; in passb4()
398 ti1 = cc_ref(i, 1, k) - cc_ref(i, 3, k); in passb4()
401 tr4 = cc_ref(i, 4, k) - cc_ref(i, 2, k); in passb4()
402 tr1 = cc_ref(i - 1, 1, k) - cc_ref(i - 1, 3, k); in passb4()
403 tr2 = cc_ref(i - 1, 1, k) + cc_ref(i - 1, 3, k); in passb4()
404 ti4 = cc_ref(i - 1, 2, k) - cc_ref(i - 1, 4, k); in passb4()
405 tr3 = cc_ref(i - 1, 2, k) + cc_ref(i - 1, 4, k); in passb4()
406 ch_ref(i - 1, k, 1) = tr2 + tr3; in passb4()
407 cr3 = tr2 - tr3; in passb4()
409 ci3 = ti2 - ti3; in passb4()
411 cr4 = tr1 - tr4; in passb4()
413 ci4 = ti1 - ti4; in passb4()
414 ch_ref(i - 1, k, 2) = wa1[i - 1] * cr2 - wa1[i] * ci2; in passb4()
415 ch_ref(i, k, 2) = wa1[i - 1] * ci2 + wa1[i] * cr2; in passb4()
416 ch_ref(i - 1, k, 3) = wa2[i - 1] * cr3 - wa2[i] * ci3; in passb4()
417 ch_ref(i, k, 3) = wa2[i - 1] * ci3 + wa2[i] * cr3; in passb4()
418 ch_ref(i - 1, k, 4) = wa3[i - 1] * cr4 - wa3[i] * ci4; in passb4()
419 ch_ref(i, k, 4) = wa3[i - 1] * ci4 + wa3[i] * cr4; in passb4()
429 static void passfb5(integer ido, integer l1, const real *cc, real *ch, in passfb5()
430 const real *wa1, const real *wa2, const real *wa3, const real *wa4, real fsign) in passfb5()
432 const real tr11 = .309016994374947f; in passfb5()
433 const real ti11 = .951056516295154f*fsign; in passfb5()
434 const real tr12 = -.809016994374947f; in passfb5()
435 const real ti12 = .587785252292473f*fsign; in passfb5()
442 real ci2, ci3, ci4, ci5, di3, di4, di5, di2, cr2, cr3, cr5, cr4, ti2, ti3, in passfb5()
451 ch -= ch_offset; in passfb5()
453 cc -= cc_offset; in passfb5()
454 --wa1; in passfb5()
455 --wa2; in passfb5()
456 --wa3; in passfb5()
457 --wa4; in passfb5()
462 ti5 = cc_ref(2, 2, k) - cc_ref(2, 5, k); in passfb5()
464 ti4 = cc_ref(2, 3, k) - cc_ref(2, 4, k); in passfb5()
466 tr5 = cc_ref(1, 2, k) - cc_ref(1, 5, k); in passfb5()
468 tr4 = cc_ref(1, 3, k) - cc_ref(1, 4, k); in passfb5()
478 cr4 = ti12 * tr5 - ti11 * tr4; in passfb5()
479 ci4 = ti12 * ti5 - ti11 * ti4; in passfb5()
480 ch_ref(1, k, 2) = cr2 - ci5; in passfb5()
484 ch_ref(1, k, 3) = cr3 - ci4; in passfb5()
486 ch_ref(2, k, 4) = ci3 - cr4; in passfb5()
487 ch_ref(2, k, 5) = ci2 - cr5; in passfb5()
492 ti5 = cc_ref(i, 2, k) - cc_ref(i, 5, k); in passfb5()
494 ti4 = cc_ref(i, 3, k) - cc_ref(i, 4, k); in passfb5()
496 tr5 = cc_ref(i - 1, 2, k) - cc_ref(i - 1, 5, k); in passfb5()
497 tr2 = cc_ref(i - 1, 2, k) + cc_ref(i - 1, 5, k); in passfb5()
498 tr4 = cc_ref(i - 1, 3, k) - cc_ref(i - 1, 4, k); in passfb5()
499 tr3 = cc_ref(i - 1, 3, k) + cc_ref(i - 1, 4, k); in passfb5()
500 ch_ref(i - 1, k, 1) = cc_ref(i - 1, 1, k) + tr2 + tr3; in passfb5()
502 cr2 = cc_ref(i - 1, 1, k) + tr11 * tr2 + tr12 * tr3; in passfb5()
504 cr3 = cc_ref(i - 1, 1, k) + tr12 * tr2 + tr11 * tr3; in passfb5()
508 cr4 = ti12 * tr5 - ti11 * tr4; in passfb5()
509 ci4 = ti12 * ti5 - ti11 * ti4; in passfb5()
510 dr3 = cr3 - ci4; in passfb5()
513 di4 = ci3 - cr4; in passfb5()
515 dr2 = cr2 - ci5; in passfb5()
516 di5 = ci2 - cr5; in passfb5()
518 ch_ref(i - 1, k, 2) = wa1[i - 1] * dr2 - fsign*wa1[i] * di2; in passfb5()
519 ch_ref(i, k, 2) = wa1[i - 1] * di2 + fsign*wa1[i] * dr2; in passfb5()
520 ch_ref(i - 1, k, 3) = wa2[i - 1] * dr3 - fsign*wa2[i] * di3; in passfb5()
521 ch_ref(i, k, 3) = wa2[i - 1] * di3 + fsign*wa2[i] * dr3; in passfb5()
522 ch_ref(i - 1, k, 4) = wa3[i - 1] * dr4 - fsign*wa3[i] * di4; in passfb5()
523 ch_ref(i, k, 4) = wa3[i - 1] * di4 + fsign*wa3[i] * dr4; in passfb5()
524 ch_ref(i - 1, k, 5) = wa4[i - 1] * dr5 - fsign*wa4[i] * di5; in passfb5()
525 ch_ref(i, k, 5) = wa4[i - 1] * di5 + fsign*wa4[i] * dr5; in passfb5()
534 static void passf2(integer ido, integer l1, const real *cc, real *ch, const real *wa1) in passf2()
541 real ti2, tr2; in passf2()
549 ch -= ch_offset; in passf2()
551 cc -= cc_offset; in passf2()
552 --wa1; in passf2()
558 ch_ref(1, k, 2) = cc_ref(1, 1, k) - cc_ref(1, 2, k); in passf2()
560 ch_ref(2, k, 2) = cc_ref(2, 1, k) - cc_ref(2, 2, k); in passf2()
565 ch_ref(i - 1, k, 1) = cc_ref(i - 1, 1, k) + cc_ref(i - 1, 2, in passf2()
567 tr2 = cc_ref(i - 1, 1, k) - cc_ref(i - 1, 2, k); in passf2()
569 ti2 = cc_ref(i, 1, k) - cc_ref(i, 2, k); in passf2()
570 ch_ref(i, k, 2) = wa1[i - 1] * ti2 - wa1[i] * tr2; in passf2()
571 ch_ref(i - 1, k, 2) = wa1[i - 1] * tr2 + wa1[i] * ti2; in passf2()
581 static void passf3(integer ido, integer l1, const real *cc, real *ch, in passf3()
582 const real *wa1, const real *wa2) in passf3()
584 static const real taur = -.5f; in passf3()
585 static const real taui = -.866025403784439f; in passf3()
592 real ci2, ci3, di2, di3, cr2, cr3, dr2, dr3, ti2, tr2; in passf3()
600 ch -= ch_offset; in passf3()
602 cc -= cc_offset; in passf3()
603 --wa1; in passf3()
604 --wa2; in passf3()
615 cr3 = taui * (cc_ref(1, 2, k) - cc_ref(1, 3, k)); in passf3()
616 ci3 = taui * (cc_ref(2, 2, k) - cc_ref(2, 3, k)); in passf3()
617 ch_ref(1, k, 2) = cr2 - ci3; in passf3()
620 ch_ref(2, k, 3) = ci2 - cr3; in passf3()
625 tr2 = cc_ref(i - 1, 2, k) + cc_ref(i - 1, 3, k); in passf3()
626 cr2 = cc_ref(i - 1, 1, k) + taur * tr2; in passf3()
627 ch_ref(i - 1, k, 1) = cc_ref(i - 1, 1, k) + tr2; in passf3()
631 cr3 = taui * (cc_ref(i - 1, 2, k) - cc_ref(i - 1, 3, k)); in passf3()
632 ci3 = taui * (cc_ref(i, 2, k) - cc_ref(i, 3, k)); in passf3()
633 dr2 = cr2 - ci3; in passf3()
636 di3 = ci2 - cr3; in passf3()
637 ch_ref(i, k, 2) = wa1[i - 1] * di2 - wa1[i] * dr2; in passf3()
638 ch_ref(i - 1, k, 2) = wa1[i - 1] * dr2 + wa1[i] * di2; in passf3()
639 ch_ref(i, k, 3) = wa2[i - 1] * di3 - wa2[i] * dr3; in passf3()
640 ch_ref(i - 1, k, 3) = wa2[i - 1] * dr3 + wa2[i] * di3; in passf3()
650 static void passf4(integer ido, integer l1, const real *cc, real *ch, in passf4()
651 const real *wa1, const real *wa2, const real *wa3) in passf4()
658 real ci2, ci3, ci4, cr2, cr3, cr4, ti1, ti2, ti3, ti4, tr1, tr2, tr3, tr4; in passf4()
666 ch -= ch_offset; in passf4()
668 cc -= cc_offset; in passf4()
669 --wa1; in passf4()
670 --wa2; in passf4()
671 --wa3; in passf4()
676 ti1 = cc_ref(2, 1, k) - cc_ref(2, 3, k); in passf4()
678 tr4 = cc_ref(2, 2, k) - cc_ref(2, 4, k); in passf4()
680 tr1 = cc_ref(1, 1, k) - cc_ref(1, 3, k); in passf4()
682 ti4 = cc_ref(1, 4, k) - cc_ref(1, 2, k); in passf4()
685 ch_ref(1, k, 3) = tr2 - tr3; in passf4()
687 ch_ref(2, k, 3) = ti2 - ti3; in passf4()
689 ch_ref(1, k, 4) = tr1 - tr4; in passf4()
691 ch_ref(2, k, 4) = ti1 - ti4; in passf4()
696 ti1 = cc_ref(i, 1, k) - cc_ref(i, 3, k); in passf4()
699 tr4 = cc_ref(i, 2, k) - cc_ref(i, 4, k); in passf4()
700 tr1 = cc_ref(i - 1, 1, k) - cc_ref(i - 1, 3, k); in passf4()
701 tr2 = cc_ref(i - 1, 1, k) + cc_ref(i - 1, 3, k); in passf4()
702 ti4 = cc_ref(i - 1, 4, k) - cc_ref(i - 1, 2, k); in passf4()
703 tr3 = cc_ref(i - 1, 2, k) + cc_ref(i - 1, 4, k); in passf4()
704 ch_ref(i - 1, k, 1) = tr2 + tr3; in passf4()
705 cr3 = tr2 - tr3; in passf4()
707 ci3 = ti2 - ti3; in passf4()
709 cr4 = tr1 - tr4; in passf4()
711 ci4 = ti1 - ti4; in passf4()
712 ch_ref(i - 1, k, 2) = wa1[i - 1] * cr2 + wa1[i] * ci2; in passf4()
713 ch_ref(i, k, 2) = wa1[i - 1] * ci2 - wa1[i] * cr2; in passf4()
714 ch_ref(i - 1, k, 3) = wa2[i - 1] * cr3 + wa2[i] * ci3; in passf4()
715 ch_ref(i, k, 3) = wa2[i - 1] * ci3 - wa2[i] * cr3; in passf4()
716 ch_ref(i - 1, k, 4) = wa3[i - 1] * cr4 + wa3[i] * ci4; in passf4()
717 ch_ref(i, k, 4) = wa3[i - 1] * ci4 - wa3[i] * cr4; in passf4()
726 static void radb2(integer ido, integer l1, const real *cc, real *ch, const real *wa1) in radb2()
733 real ti2, tr2; in radb2()
742 ch -= ch_offset; in radb2()
744 cc -= cc_offset; in radb2()
745 --wa1; in radb2()
750 ch_ref(1, k, 2) = cc_ref(1, 1, k) - cc_ref(ido, 2, k); in radb2()
757 ic = idp2 - i; in radb2()
758 ch_ref(i - 1, k, 1) = cc_ref(i - 1, 1, k) + cc_ref(ic - 1, 2, in radb2()
760 tr2 = cc_ref(i - 1, 1, k) - cc_ref(ic - 1, 2, k); in radb2()
761 ch_ref(i, k, 1) = cc_ref(i, 1, k) - cc_ref(ic, 2, k); in radb2()
763 ch_ref(i - 1, k, 2) = wa1[i - 2] * tr2 - wa1[i - 1] * ti2; in radb2()
764 ch_ref(i, k, 2) = wa1[i - 2] * ti2 + wa1[i - 1] * tr2; in radb2()
771 ch_ref(ido, k, 2) = -(cc_ref(1, 2, k) + cc_ref(1, 2, k)); in radb2()
779 static void radb3(integer ido, integer l1, const real *cc, real *ch, in radb3()
780 const real *wa1, const real *wa2) in radb3()
784 static const real taur = -.5f; in radb3()
785 static const real taui = .866025403784439f; in radb3()
792 real ci2, ci3, di2, di3, cr2, cr3, dr2, dr3, ti2, tr2; in radb3()
801 ch -= ch_offset; in radb3()
803 cc -= cc_offset; in radb3()
804 --wa1; in radb3()
805 --wa2; in radb3()
813 ch_ref(1, k, 2) = cr2 - ci3; in radb3()
822 ic = idp2 - i; in radb3()
823 tr2 = cc_ref(i - 1, 3, k) + cc_ref(ic - 1, 2, k); in radb3()
824 cr2 = cc_ref(i - 1, 1, k) + taur * tr2; in radb3()
825 ch_ref(i - 1, k, 1) = cc_ref(i - 1, 1, k) + tr2; in radb3()
826 ti2 = cc_ref(i, 3, k) - cc_ref(ic, 2, k); in radb3()
829 cr3 = taui * (cc_ref(i - 1, 3, k) - cc_ref(ic - 1, 2, k)); in radb3()
831 dr2 = cr2 - ci3; in radb3()
834 di3 = ci2 - cr3; in radb3()
835 ch_ref(i - 1, k, 2) = wa1[i - 2] * dr2 - wa1[i - 1] * di2; in radb3()
836 ch_ref(i, k, 2) = wa1[i - 2] * di2 + wa1[i - 1] * dr2; in radb3()
837 ch_ref(i - 1, k, 3) = wa2[i - 2] * dr3 - wa2[i - 1] * di3; in radb3()
838 ch_ref(i, k, 3) = wa2[i - 2] * di3 + wa2[i - 1] * dr3; in radb3()
847 static void radb4(integer ido, integer l1, const real *cc, real *ch, in radb4()
848 const real *wa1, const real *wa2, const real *wa3) in radb4()
852 static const real sqrt2 = 1.414213562373095f; in radb4()
859 real ci2, ci3, ci4, cr2, cr3, cr4, ti1, ti2, ti3, ti4, tr1, tr2, tr3, tr4; in radb4()
868 ch -= ch_offset; in radb4()
870 cc -= cc_offset; in radb4()
871 --wa1; in radb4()
872 --wa2; in radb4()
873 --wa3; in radb4()
877 tr1 = cc_ref(1, 1, k) - cc_ref(ido, 4, k); in radb4()
882 ch_ref(1, k, 2) = tr1 - tr4; in radb4()
883 ch_ref(1, k, 3) = tr2 - tr3; in radb4()
891 ic = idp2 - i; in radb4()
893 ti2 = cc_ref(i, 1, k) - cc_ref(ic, 4, k); in radb4()
894 ti3 = cc_ref(i, 3, k) - cc_ref(ic, 2, k); in radb4()
896 tr1 = cc_ref(i - 1, 1, k) - cc_ref(ic - 1, 4, k); in radb4()
897 tr2 = cc_ref(i - 1, 1, k) + cc_ref(ic - 1, 4, k); in radb4()
898 ti4 = cc_ref(i - 1, 3, k) - cc_ref(ic - 1, 2, k); in radb4()
899 tr3 = cc_ref(i - 1, 3, k) + cc_ref(ic - 1, 2, k); in radb4()
900 ch_ref(i - 1, k, 1) = tr2 + tr3; in radb4()
901 cr3 = tr2 - tr3; in radb4()
903 ci3 = ti2 - ti3; in radb4()
904 cr2 = tr1 - tr4; in radb4()
907 ci4 = ti1 - ti4; in radb4()
908 ch_ref(i - 1, k, 2) = wa1[i - 2] * cr2 - wa1[i - 1] * ci2; in radb4()
909 ch_ref(i, k, 2) = wa1[i - 2] * ci2 + wa1[i - 1] * cr2; in radb4()
910 ch_ref(i - 1, k, 3) = wa2[i - 2] * cr3 - wa2[i - 1] * ci3; in radb4()
911 ch_ref(i, k, 3) = wa2[i - 2] * ci3 + wa2[i - 1] * cr3; in radb4()
912 ch_ref(i - 1, k, 4) = wa3[i - 2] * cr4 - wa3[i - 1] * ci4; in radb4()
913 ch_ref(i, k, 4) = wa3[i - 2] * ci4 + wa3[i - 1] * cr4; in radb4()
920 ti2 = cc_ref(1, 4, k) - cc_ref(1, 2, k); in radb4()
921 tr1 = cc_ref(ido, 1, k) - cc_ref(ido, 3, k); in radb4()
924 ch_ref(ido, k, 2) = sqrt2 * (tr1 - ti1); in radb4()
926 ch_ref(ido, k, 4) = -sqrt2 * (tr1 + ti1); in radb4()
934 static void radb5(integer ido, integer l1, const real *cc, real *ch, in radb5()
935 const real *wa1, const real *wa2, const real *wa3, const real *wa4) in radb5()
939 static const real tr11 = .309016994374947f; in radb5()
940 static const real ti11 = .951056516295154f; in radb5()
941 static const real tr12 = -.809016994374947f; in radb5()
942 static const real ti12 = .587785252292473f; in radb5()
949 real ci2, ci3, ci4, ci5, di3, di4, di5, di2, cr2, cr3, cr5, cr4, ti2, ti3, in radb5()
959 ch -= ch_offset; in radb5()
961 cc -= cc_offset; in radb5()
962 --wa1; in radb5()
963 --wa2; in radb5()
964 --wa3; in radb5()
965 --wa4; in radb5()
977 ci4 = ti12 * ti5 - ti11 * ti4; in radb5()
978 ch_ref(1, k, 2) = cr2 - ci5; in radb5()
979 ch_ref(1, k, 3) = cr3 - ci4; in radb5()
989 ic = idp2 - i; in radb5()
991 ti2 = cc_ref(i, 3, k) - cc_ref(ic, 2, k); in radb5()
993 ti3 = cc_ref(i, 5, k) - cc_ref(ic, 4, k); in radb5()
994 tr5 = cc_ref(i - 1, 3, k) - cc_ref(ic - 1, 2, k); in radb5()
995 tr2 = cc_ref(i - 1, 3, k) + cc_ref(ic - 1, 2, k); in radb5()
996 tr4 = cc_ref(i - 1, 5, k) - cc_ref(ic - 1, 4, k); in radb5()
997 tr3 = cc_ref(i - 1, 5, k) + cc_ref(ic - 1, 4, k); in radb5()
998 ch_ref(i - 1, k, 1) = cc_ref(i - 1, 1, k) + tr2 + tr3; in radb5()
1000 cr2 = cc_ref(i - 1, 1, k) + tr11 * tr2 + tr12 * tr3; in radb5()
1002 cr3 = cc_ref(i - 1, 1, k) + tr12 * tr2 + tr11 * tr3; in radb5()
1006 cr4 = ti12 * tr5 - ti11 * tr4; in radb5()
1007 ci4 = ti12 * ti5 - ti11 * ti4; in radb5()
1008 dr3 = cr3 - ci4; in radb5()
1011 di4 = ci3 - cr4; in radb5()
1013 dr2 = cr2 - ci5; in radb5()
1014 di5 = ci2 - cr5; in radb5()
1016 ch_ref(i - 1, k, 2) = wa1[i - 2] * dr2 - wa1[i - 1] * di2; in radb5()
1017 ch_ref(i, k, 2) = wa1[i - 2] * di2 + wa1[i - 1] * dr2; in radb5()
1018 ch_ref(i - 1, k, 3) = wa2[i - 2] * dr3 - wa2[i - 1] * di3; in radb5()
1019 ch_ref(i, k, 3) = wa2[i - 2] * di3 + wa2[i - 1] * dr3; in radb5()
1020 ch_ref(i - 1, k, 4) = wa3[i - 2] * dr4 - wa3[i - 1] * di4; in radb5()
1021 ch_ref(i, k, 4) = wa3[i - 2] * di4 + wa3[i - 1] * dr4; in radb5()
1022 ch_ref(i - 1, k, 5) = wa4[i - 2] * dr5 - wa4[i - 1] * di5; in radb5()
1023 ch_ref(i, k, 5) = wa4[i - 2] * di5 + wa4[i - 1] * dr5; in radb5()
1032 static void radbg(integer ido, integer ip, integer l1, integer idl1, in radbg() argument
1033 const real *cc, real *c1, real *c2, real *ch, real *ch2, const real *wa) in radbg()
1041 real dc2, ai1, ai2, ar1, ar2, ds2; in radbg()
1043 real dcp, arg, dsp, ar1h, ar2h; in radbg()
1049 #define cc_ref(a_1,a_2,a_3) cc[((a_3)*ip + (a_2))*ido + a_1] in radbg()
1055 ch -= ch_offset; in radbg()
1057 c1 -= c1_offset; in radbg()
1058 cc_offset = 1 + ido * (1 + ip); in radbg()
1059 cc -= cc_offset; in radbg()
1061 ch2 -= ch2_offset; in radbg()
1063 c2 -= c2_offset; in radbg()
1064 --wa; in radbg()
1067 arg = (2*M_PI) / (real) (ip); in radbg()
1071 nbd = (ido - 1) / 2; in radbg()
1072 ipp2 = ip + 2; in radbg()
1073 ipph = (ip + 1) / 2; in radbg()
1088 jc = ipp2 - j; in radbg()
1091 ch_ref(1, k, j) = cc_ref(ido, j2 - 2, k) + cc_ref(ido, j2 - 2, k); in radbg()
1092 ch_ref(1, k, jc) = cc_ref(1, j2 - 1, k) + cc_ref(1, j2 - 1, k); in radbg()
1098 jc = ipp2 - j; in radbg()
1101 ic = idp2 - i; in radbg()
1102 ch_ref(i - 1, k, j) = cc_ref(i - 1, (j << 1) - 1, k) + cc_ref(ic - 1, (j << 1) - 2, k); in radbg()
1103 ch_ref(i - 1, k, jc) = cc_ref(i - 1, (j << 1) - 1, k) - cc_ref(ic - 1, (j << 1) - 2, k); in radbg()
1104 ch_ref(i, k, j) = cc_ref(i, (j << 1) - 1, k) - cc_ref(ic, (j << 1) - 2, k); in radbg()
1105 ch_ref(i, k, jc) = cc_ref(i, (j << 1) - 1, k) + cc_ref(ic, (j << 1) - 2, k); in radbg()
1111 jc = ipp2 - j; in radbg()
1113 ic = idp2 - i; in radbg()
1115 ch_ref(i - 1, k, j) = cc_ref(i - 1, (j << 1) - 1, k) + cc_ref(ic - 1, (j << 1) - 2, k); in radbg()
1116 ch_ref(i - 1, k, jc) = cc_ref(i - 1, (j << 1) - 1, k) - cc_ref(ic - 1, (j << 1) - 2, k); in radbg()
1117 ch_ref(i, k, j) = cc_ref(i, (j << 1) - 1, k) - cc_ref(ic, (j << 1) - 2, k); in radbg()
1118 ch_ref(i, k, jc) = cc_ref(i, (j << 1) - 1, k) + cc_ref(ic, (j << 1) - 2, k); in radbg()
1127 lc = ipp2 - l; in radbg()
1128 ar1h = dcp * ar1 - dsp * ai1; in radbg()
1133 c2_ref(ik, lc) = ai1 * ch2_ref(ik, ip); in radbg()
1140 jc = ipp2 - j; in radbg()
1141 ar2h = dc2 * ar2 - ds2 * ai2; in radbg()
1156 jc = ipp2 - j; in radbg()
1158 ch_ref(1, k, j) = c1_ref(1, k, j) - c1_ref(1, k, jc); in radbg()
1165 jc = ipp2 - j; in radbg()
1168 ch_ref(i - 1, k, j) = c1_ref(i - 1, k, j) - c1_ref(i, k, jc); in radbg()
1169 ch_ref(i - 1, k, jc) = c1_ref(i - 1, k, j) + c1_ref(i, k, jc); in radbg()
1170 ch_ref(i, k, j) = c1_ref(i, k, j) + c1_ref(i - 1, k, jc); in radbg()
1171 ch_ref(i, k, jc) = c1_ref(i, k, j) - c1_ref(i - 1, k, jc); in radbg()
1177 jc = ipp2 - j; in radbg()
1180 ch_ref(i - 1, k, j) = c1_ref(i - 1, k, j) - c1_ref(i, k, jc); in radbg()
1181 ch_ref(i - 1, k, jc) = c1_ref(i - 1, k, j) + c1_ref(i, k, jc); in radbg()
1182 ch_ref(i, k, j) = c1_ref(i, k, j) + c1_ref(i - 1, k, jc); in radbg()
1183 ch_ref(i, k, jc) = c1_ref(i, k, j) - c1_ref(i - 1, k, jc); in radbg()
1195 for (j = 2; j <= ip; ++j) { in radbg()
1201 is = -(ido); in radbg()
1202 for (j = 2; j <= ip; ++j) { in radbg()
1208 c1_ref(i - 1, k, j) = wa[idij - 1] * ch_ref(i - 1, k, j) in radbg()
1209 - wa[idij] * ch_ref(i, k, j); in radbg()
1210 c1_ref(i, k, j) = wa[idij - 1] * ch_ref(i, k, j) + wa[idij] * ch_ref(i - 1, k, j); in radbg()
1215 is = -(ido); in radbg()
1216 for (j = 2; j <= ip; ++j) { in radbg()
1222 c1_ref(i - 1, k, j) = wa[idij - 1] * ch_ref(i - 1, k, j) in radbg()
1223 - wa[idij] * ch_ref(i, k, j); in radbg()
1224 c1_ref(i, k, j) = wa[idij - 1] * ch_ref(i, k, j) + wa[idij] * ch_ref(i - 1, k, j); in radbg()
1238 static void radf2(integer ido, integer l1, const real *cc, real *ch, in radf2()
1239 const real *wa1) in radf2()
1246 real ti2, tr2; in radf2()
1255 ch -= ch_offset; in radf2()
1257 cc -= cc_offset; in radf2()
1258 --wa1; in radf2()
1263 ch_ref(ido, 2, k) = cc_ref(1, k, 1) - cc_ref(1, k, 2); in radf2()
1270 ic = idp2 - i; in radf2()
1271 tr2 = wa1[i - 2] * cc_ref(i - 1, k, 2) + wa1[i - 1] * in radf2()
1273 ti2 = wa1[i - 2] * cc_ref(i, k, 2) - wa1[i - 1] * cc_ref( in radf2()
1274 i - 1, k, 2); in radf2()
1276 ch_ref(ic, 2, k) = ti2 - cc_ref(i, k, 1); in radf2()
1277 ch_ref(i - 1, 1, k) = cc_ref(i - 1, k, 1) + tr2; in radf2()
1278 ch_ref(ic - 1, 2, k) = cc_ref(i - 1, k, 1) - tr2; in radf2()
1286 ch_ref(1, 2, k) = -cc_ref(ido, k, 2); in radf2()
1295 static void radf3(integer ido, integer l1, const real *cc, real *ch, in radf3()
1296 const real *wa1, const real *wa2) in radf3()
1298 static const real taur = -.5f; in radf3()
1299 static const real taui = .866025403784439f; in radf3()
1306 real ci2, di2, di3, cr2, dr2, dr3, ti2, ti3, tr2, tr3; in radf3()
1315 ch -= ch_offset; in radf3()
1317 cc -= cc_offset; in radf3()
1318 --wa1; in radf3()
1319 --wa2; in radf3()
1325 ch_ref(1, 3, k) = taui * (cc_ref(1, k, 3) - cc_ref(1, k, 2)); in radf3()
1334 ic = idp2 - i; in radf3()
1335 dr2 = wa1[i - 2] * cc_ref(i - 1, k, 2) + wa1[i - 1] * in radf3()
1337 di2 = wa1[i - 2] * cc_ref(i, k, 2) - wa1[i - 1] * cc_ref( in radf3()
1338 i - 1, k, 2); in radf3()
1339 dr3 = wa2[i - 2] * cc_ref(i - 1, k, 3) + wa2[i - 1] * in radf3()
1341 di3 = wa2[i - 2] * cc_ref(i, k, 3) - wa2[i - 1] * cc_ref( in radf3()
1342 i - 1, k, 3); in radf3()
1345 ch_ref(i - 1, 1, k) = cc_ref(i - 1, k, 1) + cr2; in radf3()
1347 tr2 = cc_ref(i - 1, k, 1) + taur * cr2; in radf3()
1349 tr3 = taui * (di2 - di3); in radf3()
1350 ti3 = taui * (dr3 - dr2); in radf3()
1351 ch_ref(i - 1, 3, k) = tr2 + tr3; in radf3()
1352 ch_ref(ic - 1, 2, k) = tr2 - tr3; in radf3()
1354 ch_ref(ic, 2, k) = ti3 - ti2; in radf3()
1363 static void radf4(integer ido, integer l1, const real *cc, real *ch, in radf4()
1364 const real *wa1, const real *wa2, const real *wa3) in radf4()
1368 static const real hsqt2 = .7071067811865475f; in radf4()
1375 real ci2, ci3, ci4, cr2, cr3, cr4, ti1, ti2, ti3, ti4, tr1, tr2, tr3, tr4; in radf4()
1384 ch -= ch_offset; in radf4()
1386 cc -= cc_offset; in radf4()
1387 --wa1; in radf4()
1388 --wa2; in radf4()
1389 --wa3; in radf4()
1396 ch_ref(ido, 4, k) = tr2 - tr1; in radf4()
1397 ch_ref(ido, 2, k) = cc_ref(1, k, 1) - cc_ref(1, k, 3); in radf4()
1398 ch_ref(1, 3, k) = cc_ref(1, k, 4) - cc_ref(1, k, 2); in radf4()
1405 ic = idp2 - i; in radf4()
1406 cr2 = wa1[i - 2] * cc_ref(i - 1, k, 2) + wa1[i - 1] * in radf4()
1408 ci2 = wa1[i - 2] * cc_ref(i, k, 2) - wa1[i - 1] * cc_ref( in radf4()
1409 i - 1, k, 2); in radf4()
1410 cr3 = wa2[i - 2] * cc_ref(i - 1, k, 3) + wa2[i - 1] * in radf4()
1412 ci3 = wa2[i - 2] * cc_ref(i, k, 3) - wa2[i - 1] * cc_ref( in radf4()
1413 i - 1, k, 3); in radf4()
1414 cr4 = wa3[i - 2] * cc_ref(i - 1, k, 4) + wa3[i - 1] * in radf4()
1416 ci4 = wa3[i - 2] * cc_ref(i, k, 4) - wa3[i - 1] * cc_ref( in radf4()
1417 i - 1, k, 4); in radf4()
1419 tr4 = cr4 - cr2; in radf4()
1421 ti4 = ci2 - ci4; in radf4()
1423 ti3 = cc_ref(i, k, 1) - ci3; in radf4()
1424 tr2 = cc_ref(i - 1, k, 1) + cr3; in radf4()
1425 tr3 = cc_ref(i - 1, k, 1) - cr3; in radf4()
1426 ch_ref(i - 1, 1, k) = tr1 + tr2; in radf4()
1427 ch_ref(ic - 1, 4, k) = tr2 - tr1; in radf4()
1429 ch_ref(ic, 4, k) = ti1 - ti2; in radf4()
1430 ch_ref(i - 1, 3, k) = ti4 + tr3; in radf4()
1431 ch_ref(ic - 1, 2, k) = tr3 - ti4; in radf4()
1433 ch_ref(ic, 2, k) = tr4 - ti3; in radf4()
1441 ti1 = -hsqt2 * (cc_ref(ido, k, 2) + cc_ref(ido, k, 4)); in radf4()
1442 tr1 = hsqt2 * (cc_ref(ido, k, 2) - cc_ref(ido, k, 4)); in radf4()
1444 ch_ref(ido, 3, k) = cc_ref(ido, k, 1) - tr1; in radf4()
1445 ch_ref(1, 2, k) = ti1 - cc_ref(ido, k, 3); in radf4()
1454 static void radf5(integer ido, integer l1, const real *cc, real *ch, in radf5()
1455 const real *wa1, const real *wa2, const real *wa3, const real *wa4) in radf5()
1459 static const real tr11 = .309016994374947f; in radf5()
1460 static const real ti11 = .951056516295154f; in radf5()
1461 static const real tr12 = -.809016994374947f; in radf5()
1462 static const real ti12 = .587785252292473f; in radf5()
1469 real ci2, di2, ci4, ci5, di3, di4, di5, ci3, cr2, cr3, dr2, dr3, dr4, dr5, in radf5()
1479 ch -= ch_offset; in radf5()
1481 cc -= cc_offset; in radf5()
1482 --wa1; in radf5()
1483 --wa2; in radf5()
1484 --wa3; in radf5()
1485 --wa4; in radf5()
1490 ci5 = cc_ref(1, k, 5) - cc_ref(1, k, 2); in radf5()
1492 ci4 = cc_ref(1, k, 4) - cc_ref(1, k, 3); in radf5()
1497 ch_ref(1, 5, k) = ti12 * ci5 - ti11 * ci4; in radf5()
1505 ic = idp2 - i; in radf5()
1506 dr2 = wa1[i - 2] * cc_ref(i - 1, k, 2) + wa1[i - 1] * cc_ref(i, k, 2); in radf5()
1507 di2 = wa1[i - 2] * cc_ref(i, k, 2) - wa1[i - 1] * cc_ref(i - 1, k, 2); in radf5()
1508 dr3 = wa2[i - 2] * cc_ref(i - 1, k, 3) + wa2[i - 1] * cc_ref(i, k, 3); in radf5()
1509 di3 = wa2[i - 2] * cc_ref(i, k, 3) - wa2[i - 1] * cc_ref(i - 1, k, 3); in radf5()
1510 dr4 = wa3[i - 2] * cc_ref(i - 1, k, 4) + wa3[i - 1] * cc_ref(i, k, 4); in radf5()
1511 di4 = wa3[i - 2] * cc_ref(i, k, 4) - wa3[i - 1] * cc_ref(i - 1, k, 4); in radf5()
1512 dr5 = wa4[i - 2] * cc_ref(i - 1, k, 5) + wa4[i - 1] * cc_ref(i, k, 5); in radf5()
1513 di5 = wa4[i - 2] * cc_ref(i, k, 5) - wa4[i - 1] * cc_ref(i - 1, k, 5); in radf5()
1515 ci5 = dr5 - dr2; in radf5()
1516 cr5 = di2 - di5; in radf5()
1519 ci4 = dr4 - dr3; in radf5()
1520 cr4 = di3 - di4; in radf5()
1522 ch_ref(i - 1, 1, k) = cc_ref(i - 1, k, 1) + cr2 + cr3; in radf5()
1524 tr2 = cc_ref(i - 1, k, 1) + tr11 * cr2 + tr12 * cr3; in radf5()
1526 tr3 = cc_ref(i - 1, k, 1) + tr12 * cr2 + tr11 * cr3; in radf5()
1530 tr4 = ti12 * cr5 - ti11 * cr4; in radf5()
1531 ti4 = ti12 * ci5 - ti11 * ci4; in radf5()
1532 ch_ref(i - 1, 3, k) = tr2 + tr5; in radf5()
1533 ch_ref(ic - 1, 2, k) = tr2 - tr5; in radf5()
1535 ch_ref(ic, 2, k) = ti5 - ti2; in radf5()
1536 ch_ref(i - 1, 5, k) = tr3 + tr4; in radf5()
1537 ch_ref(ic - 1, 4, k) = tr3 - tr4; in radf5()
1539 ch_ref(ic, 4, k) = ti4 - ti3; in radf5()
1548 static void radfg(integer ido, integer ip, integer l1, integer idl1, in radfg() argument
1549 real *cc, real *c1, real *c2, real *ch, real *ch2, const real *wa) in radfg()
1557 real dc2, ai1, ai2, ar1, ar2, ds2; in radfg()
1559 real dcp, arg, dsp, ar1h, ar2h; in radfg()
1565 #define cc_ref(a_1,a_2,a_3) cc[((a_3)*ip + (a_2))*ido + a_1] in radfg()
1571 ch -= ch_offset; in radfg()
1573 c1 -= c1_offset; in radfg()
1574 cc_offset = 1 + ido * (1 + ip); in radfg()
1575 cc -= cc_offset; in radfg()
1577 ch2 -= ch2_offset; in radfg()
1579 c2 -= c2_offset; in radfg()
1580 --wa; in radfg()
1583 arg = (2*M_PI) / (real) (ip); in radfg()
1586 ipph = (ip + 1) / 2; in radfg()
1587 ipp2 = ip + 2; in radfg()
1589 nbd = (ido - 1) / 2; in radfg()
1598 for (j = 2; j <= ip; ++j) { in radfg()
1604 is = -(ido); in radfg()
1605 for (j = 2; j <= ip; ++j) { in radfg()
1611 ch_ref(i - 1, k, j) = wa[idij - 1] * c1_ref(i - 1, k, j) in radfg()
1613 ch_ref(i, k, j) = wa[idij - 1] * c1_ref(i, k, j) - wa[ in radfg()
1614 idij] * c1_ref(i - 1, k, j); in radfg()
1619 is = -(ido); in radfg()
1620 for (j = 2; j <= ip; ++j) { in radfg()
1626 ch_ref(i - 1, k, j) = wa[idij - 1] * c1_ref(i - 1, k, j) in radfg()
1628 ch_ref(i, k, j) = wa[idij - 1] * c1_ref(i, k, j) - wa[ in radfg()
1629 idij] * c1_ref(i - 1, k, j); in radfg()
1636 jc = ipp2 - j; in radfg()
1639 c1_ref(i - 1, k, j) = ch_ref(i - 1, k, j) + ch_ref(i - in radfg()
1641 c1_ref(i - 1, k, jc) = ch_ref(i, k, j) - ch_ref(i, k, in radfg()
1644 c1_ref(i, k, jc) = ch_ref(i - 1, k, jc) - ch_ref(i - 1, in radfg()
1651 jc = ipp2 - j; in radfg()
1654 c1_ref(i - 1, k, j) = ch_ref(i - 1, k, j) + ch_ref(i - in radfg()
1656 c1_ref(i - 1, k, jc) = ch_ref(i, k, j) - ch_ref(i, k, in radfg()
1659 c1_ref(i, k, jc) = ch_ref(i - 1, k, jc) - ch_ref(i - 1, in radfg()
1667 jc = ipp2 - j; in radfg()
1670 c1_ref(1, k, jc) = ch_ref(1, k, jc) - ch_ref(1, k, j); in radfg()
1677 lc = ipp2 - l; in radfg()
1678 ar1h = dcp * ar1 - dsp * ai1; in radfg()
1683 ch2_ref(ik, lc) = ai1 * c2_ref(ik, ip); in radfg()
1690 jc = ipp2 - j; in radfg()
1691 ar2h = dc2 * ar2 - ds2 * ai2; in radfg()
1720 jc = ipp2 - j; in radfg()
1723 cc_ref(ido, j2 - 2, k) = ch_ref(1, k, j); in radfg()
1724 cc_ref(1, j2 - 1, k) = ch_ref(1, k, jc); in radfg()
1732 jc = ipp2 - j; in radfg()
1736 ic = idp2 - i; in radfg()
1737 cc_ref(i - 1, j2 - 1, k) = ch_ref(i - 1, k, j) + ch_ref( in radfg()
1738 i - 1, k, jc); in radfg()
1739 cc_ref(ic - 1, j2 - 2, k) = ch_ref(i - 1, k, j) - ch_ref( in radfg()
1740 i - 1, k, jc); in radfg()
1741 cc_ref(i, j2 - 1, k) = ch_ref(i, k, j) + ch_ref(i, k, in radfg()
1743 cc_ref(ic, j2 - 2, k) = ch_ref(i, k, jc) - ch_ref(i, k, j) in radfg()
1750 jc = ipp2 - j; in radfg()
1753 ic = idp2 - i; in radfg()
1755 cc_ref(i - 1, j2 - 1, k) = ch_ref(i - 1, k, j) + ch_ref( in radfg()
1756 i - 1, k, jc); in radfg()
1757 cc_ref(ic - 1, j2 - 2, k) = ch_ref(i - 1, k, j) - ch_ref( in radfg()
1758 i - 1, k, jc); in radfg()
1759 cc_ref(i, j2 - 1, k) = ch_ref(i, k, j) + ch_ref(i, k, in radfg()
1761 cc_ref(ic, j2 - 2, k) = ch_ref(i, k, jc) - ch_ref(i, k, j) in radfg()
1776 static void cfftb1(integer n, real *c, real *ch, const real *wa, integer *ifac) in cfftb1()
1778 integer i, k1, l1, l2, na, nf, ip, iw, ix2, ix3, ix4, nac, ido, in cfftb1() local
1787 ip = ifac[k1 + 1]; in cfftb1()
1788 l2 = ip * l1; in cfftb1()
1792 switch (ip) { in cfftb1()
1797 na = 1 - na; in cfftb1()
1801 na = 1 - na; in cfftb1()
1806 na = 1 - na; in cfftb1()
1813 na = 1 - na; in cfftb1()
1817 passfb(&nac, idot, ip, l1, idl1, c, c, c, ch, ch, &wa[iw], +1); in cfftb1()
1819 passfb(&nac, idot, ip, l1, idl1, ch, ch, ch, c, c, &wa[iw], +1); in cfftb1()
1822 na = 1 - na; in cfftb1()
1827 iw += (ip - 1) * idot; in cfftb1()
1837 void cfftb(integer n, real *c, real *wsave) in cfftb()
1842 --wsave; in cfftb()
1843 --c; in cfftb()
1854 static void cfftf1(integer n, real *c, real *ch, const real *wa, integer *ifac) in cfftf1()
1857 integer i, k1, l1, l2, na, nf, ip, iw, ix2, ix3, ix4, nac, ido, in cfftf1() local
1866 ip = ifac[k1 + 1]; in cfftf1()
1867 l2 = ip * l1; in cfftf1()
1871 switch (ip) { in cfftf1()
1876 na = 1 - na; in cfftf1()
1880 na = 1 - na; in cfftf1()
1885 na = 1 - na; in cfftf1()
1891 passfb5(idot, l1, na?ch:c, na?c:ch, &wa[iw], &wa[ix2], &wa[ix3], &wa[ix4], -1); in cfftf1()
1892 na = 1 - na; in cfftf1()
1896 passfb(&nac, idot, ip, l1, idl1, c, c, c, ch, ch, &wa[iw], -1); in cfftf1()
1898 passfb(&nac, idot, ip, l1, idl1, ch, ch, ch, c, c, &wa[iw], -1); in cfftf1()
1901 na = 1 - na; in cfftf1()
1906 iw += (ip - 1)*idot; in cfftf1()
1916 void cfftf(integer n, real *c, real *wsave) in cfftf()
1921 --wsave; in cfftf()
1922 --c; in cfftf()
1944 nr = nl - ntry * nq; in decompose()
1951 integer ib = nf - i + 2; in decompose()
1965 static void cffti1(integer n, real *wa, integer *ifac) in cffti1()
1971 real fi; in cffti1()
1972 integer ld, ii, nf, ip; in cffti1() local
1973 real arg; in cffti1()
1975 real argh; in cffti1()
1977 real argld; in cffti1()
1980 --ifac; in cffti1()
1981 --wa; in cffti1()
1985 argh = (2*M_PI) / (real) (n); in cffti1()
1989 ip = ifac[k1 + 2]; in cffti1()
1991 l2 = l1 * ip; in cffti1()
1994 ipm = ip - 1; in cffti1()
1997 wa[i - 1] = 1.f; in cffti1()
2001 argld = (real) ld * argh; in cffti1()
2006 wa[i - 1] = cos(arg); in cffti1()
2009 if (ip > 5) { in cffti1()
2010 wa[i1 - 1] = wa[i - 1]; in cffti1()
2018 void cffti(integer n, real *wsave) in cffti()
2022 --wsave; in cffti()
2034 static void rfftb1(integer n, real *c, real *ch, const real *wa, integer *ifac) in rfftb1()
2037 integer i, k1, l1, l2, na, nf, ip, iw, ix2, ix3, ix4, ido, idl1; in rfftb1() local
2045 ip = ifac[k1 + 1]; in rfftb1()
2046 l2 = ip * l1; in rfftb1()
2049 switch (ip) { in rfftb1()
2054 na = 1 - na; in rfftb1()
2058 na = 1 - na; in rfftb1()
2063 na = 1 - na; in rfftb1()
2070 na = 1 - na; in rfftb1()
2074 radbg(ido, ip, l1, idl1, c, c, c, ch, ch, &wa[iw]); in rfftb1()
2076 radbg(ido, ip, l1, idl1, ch, ch, ch, c, c, &wa[iw]); in rfftb1()
2079 na = 1 - na; in rfftb1()
2084 iw += (ip - 1) * ido; in rfftb1()
2094 static void rfftf1(integer n, real *c, real *ch, const real *wa, integer *ifac) in rfftf1()
2097 integer i, k1, l1, l2, na, kh, nf, ip, iw, ix2, ix3, ix4, ido, idl1; in rfftf1() local
2103 iw = n-1; in rfftf1()
2105 kh = nf - k1; in rfftf1()
2106 ip = ifac[kh + 2]; in rfftf1()
2107 l1 = l2 / ip; in rfftf1()
2110 iw -= (ip - 1) * ido; in rfftf1()
2111 na = 1 - na; in rfftf1()
2112 switch (ip) { in rfftf1()
2133 na = 1 - na; in rfftf1()
2136 radfg(ido, ip, l1, idl1, c, c, c, ch, ch, &wa[iw]); in rfftf1()
2139 radfg(ido, ip, l1, idl1, ch, ch, ch, c, c, &wa[iw]); in rfftf1()
2154 void rfftb(integer n, real *r, real *wsave) in rfftb()
2158 --wsave; in rfftb()
2159 --r; in rfftb()
2168 static void rffti1(integer n, real *wa, integer *ifac) in rffti1()
2174 real fi; in rffti1()
2175 integer ld, ii, nf, ip, is; in rffti1() local
2176 real arg; in rffti1()
2179 real argh; in rffti1()
2180 real argld; in rffti1()
2183 --ifac; in rffti1()
2184 --wa; in rffti1()
2188 argh = (2*M_PI) / (real) (n); in rffti1()
2190 nfm1 = nf - 1; in rffti1()
2196 ip = ifac[k1 + 2]; in rffti1()
2198 l2 = l1 * ip; in rffti1()
2200 ipm = ip - 1; in rffti1()
2204 argld = (real) ld * argh; in rffti1()
2210 wa[i - 1] = cos(arg); in rffti1()
2219 void rfftf(integer n, real *r, real *wsave) in rfftf()
2223 --wsave; in rfftf()
2224 --r; in rfftf()
2233 void rffti(integer n, real *wsave) in rffti()
2236 --wsave; in rffti()
2246 static void cosqb1(integer n, real *x, real *w, real *xh) in cosqb1() argument
2250 real xim1; in cosqb1()
2254 --xh; in cosqb1()
2255 --w; in cosqb1()
2256 --x; in cosqb1()
2262 xim1 = x[i - 1] + x[i]; in cosqb1()
2263 x[i] -= x[i - 1]; in cosqb1()
2264 x[i - 1] = xim1; in cosqb1()
2266 x[1] += x[1]; in cosqb1()
2269 x[n] += x[n]; in cosqb1()
2271 rfftb(n, &x[1], &xh[1]); in cosqb1()
2273 kc = np2 - k; in cosqb1()
2274 xh[k] = w[k - 1] * x[kc] + w[kc - 1] * x[k]; in cosqb1()
2275 xh[kc] = w[k - 1] * x[k] - w[kc - 1] * x[kc]; in cosqb1()
2278 x[ns2 + 1] = w[ns2] * (x[ns2 + 1] + x[ns2 + 1]); in cosqb1()
2281 kc = np2 - k; in cosqb1()
2282 x[k] = xh[k] + xh[kc]; in cosqb1()
2283 x[kc] = xh[k] - xh[kc]; in cosqb1()
2285 x[1] += x[1]; in cosqb1()
2288 void cosqb(integer n, real *x, real *wsave) in cosqb() argument
2290 static const real tsqrt2 = 2.82842712474619f; in cosqb()
2293 real x1; in cosqb()
2296 --wsave; in cosqb()
2297 --x; in cosqb()
2300 x[1] *= 4.f; in cosqb()
2302 x1 = (x[1] + x[2]) * 4.f; in cosqb()
2303 x[2] = tsqrt2 * (x[1] - x[2]); in cosqb()
2304 x[1] = x1; in cosqb()
2306 cosqb1(n, &x[1], &wsave[1], &wsave[n + 1]); in cosqb()
2310 static void cosqf1(integer n, real *x, real *w, real *xh) in cosqf1() argument
2314 real xim1; in cosqf1()
2318 --xh; in cosqf1()
2319 --w; in cosqf1()
2320 --x; in cosqf1()
2326 kc = np2 - k; in cosqf1()
2327 xh[k] = x[k] + x[kc]; in cosqf1()
2328 xh[kc] = x[k] - x[kc]; in cosqf1()
2332 xh[ns2 + 1] = x[ns2 + 1] + x[ns2 + 1]; in cosqf1()
2335 kc = np2 - k; in cosqf1()
2336 x[k] = w[k - 1] * xh[kc] + w[kc - 1] * xh[k]; in cosqf1()
2337 x[kc] = w[k - 1] * xh[k] - w[kc - 1] * xh[kc]; in cosqf1()
2340 x[ns2 + 1] = w[ns2] * xh[ns2 + 1]; in cosqf1()
2342 rfftf(n, &x[1], &xh[1]); in cosqf1()
2344 xim1 = x[i - 1] - x[i]; in cosqf1()
2345 x[i] = x[i - 1] + x[i]; in cosqf1()
2346 x[i - 1] = xim1; in cosqf1()
2350 void cosqf(integer n, real *x, real *wsave) in cosqf() argument
2352 static const real sqrt2 = 1.4142135623731f; in cosqf()
2355 real tsqx; in cosqf()
2358 --wsave; in cosqf()
2359 --x; in cosqf()
2362 tsqx = sqrt2 * x[2]; in cosqf()
2363 x[2] = x[1] - tsqx; in cosqf()
2364 x[1] += tsqx; in cosqf()
2366 cosqf1(n, &x[1], &wsave[1], &wsave[n + 1]); in cosqf()
2370 void cosqi(integer n, real *wsave) in cosqi()
2374 real fk, dt; in cosqi()
2377 --wsave; in cosqi()
2379 dt = M_PI/2 / (real) (n); in cosqi()
2388 void cost(integer n, real *x, real *wsave) in cost() argument
2392 real c1, t1, t2; in cost()
2394 real xi; in cost()
2396 real x1h; in cost()
2398 real tx2, x1p3, xim2; in cost()
2402 --wsave; in cost()
2403 --x; in cost()
2406 nm1 = n - 1; in cost()
2411 x1h = x[1] + x[2]; in cost()
2412 x[2] = x[1] - x[2]; in cost()
2413 x[1] = x1h; in cost()
2415 x1p3 = x[1] + x[3]; in cost()
2416 tx2 = x[2] + x[2]; in cost()
2417 x[2] = x[1] - x[3]; in cost()
2418 x[1] = x1p3 + tx2; in cost()
2419 x[3] = x1p3 - tx2; in cost()
2421 c1 = x[1] - x[n]; in cost()
2422 x[1] += x[n]; in cost()
2424 kc = np1 - k; in cost()
2425 t1 = x[k] + x[kc]; in cost()
2426 t2 = x[k] - x[kc]; in cost()
2429 x[k] = t1 - t2; in cost()
2430 x[kc] = t1 + t2; in cost()
2434 x[ns2 + 1] += x[ns2 + 1]; in cost()
2436 rfftf(nm1, &x[1], &wsave[n + 1]); in cost()
2437 xim2 = x[2]; in cost()
2438 x[2] = c1; in cost()
2440 xi = x[i]; in cost()
2441 x[i] = x[i - 2] - x[i - 1]; in cost()
2442 x[i - 1] = xim2; in cost()
2446 x[n] = xim2; in cost()
2451 void costi(integer n, real *wsave) in costi()
2457 real fk, dt; in costi()
2461 --wsave; in costi()
2467 nm1 = n - 1; in costi()
2470 dt = M_PI / (real) nm1; in costi()
2473 kc = np1 - k; in costi()
2481 void sinqb(integer n, real *x, real *wsave) in sinqb() argument
2485 real xhold; in sinqb()
2488 --wsave; in sinqb()
2489 --x; in sinqb()
2493 x[1] *= 4.f; in sinqb()
2498 x[k] = -x[k]; in sinqb()
2500 cosqb(n, &x[1], &wsave[1]); in sinqb()
2502 kc = n - k; in sinqb()
2503 xhold = x[k]; in sinqb()
2504 x[k] = x[kc + 1]; in sinqb()
2505 x[kc + 1] = xhold; in sinqb()
2509 void sinqf(integer n, real *x, real *wsave) in sinqf() argument
2513 real xhold; in sinqf()
2516 --wsave; in sinqf()
2517 --x; in sinqf()
2525 kc = n - k; in sinqf()
2526 xhold = x[k]; in sinqf()
2527 x[k] = x[kc + 1]; in sinqf()
2528 x[kc + 1] = xhold; in sinqf()
2530 cosqf(n, &x[1], &wsave[1]); in sinqf()
2532 x[k] = -x[k]; in sinqf()
2536 void sinqi(integer n, real *wsave) in sinqi()
2540 --wsave; in sinqi()
2546 static void sint1(integer n, real *war, real *was, real *xh, real * in sint1()
2547 x, integer *ifac) in sint1()
2551 static const real sqrt3 = 1.73205080756888f; in sint1()
2555 real t1, t2; in sint1()
2557 real xhold; in sint1()
2560 --ifac; in sint1()
2561 --x; in sint1()
2562 --xh; in sint1()
2563 --was; in sint1()
2564 --war; in sint1()
2569 war[i] = x[i]; in sint1()
2576 xh[2] = sqrt3 * (xh[1] - xh[2]); in sint1()
2581 x[1] = 0.f; in sint1()
2583 kc = np1 - k; in sint1()
2584 t1 = xh[k] - xh[kc]; in sint1()
2586 x[k + 1] = t1 + t2; in sint1()
2587 x[kc + 1] = t2 - t1; in sint1()
2591 x[ns2 + 2] = xh[ns2 + 1] * 4.f; in sint1()
2593 rfftf1(np1, &x[1], &xh[1], &war[1], &ifac[1]); in sint1()
2594 xh[1] = x[1] * .5f; in sint1()
2596 xh[i - 1] = -x[i]; in sint1()
2597 xh[i] = xh[i - 2] + x[i - 1]; in sint1()
2600 xh[n] = -x[n + 1]; in sint1()
2604 x[i] = war[i]; in sint1()
2609 void sinti(integer n, real *wsave) in sinti()
2613 real dt; in sinti()
2617 --wsave; in sinti()
2625 dt = M_PI / (real) np1; in sinti()
2632 void sint(integer n, real *x, real *wsave) in sint() argument
2637 --wsave; in sint()
2638 --x; in sint()
2645 sint1(n, &x[1], &wsave[1], &wsave[iw1], &wsave[iw2], (int*)&wsave[iw3]); in sint()
2656 real r1, r2, r3; in main()
2661 real w[2000], x[200], y[200], cf, fn, dt; in main() local
2663 real xh[200]; in main()
2665 real arg, tfn; in main()
2666 real sum, arg1, arg2; in main()
2667 real sum1, sum2, dcfb; in main()
2669 real rftb, rftf; in main()
2670 real sqrt2; in main()
2671 real rftfb; in main()
2672 real costt, sintt, dcfftb, dcfftf, cosqfb, costfb; in main()
2673 real sinqfb; in main()
2674 real sintfb; in main()
2675 real cosqbt, cosqft, sinqbt, sinqft; in main()
2699 /* TRANSFORMS FOR BOTH COMPLEX AND REAL PERIODIC SEQUENCES AND */ in main()
2703 /* 2. RFFTF FORWARD TRANSFORM OF A REAL PERIODIC SEQUENCE */ in main()
2704 /* 3. RFFTB BACKWARD TRANSFORM OF A REAL COEFFICIENT ARRAY */ in main()
2707 /* 5. EZFFTF A SIMPLIFIED REAL PERIODIC FORWARD TRANSFORM */ in main()
2708 /* 6. EZFFTB A SIMPLIFIED REAL PERIODIC BACKWARD TRANSFORM */ in main()
2711 /* 8. SINT SINE TRANSFORM OF A REAL ODD SEQUENCE */ in main()
2714 /* 10. COST COSINE TRANSFORM OF A REAL EVEN SEQUENCE */ in main()
2732 n = nd[nz - 1]; in main()
2734 fn = (real) n; in main()
2737 nm1 = n - 1; in main()
2739 x[j - 1] = sin((real) j * sqrt2); in main()
2740 y[j - 1] = x[j - 1]; in main()
2741 xh[j - 1] = x[j - 1]; in main()
2755 arg = (real) (k - 1) * dt; in main()
2757 arg1 = (real) (i - 1) * arg; in main()
2758 sum1 += x[i - 1] * cos(arg1); in main()
2759 sum2 += x[i - 1] * sin(arg1); in main()
2761 y[(k << 1) - 3] = sum1; in main()
2762 y[(k << 1) - 2] = -sum2; in main()
2768 sum1 += x[i - 1]; in main()
2769 sum2 += x[i]; in main()
2772 sum1 += x[n - 1]; in main()
2776 y[n - 1] = sum1 - sum2; in main()
2778 rfftf(n, x, w); in main()
2782 r2 = rftf, r3 = (r1 = x[i - 1] - y[i - 1], fabs(r1)); in main()
2784 x[i - 1] = xh[i - 1]; in main()
2788 sum = x[0] * .5f; in main()
2789 arg = (real) (i - 1) * dt; in main()
2794 arg1 = (real) (k - 1) * arg; in main()
2795 sum = sum + x[(k << 1) - 3] * cos(arg1) - x[(k << 1) - 2] * in main()
2800 sum += (real)pow(-1, i-1) * .5f * x[n - 1]; in main()
2802 y[i - 1] = sum + sum; in main()
2804 rfftb(n, x, w); in main()
2808 r2 = rftb, r3 = (r1 = x[i - 1] - y[i - 1], fabs(r1)); in main()
2810 x[i - 1] = xh[i - 1]; in main()
2811 y[i - 1] = xh[i - 1]; in main()
2819 r2 = rftfb, r3 = (r1 = cf * y[i - 1] - x[i - 1], fabs( in main()
2828 x[i - 1] = xh[i - 1]; in main()
2831 y[i - 1] = 0.f; in main()
2832 arg1 = (real) i * dt; in main()
2834 y[i - 1] += x[k - 1] * sin((real) k * arg1); in main()
2836 y[i - 1] += y[i - 1]; in main()
2839 sint(nm1, x, w); in main()
2844 r2 = sintt, r3 = (r1 = x[i - 1] - y[i - 1], fabs(r1)); in main()
2846 x[i - 1] = xh[i - 1]; in main()
2847 y[i - 1] = x[i - 1]; in main()
2850 sint(nm1, x, w); in main()
2851 sint(nm1, x, w); in main()
2855 r2 = sintfb, r3 = (r1 = cf * x[i - 1] - y[i - 1], fabs( in main()
2863 x[i - 1] = xh[i - 1]; in main()
2866 y[i - 1] = (x[0] + (real) pow(-1, i+1) * x[n]) * .5f; in main()
2867 arg = (real) (i - 1) * dt; in main()
2869 y[i - 1] += x[k - 1] * cos((real) (k - 1) * arg); in main()
2871 y[i - 1] += y[i - 1]; in main()
2874 cost(np1, x, w); in main()
2878 r2 = costt, r3 = (r1 = x[i - 1] - y[i - 1], fabs(r1)); in main()
2880 x[i - 1] = xh[i - 1]; in main()
2881 y[i - 1] = xh[i - 1]; in main()
2884 cost(np1, x, w); in main()
2885 cost(np1, x, w); in main()
2889 r2 = costfb, r3 = (r1 = cf * x[i - 1] - y[i - 1], fabs( in main()
2898 y[i - 1] = xh[i - 1]; in main()
2902 x[i - 1] = 0.f; in main()
2903 arg = dt * (real) i; in main()
2905 x[i - 1] += y[k - 1] * sin((real) (k + k - 1) * arg); in main()
2907 x[i - 1] *= 4.f; in main()
2914 r2 = sinqbt, r3 = (r1 = y[i - 1] - x[i - 1], fabs(r1)) in main()
2917 x[i - 1] = xh[i - 1]; in main()
2921 arg = (real) (i + i - 1) * dt; in main()
2922 y[i - 1] = (real) pow(-1, i+1) * .5f * x[n - 1]; in main()
2924 y[i - 1] += x[k - 1] * sin((real) k * arg); in main()
2926 y[i - 1] += y[i - 1]; in main()
2928 sinqf(n, x, w); in main()
2932 r2 = sinqft, r3 = (r1 = x[i - 1] - y[i - 1], fabs(r1)) in main()
2935 y[i - 1] = xh[i - 1]; in main()
2936 x[i - 1] = xh[i - 1]; in main()
2943 r2 = sinqfb, r3 = (r1 = cf * y[i - 1] - x[i - 1], fabs( in main()
2951 y[i - 1] = xh[i - 1]; in main()
2954 x[i - 1] = 0.f; in main()
2955 arg = (real) (i - 1) * dt; in main()
2957 x[i - 1] += y[k - 1] * cos((real) (k + k - 1) * arg); in main()
2959 x[i - 1] *= 4.f; in main()
2966 r2 = cosqbt, r3 = (r1 = x[i - 1] - y[i - 1], fabs(r1)) in main()
2969 x[i - 1] = xh[i - 1]; in main()
2973 y[i - 1] = x[0] * .5f; in main()
2974 arg = (real) (i + i - 1) * dt; in main()
2976 y[i - 1] += x[k - 1] * cos((real) (k - 1) * arg); in main()
2978 y[i - 1] += y[i - 1]; in main()
2980 cosqf(n, x, w); in main()
2984 r2 = cosqft, r3 = (r1 = y[i - 1] - x[i - 1], fabs(r1)) in main()
2987 x[i - 1] = xh[i - 1]; in main()
2988 y[i - 1] = xh[i - 1]; in main()
2991 cosqb(n, x, w); in main()
2992 cosqf(n, x, w); in main()
2996 r2 = cosqfb, r3 = (r1 = cf * x[i - 1] - y[i - 1], fabs(r1)); in main()
3003 r1 = cos(sqrt2 * (real) i); in main()
3004 r2 = sin(sqrt2 * (real) (i * i)); in main()
3006 cx[i-1].r = q1.r, cx[i-1].i = q1.i; in main()
3010 arg1 = -((real) (i - 1)) * dt; in main()
3011 cy[i-1].r = 0.f, cy[i-1].i = 0.f; in main()
3013 arg2 = (real) (k - 1) * arg1; in main()
3017 q2.r = q3.r * cx[k-1].r - q3.i * cx[k-1].i, q2.i = in main()
3018 q3.r * cx[k-1].i + q3.i * cx[k-1].r; in main()
3019 q1.r = cy[i-1].r + q2.r, q1.i = cy[i-1].i + q2.i; in main()
3020 cy[i-1].r = q1.r, cy[i-1].i = q1.i; in main()
3024 cfftf(n, (real*)cx, w); in main()
3028 q1.r = cx[i-1].r - cy[i-1].r, q1.i = cx[i-1].i - cy[i-1] in main()
3032 q1.r = cx[i-1].r / fn, q1.i = cx[i-1].i / fn; in main()
3033 cx[i-1].r = q1.r, cx[i-1].i = q1.i; in main()
3037 arg1 = (real) (i - 1) * dt; in main()
3038 cy[i-1].r = 0.f, cy[i-1].i = 0.f; in main()
3040 arg2 = (real) (k - 1) * arg1; in main()
3044 q2.r = q3.r * cx[k-1].r - q3.i * cx[k-1].i, q2.i = in main()
3045 q3.r * cx[k-1].i + q3.i * cx[k-1].r; in main()
3046 q1.r = cy[i-1].r + q2.r, q1.i = cy[i-1].i + q2.i; in main()
3047 cy[i-1].r = q1.r, cy[i-1].i = q1.i; in main()
3050 cfftb(n, (real*)cx, w); in main()
3054 q1.r = cx[i-1].r - cy[i-1].r, q1.i = cx[i-1].i - cy[i-1].i; in main()
3057 cx[i-1].r = cy[i-1].r, cx[i-1].i = cy[i-1].i; in main()
3060 cfftf(n, (real*)cx, w); in main()
3061 cfftb(n, (real*)cx, w); in main()
3065 q2.r = cf * cx[i-1].r, q2.i = cf * cx[i-1].i; in main()
3066 q1.r = q2.r - cy[i-1].r, q1.i = q2.i - cy[i-1].i; in main()
3078 #define CHECK(x) if (x > 1e-3) { printf(#x " failed: %g\n", x); all_ok = 0; } in main() argument
3088 … RFFTF 2.786e-06 RFFTB 6.847e-04 RFFTFB 2.795e-07 SINT 1.312e-06 … in main()
3089 …COSTFB 4.355e-06 SINQF 3.281e-04 SINQB 1.876e-06 SINQFB 2.198e-07 CO… in main()
3090 …COSQFB 2.300e-07 DEZF 5.573e-06 DEZB 1.363e-05 DEZFB 1.371e-06 CF… in main()
3091 CFFTFB 4.215e-07 in main()
3092 … RFFTF 4.708e-07 RFFTB 3.052e-05 RFFTFB 3.439e-07 SINT 3.532e-07 … in main()
3093 …COSTFB 6.343e-07 SINQF 4.959e-05 SINQB 4.415e-07 SINQFB 2.882e-07 CO… in main()
3094 …COSQFB 3.439e-07 DEZF 9.388e-07 DEZB 5.066e-06 DEZFB 5.960e-07 CF… in main()
3095 CFFTFB 2.980e-07 in main()
3096 … RFFTF 4.476e-07 RFFTB 5.341e-05 RFFTFB 2.574e-07 SINT 9.196e-07 … in main()
3097 …COSTFB 1.331e-06 SINQF 4.005e-05 SINQB 9.342e-07 SINQFB 3.057e-07 CO… in main()
3098 …COSQFB 4.826e-07 DEZF 9.071e-07 DEZB 4.590e-06 DEZFB 5.960e-07 CF… in main()
3099 CFFTFB 7.398e-07 in main()
3100 … RFFTF 4.619e-07 RFFTB 2.861e-05 RFFTFB 1.192e-07 SINT 3.874e-07 … in main()
3101 …COSTFB 1.699e-06 SINQF 2.551e-05 SINQB 6.407e-07 SINQFB 2.980e-07 CO… in main()
3102 …COSQFB 2.384e-07 DEZF 1.013e-06 DEZB 2.339e-06 DEZFB 7.749e-07 CF… in main()
3103 CFFTFB 2.666e-07 in main()
3104 … RFFTF 1.490e-08 RFFTB 1.490e-07 RFFTFB 5.960e-08 SINT 7.451e-09 … in main()
3105 …COSTFB 1.192e-07 SINQF 4.768e-07 SINQB 2.980e-08 SINQFB 5.960e-08 CO… in main()
3106 …COSQFB 1.192e-07 DEZF 2.980e-08 DEZB 5.960e-08 DEZFB 0.000e+00 CF… in main()
3107 CFFTFB 6.144e-08 in main()
3108 … RFFTF 3.974e-08 RFFTB 1.192e-07 RFFTFB 3.303e-08 SINT 1.987e-08 … in main()
3109 …COSTFB 5.721e-08 SINQF 8.941e-08 SINQB 2.980e-08 SINQFB 1.259e-07 CO… in main()
3110 …COSQFB 7.029e-08 DEZF 1.192e-07 DEZB 5.960e-08 DEZFB 5.960e-08 CF… in main()
3111 CFFTFB 9.064e-08 in main()
3113 …000e+00 SINQF 1.192e-07 SINQB 2.980e-08 SINQFB 5.960e-08 COSQF 7.45… in main()
3114 …+00 DEZB 0.000e+00 DEZFB 0.000e+00 CFFTF 0.000e+00 CFFTB 5.960e-08 in main()
3115 CFFTFB 5.960e-08 in main()