亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? fft.c

?? 國外網站找到的
?? C
字號:
/***********************************// DIT radix-4  FFT  complex //// 1. Maximium points are 1024.//// 2. The last stage is 2 DFT ( for 8, 32, 128, 512...)// or all stages are 4 DFT ( for 4, 16, 64, 256, 1024 ...).//// 3. The functions special for FFT real .//// 24 juillet 2007// purcharse*gmail.com************************************/#include "FFT.h"static  complex multicomplex( complex b1, complex b2)  /* multiplication of complex */{ complex b3;b3.real=b1.real*b2.real-b1.imag*b2.imag;b3.imag=b1.real*b2.imag+b1.imag*b2.real;return(b3);}static int mylog2(int N) 	/* Max(N) = 4098 */{  int k=0;    if (N>>12) { k+=12; N>>=12; }  if (N>>8) { k+=8; N>>=8; }  if (N>>4) { k+=4; N>>=4; }  if (N>>2) { k+=2; N>>=2; }  if (N>>1) { k+=1; N>>=1; }  return k ;}static void BitReverse(complex *xin, int N){	int LH, i, j, k;	struct complex tmp;			LH=N/2;    			j = N/2;			for( i = 1; i <= (N -2); i++)			{				if(i < j)				{					tmp = xin[j];					xin[j] = xin[i];					xin[i] = tmp;				}			k = LH;				while(j >= k)				{					j = j-k;					k = k/2;				}			j = j + k;			}}static void DFT_2(complex *b1, complex *b2){struct complex tmp;  tmp = *b1;  (*b1).real = (*b1).real + (*b2).real;  (*b1).imag = (*b1).imag + (*b2).imag;  (*b2).real = tmp.real - (*b2).real;  (*b2).imag = tmp.imag - (*b2).imag;	}static void DFT_4(complex* b0,  complex* b1, complex* b2, complex* b3){  /*variables locales*/  struct complex temp[4];    /*calcul x1*/  temp[0].real=(*b0).real+(*b1).real;		  temp[0].imag=(*b0).imag+(*b1).imag;  /*calcul x2*/  temp[1].real=(*b0).real-(*b1).real;		  temp[1].imag=(*b0).imag-(*b1).imag;  /*calcul x3*/  temp[2].real=(*b2).real+(*b3).real;	  temp[2].imag=(*b2).imag+(*b3).imag;  /*calcul x4 + multiplication with -j*/  temp[3].imag=(*b3).real-(*b2).real;		  temp[3].real=(*b2).imag-(*b3).imag;   /*the last stage*/  (*b0).real=temp[0].real+temp[2].real;  (*b0).imag=temp[0].imag+temp[2].imag;    (*b1).real=temp[1].real+temp[3].real;       (*b1).imag=temp[1].imag+temp[3].imag;     (*b2).real=temp[0].real-temp[2].real;       (*b2).imag=temp[0].imag-temp[2].imag;    (*b3).real=temp[1].real-temp[3].real;   (*b3).imag=temp[1].imag-temp[3].imag;}static void FFT_R4(complex *xin, int N, int m){		int  i, L, j;		double  ps1, ps2, ps3;		int le,B;		struct complex w[4];		for( L = 1; L <= m; L++)		{			le = pow(4 ,L);			B = le/4;       /*the distance of buttefly*/		 			for(j = 0; j <= B-1 ; j++)	  			{			       //  ps0 = (TWICEPI/N) * 0 * j;			       //  w[0].real = cos(ps0);			       //  w[0].imag = -sin(ps0);					   ps1 = ((TWICEPI)/le)*2*j;				   w[1].real = cos(ps1);				   w[1].imag = -sin(ps1);				   ps2 = (TWICEPI/le)*j;				   w[2].real = cos(ps2);				   w[2].imag = -sin(ps2);				   ps3 = (TWICEPI/le)*3*j;				   w[3].real = cos(ps3);				   w[3].imag = -sin(ps3);				   for(i = j; i <= N-1; i = i + le)	/* controle those same butteflies*/				     {						/* multiple with W */				 //   xin[i] = multicomplex(xin[i], w[0]);				      xin[i + B] = multicomplex(xin[i + B], w[1]);				      xin[i + 2*B] = multicomplex(xin[i + 2*B], w[2]);				      xin[i + 3*B] = multicomplex(xin[i + 3*B], w[3]);						/* DFT-4 */				      DFT_4(xin + i, xin + i + B, xin + i + 2*B, xin + i + 3*B);				     }  		      }		/*		printf("*****N°%d **********\n", L);		for(i=0;i<N;i++)		{		printf("%.8f\t\t",xin[i].real);		printf("%.8f\n",xin[i].imag);		}		*/		}	}//end of FFT_R4static void FFT_L2(complex *xin, int N){				/* For the last stage 2 DFT*/	int j, B;	double p, ps ;	struct complex w;		B = N/2;   					for(j = 0; j <= B - 1; j++)		{						ps = (TWICEPI/N)*j;		        w.real = cos(ps);			w.imag = -sin(ps);	    	 	/* multiple avec W */            		 xin[j+ B] = multicomplex(xin[j + B], w);			 DFT_2(xin + j ,xin + j + B);		}				}//end of FFT_L2/**************** FFT complex ***************/ void RunFFT(complex *xin, int N){	int m, i;	BitReverse(xin, N);	m = mylog2(N);	if( (m%2) == 0 )	{		/*All the stages are radix 4*/		FFT_R4(xin, N, m/2);	}	else 	{		/*the last stage is radix 2*/		FFT_R4(xin, N, m/2);		FFT_L2(xin, N);	}} void RunIFFT(complex *xin,int N){			/* inverse FFT */      int i;          for(i=0; i < N + 1 ; i++)      { 	xin[i].imag = -xin[i].imag;      }      RunFFT(xin,N);      for(i = 0; i < N + 1 ; i++)      { 	xin[i].real = xin[i].real/N;	xin[i].imag = -xin[i].imag/N;      }}/**************     FFT real   ****************/void RunFFTR(complex *xin, int N){	int i;	double ps;	complex *Realin;	complex Realtmp1;	complex Realtmp2;	complex w;	Realin	= (complex *)malloc((N/2)*sizeof(complex));			/*** X(n)= A(2n) +j*A(2n+1) ***/	for(i = 0 ; i < N/2 ; i++)	{		Realin[i].real = xin[2*i].real;		Realin[i].imag = xin[2*i + 1].real;	}		RunFFT(Realin, N/2);	for(i = 0; i < N/2 ; i++)	{			/*****	factor w *****/		ps = (TWICEPI/N)*i;		w.real = cos(ps);		w.imag = -sin(ps);			/*****  conjugue *****/	       Realtmp1.real = Realin[(N/2) - i].real;	       Realtmp1.imag = -Realin[(N/2) - i].imag;			if(i == 0)	       {	       Realtmp1.real = Realin[0].real;	       Realtmp1.imag = -Realin[0].imag;		       }				/*****	part 2 *****/ 	       Realtmp2.real = Realin[i].imag - Realtmp1.imag;	       Realtmp2.imag = Realtmp1.real - Realin[i].real;	       if(i > 0)	       Realtmp2 = multicomplex(Realtmp2, w);			/****  part 1 ****/	       Realtmp1.real = Realin[i].real + Realtmp1.real;		       Realtmp1.imag = Realin[i].imag + Realtmp1.imag;			       xin[i].real = (Realtmp1.real + Realtmp2.real)/2;	       xin[i].imag = (Realtmp1.imag + Realtmp2.imag)/2;		       xin[N/2 + i].real = (Realtmp1.real - Realtmp2.real)/2;	       xin[N/2 + i].imag = (Realtmp1.imag - Realtmp2.imag)/2;				}}void RunIFFTR(complex *xin, int N){	int i;	double ps;	complex *Realin;	complex Realtmp1;	complex Realtmp2;	complex w;	Realin	= (complex *)malloc((N/2)*sizeof(complex));			/*** X(n)= A(2n) +j*A(2n+1) ***/	for(i = 0 ; i < N/2 ; i++)	{		Realin[i].real = xin[2*i].real;		Realin[i].imag = xin[2*i + 1].real;	}		RunIFFT(Realin, N/2);	for(i = 0; i < N/2 ; i++)	{			/*****	factor w *****/		ps = (TWICEPI/N)*i;		w.real = cos(ps);		w.imag = -sin(ps);			/*****  conjugue *****/	       Realtmp1.real = Realin[(N/2) - i].real;	       Realtmp1.imag = -Realin[(N/2) - i].imag;			if(i == 0)	       {	       Realtmp1.real = Realin[0].real;	       Realtmp1.imag = -Realin[0].imag;		       }				/*****	part 2 *****/ 	       Realtmp2.real = Realin[i].imag - Realtmp1.imag;	       Realtmp2.imag = Realtmp1.real - Realin[i].real;	       if(i > 0)	       Realtmp2 = multicomplex(Realtmp2, w);			/****  part 1 ****/	       Realtmp1.real = Realin[i].real + Realtmp1.real;		       Realtmp1.imag = Realin[i].imag + Realtmp1.imag;			       xin[i].real = (Realtmp1.real + Realtmp2.real)/2;	       xin[i].imag = (Realtmp1.imag + Realtmp2.imag)/2;		       xin[N/2 + i].real = (Realtmp1.real - Realtmp2.real)/2;	       xin[N/2 + i].imag = (Realtmp1.imag - Realtmp2.imag)/2;				}	}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
91精品国产综合久久久久久漫画 | 91黄色激情网站| 福利一区在线观看| 国产成人av电影在线| 成人免费福利片| 色哟哟亚洲精品| 精品少妇一区二区三区在线视频| 日韩欧美激情在线| 国产清纯白嫩初高生在线观看91 | 亚洲六月丁香色婷婷综合久久| 久久亚洲精品国产精品紫薇| 国产亚洲1区2区3区| 国产精品欧美经典| 亚洲综合清纯丝袜自拍| 免费人成网站在线观看欧美高清| 久久国产日韩欧美精品| 成人动漫中文字幕| 日韩久久免费av| 亚洲美女在线一区| 国产盗摄精品一区二区三区在线| 91精品福利在线| 欧美一区二区三区在线观看视频| 欧美国产精品劲爆| 久久国产精品色婷婷| 精品视频一区三区九区| 久久久精品综合| 丝袜美腿一区二区三区| a在线播放不卡| 久久先锋影音av| 久久福利资源站| 日韩一区二区三区免费观看| 亚洲伦理在线精品| 91麻豆精品在线观看| 国产日韩成人精品| 99国产精品视频免费观看| 国产欧美日韩综合精品一区二区 | 精品一区二区三区免费毛片爱| 欧美网站大全在线观看| 国产成人精品免费看| 色噜噜狠狠一区二区三区果冻| 一本大道av伊人久久综合| 欧美mv日韩mv国产网站app| 免费观看在线综合色| 制服视频三区第一页精品| 亚洲伊人伊色伊影伊综合网| 色婷婷综合久久久久中文 | 久久不见久久见免费视频7 | 午夜视频一区二区三区| 欧美精品在线观看一区二区| 午夜欧美大尺度福利影院在线看| 在线观看亚洲精品| 成人免费看片app下载| 99视频有精品| 国产亚洲精品aa午夜观看| 不卡视频一二三四| 亚洲欧美日韩一区二区 | 91精品国产福利在线观看| 婷婷成人综合网| 国产拍欧美日韩视频二区| 丰满放荡岳乱妇91ww| 一二三四社区欧美黄| 日韩免费性生活视频播放| 成人毛片视频在线观看| 亚洲一区二区高清| 欧美激情一区二区三区| 在线免费观看视频一区| 狠狠色丁香婷综合久久| 亚洲一区在线观看视频| 久久久久久久综合狠狠综合| 欧洲精品视频在线观看| 国产成a人亚洲| 韩国女主播成人在线| 午夜欧美2019年伦理| 中文字幕在线观看一区| 26uuu久久天堂性欧美| 欧美va亚洲va香蕉在线| 91丝袜国产在线播放| 国产福利不卡视频| 国产乱一区二区| 毛片av一区二区| 日韩精品一区第一页| 一区二区三区四区视频精品免费| 日韩一区二区三免费高清| 欧美日韩视频第一区| 色94色欧美sute亚洲线路一ni| 高清av一区二区| 成人动漫一区二区| 成人精品国产福利| 麻豆freexxxx性91精品| 日韩精品亚洲一区二区三区免费| 国产精品福利一区二区三区| 国产亚洲欧美在线| 国产精品久线观看视频| 亚洲欧美国产77777| 一区二区三区色| 免费在线成人网| 美脚の诱脚舐め脚责91| 韩国一区二区三区| 风间由美中文字幕在线看视频国产欧美| 国产精品一区专区| 一本一道波多野结衣一区二区| 欧美日韩亚洲综合在线| 精品久久免费看| |精品福利一区二区三区| 日韩精品电影在线| 国产精品一区二区三区乱码| 91麻豆免费视频| 日韩一区二区免费电影| 日韩美女啊v在线免费观看| 亚洲1区2区3区视频| 国产999精品久久久久久| 欧美日韩欧美一区二区| 国产精品三级电影| 午夜精品免费在线观看| ...av二区三区久久精品| 久久色成人在线| 精品电影一区二区| 亚洲一区在线免费观看| 成人免费看片app下载| 欧美zozozo| 精品第一国产综合精品aⅴ| 亚洲欧美自拍偷拍色图| 国产精品一级二级三级| 日韩欧美的一区二区| 日日夜夜精品视频免费| 91福利视频网站| 亚洲精品欧美综合四区| 99久久国产综合色|国产精品| 欧美国产一区二区在线观看| 国产精品99久久久| 久久一区二区三区四区| 激情深爱一区二区| 久久久精品天堂| 国产精品亚洲第一区在线暖暖韩国| 欧美一区二区视频在线观看| 日韩av中文字幕一区二区三区| 91 com成人网| 久久97超碰国产精品超碰| 亚洲精品一区二区三区影院| 国产裸体歌舞团一区二区| 久久欧美一区二区| 99国产麻豆精品| 日韩二区三区在线观看| 欧美精品一区二区蜜臀亚洲| 成人午夜电影小说| 亚洲国产成人高清精品| 日韩精品专区在线| 不卡视频在线观看| 日韩av电影免费观看高清完整版| 欧美一级高清片| 99久久久免费精品国产一区二区| 一区二区三区免费在线观看| 欧美一卡二卡三卡| 不卡电影免费在线播放一区| 天堂蜜桃一区二区三区| 中文字幕国产一区二区| 7777精品久久久大香线蕉 | 欧美日韩国产一区| 国产成人亚洲综合a∨猫咪| 亚洲影院理伦片| 国产调教视频一区| wwww国产精品欧美| 7777女厕盗摄久久久| 欧美视频精品在线| 色综合久久久久久久久久久| 九色综合狠狠综合久久| 日本怡春院一区二区| 亚洲午夜免费视频| 亚洲同性gay激情无套| 久久精品亚洲麻豆av一区二区| 日韩一区二区三区观看| 欧美一级在线免费| 日韩亚洲欧美中文三级| 日韩一区和二区| 日韩一区二区三区在线观看| 91精品午夜视频| 日韩欧美一级特黄在线播放| 91精品国产综合久久香蕉的特点| 欧美日韩色综合| 欧美日韩极品在线观看一区| 欧美久久婷婷综合色| 欧美人与禽zozo性伦| 7777精品久久久大香线蕉 | 国产精品538一区二区在线| 激情综合色综合久久综合| 黑人巨大精品欧美黑白配亚洲| 日av在线不卡| 高清不卡一二三区| 色婷婷av一区二区三区之一色屋| 日本高清视频一区二区| 欧美少妇xxx| 欧美韩日一区二区三区四区| 亚洲欧美成人一区二区三区| 午夜久久福利影院| 国产乱人伦偷精品视频免下载| 99久久国产综合精品女不卡| 欧美精品 国产精品| 久久久久久电影| 香蕉av福利精品导航 | 精品人伦一区二区色婷婷|