华科电信随机过程实验报告

华科电信随机过程实验报告

ID:40818237

大小:86.15 KB

页数:10页

时间:2019-08-08

华科电信随机过程实验报告_第1页
华科电信随机过程实验报告_第2页
华科电信随机过程实验报告_第3页
华科电信随机过程实验报告_第4页
华科电信随机过程实验报告_第5页
资源描述:

《华科电信随机过程实验报告》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、随机过程实验报告院(系):电子信息与通信学院专业班级:姓名:学号:指导教师:一.实验任务(1)利用线性同余法产生平均分布的随机数。(2)利用平均分布的随机数,根据中心极限定理产生正态分布的随机数。(3)利用平均分布的随机数,根据反函数产生指数分布的随机数。(4)利用平均分布的随机数,产生泊松分布的随机数。(5)计算任意分布的随机过程的均值。(6)计算泊松过程的自相关序列。二.实验环境(1)平台:WindowsXP/7.0(2)编程环境:VC6.0(3)编程语言:C++三.实验代码//MyRand.cpp:implementationoftheCMyRandcla

2、ss.////////////////////////////////////////////////////////////////////////#include"stdafx.h"#include"random.h"#include"MyRand.h"#include"math.h"#ifdef_DEBUG#undefTHIS_FILEstaticcharTHIS_FILE[]=__FILE__;#definenewDEBUG_NEW#endif////////////////////////////////////////////////////////

3、////////////////Construction/Destruction//////////////////////////////////////////////////////////////////////CMyRand::CMyRand(){}CMyRand::~CMyRand(){}voidCMyRand::MyRandInit(void){N=0x7FFFFFFF;//2^31-1K=16807;//7^5seed=2;}/*函数功能,采用线性同余法,根据输入的种子数产生一个伪随机数,如果种子不变,则将可以重复调用产生一个伪随机序列利用CMy

4、Rand类中定义的全局变量:S,K,N,Y。其中K和N为算法参数,S用于保存种子数,Y为产生的随机数*/unsignedintCMyRand::MyRand(unsignedintseed){//添加伪随机数产生代码if(S==seed){Y=(Y*K)%N;}else{S=seed;Y=(seed*K)%N;}returnY;}/*函数功能,产生一个在min~max范围内精度为4位小数的平均分布的随机数*/doubleCMyRand::AverageRandom(doublemin,doublemax){doubledResult;dResult=0;dRes

5、ult=(double)MyRand(seed)/N;//产生0-1之间的均匀分布dResult=dResult*(max-min)+min;//将0-1之间的均匀分布扩展到min-max之间的均匀分布returndResult;}/*函数功能,在min到max范围内产生正态分布的随机数miu,最大概率密度处的随机变量,即产生的随机数中,概率最大的那个sigma*/doubleCMyRand::NormalRandom(doublemiu,doublesigma,doublemin,doublemax){doubledResult;dResult=0;//添加正

6、态分布随机变量产生代码for(inti=0;i<12;i++)dResult+=AverageRandom(min,max);//产生12个伪随机数,将它们加起来,dResult=(dResult-6)/(max-min);//再减去6,就能近似得到标准正态变量的样本值dResult=dResult*sigma+miu;returndResult;}/*函数功能,产生指数分布的随机数*/doubleCMyRand::ExpRandom(doublelambda,doublemin,doublemax){doubledResult=0.0;//添加指数分布随机变量

7、产生代码dResult=-1.0*log(AverageRandom(min,max))/lambda;returndResult;}/*函数功能,产生泊松分布的随机数*/unsignedintCMyRand::PoisonRandom(doublelambda,doublemin,doublemax){unsignedintdResult;//添加泊松分布随机变量产生代码doubleu=AverageRandom(min,max);inti=0;doublep=exp(-1*lambda);doubleF=p;while(u>=F){p=lambda*p/(i

8、+1);F+=p;i++

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。