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

📄 fhb_32.c

📁 FFTW, a collection of fast C routines to compute the Discrete Fourier Transform in one or more dime
💻 C
📖 第 1 页 / 共 5 页
字号:
		    Y[-2 * iostride] =			(tmp531 * tmp534) - (tmp535 * tmp538);		    X[29 * iostride] =			(tmp535 * tmp534) + (tmp531 * tmp538);	       }	       {		    fftw_real tmp540;		    fftw_real tmp542;		    fftw_real tmp539;		    fftw_real tmp541;		    ASSERT_ALIGNED_DOUBLE;		    tmp540 = tmp532 + tmp533;		    tmp542 = tmp536 + tmp537;		    tmp539 = c_re(W[12]);		    tmp541 = c_im(W[12]);		    Y[-18 * iostride] =			(tmp539 * tmp540) - (tmp541 * tmp542);		    X[13 * iostride] =			(tmp541 * tmp540) + (tmp539 * tmp542);	       }	  }     }     if (i == m) {	  fftw_real tmp7;	  fftw_real tmp123;	  fftw_real tmp35;	  fftw_real tmp95;	  fftw_real tmp82;	  fftw_real tmp110;	  fftw_real tmp146;	  fftw_real tmp165;	  fftw_real tmp29;	  fftw_real tmp137;	  fftw_real tmp141;	  fftw_real tmp160;	  fftw_real tmp69;	  fftw_real tmp73;	  fftw_real tmp103;	  fftw_real tmp107;	  fftw_real tmp14;	  fftw_real tmp143;	  fftw_real tmp46;	  fftw_real tmp109;	  fftw_real tmp126;	  fftw_real tmp166;	  fftw_real tmp77;	  fftw_real tmp96;	  fftw_real tmp22;	  fftw_real tmp132;	  fftw_real tmp140;	  fftw_real tmp161;	  fftw_real tmp58;	  fftw_real tmp72;	  fftw_real tmp100;	  fftw_real tmp106;	  ASSERT_ALIGNED_DOUBLE;	  {	       fftw_real tmp3;	       fftw_real tmp31;	       fftw_real tmp81;	       fftw_real tmp144;	       fftw_real tmp6;	       fftw_real tmp78;	       fftw_real tmp34;	       fftw_real tmp145;	       ASSERT_ALIGNED_DOUBLE;	       {		    fftw_real tmp1;		    fftw_real tmp2;		    fftw_real tmp79;		    fftw_real tmp80;		    ASSERT_ALIGNED_DOUBLE;		    tmp1 = X[0];		    tmp2 = X[15 * iostride];		    tmp3 = tmp1 + tmp2;		    tmp31 = tmp1 - tmp2;		    tmp79 = Y[0];		    tmp80 = Y[-15 * iostride];		    tmp81 = tmp79 + tmp80;		    tmp144 = tmp79 - tmp80;	       }	       {		    fftw_real tmp4;		    fftw_real tmp5;		    fftw_real tmp32;		    fftw_real tmp33;		    ASSERT_ALIGNED_DOUBLE;		    tmp4 = X[8 * iostride];		    tmp5 = X[7 * iostride];		    tmp6 = tmp4 + tmp5;		    tmp78 = tmp4 - tmp5;		    tmp32 = Y[-8 * iostride];		    tmp33 = Y[-7 * iostride];		    tmp34 = tmp32 + tmp33;		    tmp145 = tmp32 - tmp33;	       }	       tmp7 = tmp3 + tmp6;	       tmp123 = tmp3 - tmp6;	       tmp35 = tmp31 - tmp34;	       tmp95 = tmp31 + tmp34;	       tmp82 = tmp78 + tmp81;	       tmp110 = tmp81 - tmp78;	       tmp146 = tmp144 - tmp145;	       tmp165 = tmp145 + tmp144;	  }	  {	       fftw_real tmp25;	       fftw_real tmp59;	       fftw_real tmp67;	       fftw_real tmp134;	       fftw_real tmp28;	       fftw_real tmp64;	       fftw_real tmp62;	       fftw_real tmp135;	       fftw_real tmp133;	       fftw_real tmp136;	       ASSERT_ALIGNED_DOUBLE;	       {		    fftw_real tmp23;		    fftw_real tmp24;		    fftw_real tmp65;		    fftw_real tmp66;		    ASSERT_ALIGNED_DOUBLE;		    tmp23 = X[iostride];		    tmp24 = X[14 * iostride];		    tmp25 = tmp23 + tmp24;		    tmp59 = tmp23 - tmp24;		    tmp65 = Y[-iostride];		    tmp66 = Y[-14 * iostride];		    tmp67 = tmp65 + tmp66;		    tmp134 = tmp66 - tmp65;	       }	       {		    fftw_real tmp26;		    fftw_real tmp27;		    fftw_real tmp60;		    fftw_real tmp61;		    ASSERT_ALIGNED_DOUBLE;		    tmp26 = X[6 * iostride];		    tmp27 = X[9 * iostride];		    tmp28 = tmp26 + tmp27;		    tmp64 = tmp26 - tmp27;		    tmp60 = Y[-6 * iostride];		    tmp61 = Y[-9 * iostride];		    tmp62 = tmp60 + tmp61;		    tmp135 = tmp60 - tmp61;	       }	       tmp29 = tmp25 + tmp28;	       tmp133 = tmp25 - tmp28;	       tmp136 = tmp134 - tmp135;	       tmp137 = tmp133 + tmp136;	       tmp141 = tmp136 - tmp133;	       tmp160 = tmp135 + tmp134;	       {		    fftw_real tmp63;		    fftw_real tmp68;		    fftw_real tmp101;		    fftw_real tmp102;		    ASSERT_ALIGNED_DOUBLE;		    tmp63 = tmp59 - tmp62;		    tmp68 = tmp64 - tmp67;		    tmp69 = (K923879532 * tmp63) + (K382683432 * tmp68);		    tmp73 = (K923879532 * tmp68) - (K382683432 * tmp63);		    tmp101 = tmp59 + tmp62;		    tmp102 = tmp64 + tmp67;		    tmp103 = (K382683432 * tmp101) - (K923879532 * tmp102);		    tmp107 = (K923879532 * tmp101) + (K382683432 * tmp102);	       }	  }	  {	       fftw_real tmp10;	       fftw_real tmp36;	       fftw_real tmp39;	       fftw_real tmp125;	       fftw_real tmp13;	       fftw_real tmp41;	       fftw_real tmp44;	       fftw_real tmp124;	       ASSERT_ALIGNED_DOUBLE;	       {		    fftw_real tmp8;		    fftw_real tmp9;		    fftw_real tmp37;		    fftw_real tmp38;		    ASSERT_ALIGNED_DOUBLE;		    tmp8 = X[4 * iostride];		    tmp9 = X[11 * iostride];		    tmp10 = tmp8 + tmp9;		    tmp36 = tmp8 - tmp9;		    tmp37 = Y[-4 * iostride];		    tmp38 = Y[-11 * iostride];		    tmp39 = tmp37 + tmp38;		    tmp125 = tmp37 - tmp38;	       }	       {		    fftw_real tmp11;		    fftw_real tmp12;		    fftw_real tmp42;		    fftw_real tmp43;		    ASSERT_ALIGNED_DOUBLE;		    tmp11 = X[3 * iostride];		    tmp12 = X[12 * iostride];		    tmp13 = tmp11 + tmp12;		    tmp41 = tmp11 - tmp12;		    tmp42 = Y[-3 * iostride];		    tmp43 = Y[-12 * iostride];		    tmp44 = tmp42 + tmp43;		    tmp124 = tmp43 - tmp42;	       }	       {		    fftw_real tmp40;		    fftw_real tmp45;		    fftw_real tmp75;		    fftw_real tmp76;		    ASSERT_ALIGNED_DOUBLE;		    tmp14 = tmp10 + tmp13;		    tmp143 = tmp10 - tmp13;		    tmp40 = tmp36 - tmp39;		    tmp45 = tmp41 - tmp44;		    tmp46 = K707106781 * (tmp40 + tmp45);		    tmp109 = K707106781 * (tmp40 - tmp45);		    tmp126 = tmp124 - tmp125;		    tmp166 = tmp125 + tmp124;		    tmp75 = tmp36 + tmp39;		    tmp76 = tmp41 + tmp44;		    tmp77 = K707106781 * (tmp75 - tmp76);		    tmp96 = K707106781 * (tmp75 + tmp76);	       }	  }	  {	       fftw_real tmp18;	       fftw_real tmp48;	       fftw_real tmp56;	       fftw_real tmp129;	       fftw_real tmp21;	       fftw_real tmp53;	       fftw_real tmp51;	       fftw_real tmp130;	       fftw_real tmp128;	       fftw_real tmp131;	       ASSERT_ALIGNED_DOUBLE;	       {		    fftw_real tmp16;		    fftw_real tmp17;		    fftw_real tmp54;		    fftw_real tmp55;		    ASSERT_ALIGNED_DOUBLE;		    tmp16 = X[2 * iostride];		    tmp17 = X[13 * iostride];		    tmp18 = tmp16 + tmp17;		    tmp48 = tmp16 - tmp17;		    tmp54 = Y[-2 * iostride];		    tmp55 = Y[-13 * iostride];		    tmp56 = tmp54 + tmp55;		    tmp129 = tmp54 - tmp55;	       }	       {		    fftw_real tmp19;		    fftw_real tmp20;		    fftw_real tmp49;		    fftw_real tmp50;		    ASSERT_ALIGNED_DOUBLE;		    tmp19 = X[10 * iostride];		    tmp20 = X[5 * iostride];		    tmp21 = tmp19 + tmp20;		    tmp53 = tmp19 - tmp20;		    tmp49 = Y[-10 * iostride];		    tmp50 = Y[-5 * iostride];		    tmp51 = tmp49 + tmp50;		    tmp130 = tmp49 - tmp50;	       }	       tmp22 = tmp18 + tmp21;	       tmp128 = tmp18 - tmp21;	       tmp131 = tmp129 - tmp130;	       tmp132 = tmp128 - tmp131;	       tmp140 = tmp128 + tmp131;	       tmp161 = tmp130 + tmp129;	       {		    fftw_real tmp52;		    fftw_real tmp57;		    fftw_real tmp98;		    fftw_real tmp99;		    ASSERT_ALIGNED_DOUBLE;		    tmp52 = tmp48 - tmp51;		    tmp57 = tmp53 + tmp56;		    tmp58 = (K923879532 * tmp52) - (K382683432 * tmp57);		    tmp72 = (K382683432 * tmp52) + (K923879532 * tmp57);		    tmp98 = tmp48 + tmp51;		    tmp99 = tmp56 - tmp53;		    tmp100 = (K382683432 * tmp98) - (K923879532 * tmp99);		    tmp106 = (K923879532 * tmp98) + (K382683432 * tmp99);	       }	  }	  {	       fftw_real tmp15;	       fftw_real tmp30;	       fftw_real tmp171;	       fftw_real tmp172;	       fftw_real tmp173;	       fftw_real tmp174;	       ASSERT_ALIGNED_DOUBLE;	       tmp15 = tmp7 + tmp14;	       tmp30 = tmp22 + tmp29;	       tmp171 = tmp15 - tmp30;	       tmp172 = tmp166 + tmp165;	       tmp173 = tmp161 + tmp160;	       tmp174 = tmp172 - tmp173;	       X[0] = K2_000000000 * (tmp15 + tmp30);	       X[16 * iostride] = -(K2_000000000 * (tmp173 + tmp172));	       X[8 * iostride] = K1_414213562 * (tmp171 - tmp174);	       X[24 * iostride] = -(K1_414213562 * (tmp171 + tmp174));	  }	  {	       fftw_real tmp163;	       fftw_real tmp169;	       fftw_real tmp168;	       fftw_real tmp170;	       ASSERT_ALIGNED_DOUBLE;	       {		    fftw_real tmp159;		    fftw_real tmp162;		    fftw_real tmp164;		    fftw_real tmp167;		    ASSERT_ALIGNED_DOUBLE;		    tmp159 = tmp7 - tmp14;		    tmp162 = tmp160 - tmp161;		    tmp163 = tmp159 + tmp162;		    tmp169 = tmp159 - tmp162;		    tmp164 = tmp22 - tmp29;		    tmp167 = tmp165 - tmp166;		    tmp168 = tmp164 + tmp167;		    tmp170 = tmp167 - tmp164;	       }	       X[4 * iostride] =		   (K1_847759065 * tmp163) - (K765366864 * tmp168);	       X[20 * iostride] =		   -((K765366864 * tmp163) + (K1_847759065 * tmp168));	       X[12 * iostride] =		   (K765366864 * tmp169) - (K1_847759065 * tmp170);	       X[28 * iostride] =		   -((K1_847759065 * tmp169) + (K765366864 * tmp170));	  }	  {	       fftw_real tmp71;	       fftw_real tmp85;	       fftw_real tmp84;	       fftw_real tmp86;	       ASSERT_ALIGNED_DOUBLE;	       {		    fftw_real tmp47;		    fftw_real tmp70;		    fftw_real tmp74;		    fftw_real tmp83;		    ASSERT_ALIGNED_DOUBLE;		    tmp47 = tmp35 + tmp46;		    tmp70 = tmp58 + tmp69;		    tmp71 = tmp47 + tmp70;		    tmp85 = tmp47 - tmp70;		    tmp74 = tmp72 + tmp73;		    tmp83 = tmp77 + tmp82;		    tmp84 = tmp74 + tmp83;		    tmp86 = tmp83 - tmp74;	       }	       X[iostride] = (K1_990369453 * tmp71) - (K196034280 * tmp84);	       X[17 * iostride] =		   -((K196034280 * tmp71) + (K1_990369453 * tmp84));	       X[9 * iostride] =		   (K1_268786568 * tmp85) - (K1_546020906 * tmp86);	       X[25 * iostride] =		   -((K1_546020906 * tmp85) + (K1_268786568 * tmp86));	  }	  {	       fftw_real tmp89;	       fftw_real tmp93;	       fftw_real tmp92;	       fftw_real tmp94;	       ASSERT_ALIGNED_DOUBLE;	       {		    fftw_real tmp87;		    fftw_real tmp88;		    fftw_real tmp90;		    fftw_real tmp91;		    ASSERT_ALIGNED_DOUBLE;		    tmp87 = tmp35 - tmp46;		    tmp88 = tmp73 - tmp72;		    tmp89 = tmp87 + tmp88;		    tmp93 = tmp87 - tmp88;		    tmp90 = tmp58 - tmp69;		    tmp91 = tmp82 - tmp77;		    tmp92 = tmp90 + tmp91;		    tmp94 = tmp91 - tmp90;	       }	       X[5 * iostride] =		   (K1_763842528 * tmp89) - (K942793473 * tmp92);	       X[21 * iostride] =		   -((K942793473 * tmp89) + (K1_763842528 * tmp92));	       X[13 * iostride] =		   (K580569354 * tmp93) - (K1_913880671 * tmp94);	       X[29 * iostride] =		   -((K1_913880671 * tmp93) + (K580569354 * tmp94));	  }	  {	       fftw_real tmp105;	       fftw_real tmp113;	       fftw_real tmp112;	       fftw_real tmp114;	       ASSERT_ALIGNED_DOUBLE;	       {		    fftw_real tmp97;		    fftw_real tmp104;		    fftw_real tmp108;		    fftw_real tmp111;		    ASSERT_ALIGNED_DOUBLE;		    tmp97 = tmp95 - tmp96;		    tmp104 = tmp100 + tmp103;		    tmp105 = tmp97 + tmp104;		    tmp113 = tmp97 - tmp104;		    tmp108 = tmp106 - tmp107;		    tmp111 = tmp109 + tmp110;		    tmp112 = tmp108 + tmp111;		    tmp114 = tmp111 - tmp108;	       }	       X[3 * iostride] =		   (K1_913880671 * tmp105) - (K580569354 * tmp112);	       X[19 * iostride] =		   -((K580569354 * tmp105) + (K1_913880671 * tmp112));	       X[11 * iostride] =		   (K942793473 * tmp113) - (K1_763842528 * tmp114);	       X[27 * iostride] =		   -((K1_763842528 * tmp113) + (K942793473 * tmp114));	  }	  {	       fftw_real tmp117;	       fftw_real tmp121;	       fftw_real tmp120;	       fftw_real tmp122;	       ASSERT_ALIGNED_DOUBLE;	       {		    fftw_real tmp115;		    fftw_real tmp116;		    fftw_real tmp118;		    fftw_real tmp119;		    ASSERT_ALIGNED_DOUBLE;		    tmp115 = tmp95 + tmp96;		    tmp116 = tmp106 + tmp107;		    tmp117 = tmp115 - tmp116;		    tmp121 = tmp115 + tmp116;		    tmp118 = tmp100 - tmp103;		    tmp119 = tmp110 - tmp109;		    tmp120 = tmp118 + tmp119;		    tmp122 = tmp119 - tmp118;	       }	       X[7 * iostride] =		   (K1_546020906 * tmp117) - (K1_268786568 * tmp120);	       X[23 * iostride] =		   -((K1_268786568 * tmp117) + (K1_546020906 * tmp120));	       X[15 * iostride] =		   (K196034280 * tmp121) - (K1_990369453 * tmp122);	       X[31 * iostride] =		   -((K1_990369453 * tmp121) + (K196034280 * tmp122));	  }	  {	       fftw_real tmp139;	       fftw_real tmp149;	       fftw_real tmp148;	       fftw_real tmp150;	       ASSERT_A

⌨️ 快捷键说明

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