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

📄 fhf_10.c

📁 完整的3D 模型检索程序
💻 C
📖 第 1 页 / 共 2 页
字号:
/* * Copyright (c) 1997-1999 Massachusetts Institute of Technology * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 2 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA * *//* This file was automatically generated --- DO NOT EDIT *//* Generated on Sun Nov  7 20:44:49 EST 1999 */#include "fftw-int.h"#include "fftw.h"/* Generated by: ./genfft -magic-alignment-check -magic-twiddle-load-all -magic-variables 4 -magic-loopi -hc2hc-forward 10 *//* * This function contains 168 FP additions, 84 FP multiplications, * (or, 126 additions, 42 multiplications, 42 fused multiply/add), * 43 stack variables, and 80 memory accesses */static const fftw_real K587785252 = FFTW_KONST(+0.587785252292473129168705954639072768597652438);static const fftw_real K951056516 = FFTW_KONST(+0.951056516295153572116439333379382143405698634);static const fftw_real K250000000 = FFTW_KONST(+0.250000000000000000000000000000000000000000000);static const fftw_real K559016994 = FFTW_KONST(+0.559016994374947424102293417182819058860154590);/* * Generator Id's :  * $Id: exprdag.ml,v 1.41 1999/05/26 15:44:14 fftw Exp $ * $Id: fft.ml,v 1.43 1999/05/17 19:44:18 fftw Exp $ * $Id: to_c.ml,v 1.25 1999/10/26 21:41:32 stevenj Exp $ */void fftw_hc2hc_forward_10(fftw_real *A, const fftw_complex *W, int iostride, int m, int dist){     int i;     fftw_real *X;     fftw_real *Y;     X = A;     Y = A + (10 * iostride);     {	  fftw_real tmp170;	  fftw_real tmp181;	  fftw_real tmp162;	  fftw_real tmp175;	  fftw_real tmp165;	  fftw_real tmp176;	  fftw_real tmp166;	  fftw_real tmp183;	  fftw_real tmp155;	  fftw_real tmp178;	  fftw_real tmp158;	  fftw_real tmp179;	  fftw_real tmp159;	  fftw_real tmp182;	  fftw_real tmp168;	  fftw_real tmp169;	  ASSERT_ALIGNED_DOUBLE;	  tmp168 = X[0];	  tmp169 = X[5 * iostride];	  tmp170 = tmp168 - tmp169;	  tmp181 = tmp168 + tmp169;	  {	       fftw_real tmp160;	       fftw_real tmp161;	       fftw_real tmp163;	       fftw_real tmp164;	       ASSERT_ALIGNED_DOUBLE;	       tmp160 = X[4 * iostride];	       tmp161 = X[9 * iostride];	       tmp162 = tmp160 - tmp161;	       tmp175 = tmp160 + tmp161;	       tmp163 = X[6 * iostride];	       tmp164 = X[iostride];	       tmp165 = tmp163 - tmp164;	       tmp176 = tmp163 + tmp164;	  }	  tmp166 = tmp162 + tmp165;	  tmp183 = tmp175 + tmp176;	  {	       fftw_real tmp153;	       fftw_real tmp154;	       fftw_real tmp156;	       fftw_real tmp157;	       ASSERT_ALIGNED_DOUBLE;	       tmp153 = X[2 * iostride];	       tmp154 = X[7 * iostride];	       tmp155 = tmp153 - tmp154;	       tmp178 = tmp153 + tmp154;	       tmp156 = X[8 * iostride];	       tmp157 = X[3 * iostride];	       tmp158 = tmp156 - tmp157;	       tmp179 = tmp156 + tmp157;	  }	  tmp159 = tmp155 + tmp158;	  tmp182 = tmp178 + tmp179;	  {	       fftw_real tmp167;	       fftw_real tmp171;	       fftw_real tmp172;	       fftw_real tmp186;	       fftw_real tmp184;	       fftw_real tmp185;	       ASSERT_ALIGNED_DOUBLE;	       tmp167 = K559016994 * (tmp159 - tmp166);	       tmp171 = tmp159 + tmp166;	       tmp172 = tmp170 - (K250000000 * tmp171);	       X[iostride] = tmp167 + tmp172;	       X[3 * iostride] = tmp172 - tmp167;	       X[5 * iostride] = tmp170 + tmp171;	       tmp186 = K559016994 * (tmp182 - tmp183);	       tmp184 = tmp182 + tmp183;	       tmp185 = tmp181 - (K250000000 * tmp184);	       X[2 * iostride] = tmp185 - tmp186;	       X[4 * iostride] = tmp186 + tmp185;	       X[0] = tmp181 + tmp184;	  }	  {	       fftw_real tmp173;	       fftw_real tmp174;	       fftw_real tmp177;	       fftw_real tmp180;	       ASSERT_ALIGNED_DOUBLE;	       tmp173 = tmp155 - tmp158;	       tmp174 = tmp162 - tmp165;	       Y[-iostride] = -((K951056516 * tmp173) + (K587785252 * tmp174));	       Y[-3 * iostride] = (K587785252 * tmp173) - (K951056516 * tmp174);	       tmp177 = tmp175 - tmp176;	       tmp180 = tmp178 - tmp179;	       Y[-2 * iostride] = (K951056516 * tmp177) - (K587785252 * tmp180);	       Y[-4 * iostride] = (K951056516 * tmp180) + (K587785252 * tmp177);	  }     }     X = X + dist;     Y = Y - dist;     for (i = 2; i < m; i = i + 2, X = X + dist, Y = Y - dist, W = W + 9) {	  fftw_real tmp39;	  fftw_real tmp87;	  fftw_real tmp132;	  fftw_real tmp144;	  fftw_real tmp73;	  fftw_real tmp84;	  fftw_real tmp85;	  fftw_real tmp91;	  fftw_real tmp92;	  fftw_real tmp93;	  fftw_real tmp100;	  fftw_real tmp103;	  fftw_real tmp128;	  fftw_real tmp121;	  fftw_real tmp122;	  fftw_real tmp142;	  fftw_real tmp50;	  fftw_real tmp61;	  fftw_real tmp62;	  fftw_real tmp88;	  fftw_real tmp89;	  fftw_real tmp90;	  fftw_real tmp107;	  fftw_real tmp110;	  fftw_real tmp127;	  fftw_real tmp118;	  fftw_real tmp119;	  fftw_real tmp141;	  ASSERT_ALIGNED_DOUBLE;	  {	       fftw_real tmp33;	       fftw_real tmp131;	       fftw_real tmp38;	       fftw_real tmp130;	       ASSERT_ALIGNED_DOUBLE;	       tmp33 = X[0];	       tmp131 = Y[-9 * iostride];	       {		    fftw_real tmp35;		    fftw_real tmp37;		    fftw_real tmp34;		    fftw_real tmp36;		    ASSERT_ALIGNED_DOUBLE;		    tmp35 = X[5 * iostride];		    tmp37 = Y[-4 * iostride];		    tmp34 = c_re(W[4]);		    tmp36 = c_im(W[4]);		    tmp38 = (tmp34 * tmp35) - (tmp36 * tmp37);		    tmp130 = (tmp36 * tmp35) + (tmp34 * tmp37);	       }	       tmp39 = tmp33 - tmp38;	       tmp87 = tmp33 + tmp38;	       tmp132 = tmp130 + tmp131;	       tmp144 = tmp131 - tmp130;	  }	  {	       fftw_real tmp67;	       fftw_real tmp98;	       fftw_real tmp83;	       fftw_real tmp102;	       fftw_real tmp72;	       fftw_real tmp99;	       fftw_real tmp78;	       fftw_real tmp101;	       ASSERT_ALIGNED_DOUBLE;	       {		    fftw_real tmp64;		    fftw_real tmp66;		    fftw_real tmp63;		    fftw_real tmp65;		    ASSERT_ALIGNED_DOUBLE;		    tmp64 = X[4 * iostride];		    tmp66 = Y[-5 * iostride];		    tmp63 = c_re(W[3]);		    tmp65 = c_im(W[3]);		    tmp67 = (tmp63 * tmp64) - (tmp65 * tmp66);		    tmp98 = (tmp65 * tmp64) + (tmp63 * tmp66);	       }	       {		    fftw_real tmp80;		    fftw_real tmp82;		    fftw_real tmp79;		    fftw_real tmp81;		    ASSERT_ALIGNED_DOUBLE;		    tmp80 = X[iostride];		    tmp82 = Y[-8 * iostride];		    tmp79 = c_re(W[0]);		    tmp81 = c_im(W[0]);		    tmp83 = (tmp79 * tmp80) - (tmp81 * tmp82);		    tmp102 = (tmp81 * tmp80) + (tmp79 * tmp82);	       }	       {		    fftw_real tmp69;		    fftw_real tmp71;		    fftw_real tmp68;		    fftw_real tmp70;		    ASSERT_ALIGNED_DOUBLE;		    tmp69 = X[9 * iostride];		    tmp71 = Y[0];		    tmp68 = c_re(W[8]);		    tmp70 = c_im(W[8]);		    tmp72 = (tmp68 * tmp69) - (tmp70 * tmp71);		    tmp99 = (tmp70 * tmp69) + (tmp68 * tmp71);	       }	       {		    fftw_real tmp75;		    fftw_real tmp77;		    fftw_real tmp74;		    fftw_real tmp76;		    ASSERT_ALIGNED_DOUBLE;		    tmp75 = X[6 * iostride];		    tmp77 = Y[-3 * iostride];		    tmp74 = c_re(W[5]);		    tmp76 = c_im(W[5]);		    tmp78 = (tmp74 * tmp75) - (tmp76 * tmp77);		    tmp101 = (tmp76 * tmp75) + (tmp74 * tmp77);	       }	       tmp73 = tmp67 - tmp72;	       tmp84 = tmp78 - tmp83;	       tmp85 = tmp73 + tmp84;	       tmp91 = tmp67 + tmp72;	       tmp92 = tmp78 + tmp83;	       tmp93 = tmp91 + tmp92;	       tmp100 = tmp98 + tmp99;	       tmp103 = tmp101 + tmp102;	       tmp128 = tmp100 + tmp103;	       tmp121 = tmp98 - tmp99;	       tmp122 = tmp101 - tmp102;	       tmp142 = tmp121 + tmp122;	  }	  {	       fftw_real tmp44;	       fftw_real tmp105;	       fftw_real tmp60;

⌨️ 快捷键说明

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