- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
利用伪随机序列理论产生均匀分布的随机序列
进而产生高斯白噪声
摘 要:高斯白噪声生成分两步实现。介绍这两步中的主流算法,并对其性能进行了分析;讨论了该算法组合的具体实现,包括加入对高斯白噪声均值和方差的控制。关键词: 高斯白噪声 目前,为获得参数可调的高斯白噪声,一般采用数字方法产生。数字方法产生分为两步:先产生均匀分布的白噪声,然后通过均匀分布的白噪声获得高斯白噪声。在这两步中均有多种方法可以选择。1 均匀分布白噪声生成算法的选择目前,有三种常用的均匀分布白噪声生成算法:线性同余算Shift-Register方法和Lagged-Fibonacci算法。对三种算法的性能进行测试,包括随机数在分布上的均匀性、随机数在随机序列中分布的均匀性和随机序列子序列的依赖关系等内容。就性能而言,lagged-Fibonacci算法采用乘最好,lagged-Fibonacci算法采用加或减次之从实现角度,Shift-Register方法、lagged-Fibonacci算法采用异或和lagged-Fibonacci算法采用加或减只需要移位、异或和加减法等操作,适合FPGA实现。而线性同余算法和lagged-Fibonacci算法采用乘需要乘法操作,适合。根据以上判断,结合实际情况,采用算法2. 均匀分布白噪声产生高斯白噪声算法的选择目前,比较常用的有地址方法和公式方法。 ,可以两种方法产生高斯白噪声的性能 从实现角度,前者具体实现时,产生高斯白噪声速度比较快,但需要使用Rom来保存映射关系。为获得较高性能的高斯白噪声,需要大容量的Rom。后者具体实现时,不需要使用大容量的内存,但需要n个均匀白噪声才可以产生一个高斯白噪声,产生速度比较慢。 根据以上判断,结合实际情况,采用公式方法。3. 实际使用综合前面,采用算法和公式方法的组合来实现高性能高斯白噪声。考虑加入对高斯白噪声的均值和方差的控制
(1)均匀白噪声模块中,这里使用的算法表达式:M和任意自然数n0,a,b ni+1=(a*f(ni)+b)mod M i=0,1,…,M-1
f(n)为线性函数时,即得到线性同余序列:
ni+1=(a*ni+b)mod M i=0,1,…,M-1
uniform(double a,double b,long int *seed)
{ double t;
*seed=2045*(*seed)+1;
*seed=*seed-(*seed/1048576)*1048576;
t=*seed/1048576.0;
t=a+(b-a)*t;
return t;
}
其中种子参数seed可以任意选择, a,b可以是0.01w和0.99w之间的任何整数(w是一个字长)。
应用递推公式产生均匀分布随机数时,式中参数a,b的选取十分重要。
重复操作 得序列的期望,其值为0.505151,与理想值0.5十分接近。
由统计各区间所含序列点数,绘得概率密度曲线如下图:
曲线在0.9与1.1之间波动,与理想曲线接近。
(2)高斯白噪声模块中Y= ,且每个随机变量Xi对总量Y的影响足够小,在N趋近于无穷大时,Y(近似)服从正态分布,与Xi的分布律无关。
公式方法取=12时,分布已经接近高斯分布了。即对产生的12个均匀白噪声按表达式进行操作来获得高斯白噪声。在获得高斯白噪声后,通过乘法器和加法器实现高斯白噪声方差和均值的调节就得到了参数可调的数字高斯白噪声。因为对高斯分布x,通过变换y=μ+σx,可以获得均值为μ、方差为σ2的高斯分布y。M个高斯点中的一个点需要N_perpoint个均匀分布的随机数。
//N_perpoint越大越精确
//该程序产生M个均值为MeanNeed,方差为SigmaNeed2的高斯随机数
for(i=0;iM;i++)
{ gauss[i]=0;
s=s+i;//修改每次的种子,使产生不同的变量
for(n=0;nN_perpoint;n++)
{ x[n]=uniform(a,b,s);//产生均匀分布的随机变量
gauss[i]=gauss[i]+x[n];
}
gauss[i]=gauss[i]-(float)sqrt((float)12/N_perpoint)* (N_perpoint/2);
gauss[i]=(float)(MeanNeed+
您可能关注的文档
最近下载
- 中小学校内部控制手册.pdf VIP
- Hilti喜利得防火胶泥材料安全数据表 CFS-P BA CP 618 CFS-D 1'' (ZH), 说明书用户手册.pdf
- 《园艺设施工程学》第1章园艺设施的发展现状与趋势.ppt
- 《拒绝校园欺凌》ppt课件(图文).pptx VIP
- 知识产权常年财务顾问合同.docx VIP
- 犯罪原因分析_性犯罪_强奸罪.pptx VIP
- SY∕T 5665-2018 钻井液用防塌封堵剂 改性沥青.pdf
- 儿童护牙知识课件.pptx VIP
- T CAAMTB 68—2022 自调整膜片弹簧离合器总成技术要求和台架试验方法.pdf VIP
- 地方院校药学专业应用型人才创新能力培养体系的构建.pdf VIP
文档评论(0)