matlab中随机信号的产生

matlab中随机信号的产生

ID:40750364

大小:191.57 KB

页数:4页

时间:2019-08-07

matlab中随机信号的产生_第1页
matlab中随机信号的产生_第2页
matlab中随机信号的产生_第3页
matlab中随机信号的产生_第4页
资源描述:

《matlab中随机信号的产生》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、Matlab中随机信号的产生在matlab编程中,我们所能用到的用于产生随机信号的函数有三:Rand,randn,randi下面我们详细的了解一下这三个函数。1.Rand功能是生产均匀分布的伪随机数,并且所生成的伪随机数分布在(0-1);主要语法:rand(m,n)生成m行n列的均匀分布的伪随机数Rand(m,n.’double’)生成制定精度的均匀分布的伪随机数,参数还可以是’single’;Rand(randStream,m,n)利用指定的randStream生成伪随机数2.Randn生成标注正态分布的伪随机数(均值为0,

2、方差为1)语法同上;3.Randi生成均匀分布的伪随机整数主要语法:randi(iMax)在开区间(0,iMax)生成均匀分布的伪随机整数Randi(iMax,m,n)在开区间(0,iMax)生成m×n型随机矩阵r=randi([iMin,iMax],m,n)在开区间(iMin,iMax)生成m×n型随机矩阵下面我们来看看具体的例子:1,Rand散点图:xh=rand(1,2500);plot(xh)概率分布图:xh=rand(1,25000);hist(xh,2000)1,Randn散点图:xh=randn(1,400000

3、);plot(xh)概率分布图:xh=randn(1,400000);hist(xh,2000)1,Randi散点图:r=randi([12,214],1,144);plot(r)概率分布图:r=randi([12,214],1,144);hist(r,10000)对于随机种子,伪随机数的重复生成,在正常情况下每次调用相同指令生成的伪随机数是不同的例如:rand(1,4)rand(1,4)输出结果为:ans=0.04280.24020.02960.0398ans=0.77530.46870.33780.0074在一些特殊的情况

4、下我们会用到相等的随机数,那我们该如何呢使两个语句生成的随机数相等呢?在Matlab中rand、randn,和randi从一个基础的随机数流中得到随机数,叫做默认流。我们可以通过 @RandStream 类得到默认流的句柄从而控制随机数的生成。state属性是发生器的内部状态,我们可以保存默认流的状态:myState=defaultStream.State;利用myState我们可以恢复默认流状态重新生成前面的结果:myState=defaultStream.State;A=rand(1,100);defaultStream.

5、State=myState;B=rand(1,100);isequal(A,B)ans=1我们也可以直接使用@RandStream 类的reset静态方法重置种子状态来获取相同的随机生成序列,下面是示例代码:stream=RandStream.getDefaultStream;%获取默认的随机种子reset(stream);%重置rand(stream,1,3)reset(stream);%重置rand(stream,1,3)matlab的输出为:ans= 0.814723686393179   0.9057919370756

6、19   0.126986816293506ans=0.814723686393179   0.905791937075619   0.126986816293506可以看出生成的随机码是相等的,这样可以用于重复实验

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

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

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