⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 fhb_9.c

📁 FFTW, a collection of fast C routines to compute the Discrete Fourier Transform in one or more dime
💻 C
📖 第 1 页 / 共 2 页
字号:
		    fftw_real tmp129;		    fftw_real tmp130;		    ASSERT_ALIGNED_DOUBLE;		    tmp97 = tmp95 + tmp96;		    tmp100 = tmp98 + tmp99;		    tmp101 = (K173648177 * tmp97) - (K984807753 * tmp100);		    tmp109 = (K984807753 * tmp97) + (K173648177 * tmp100);		    tmp129 = tmp95 - tmp96;		    tmp130 = tmp99 - tmp98;		    tmp131 = (K342020143 * tmp129) - (K939692620 * tmp130);		    tmp137 = (K939692620 * tmp129) + (K342020143 * tmp130);	       }	       {		    fftw_real tmp126;		    fftw_real tmp127;		    fftw_real tmp90;		    fftw_real tmp93;		    ASSERT_ALIGNED_DOUBLE;		    tmp126 = tmp92 - tmp91;		    tmp127 = tmp88 + tmp89;		    tmp128 = (K173648177 * tmp126) + (K984807753 * tmp127);		    tmp136 = (K173648177 * tmp127) - (K984807753 * tmp126);		    tmp90 = tmp88 - tmp89;		    tmp93 = tmp91 + tmp92;		    tmp94 = (K766044443 * tmp90) - (K642787609 * tmp93);		    tmp108 = (K766044443 * tmp93) + (K642787609 * tmp90);		    tmp65 = tmp61 + tmp64;		    tmp70 = tmp66 - tmp69;		    tmp71 = tmp65 + tmp70;	       }	  }	  X[0] = tmp44 + tmp55;	  {	       fftw_real tmp75;	       fftw_real tmp81;	       fftw_real tmp79;	       fftw_real tmp83;	       ASSERT_ALIGNED_DOUBLE;	       {		    fftw_real tmp73;		    fftw_real tmp74;		    fftw_real tmp77;		    fftw_real tmp78;		    ASSERT_ALIGNED_DOUBLE;		    tmp73 = tmp60 - (K500000000 * tmp71);		    tmp74 = K866025403 * (tmp49 - tmp54);		    tmp75 = tmp73 - tmp74;		    tmp81 = tmp74 + tmp73;		    tmp77 = tmp44 - (K500000000 * tmp55);		    tmp78 = K866025403 * (tmp70 - tmp65);		    tmp79 = tmp77 - tmp78;		    tmp83 = tmp77 + tmp78;	       }	       {		    fftw_real tmp72;		    fftw_real tmp76;		    fftw_real tmp80;		    fftw_real tmp82;		    ASSERT_ALIGNED_DOUBLE;		    tmp72 = c_re(W[5]);		    tmp76 = c_im(W[5]);		    Y[-2 * iostride] = (tmp72 * tmp75) - (tmp76 * tmp79);		    X[6 * iostride] = (tmp76 * tmp75) + (tmp72 * tmp79);		    tmp80 = c_re(W[2]);		    tmp82 = c_im(W[2]);		    Y[-5 * iostride] = (tmp80 * tmp81) - (tmp82 * tmp83);		    X[3 * iostride] = (tmp82 * tmp81) + (tmp80 * tmp83);	       }	  }	  Y[-8 * iostride] = tmp60 + tmp71;	  {	       fftw_real tmp114;	       fftw_real tmp103;	       fftw_real tmp117;	       fftw_real tmp118;	       fftw_real tmp111;	       fftw_real tmp113;	       fftw_real tmp102;	       fftw_real tmp110;	       fftw_real tmp84;	       fftw_real tmp104;	       ASSERT_ALIGNED_DOUBLE;	       tmp114 = K866025403 * (tmp94 - tmp101);	       tmp102 = tmp94 + tmp101;	       tmp103 = tmp87 + tmp102;	       tmp117 = tmp87 - (K500000000 * tmp102);	       tmp118 = K866025403 * (tmp109 - tmp108);	       tmp110 = tmp108 + tmp109;	       tmp111 = tmp107 + tmp110;	       tmp113 = tmp107 - (K500000000 * tmp110);	       tmp84 = c_re(W[0]);	       tmp104 = c_im(W[0]);	       X[iostride] = (tmp84 * tmp103) + (tmp104 * tmp111);	       Y[-7 * iostride] = (tmp84 * tmp111) - (tmp104 * tmp103);	       {		    fftw_real tmp121;		    fftw_real tmp123;		    fftw_real tmp120;		    fftw_real tmp122;		    ASSERT_ALIGNED_DOUBLE;		    tmp121 = tmp114 + tmp113;		    tmp123 = tmp117 + tmp118;		    tmp120 = c_re(W[3]);		    tmp122 = c_im(W[3]);		    Y[-4 * iostride] =			(tmp120 * tmp121) - (tmp122 * tmp123);		    X[4 * iostride] =			(tmp122 * tmp121) + (tmp120 * tmp123);	       }	       {		    fftw_real tmp115;		    fftw_real tmp119;		    fftw_real tmp112;		    fftw_real tmp116;		    ASSERT_ALIGNED_DOUBLE;		    tmp115 = tmp113 - tmp114;		    tmp119 = tmp117 - tmp118;		    tmp112 = c_re(W[6]);		    tmp116 = c_im(W[6]);		    Y[-iostride] = (tmp112 * tmp115) - (tmp116 * tmp119);		    X[7 * iostride] =			(tmp116 * tmp115) + (tmp112 * tmp119);	       }	  }	  {	       fftw_real tmp142;	       fftw_real tmp133;	       fftw_real tmp145;	       fftw_real tmp146;	       fftw_real tmp139;	       fftw_real tmp141;	       fftw_real tmp132;	       fftw_real tmp138;	       fftw_real tmp124;	       fftw_real tmp134;	       ASSERT_ALIGNED_DOUBLE;	       tmp142 = K866025403 * (tmp131 - tmp128);	       tmp132 = tmp128 + tmp131;	       tmp133 = tmp125 + tmp132;	       tmp145 = tmp125 - (K500000000 * tmp132);	       tmp146 = K866025403 * (tmp136 + tmp137);	       tmp138 = tmp136 - tmp137;	       tmp139 = tmp135 + tmp138;	       tmp141 = tmp135 - (K500000000 * tmp138);	       tmp124 = c_re(W[1]);	       tmp134 = c_im(W[1]);	       Y[-6 * iostride] = (tmp124 * tmp133) - (tmp134 * tmp139);	       X[2 * iostride] = (tmp134 * tmp133) + (tmp124 * tmp139);	       {		    fftw_real tmp149;		    fftw_real tmp151;		    fftw_real tmp148;		    fftw_real tmp150;		    ASSERT_ALIGNED_DOUBLE;		    tmp149 = tmp142 + tmp141;		    tmp151 = tmp145 + tmp146;		    tmp148 = c_re(W[4]);		    tmp150 = c_im(W[4]);		    X[5 * iostride] =			(tmp148 * tmp149) + (tmp150 * tmp151);		    Y[-3 * iostride] =			(tmp148 * tmp151) - (tmp150 * tmp149);	       }	       {		    fftw_real tmp143;		    fftw_real tmp147;		    fftw_real tmp140;		    fftw_real tmp144;		    ASSERT_ALIGNED_DOUBLE;		    tmp143 = tmp141 - tmp142;		    tmp147 = tmp145 - tmp146;		    tmp140 = c_re(W[7]);		    tmp144 = c_im(W[7]);		    X[8 * iostride] =			(tmp140 * tmp143) + (tmp144 * tmp147);		    Y[0] = (tmp140 * tmp147) - (tmp144 * tmp143);	       }	  }     }     if (i == m) {	  fftw_real tmp3;	  fftw_real tmp37;	  fftw_real tmp30;	  fftw_real tmp12;	  fftw_real tmp11;	  fftw_real tmp18;	  fftw_real tmp33;	  fftw_real tmp7;	  fftw_real tmp35;	  fftw_real tmp24;	  fftw_real tmp21;	  fftw_real tmp34;	  fftw_real tmp32;	  fftw_real tmp15;	  fftw_real tmp8;	  fftw_real tmp13;	  ASSERT_ALIGNED_DOUBLE;	  {	       fftw_real tmp29;	       fftw_real tmp1;	       fftw_real tmp2;	       fftw_real tmp27;	       fftw_real tmp28;	       ASSERT_ALIGNED_DOUBLE;	       tmp28 = Y[-iostride];	       tmp29 = K1_732050807 * tmp28;	       tmp1 = X[4 * iostride];	       tmp2 = X[iostride];	       tmp27 = tmp2 - tmp1;	       tmp3 = tmp1 + (K2_000000000 * tmp2);	       tmp37 = tmp27 + tmp29;	       tmp30 = tmp27 - tmp29;	  }	  {	       fftw_real tmp4;	       fftw_real tmp6;	       fftw_real tmp5;	       fftw_real tmp14;	       fftw_real tmp16;	       fftw_real tmp19;	       fftw_real tmp22;	       fftw_real tmp10;	       fftw_real tmp23;	       fftw_real tmp17;	       fftw_real tmp9;	       fftw_real tmp20;	       ASSERT_ALIGNED_DOUBLE;	       tmp4 = X[3 * iostride];	       tmp6 = X[2 * iostride];	       tmp5 = X[0];	       tmp14 = K500000000 * (tmp5 + tmp6);	       tmp16 = K866025403 * (tmp6 - tmp5);	       tmp19 = K866025403 * (tmp4 - tmp5);	       tmp22 = K500000000 * (tmp4 + tmp5);	       tmp9 = Y[-3 * iostride];	       tmp12 = Y[-2 * iostride];	       tmp10 = Y[0];	       tmp11 = tmp9 + tmp10;	       tmp23 = K866025403 * (tmp10 - tmp9);	       tmp17 = tmp9 + (K500000000 * (tmp12 - tmp10));	       tmp18 = tmp16 + tmp17;	       tmp33 = tmp16 - tmp17;	       tmp7 = tmp4 + tmp5 + tmp6;	       tmp35 = (tmp6 + tmp23) - tmp22;	       tmp24 = tmp22 + tmp23 - tmp6;	       tmp20 = (K500000000 * tmp11) + tmp12;	       tmp21 = tmp19 + tmp20;	       tmp34 = tmp19 - tmp20;	       tmp32 = tmp4 - (K866025403 * (tmp10 + tmp12)) - tmp14;	       tmp15 = tmp14 - (K866025403 * (tmp10 + tmp12)) - tmp4;	  }	  X[0] = tmp3 + (K2_000000000 * tmp7);	  tmp8 = tmp7 - tmp3;	  tmp13 = K1_732050807 * (tmp11 - tmp12);	  X[3 * iostride] = tmp8 - tmp13;	  X[6 * iostride] = -(tmp8 + tmp13);	  {	       fftw_real tmp25;	       fftw_real tmp26;	       fftw_real tmp31;	       fftw_real tmp38;	       fftw_real tmp36;	       fftw_real tmp39;	       ASSERT_ALIGNED_DOUBLE;	       tmp25 =		   (K556670399 * tmp15) + (K663413948 * tmp18) -		   (K150383733 * tmp21) - (K852868531 * tmp24);	       tmp26 =		   (K173648177 * tmp24) + (K766044443 * tmp15) -		   (K642787609 * tmp18) - (K984807753 * tmp21);	       tmp31 = (K500000000 * tmp26) - tmp30;	       X[7 * iostride] = tmp25 - tmp31;	       X[4 * iostride] = tmp25 + tmp31;	       X[iostride] = tmp26 + tmp30;	       tmp38 =		   (K813797681 * tmp34) + (K852868531 * tmp32) +		   (K150383733 * tmp33) - (K296198132 * tmp35);	       tmp36 =		   (K173648177 * tmp32) - (K984807753 * tmp33) -		   (K342020143 * tmp34) - (K939692620 * tmp35);	       tmp39 = (K500000000 * tmp36) + tmp37;	       X[2 * iostride] = tmp36 - tmp37;	       X[5 * iostride] = tmp38 + tmp39;	       X[8 * iostride] = tmp38 - tmp39;	  }     }}static const int twiddle_order[] = { 1, 2, 3, 4, 5, 6, 7, 8 };fftw_codelet_desc fftw_hc2hc_backward_9_desc = {     "fftw_hc2hc_backward_9",     (void (*)()) fftw_hc2hc_backward_9,     9,     FFTW_BACKWARD,     FFTW_HC2HC,     212,     8,     twiddle_order,};

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -