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

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

?? cchannelmodel.cpp

?? 此程序為wcdma系統當中ftp/video業務模型的c++程序仿真 通過此程序 能得到此兩種業務在多種條件下的吞吐量和無碼率的性能
?? CPP
字號:
///////////////////////////////////////////////////////////////////
//                             WCDMA TEAM                        //
//                      BUPT Radio Research Center               //
///////////////////////////////////////////////////////////////////
//
//                        CChannelModel.cpp
//
//////////////////////////////////////////////////////////////////////
//                                                                  //
//            信道模型類CChannelModel的成員函數的聲明               //
//                                                                  //
// Written by:     李晶                                             //
// Date:      200404                                                //
//                                                                  //
//////////////////////////////////////////////////////////////////////
#include "iostream.h"
#include <math.h>
#include "Newran.h"
#include "systemsim.h"
#include "CChannelModel.h"
#include "sys_random.h"
//////////////////////////////////////////////////////////////////////////
//		         查表所用到的快衰數組                                   //
//////////////////////////////////////////////////////////////////////////
extern float fFastFadingValue_1[SubslotNumber*FastFadingValueLength];
extern float fFastFadingValue_2[SubslotNumber*FastFadingValueLength];
extern float fFastFadingValue_3[SubslotNumber*FastFadingValueLength];
extern float fFastFadingValue_4[SubslotNumber*FastFadingValueLength];
extern float fFastFadingValue_5[SubslotNumber*FastFadingValueLength];
//////////////////////////////////////////////////////////////////////////
//		              構造函數                                          //
//////////////////////////////////////////////////////////////////////////
CChannelModel::CChannelModel()
{
}


//////////////////////////////////////////////////////////////////////////
//		              析構函數					                        //
//////////////////////////////////////////////////////////////////////////
CChannelModel::~CChannelModel()
{
}


/////////////////////////////////////////////////////////////////////////
//TITLE:      Next_Shadow_Fading(計算下一時刻衰落值(遠場or近場)
//
//PARAMETERS:上一時刻衰落值(遠場or近場)
/////////////////////////////////////////////////////////////////////////
float CChannelModel::Next_Shadow_Fading(float fLastShadowFading)
{
  Normal yy;        //標準正態分布
  float fa=(float)yy.Next();//取一個與慢衰同分布的隨機變量
  float fy,fFading;
  fy=(float)(log10(fLastShadowFading)*m_dCorrelationOfSlowFading*10.0/m_fStdOfSlowFading
	  +fa*sqrt(1-m_dCorrelationOfSlowFading*m_dCorrelationOfSlowFading));
  fFading=(float)pow(10.0,fy/10.0*m_fStdOfSlowFading);
  return fFading;
}


/////////////////////////////////////////////////////////////////////////
//TITLE:      InitialValues(計算衰落初始值(遠場or近場))
//
//PARAMETERS:NULL
/////////////////////////////////////////////////////////////////////////
float CChannelModel::InitialValues()
{
  Normal y;
  float fFading;
  fFading=(float)y.Next();
  fFading=(float)pow(10.0,fFading/10.0*m_fStdOfSlowFading);
  return fFading;
}



/////////////////////////////////////////////////////////////////////////
//TITLE:      CorrelationOfSlowFading(計算慢衰兩點間的相關系數)
//
//PARAMETERS:NULL
/////////////////////////////////////////////////////////////////////////
void CChannelModel::CorrelationOfSlowFading()
{
	const double ddcorr=100;//不相關距離取為100米
	m_dCorrelationOfSlowFading=exp((-m_dMsSpeed)*0.5/ddcorr);//計算慢衰時間相關系數
	                                                         //0.5秒為慢衰更新的時間間隔
}



/////////////////////////////////////////////////////////////////////////
//TITLE:      Next_Slow_fading(計算下一時刻慢衰值)
//
//PARAMETERS:此時刻的慢衰遠場值
/////////////////////////////////////////////////////////////////////////
float CChannelModel::Next_Slow_fading(float fFarFading)
{
	float fNextSlowFading_DB=(float)(log10(m_fNearFieldOfSlowFading)*10.0
		/(m_fStdOfSlowFading*sqrt(2.0))+log10(fFarFading)*10.0/(m_fStdOfSlowFading*sqrt(2.0)));
	float fNextSlowFading=(float)pow(10.,fNextSlowFading_DB/10.0*m_fStdOfSlowFading);
	return fNextSlowFading;
}



/////////////////////////////////////////////////////////////////////////
//TITLE:      Initialization(信道模型初始化函數)
//
//PARAMETERS:慢衰標準差、信道類型、監測集扇區數組首指針
/////////////////////////////////////////////////////////////////////////
void CChannelModel::Initialization(float fStdOfSlowFading,int iChannelType,MONITORSECTOR_TYPE *pstMONITORSECTOR_TYPE)
{
	float fFarFading;
	
	m_fStdOfSlowFading=fStdOfSlowFading;//慢衰標準差
	m_iChannelType=iChannelType;//信道類型

	for(int i=0;i<19;i++)      //寫入鄰小區ID號
	{
	    m_astFadingValues[i].stCellID.m=pstMONITORSECTOR_TYPE[3*i].stSectorID.stCellID.m;
        m_astFadingValues[i].stCellID.n=pstMONITORSECTOR_TYPE[3*i].stSectorID.stCellID.n;
	}
	
	//write the speed of the mobile(the unit is m/s)
	switch(m_iChannelType)
	{
	    case 1:    m_dMsSpeed=5.0/6.0;
			       break;
		case 2:    m_dMsSpeed=25.0/9.0;
			       break;
		case 3:    m_dMsSpeed=25.0/3.0;
			       break;
		case 4:    m_dMsSpeed=100.0/3.0;
			       break;
		default:   m_dMsSpeed=0;
			       break;
	
	}
	
	CorrelationOfSlowFading();
	//計算慢衰時間相關系數
    m_fNearFieldOfSlowFading=InitialValues();
    //近場初始化

	for (i=0;i<19;i++)
	{
	    //慢衰初始化
		fFarFading=InitialValues();//遠場初始化
        m_astFadingValues[i].fSlowFarFading=fFarFading;
        m_astFadingValues[i].fSlowFading=Next_Slow_fading(fFarFading);

//modified by Li Jing,20040818
		while(m_astFadingValues[i].fSlowFading<1||m_astFadingValues[i].fSlowFading>25)
		{
			fFarFading=InitialValues();   //重新進行遠場初始化
            m_astFadingValues[i].fSlowFarFading=fFarFading;
            m_astFadingValues[i].fSlowFading=Next_Slow_fading(fFarFading);
		}
	    
		//快衰初始化
		for(int j=0;j<3;j++)
		{
            m_iaStartime[i][j]=(int)((i+j*19)*2500+1000*xUniform());
            //扇區起始時間初始化,用于快衰數組起始位置的選擇
		    for (int k=0;k<4;k++)
			{
                switch(m_iChannelType)
				{
	                case 1:    m_astFadingValues[i].fFastFadingSet[j][k]=fFastFadingValue_1[(k+m_iaStartime[i][j])];
			                   break;
		            case 2:    m_astFadingValues[i].fFastFadingSet[j][k]=fFastFadingValue_2[(k+m_iaStartime[i][j])];
			                   break;
		            case 3:    m_astFadingValues[i].fFastFadingSet[j][k]=fFastFadingValue_3[(k+m_iaStartime[i][j])];
			                   break;
		            case 4:    m_astFadingValues[i].fFastFadingSet[j][k]=fFastFadingValue_4[(k+m_iaStartime[i][j])];
			                   break;
		            default:   m_astFadingValues[i].fFastFadingSet[j][k]=fFastFadingValue_5[(k+m_iaStartime[i][j])];
			                   break;
				
				}
			}
			m_iaStartime[i][j] +=4;
		}
	}
}



/////////////////////////////////////////////////////////////////////////
//TITLE:      GetFadingValues(獲得衰落值指針)
//
//PARAMETERS:時隙數
/////////////////////////////////////////////////////////////////////////
FADINGVALUE_TYPE *CChannelModel::GetFadingValues(int iSlotCounter)
{
   //int iSlotNumber;
   //iSlotNumber=iSlotCounter%90000;//如果iSlotCounter>=90000,則表已到尾,要回到表頭
  
   if(iSlotCounter==1)//初始化
   {
      return m_astFadingValues;
   }
   else if(iSlotCounter!=1&&iSlotCounter%750==0)//需要更新慢衰值
   {
	   float fFarFading_exchange=0.0;
	   float fNearFading_exchange=0.0;
	   fNearFading_exchange=m_fNearFieldOfSlowFading;//導出上一時刻近場值
       m_fNearFieldOfSlowFading=Next_Shadow_Fading(fNearFading_exchange);//計算、寫入此時刻近場值
	   for(int i=0;i<19;i++)
	   {
		   fFarFading_exchange=m_astFadingValues[i].fSlowFarFading;//導出上一時刻遠場值
		   m_astFadingValues[i].fSlowFarFading=Next_Shadow_Fading(fFarFading_exchange);
		   //計算、寫入下一時刻遠場值
           m_astFadingValues[i].fSlowFading=Next_Slow_fading(m_astFadingValues[i].fSlowFarFading);
		   //計算、寫入下一時刻慢衰值

//modified by Li Jing,20040818
		   while(m_astFadingValues[i].fSlowFading<1||m_astFadingValues[i].fSlowFading>25)
		   {
			   m_astFadingValues[i].fSlowFarFading=Next_Shadow_Fading(fFarFading_exchange);
               m_astFadingValues[i].fSlowFading=Next_Slow_fading(m_astFadingValues[i].fSlowFarFading);
		   }
		   
		   //快衰值更新
		   for (int j=0;j<3;j++)
		   {
		       for (int k=0;k<4;k++)
			   {
				   if((k+m_iaStartime[i][j])==359999)//slj 20050421
                       
					   m_iaStartime[i][j] = 0; 
				   
				   switch(m_iChannelType)
				   {
	                   case 1:    m_astFadingValues[i].fFastFadingSet[j][k]=
                                      fFastFadingValue_1[(k+m_iaStartime[i][j])];
			                      break;
		               case 2:    m_astFadingValues[i].fFastFadingSet[j][k]=
	                                  fFastFadingValue_2[(k+m_iaStartime[i][j])];
			                      break;
		               case 3:    m_astFadingValues[i].fFastFadingSet[j][k]=
	                                  fFastFadingValue_3[(k+m_iaStartime[i][j])];
			                      break;
		               case 4:    m_astFadingValues[i].fFastFadingSet[j][k]=
	                                  fFastFadingValue_4[(k+m_iaStartime[i][j])];
			                      break;
		               default:   m_astFadingValues[i].fFastFadingSet[j][k]=
	                                  fFastFadingValue_5[(k+m_iaStartime[i][j])];
			                      break;
				   } 
				   
			   }
			   m_iaStartime[i][j] +=4;
		   }
	   }
	   return m_astFadingValues;
   }
   else         
   //不需要更新慢衰值
   {
       for(int i=0;i<19;i++)
	   {
		   for (int j=0;j<3;j++)//更新快衰值
		   {
		       for (int k=0;k<4;k++)
			   {
				   if((k+m_iaStartime[i][j])==359999)  //slj 20050421
					  m_iaStartime[i][j] = 0; 
				   
				   switch(m_iChannelType)
				   {
	                   case 1:    m_astFadingValues[i].fFastFadingSet[j][k]=
                                      fFastFadingValue_1[(k+m_iaStartime[i][j])];
			                      break;
		               case 2:    m_astFadingValues[i].fFastFadingSet[j][k]=
	                                  fFastFadingValue_2[(k+m_iaStartime[i][j])];
			                      break;
		               case 3:    m_astFadingValues[i].fFastFadingSet[j][k]=
	                                  fFastFadingValue_3[(k+m_iaStartime[i][j])];
			                      break;
		               case 4:    m_astFadingValues[i].fFastFadingSet[j][k]=
	                                  fFastFadingValue_4[(k+m_iaStartime[i][j])];
			                      break;
		               default:   m_astFadingValues[i].fFastFadingSet[j][k]=
	                                  fFastFadingValue_5[(k+m_iaStartime[i][j])];
			                      break;
	
				   }
				   
			   }
			   m_iaStartime[i][j]+=4;
		   }
	   }
	   return m_astFadingValues;
   }
}
//end of the file CChannelModel.CPP

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
蜜臀av亚洲一区中文字幕| 亚洲精品在线免费观看视频| 成人免费视频app| 狠狠色狠狠色综合日日91app| 一区二区三区成人| 亚洲一区二区3| 欧美肥妇毛茸茸| 欧美人与z0zoxxxx视频| 欧美久久久久久久久久| 欧美高清激情brazzers| 日韩欧美亚洲另类制服综合在线| 色久综合一二码| 欧美日韩国产综合一区二区三区| 色8久久人人97超碰香蕉987| 欧美久久久久久蜜桃| 日韩一区二区三区免费看| 欧美成人乱码一区二区三区| 久久只精品国产| 国产婷婷色一区二区三区| 成人免费一区二区三区视频| 亚洲柠檬福利资源导航| 亚洲福利视频一区| 久久99精品国产91久久来源| 激情久久五月天| 国产精品资源网| 色猫猫国产区一区二在线视频| 欧美伊人久久久久久午夜久久久久| 日韩欧美一二三| 中文字幕一区二区三| 亚洲成人免费在线| 午夜av电影一区| 国产.欧美.日韩| 99r精品视频| 欧美日韩国产a| 中文字幕不卡三区| 亚洲国产一区视频| 国产精品18久久久久久久网站| 91亚洲男人天堂| 欧美精品在欧美一区二区少妇| 欧美精品一区二区三区四区| 亚洲一二三四在线观看| 国产盗摄精品一区二区三区在线 | 午夜成人免费视频| 激情图片小说一区| 欧美日韩在线三级| 国产午夜一区二区三区| 一区二区三区.www| 国产高清精品网站| 欧美日韩你懂得| 中文字幕日韩一区| 激情六月婷婷久久| 91精品国产综合久久久蜜臀图片| 一区二区在线观看视频在线观看| 日韩影视精彩在线| 在线视频你懂得一区二区三区| 国产欧美日韩久久| 久草精品在线观看| 制服丝袜日韩国产| 亚洲国产乱码最新视频| 972aa.com艺术欧美| 中文字幕+乱码+中文字幕一区| 五月天丁香久久| 97久久超碰国产精品电影| 国产精品丝袜一区| 国产精品456露脸| 久久久精品中文字幕麻豆发布| 亚洲高清在线精品| 欧美日韩亚洲综合一区二区三区| 国产精品美女视频| 国内精品伊人久久久久影院对白| 欧美性受xxxx黑人xyx| 亚洲激情第一区| 91久久精品一区二区三区| 亚洲免费成人av| 91美女片黄在线观看| 国产精品久久久久一区二区三区| 激情深爱一区二区| 亚洲国产精品黑人久久久| 国产一区美女在线| 2023国产精品自拍| 精品一区二区在线视频| 精品第一国产综合精品aⅴ| 国内久久精品视频| 欧美激情艳妇裸体舞| av影院午夜一区| 亚洲三级在线免费| 成人蜜臀av电影| 一区二区三区四区视频精品免费| 在线亚洲人成电影网站色www| caoporm超碰国产精品| 亚洲天堂成人网| 欧美日韩一级大片网址| 另类专区欧美蜜桃臀第一页| 日韩精品专区在线影院重磅| 国内精品国产成人国产三级粉色| 国产亚洲午夜高清国产拍精品| 粉嫩aⅴ一区二区三区四区五区| 国产精品电影一区二区| 国产在线精品一区二区夜色| 国产欧美日韩精品a在线观看| 免费精品视频最新在线| 日韩免费视频一区二区| 国产精品小仙女| 亚洲日本va午夜在线电影| 精品视频在线免费观看| 激情六月婷婷综合| 国产精品美日韩| 日韩视频永久免费| 亚洲四区在线观看| 欧美tk丨vk视频| 99久久综合狠狠综合久久| 精品国产乱子伦一区| 久久婷婷成人综合色| 亚洲黄色片在线观看| 久久综合九色综合欧美亚洲| 国产成人丝袜美腿| 亚洲一区在线电影| 国产欧美中文在线| 欧美精品三级日韩久久| 国内外成人在线| 日本中文字幕一区| 久久精品人人做人人综合| 成+人+亚洲+综合天堂| 日韩va亚洲va欧美va久久| 一区二区中文字幕在线| 精品av久久707| 8x8x8国产精品| 菠萝蜜视频在线观看一区| 久久99国产精品久久| 亚洲 欧美综合在线网络| 国产精品久久99| 久久久午夜精品理论片中文字幕| 91美女片黄在线观看| 国产一区二区三区高清播放| 香蕉久久一区二区不卡无毒影院| 国产精品国产三级国产三级人妇| 日韩精品一区国产麻豆| 欧美人与禽zozo性伦| 色综合一区二区三区| 不卡的电视剧免费网站有什么| 久久激情五月激情| 免费久久精品视频| 亚洲成av人片在线| 亚洲第一狼人社区| 亚洲在线视频网站| 亚洲大尺度视频在线观看| 一区二区三区.www| 亚洲国产毛片aaaaa无费看| 亚洲图片一区二区| 狠狠色伊人亚洲综合成人| 久久er精品视频| 国产在线麻豆精品观看| 激情av综合网| 成人综合在线网站| 国产91色综合久久免费分享| 国产一区二区在线观看免费| 免费视频最近日韩| 麻豆国产精品官网| 精品一区二区综合| 国产999精品久久| 成人一级黄色片| 成人av在线播放网站| 播五月开心婷婷综合| 色综合色狠狠综合色| 欧美性生活大片视频| 欧美一区二区私人影院日本| 精品国产精品网麻豆系列 | 国产午夜精品久久久久久免费视| 日韩欧美国产精品| 中文av一区特黄| 一区二区三区国产精华| 日本美女视频一区二区| 国产伦理精品不卡| 色婷婷精品久久二区二区蜜臀av | 欧美日韩一区二区三区不卡| 国产在线精品一区二区| 欧美国产在线观看| 国产乱码精品一区二区三区五月婷| 美女一区二区视频| 欧美午夜精品理论片a级按摩| 日韩精品在线一区二区| 一区2区3区在线看| 韩国女主播一区| 欧美一级理论性理论a| 亚洲精品美国一| 国产91丝袜在线播放| 日韩午夜在线播放| 午夜精品一区二区三区三上悠亚| 91丨九色丨蝌蚪富婆spa| 欧美激情一区二区三区四区| 免费在线观看视频一区| 欧美美女网站色| 自拍av一区二区三区| 成人sese在线| 中文字幕欧美激情一区| 国产一区二区精品久久91| 久久午夜色播影院免费高清| 亚洲第一激情av| 大胆亚洲人体视频| 国产人久久人人人人爽|