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

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

?? dvgenw.c

?? ofdm的完整系統模型,包含信道參數,多徑模型,doppler頻移等都可以自由修改!是您做仿真的有力幫助.c語言運行速度快!
?? C
字號:
/*
 *	*************************************************************************
 *	*									*
 *	*	This confidential and proprietary software may be used only	*
 *	*  as authorized by a licensing agreement from the Alta Group of	*
 *	*  Cadence Design Systems, Inc.  In the event of publication, the	*
 *	*  following notice is applicable:					*
 *	*									*
 *	*    (c) COPYRIGHT 1995 ALTA GROUP OF CADENCE DESIGN SYSTEMS, INC.	*
 *	*			ALL RIGHTS RESERVED				*
 *	*									*
 *	*	The entire notice above must be reproduced on all authorized	*
 *	*  copies.								*
 *	*									*
 *	*************************************************************************
 *
 */
/*
 * FILE:  parts/spb/cgs/generic/ovector/dvgenw.c
 * DATE:  Wed Feb 19, 1992
 * RELATED FILES:  
 * AUTHOR:  John Lundell
 * DESCRIPTION:  'c' DvGenWindow function
 * NOTES/WARNINGS:  
 * REVISION HISTORY:
 *	Release		Who	Date	Comments
 */
#include "cgs.h"

/*
 *  Functions
 */
static double i0();

/*
 * FUNCTION:  DvGenWindow
 * DESCRIPTION:
 *	DvGenWindow(i_type, d_param, sp_dst)
 *
 *  Generate a window function of type 'i_type' using
 *  parameter 'd_parm', placing the result in the
 *  ovector 'sp_dst'.  Type should be one of the following:
 *	OvBARTLETT	OvBARTLETT_FFT
 *	OvBLACKMAN	OvBLACKMAN_FFT
 *	OvHAMMING 	OvHAMMING_FFT
 *	OvHANNING 	OvHANNING_FFT
 *	OvKAISER  	OvKAISER_FFT
 *	OvCHEBYSHEV	OvCHEBYSHEV_FFT
 *
 * RETURN VALUE: sp_dst
 * NOTES/WARNINGS: 
 * REVISION HISTORY:
 */
Ovector DvGenWindow(i_type, d_param, sp_dst)
int		i_type;
double		d_param;
Ovector		sp_dst;
{
	register int		i,j,st;
	register Data		frw, bac;
	double			s1, s2, s3, wv;
	int			length = OvGetLength(sp_dst);
	int			half;
/*
 *  Get pointer values
 */
	frw = OvGetVirtStart(sp_dst);
	st = sp_dst->stepsize;
	bac = frw + (length - 1) * st;
	if (i_type & OvFFT_WINDOW) length++;

	half = (length + 1) >> 1;
/*
 *  Loop over vector for the given table type.
 */
	switch(i_type) {
	      case OvBARTLETT:
		*(double *) bac = 0.0;
		bac -= st;
	      case OvBARTLETT_FFT:
		*(double *) frw = 0.0;
		frw += st;
		
		s1 = 2.0 / (length - 1.0);
       		for (i = 1; i < half; i++){
			*(double *) frw = *(double *) bac = s1 * i;
			frw += st;
			bac -= st;
		}
		break;

	      case OvBLACKMAN:
		*(double *) bac = 0.0;
		bac -= st;
	      case OvBLACKMAN_FFT:
		*(double *) frw = 0.0;
		frw += st;
		
		s1 = PI2 / (length - 1.0);
		s2 = 2.0 * PI2 / (length - 1.0);
       		for (i = 1; i < half; i++){
			*(double *) frw = *(double *) bac = 0.42 - 0.5*cos(s1 * i) + 0.08*cos(s2 * i);
			frw += st;
			bac -= st;
		}
		break;
		
	      case OvHAMMING:
		*(double *) bac = 0.08;
		bac -= st;
	      case OvHAMMING_FFT:
		*(double *) frw = 0.08;
		frw += st;
		
		s1 = PI2 / (length - 1.0);
		for (i = 1; i < half; i++) {
			*(double *) frw = *(double *) bac = 0.54 - 0.46*cos(s1 * i);
			frw += st;
			bac -= st;
		}
		break;
		
	      case OvHANNING:
		*(double *) bac = 0.0;
		bac -= st;
	      case OvHANNING_FFT:
		*(double *) frw = 0.0;
		frw += st;
		
		s1 = PI2 / (length - 1.0);
       		for(i=1; i < half; i++){
			*(double *) frw = *(double *) bac = 0.5 - 0.5*cos(s1 * i);
			frw += st;
			bac -= st;
	        }
		break;
		
	      case OvKAISER:
		s1 = 1.0 / i0(d_param);
		*(double *) bac = s1;
		bac -= st;
	      case OvKAISER_FFT:
		s1 = 1.0 / i0(d_param);
		*(double *) frw = s1;
		frw += st;

		s2 = 2.0 / (length - 1.0);
		for (i = 1; i < half; i++) {
			s3 = s2 * i - 1;
			*(double *) frw = *(double *) bac = s1 * i0(d_param * sqrt(1 - s3*s3));
			frw += st;
			bac -= st;
		}
		break;

	      case OvCHEBYSHEV:
		*(double *) bac = 1.0;
		bac -= st;
	      case OvCHEBYSHEV_FFT:
		*(double *) frw = 1.0;
		frw += st;
/*
 *  Calculate the factor beta
 */
		d_param = pow(10.0, -d_param / 20.0);
		d_param = log(d_param + sqrt(d_param * d_param - 1));
		d_param = exp(2.0 * d_param / (length - 1.0));
		d_param = (d_param - 1.0) * (d_param - 1.0) / ((d_param + 1.0) * (d_param + 1.0));
/*
 *  Factor which indicates when we are getting close enough
 */
		s3 = d_param * 1.0e-10;
/*
 *  Generate the window
 */
		for (i = 1; i < half; i++) {
			s1 = d_param;
			wv = 0.0;
			s2 = length - i - 1.0;
			for (j = 1; j <= i; j++) {
				wv += s1;
				s1 *= d_param * (i-j) * (s2 - j) / (j * (j + 1.0));
				if (s1 < s3) break; 
			}
			*(double *) frw  = *(double *) bac = (length - 1.0) * wv;
			frw += st;
			bac -= st;
		}
/*
 *  Scale so that the middle point is one
 */
		frw -= st;
		s1 = 1.0 / *(double *) frw;
		Dvscale(s1, sp_dst, sp_dst);
		break;
	      default:
		printf("Invalid table type to DvGenWindow.\n");

	}
	
	return sp_dst;
}


/*---------------------------------------------------------------
 * FUNCTION:  i0
 * DESCRIPTION:
 *	val = i0(d_x)
 *
 *  Simple approximation of a I0 bessel function. 
 * RETURN VALUE:  bessel function value
 * NOTES/WARNINGS: 
 * REVISION HISTORY:
 *	Release		Who	Date	Comments
 */
static double i0(d_x)
double	d_x;
{
	register double	sum = 0.0;
	register double val = 1.0;
	register double	stp;
	register int	i;

	d_x *= 0.5;
	stp = (1.0 + d_x) * 1.0e-10;
	
	for (i = 1; i < 30; i++) {
		sum += val * val;
		val *= d_x / ((double ) i);
		if (val < stp) break;
	}

	return sum;
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
午夜天堂影视香蕉久久| 欧美激情一区二区三区在线| 欧美一区二区三区免费| 国产99精品在线观看| 蜜桃久久av一区| 日韩中文字幕91| 中文字幕一区二区在线观看| 91国偷自产一区二区使用方法| 久久男人中文字幕资源站| 欧美一a一片一级一片| 91在线云播放| 成人99免费视频| 成人听书哪个软件好| 国内精品伊人久久久久av一坑| 久久欧美中文字幕| 久久综合一区二区| 蜜桃久久久久久久| 免费在线一区观看| 免费视频一区二区| 美女久久久精品| 国产精品免费久久| 国产欧美一区二区三区网站| 26uuu亚洲婷婷狠狠天堂| 欧美zozozo| 精品久久久久久久久久久久久久久久久| 美国十次综合导航| 经典三级视频一区| 久久九九99视频| 欧美激情一区不卡| 国产精品久久久久一区二区三区共| 99久久精品国产一区二区三区 | 日韩精品一区二区三区在线观看| 国产美女在线精品| 成人免费视频一区| 一本久久综合亚洲鲁鲁五月天| 天堂在线一区二区| 全部av―极品视觉盛宴亚洲| 久久99日本精品| 成人激情av网| 另类调教123区| 精品国产乱码久久久久久闺蜜| 色综合色综合色综合色综合色综合 | 亚洲欧洲在线观看av| 欧美美女一区二区在线观看| 91精品国产综合久久久久久久久久| 成人小视频免费在线观看| 亚洲黄一区二区三区| 日本aⅴ免费视频一区二区三区| 国产精品灌醉下药二区| 欧美www视频| 欧美乱妇一区二区三区不卡视频| 99热在这里有精品免费| 91视频在线观看| 日韩一区二区麻豆国产| 91视频www| 日韩欧美国产系列| 亚洲欧洲日韩在线| 日韩精品免费专区| 91色|porny| 久久久亚洲国产美女国产盗摄| 日韩视频永久免费| 日本伦理一区二区| 精品成人免费观看| 亚洲第一成人在线| 成人综合在线观看| 欧美成人女星排行榜| 精品卡一卡二卡三卡四在线| 成人免费在线观看入口| 国产综合色在线视频区| 欧美色精品在线视频| 国产精品亲子乱子伦xxxx裸| 五月婷婷激情综合| 亚洲va欧美va人人爽午夜| 国产大片一区二区| 成人黄色软件下载| 7777精品伊人久久久大香线蕉完整版 | 国产人成亚洲第一网站在线播放 | 日韩黄色小视频| 91麻豆自制传媒国产之光| av一区二区久久| 欧美精品一区二区三区蜜桃| 亚洲成人午夜电影| 色吊一区二区三区| 久久久久久免费毛片精品| 日日夜夜一区二区| 欧美少妇xxx| 亚洲国产综合色| 成人免费视频app| 久久久久久久久久久久久夜| 欧美高清在线一区二区| 国产麻豆视频一区| 精品久久国产老人久久综合| 国产欧美日产一区| 91在线观看下载| 亚洲成人黄色影院| 久久众筹精品私拍模特| 大尺度一区二区| 亚洲一区日韩精品中文字幕| 在线电影国产精品| 国产精品一卡二| 亚洲一区二区三区在线看| 在线播放亚洲一区| 欧美国产欧美综合| 91日韩在线专区| 蜜桃视频第一区免费观看| 欧美激情在线看| 久久国产免费看| 国产欧美一区二区三区在线老狼| 日本欧洲一区二区| 国产精品乱人伦中文| 美女久久久精品| 亚洲丝袜另类动漫二区| 欧美电影精品一区二区| 9色porny自拍视频一区二区| 日本美女视频一区二区| 欧美日韩精品一区二区天天拍小说 | 色综合色综合色综合色综合色综合 | 久久久五月婷婷| 视频一区中文字幕| 国产精品视频观看| 欧美一级片在线观看| 91丨九色porny丨蝌蚪| 国产精品免费视频网站| 欧美成人精品高清在线播放| 色婷婷亚洲一区二区三区| 久久国产精品露脸对白| 亚洲一区二区三区四区的 | 日韩精品一区二区三区视频 | 日韩一区二区在线看| 青青草97国产精品免费观看 | 欧美日韩国产首页| 午夜精品成人在线视频| 国产人成一区二区三区影院| 91精品国产aⅴ一区二区| 在线观看国产日韩| 成人av网址在线| 国产激情视频一区二区在线观看 | 欧美一区二区三区视频免费播放| 麻豆精品一二三| 2024国产精品视频| 日韩欧美一区二区不卡| 国产一区二区免费视频| 另类中文字幕网| 国产日韩欧美一区二区三区乱码| 丰满岳乱妇一区二区三区| 麻豆国产精品官网| 中文字幕制服丝袜一区二区三区| 色综合久久综合中文综合网| youjizz久久| 99久久精品国产一区二区三区| 亚洲精品欧美综合四区| 亚洲欧美另类久久久精品| 亚洲欧洲日韩在线| 7777精品伊人久久久大香线蕉的| 久久成人av少妇免费| 青娱乐精品视频| 综合久久一区二区三区| 亚洲欧美一区二区在线观看| 亚洲欧洲日产国码二区| 欧美电影影音先锋| 国产精品久久久久毛片软件| 久久九九久久九九| 中文字幕第一区| 一区二区在线免费观看| 亚洲精品成人a在线观看| 国产一区福利在线| 久久99精品久久只有精品| 伊人色综合久久天天| 久久综合久久综合亚洲| 不卡av免费在线观看| 久久中文娱乐网| 亚洲成人动漫av| 久久午夜羞羞影院免费观看| 亚洲成人动漫在线观看| 日韩中文字幕一区二区三区| 久久中文娱乐网| 麻豆91在线播放| 欧美日韩极品在线观看一区| 国产精品久久夜| 国产精品99久久久久久久女警| 麻豆精品新av中文字幕| 精品视频1区2区3区| 亚洲欧美日韩系列| 国产成人精品免费视频网站| 欧美成人猛片aaaaaaa| 蜜桃视频一区二区三区在线观看| 国产一区 二区| 日韩欧美国产午夜精品| 亚洲高清免费视频| 91福利资源站| 欧美电影免费提供在线观看| 视频一区视频二区中文| 欧美日韩mp4| 亚洲444eee在线观看| 久久精品国产免费看久久精品| 国产成人精品亚洲777人妖 | 久久成人久久爱| 99久久婷婷国产综合精品电影 | 在线视频中文字幕一区二区| 国产精品拍天天在线|