各种分布的随机数的生成
MATLAB产生各种分布的随机数

M A T L A B产生各种分布的随机数The final revision was on November 23, 2020MATLAB产生各种分布的随机数1,均匀分布U(a,b):产生m*n阶[a,b]均匀分布U(a,b)的随机数矩阵:unifrnd (a,b,m, n) 产生一个[a,b]均匀分布的随机数:unifrnd (a,b)2,0-1分布U(0,1)产生m*n阶[0,1]均匀分布的随机数矩阵:rand (m, n)产生一个[0,1]均匀分布的随机数:rand4,二类分布binornd(N,P,mm,nn)如binornd(10,,mm,nn)即产生mm*nn均值为N*P的矩阵binornd(N,p)则产生一个。
而binornd(10,,mm)则产生mm*mm的方阵,军阵为N*p。
5,产生m*n阶离散均匀分布的随机数矩阵:unidrnd(N,mm,nn)产生一个数值在1-N区间的mm*nn矩阵6,产生mm nn阶期望值为的指数分布的随机数矩阵:exprnd( ,mm, nn)此外,常用逆累积分布函数表函数名调用格式函数注释norminv X=norminv(P,mu,sigma) 正态逆累积分布函数expinv X=expinv(P,mu) 指数逆累积分布函数weibinv X=weibinv(P,A,B) 威布尔逆累积分布函数logninv X=logninv(P,mu,sigma) 对数正态逆累积分布函数Chi2inv X=chi2inv(P,A,B) 卡方逆累积分布函数Betainv X=betainv(P,A,B) β分布逆累积分布函数随机数的产生4.1.1 二项分布的随机数据的产生命令参数为N,P的二项随机数据函数 binornd格式 R = binornd(N,P) %N、P为二项分布的两个参数,返回服从参数为N、P的二项分布的随机数,N、P大小相同。
R = binornd(N,P,m) %m指定随机数的个数,与R同维数。
各种随机变量的生成方法

各种随机变量的生成方法(1).随机数的计算机生成一个常用的生成任意分布的随机变量的方法是先生成均匀分布的随机变量,再由它生成任意分布的随机变量。
基本原理是:若随机变量x的累积概率分布函数(即概率密度函数的积分)为Phi(x),则Phi(x)是[0,1]区间的非减函数,Phi(x)的反函数Phi^{-1}(x)定义域为[0,1]。
设u为[0,1]区间均匀分布的随机变量,可以证明Pr(Phi^{-1}(u)<=y)=Pr(u<=Phi(y))=Phi(y)也就是说,令x=Phi^{-1}(u)的话,x的累积概率分布函数就是我们指定的Phi(.)。
则为了得到累积概率分布函数为Phi(.)的随机变量x,我们需要经过如下步骤:1.生成[0,1]区间的均匀分布的随机变量u2.令x=Phi^{-1}(u)这种方法被成为逆变换方法。
但在实际工作中,我们往往对某些常用分布用一些直接生成方式来产生,以代替逆变换方法。
以下就介绍了一些典型的分布的生成方法。
这些生成方法都是以生成均匀分布的随机变量为基础的,关于均匀分布随机变量的生成另文叙述。
(2)伯努利分布/0-1分布(Bernouli Distribution)生成离散0-1随机变量x,符合参数为p(0<p<1)的Bernouli分布BE(p)。
其累积概率分布函数为:F(x)=p if x=1F(x)=1-p if x=0生成算法:1.产生随机变量u符合(0,1)区间的均匀分布2.if u<=p then x=1;else x=03.返回x(3)二项分布(Binomial Distribution)生成离散随机变量x,符合参数为n,p的Bernouli分布BE(n,p)。
其累积概率分布函数为F(x)=\frac{n!}{(n-x)!x!}*p^x*(1-p)^{n-x},x=0,1,2,...,n生成算法:1.产生y_1,y_2,...,y_n符合Bernouli分布BE(p)2.返回x=y_1+y_2+...+y_n(4)柯西分布(Cauchy Distribution)生成随机变量x,符合参数为alpha,beta的Cauchy分布C(alpha,beta)。
-随机信号分析实验报告

-随机信号分析实验报告H a r b i n I n s t i t u t e o f T e c h n o l o g y实验报告课程名称:随机信号分析院系:电⼦与信息⼯程学院班级:姓名:学号:指导教师:实验时间:实验⼀、各种分布随机数的产⽣(⼀)实验原理1.均匀分布随机数的产⽣原理产⽣伪随机数的⼀种实⽤⽅法是同余法,它利⽤同余运算递推产⽣伪随机数序列。
最简单的⽅法是加同余法)(mod 1M c y y n n +=+My x n n 11++= 为了保证产⽣的伪随机数能在[0,1]内均匀分布,需要M 为正整数,此外常数c 和初值y0亦为正整数。
加同余法虽然简单,但产⽣的伪随机数效果不好。
另⼀种同余法为乘同余法,它需要两次乘法才能产⽣⼀个[0,1]上均匀分布的随机数)(mod 1M ay y n n =+ My x n n 11++= 式中,a 为正整数。
⽤加法和乘法完成递推运算的称为混合同余法,即 )(mod 1M c ay y n n +=+ M y x n n 11++=⽤混合同余法产⽣的伪随机数具有较好的特性,⼀些程序库中都有成熟的程序供选择。
常⽤的计算语⾔如Basic 、C 和Matlab 都有产⽣均匀分布随机数的函数可以调⽤,只是⽤各种编程语⾔对应的函数产⽣的均匀分布随机数的范围不同,有的函数可能还需要提供种⼦或初始化。
Matlab 提供的函数rand()可以产⽣⼀个在[0,1]区间分布的随机数,rand(2,4)则可以产⽣⼀个在[0,1]区间分布的随机数矩阵,矩阵为2⾏4列。
Matlab 提供的另⼀个产⽣随机数的函数是random('unif',a,b,N,M),unif 表⽰均匀分布,a 和b 是均匀分布区间的上下界,N 和M 分别是矩阵的⾏和列。
2.随机变量的仿真根据随机变量函数变换的原理,如果能将两个分布之间的函数关系⽤显式表达,那么就可以利⽤⼀种分布的随机变量通过变换得到另⼀种分布的随机变量。
随机信号分析实验报告(基于MATLAB语言)

随机信号分析实验报告——基于MATLAB语言姓名:_班级:_学号:专业:目录实验一随机序列的产生及数字特征估计 (2)实验目的 (2)实验原理 (2)实验内容及实验结果 (3)实验小结 (6)实验二随机过程的模拟与数字特征 (7)实验目的 (7)实验原理 (7)实验内容及实验结果 (8)实验小结 (11)实验三随机过程通过线性系统的分析 (12)实验目的 (12)实验原理 (12)实验内容及实验结果 (13)实验小结 (17)实验四窄带随机过程的产生及其性能测试 (18)实验目的 (18)实验原理 (18)实验内容及实验结果 (18)实验小结 (23)实验总结 (23)实验一随机序列的产生及数字特征估计实验目的1.学习和掌握随机数的产生方法。
2.实现随机序列的数字特征估计。
实验原理1.随机数的产生随机数指的是各种不同分布随机变量的抽样序列(样本值序列)。
进行随机信号仿真分析时,需要模拟产生各种分布的随机数。
在计算机仿真时,通常利用数学方法产生随机数,这种随机数称为伪随机数。
伪随机数是按照一定的计算公式产生的,这个公式称为随机数发生器。
伪随机数本质上不是随机的,而且存在周期性,但是如果计算公式选择适当,所产生的数据看似随机的,与真正的随机数具有相近的统计特性,可以作为随机数使用。
(0,1)均匀分布随机数是最最基本、最简单的随机数。
(0,1)均匀分布指的是在[0,1]区间上的均匀分布, U(0,1)。
即实际应用中有许多现成的随机数发生器可以用于产生(0,1)均匀分布随机数,通常采用的方法为线性同余法,公式如下:,序列为产生的(0,1)均匀分布随机数。
定理1.1若随机变量X 具有连续分布函数,而R 为(0,1)均匀分布随机变量,则有2.MATLAB中产生随机序列的函数(1)(0,1)均匀分布的随机序列函数:rand用法:x = rand(m,n)功能:产生m×n 的均匀分布随机数矩阵。
(2)正态分布的随机序列函数:randn用法:x = randn(m,n)功能:产生m×n 的标准正态分布随机数矩阵。
随机信号分析实验

实验一 随机序列的产生及数字特征估计一、实验目的1、学习和掌握随机数的产生方法;2、实现随机序列的数字特征估计..二、实验原理1. 随机数的产生随机数指的是各种不同分布随机变量的抽样序列样本值序列..进行随机信号仿真分析时;需要模拟产生各种分布的随机数..在计算机仿真时;通常利用数学方法产生随机数;这种随机数称为伪随机数..伪随机数是按照一定的计算公式产生的;这个公式称为随机数发生器..伪随机数本质上不是随机的;而且存在周期性;但是如果计算公式选择适当;所产生的数据看似随机的;与真正的随机数具有相近的统计特性;可以作为随机数使用..0;1均匀分布随机数是最最基本、最简单的随机数..0;1均匀分布指的是在0;1区间上的均匀分布;即U0;1..实际应用中有许多现成的随机数发生器可以用于产生0;1均匀分布随机数;通常采用的方法为线性同余法;公式如下:Ny x N ky Mod y y n n n n /))((110===-, 1.1序列{}n x 为产生的0;1均匀分布随机数.. 下面给出了上式的3组常用参数:1 7101057k 10⨯≈==,周期,N ;2 IBM 随机数发生器8163110532k 2⨯≈+==,周期,N ;3 ran095311027k 12⨯≈=-=,周期,N ;由均匀分布随机数;可以利用反函数构造出任意分布的随机数.. 定理1.1 若随机变量X 具有连续分布函数F X x;而R 为0;1均匀分布随机变量;则有)(1R F X x -= 1.2由这一定理可知;分布函数为F X x 的随机数可以由0;1均匀分布随机数按上式进行变换得到..2. MATLAB 中产生随机序列的函数1 0;1均匀分布的随机序列 函数:rand 用法:x = randm;n功能:产生m ×n 的均匀分布随机数矩阵.. 2 正态分布的随机序列 函数:randn 用法:x = randnm;n功能:产生m ×n 的标准正态分布随机数矩阵..如果要产生服从2N(,)μσ分布的随机序列;则可以由标准正态随机序列产生..3 其他分布的随机序列MATLAB 上还提供了其他多种分布的随机数的产生函数;下表列出了部分函数..MATLAB 中产生随机数的一些函数表1.1 MATLAB中产生随机数的一些函数3、随机序列的数字特征估计对于遍历过程;可以通过随机序列的一条样本函数来获得该过程的统计特性..这里我们假定随机序列X n为遍历过程;样本函数为xn;其中n=0;1;2;…;N-1..那么;X n的均值、方差和自相关函数的估计为利用MATLAB 的统计分析函数可以分析随机序列的数字特征..1 均值函数函数:mean用法:m = meanx功能:返回按上面第一式估计X n的均值;其中x为样本序列xn..2 方差函数函数:var用法:sigma2 = varx功能:返回按上面第二式估计X n的方差;其中x为样本序列xn;这一估计为无偏估计..3 互相关函数函数:xcorr用法:c = xcorrx;yc = xcorrxc = xcorrx;y;'opition'c = xcorrx;'opition'功能:xcorrx;y计算X n与Yn的互相关;xcorrx计算X n的自相关..option 选项可以设定为:'biased' 有偏估计;即1.6'unbiased' 无偏估计;即按1.5式估计..'coeff' m = 0 时的相关函数值归一化为1..'none' 不做归一化处理..三、实验内容1.采用线性同余法产生均匀分布随机数1000个;计算该序列均值和方差与理论值之间的误差大小..改变样本个数重新计算..实验代码:num=input'Num=';N=2^31;k=2^16+3;Y=zeros1;num;X=zeros1;num;Y1=1;for i=2:numYi=modk*Yi-1;N;endX=Y/N;a=0;b=1;m0=a+b/2;sigma0=b-a^2/12;m=meanX;sigma=varX;delta_m=absm-m0;delta_sigma=abssigma-sigma0;plotX;'k';xlabel'n';ylabel'Xn';实验结果:1 Num=1000时:delta_m=0.0110;delta_sigma=0.00112 Num=5000时:delta_m =2.6620e-04;delta_sigma =0.0020实验结果分析:样本越大;误差越小;实际值越接近理论值..2. 参数为的指数分布的分布函数为x x e F λ--=1利用反函数法产生参数为0.5 的指数分布随机数1000 个;测试其方差和相关函数..实验代码: R=rand1;1000; lambda=0.5; X=-log1-R/lambda; DX=varX; Rm;m=xcorrX; subplot211;plotX;'k';xlabel'n';ylabel'Xn'; subplot212;plotm;Rm;'k';xlabel'm';ylabel'Rm';实验结果:实验结果分析:方差的实际值为4.1201;理论值为1/0.5^2=4;基本一致..3.产生一组N1;4分布的高斯随机数1 000个样本;估计该序列的均值、方差和相关函数..实验代码:X=normrnd1;2;1;1000;Mx=meanX;Dx=varX;Rm;m=xcorrX;subplot211;plotX;'k';xlabel'n';ylabel'Xn';subplot212;plotm;Rm;'k';xlabel'm';ylabel'Rm';实验结果:实验结果分析:实验中的均值为0.9937;方差为3.8938..理论上均值为1;基本一致..四、实验心得体会通过这次实验;我学习和掌握了随机数的产生方法、实现随机序列的数字特征估计;并用MATLAB产生相应的图形;更直观的了解了相关的知识..本次实验的难点在于用线性同余法产生随机序列;多次试验后终于攻克了难关..实验二随机过程的模拟与数字特征一、实验目的1、学习利用MATLAB 模拟产生随机过程的方法;2、熟悉和掌握特征估计的基本方法及其MATLAB 实现..二、实验原理1. 正态分布白噪声序列的产生MATLAB 提供了许多产生各种分布白噪声序列的函数;其中产生正态分布白噪声序列的函数为randn..函数:randn用法:x = randnm;n功能:产生m ×n 的标准正态分布随机数矩阵..如果要产生服从),(2συN 分布的随机序列;则可以由标准正态随机序列产生..如果X~N0;1;则2X ~N(,)μ+σμσ..2. 相关函数估计MATLAB 提供了函数xcorr 用于自相关函数的估计.. 函数:xcorr 用法:c = xcorrx;y c = xcorrxc = xcorrx;y;'opition' c = xcorrx;'opition'功能:xcorrx;y 计算X n 与Yn 的互相关;xcorrx 计算X n 的自相关.. option 选项可以设定为: 'biased' 有偏估计.. 'unbiased' 无偏估计..'coeff' m=0时的相关函数值归一化为1.. 'none' 不做归一化处理..3. 功率谱估计对于平稳随机序列Xn;如果它的相关函数满足∞<∑+∞-∞=m xm R )( 2.1那么它的功率谱定义为自相关函数R x m 的傅里叶变换:∑+∞-∞=-=m jm xX em R S ωω)()( 2.2功率谱表示随机信号频域的统计特性;有着重要的物理意义..我们实际所能得到的随机信号总是有限的;用有限长度的信号所得的功率谱只是真实功率谱的估计;称为谱估计或谱分析..1 自相关法先求自相关函数的估计;然后对自相关函数做傅里叶变换∑---=-=1)1(^^)()(N N m jm xX em R S ωω 2.3其中N 表示用于估计样本序列的样本个数.. 2 周期图法先对样本序列xn 做傅里叶变换∑-=-=10)()(N n jm e n x X ωω 2.4其中10-≤≤N n ;则功率谱估计为2^)(1)(ωωX NS =2.5 MATLAB 函数periodogram 实现了周期图法的功率谱估计.. 函数:periodogram用法:Pxx;w = periodogramxPxx;w = periodogramx;window Pxx;w = periodogramx;window;nfftPxx;f = periodogramx;window;nfft;fsperiodogram...功能:实现周期图法的功率谱估计..其中:Pxx为输出的功率谱估计值;f为频率向量;w为归一化的频率向量;window代表窗函数;这种用法对数据进行了加窗;对数据加窗是为了减少功率谱估计中因为数据截断产生的截断误差;表2.1列出了产生常用窗函数的MATLAB函数..nfft设定FFT算法的长度;fs表示采样频率;如果不指定输出参量最后一种用法;则直接会出功率谱估计的波形..三、实验内容1.按如下模型产生一组随机序列=-+ωx(n)0.8x(n1)(n)其中(n)是均值为1;方差为4的正态分布白噪声序列..估计过程的自相关函数和功率谱..实验代码:y0=randn1;500; %产生一长度为500的随机序列y=1+2*y0;x1=y1;n=500;for i=2:1:nxi=0.8*xi-1+yi; %按题目要求产生随机序列xn endsubplot311;plotx;title'xn';subplot312;c=xcorrx; %用xcorr函数求xn的自相关函数plotc;title'Rn';p=periodogramx; %用periodogram函数求功率谱密度subplot313; plotp; title'Sw';实验结果:其中xn 为样本序列;长度为500;Rn 为xn 的自相关函数;Sw 为xn 的功率谱..2. 设信号为其中12.0,05.021==f f ;)(n w 为正态分布白噪声序列;试在N =256和N=1024点时;分别产生随机序列xn;画出xn 的波形并估计xn 的相关函数和功率谱..1 N=256时:实验代码:N=256;w=randn1;N; %用randn函数产生长度为256的正态分布白噪声序列n=1:1:N;f1=0.05;f2=0.12;x=sin2*pi*f1*n+2*cos2*pi*f2*n+wn; %产生题目所给信号R=xcorrx; %求xn的自相关函数p=periodogramx; %求x的功率谱subplot311;plotx;title'xn';subplot312;plotR;title'Rn';subplot313;plotp;title'Sw';实验结果:其中xn为样本序列;长度为256;Rn为xn的自相关函数;Sw为xn的功率谱..2 N=1024时:实验代码:N=1024; %将N值改为1024w=randn1;N; %用randn函数产生长度为256的正态分布白噪声序列n=1:1:N;f1=0.05;f2=0.12;x=sin2*pi*f1*n+2*cos2*pi*f2*n+wn; %产生题目所给信号R=xcorrx; %求xn的自相关函数p=periodogramx; %求x的功率谱subplot311;plotx;title'xn';subplot312;plotR;title'Rn';subplot313;plotp;title'Sw';实验结果:其中xn为样本序列;长度为1024;Rn为xn的自相关函数;Sw为xn的功率谱..四、实验心得体会这次实验学会了在MATLAB中求解并绘制随机序列的自相关函数和功率谱密度的方法..用MATLAB可以用具体的函数来求自相关函数和功率谱;极大的方便了学习过程..通过本次实验;我学会了利用MATLAB 模拟产生随机过程的方法并且熟悉和掌握特征估计的基本方法及其MATLAB 实现..实验三随机过程通过线性系统的分析一、实验目的1、理解和分析白噪声通过线性系统后输出的特性..2、学习和掌握随机过程通过线性系统后的特性;验证随机过程的正态化问题..二、实验原理1. 白噪声通过线性系统设连续线性系统的传递函数为Hw 或Hs;输入白噪声的功率谱密度为S X w=N 0/2;那么系统输出的功率谱密度为2)()(02N H S Y ⋅=ωω 3.1 输出自相关函数为⎰∞∞-=ωωπτd H NR Y 2)(4)( 3.2输出相关系数为)0()()(Y Y Y R R τωγ=3.3 输出相关时间为⎰∞=00)(ττγτd Y 3.4输出平均功率为⎰∞=202)(2)]([ωωπd H N t Y E 3.5上述式子表明;若输入端是具有均匀谱的白噪声;则输出端随机信号的功率谱主要由系统的幅频特性|Hw|决定;不再是常数..2. 等效噪声带宽在实际中; 常常用一个理想系统等效代替实际系统的Hw;因此引入了等效噪声带宽的概念;他被定义为理想系统的带宽..等效的原则是;理想系统与实际系统在同一白噪声的激励下;两个系统的输出平均功率相等;理想系统的增益等于实际系统的最大增益..实际系统的等效噪声带宽为⎰∞=∆022max)()(1ωωωωd H H e 3.6或⎰∞∞--=∆j j e ds s H s H H j )()()(212maxωω 3.73. 线性系统输出端随机过程的概率分布1 正态随机过程通过线性系统若线性系统输入为正态过程;则该系统输出仍为正态过程.. 2 随机过程的正态化随机过程的正态化指的是;非正态随机过程通过线性系统后变换为正态过程..任意分布的白噪声通过线性系统后输出是服从正态分布的;宽带噪声通过窄带系统;输出近似服从正态分布..三、实验内容1. 仿真一个平均功率为1的白噪声带通系统;白噪声为高斯分布;带通系统的两个截止频率分别为3kHz 和4kHz;估计输出的自相关函数和功率谱密度函数..假设采样频率为10kHz;同时在系统仿真时为了得到统计的结果;可以进行多次实验;并取多次实验的平均结果作为统计结果实验代码:Fs=10000; %抽样频率为10kHzx=randn1000;1; %产生随机序列;模拟高斯白噪声figure1;subplot3;1;1;plotx;grid on;xlabel't';subplot3;1;2;x_corr=xcorrx;'unbiased'; %计算高斯白噪声的自相关函数plotx_corr;grid on;subplot3;1;3;Pxx;w=periodogramx; %计算功率谱密度x_Px=Pxx;plotx_Px;grid on;figure2;subplot2;1;1;x_pdf;x1=ksdensityx; %高斯白噪声一维概率密度函数plotx1;x_pdf;grid on;subplot2;1;2;f=0:999/1000*Fs;X=fftx;mag=absX; %随机序列的频谱plotf1:1000/2;mag1:1000/2;grid on;xlabel'f / Hz';figure3;subplot3;1;1;b;a=ellip10;0.5;50;3000;4000*2/Fs;H;w=freqzb;a; %带通滤波器plotw*Fs/2*pi;absH;grid on;xlabel'f / Hz';ylabel 'Hw';subplot3;1;2;y=filterb;a;x;y_pdf;y1=ksdensityy; %滤波后的概率密度函数ploty1;y_pdf;grid on;y_corr=xcorry;'unbiased'; %滤波后自相关函数subplot3;1;3;ploty_corr;grid on;figure4;Y=ffty;magY=absY; %随机序列滤波后频谱subplot2;1;1;plotf1:1000/2;magY1:1000/2;grid on;xlabel'f / Hz';subplot2;1;2;nfft=1024;index=0:roundnfft/2-1;ky=index.*Fs./nfft;window=boxcarlengthy_corr;Pyy;fy=periodogramy_corr;window;nfft;Fs; %滤波后高斯白噪声功率谱y_Py=Pyyindex+1;plotky;y_Py;grid on;实验结果:下图分别为高斯白噪声序列、高斯白噪声自相关函数、高斯白噪声功率谱密度..下图分别为高斯白噪声一维概率密度函数、模拟高斯白噪声序列频谱..下图分别为带通滤波器、带通滤波后一维概率密度函数、限带高斯白噪声自相关函数..2.设白噪声通过下图所示的RC电路;分析输出的统计特性..1 试推导系统输出的功率谱密度、相关函数、相关时间和系统的等效噪声带宽..2 采用MATLAB 模拟正态分布白噪声通过上述RC 电路;观察输入和输出的噪声波形以及输出噪声的概率密度..3 模拟产生均匀分布的白噪声通过上述RC 电路;观察输入和输出的噪声波形以及输出噪声的概率密度..4 改变RC 电路的参数电路的RC 值;重做2和3;与之前的结果进行比较..1 输出功率谱密度:22222)(RC N S ωω+=;相关函数:RCe RCN R τ-=4; 相关时间:RC =τ; 等效噪声带宽:RCB 2π=..2 实验代码: R=100; C=0.01;n=1:1:500;h=b*exp-n*b; %RC电路的冲击响应x=randn1;1000; %产生正态分布的白噪声y=convx;h;fy y1=ksdensityy %求输出噪声的概率密度subplot3;1;1;plotx;title'xn';subplot3;1;2;ploty;title'yn';subplot3;1;3;plotfy;title'fy';3实验代码:R=100;C=0.01;b=1/R*C;n=1:1:500;h=b*exp-n*b;x=rand1;1000; %均匀分布的白噪声y=convx;h;fy y1=ksdensityy;subplot3;1;1;plotx;title'xn';subplot3;1;2; ploty;title'yn'; subplot3;1;3; plotfy;title'fy';实验结果:4 R=300;C=0.01;正态分布时:R=300;C=0.01;均匀分布时:R=30;C=0.01;正态分布时:R=30;C=0.01;均匀分布时:实验结果分析:从以上图像中可以看出;系统相关时间与带宽成反比;正态随机过程通过一个线性系统后;输出仍为正态分布;而均匀分布的白噪声通过一个线性系统后;输出也服从正态分布..四、实验心得体会本次实验是关于随机信号通过线性系统的;我发现了白噪声通过线性系统后;输出也服从正态分布;从实践上验证了课本的理论..通过本次实验;我理解了白噪声通过线性系统后输出的特性;学习和掌握了随机过程通过线性系统后的特性;关于随机信号的知识有了更深入的理解..实验四 窄带随机过程的产生及其性能测试一、实验目的1、基于随机过程的莱斯表达式产生窄带随机过程..2、掌握窄带随机过程的特性;包括均值数学期望、方差、相关函数及功率谱密度等..二、实验原理1. 窄带随机过程的莱斯表达式任何一个实平稳窄带随机过程Xt 都可以表示为t t b t t a t X 00sin )(cos )()(ωω-= 4.1上式称为莱斯表达式;根据上式可以模拟产生窄带随机过程;具体过程如下图所示..图4.1 窄带随机过程的产生2.窄带随机过程包络与相位的概率密度见教材5.3节..3.窄带随机过程包络平方的概率密度见教材5.4节..三、实验内容1.按图4.1所示结构框图;基于随机过程的莱斯表达式;用MATLAB产生一满足条件的窄带随机过程..实验代码:n=1:1:1000;h=exp-n;c1=randn1;1000;a=convc1;h;c2=randn1;1000; %产生两个正态分布的高斯白噪声b=convc2;h; %通过低通滤波器fc=10000;x=zeros1;1000;for i=1:1000 %卷积结果相加;得到窄带随机过程xi=ai*cos2*pi*fc*i-bi*sin2*pi*fc*i;endplotx;实验结果:2.画出该随机过程的若干次实现;观察其形状..实验结果:第一次实现:第二次实现:第三次实现:3.编写MATLAB程序计算该随机过程的均值函数、自相关函数、功率谱、包络、包络平方及相位的一维概率密度;画出相应的图形并给出解释..实验代码:n=1:1:1000;h=exp-n;c1=randn1;1000;a=convc1;h;c2=randn1;1000;b=convc2;h;fc=10000;x=zeros1;1000;for i=1:1000 %得到窄带随机过程xi=ai*cos2*pi*fc*i-bi*sin2*pi*fc*i;endm=meanxfigure1plotm;title'均值' %均值函数R=xcorrx;figure2plotR;title'自相关函数' %自相关函数S;w=periodogramx;figure3plotS;title'功率谱密度' %功率谱密度函数B=zeros1;1000;for i=1:1000Bi=sqrtai^2+bi^2;endfB2 j=ksdensityB;figure4plotfB2;title'包络概率密度' %包络概率密度B=zeros1;1000;for i=1:1000Bi=ai^2+bi^2;endfB2 j=ksdensityB;figure5plotfB2;title'包络平方概率密度' %包络平方概率密度for i=1:1000faii=atanbi/ai;endfp j=ksdensityfai;figure6;plotfp;title'相位一维概率密度函数' %相位一维概率密度函数实验结果:均值m=-0.0075:自相关函数:功率谱密度:包络概率密度:包络平方概率密度:相位一维概率密度函数:实验结果分析:生成的两个高斯白噪声;分别通过低通滤波器得到at和bt..用莱斯表达式的原理产生一个窄带随机过程..其中窄带随机过程的均值为零;包络服从瑞利分布;相位按均匀分布;包络的平方呈指数型分布..四、实验心得体会这次实验描述了窄带随机过程;对于其均值、包络、包络平方、相位的分布也有了直观的表达;也有了更深刻的理解..通过本次实验;我认识了通过莱斯表达式产生窄带随机过程的方法;并且掌握窄带随机过程的特性..。
统计学随机数表

统计学随机数表
统计学随机数表是一种用于生成随机数的工具,通常由计算机程序或手动记录。
这些随机数可以用于各种统计学应用,如模拟实验、抽样、模型评估和参数估计等。
统计学随机数表通常包含一系列数字,这些数字在统计上被认为是随机的,并且具有特定的分布特征,如均匀分布、正态分布、泊松分布等。
使用这些随机数表可以提高统计分析的精准度和可靠性,因为它们可以确保样本的随机性和独立性,从而避免了人为干扰和样本选择偏差的影响。
在实际应用中,统计学随机数表可以通过计算机程序自动生成,也可以通过手动录入或打印方式获取。
但无论是哪种方式,都需要严格遵循统计学原理和方法,以确保生成的随机数是有效和可靠的。
- 1 -。
各种分布的随机数生成算法

各型分布随机数的产生算法随机序列主要用概率密度函数(PDF〃Probability Density Function)来描述。
一、均匀分布U(a,b)⎧1x∈[a,b]⎪ PDF为f(x)=⎨b−a⎪0〃其他⎩生成算法:x=a+(b−a)u〃式中u为[0,1]区间均匀分布的随机数(下同)。
二、指数分布e(β)x⎧1⎪exp(−x∈[0,∞)βPDF为f(x)=⎨β⎪0〃其他⎩生成算法:x=−βln(1−u)或x=−βln(u)。
由于(1−u)与u同为[0,1]均匀分布〃所以可用u 替换(1−u)。
下面凡涉及到(1−u)的地方均可用u替换。
三、瑞利分布R(µ)⎧xx2exp[−x≥0⎪回波振幅的PDF为f(x)=⎨µ2 2µ2⎪0〃其他⎩生成算法:x=−2µ2ln(1−u)。
四、韦布尔分布Weibull(α,β)xα⎧−αα−1⎪αβxexp[−(]x∈(0,∞)βPDF为f(x)=⎨⎪0〃其他⎩生成算法:x=β[−ln(1−u)]1/α五、高斯(正态)分布N(µ,σ2)⎧1(x−µ)2exp[−]x∈ℜ2PDF为f(x)=⎨2πσ 2σ⎪0〃其他⎩生成算法:1〄y=−2lnu1sin(2πu2)生成标准正态分布N(0,1)〃式中u1和u2是相互独立的[0,1]区间均匀分布的随机序列。
2〄x=µ+σy产生N(µ,σ2)分布随机序列。
六、对数正态分布Ln(µ,σ2)⎧1(lnx−µ)2exp[−x>0PDF为f(x)=⎨2πσx 2σ2⎪0〃其他⎩生成算法:1〄产生高斯随机序列y=N(µ,σ2)。
2〄由于y=g(x)=lnx〃所以x=g−1(y)=exp(y)。
七、斯威林(Swerling)分布7.1 SwerlingⅠ、Ⅱ型7.1.1 截面积起伏σ⎧1−exp[σ≥0⎪σ0截面积的PDF为f(σ)=⎨σ0〃【指数分布e(σ0)】⎪0〃其他⎩生成算法:σ=−σ0ln(1−u)。
MATLAB随机过程与概率分布计算技巧

MATLAB随机过程与概率分布计算技巧随机过程和概率分布是数学中重要的概念,它们在许多领域中有广泛的应用,例如金融、通信、工程等。
而MATLAB作为一款功能强大的数学软件,提供了丰富的工具和函数来计算、模拟和分析随机过程以及各种概率分布。
本文将介绍一些MATLAB中常用的随机过程和概率分布计算技巧,以帮助读者更好地理解和应用这些概念。
一、随机过程的生成和仿真在MATLAB中,我们可以使用rand函数来生成服从均匀分布的随机数。
例如,rand(1,100)将生成一个包含100个0到1之间均匀分布的随机数的向量。
而randn函数可用于生成服从标准正态分布(均值为0,方差为1)的随机数。
我们可以通过设置均值和方差参数来生成服从任意正态分布的随机数。
例如,randn(1,100, mu, sigma)将生成一个含有100个服从均值为mu,方差为sigma^2的正态分布的随机数的向量。
在生成随机过程时,我们可以使用MATLAB中的cumsum函数来计算累积和。
通过对生成的随机数序列进行累积和操作,我们可以获得具有随机波动的变量。
二、概率分布的拟合与估计MATLAB提供了丰富的工具和函数来进行概率分布的拟合和参数估计。
我们可以使用histfit函数来实现对数据的直方图拟合,并得到与数据最匹配的概率分布曲线。
例如,histfit(data, bins, 'kernel')将对数据data进行直方图拟合,并以核密度估计曲线呈现。
此外,我们可以使用probplot函数来进行概率图绘制。
通过绘制数据的概率图,我们可以判断数据是否符合某种特定的概率分布。
例如,probplot(data, distribution)将绘制数据data的概率图,并与给定的概率分布进行比较。
对于参数估计,MATLAB提供了很多函数来估计概率分布的参数。
常见的估计方法包括最大似然估计和矩估计。
我们可以使用mle函数来进行最大似然估计,例如,parameters = mle(data, 'distribution', distribution)将对数据data进行最大似然估计,并返回估计得到的分布参数。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
2 布,设其均值为 y ,方差为 y 。由 X 和 Y 的关系,可得方程
y e y 2 x 2 2 y 2 y y 2 ( e 1 ) e x
计算。 2 均匀分布 2.1 定义 若连续随机变量的概率密度为
1 , 当a x b f ( x) b a 其它 0,
ab (b a) 2 则称服从均匀分布, 记为~ (a, b) , 数学期望 E , 方差 D 。 2 12
2.2 随机数列的生成 如果 为[0,1]区间均匀分布的随机数列,则令
标准正态分布的累积分布函数能够被一个叫做误差函数的特殊函数表示,
1 F ( x) 2
其中 erf x
e
x
x2 2
1 x dx 1 erf 2 2
2
e x
2
2k x 2 k 1 k 0 ( 2k 1)!!
正态分布的累积分布函数图形曲线见图 3。
各种分布的随机数的生成
1 基本方法 在计算机中都备有可直接使用的均匀分布随机函数或程序, 一般是用数值转换中 的求余法得到的,这样产生的随机数列,是根据确定的算法递推出来的,严格地讲并 不是随机的,因此称为伪随机数。不过如果计算方法选得恰当,它们近似于相互独立 和均匀分布,在一定的置信度下,能通过统计检验中的参数检验、独立性检验、连检 验等,因此可以把它们当作真正的随机数使用 在一般情况下, 计算机中的随机函数所产生的数列为[0,1]区间均匀分布的随机数 列,有时就需要转换成其它分布的随机数列,如正态分布、瑞利分布等,下面讨论如 何从[0,1]区间均匀分布的随机数列 1 , 2 ,, n 得到任意分布的随机变量抽样。 设所求的任意分布的随机变量 的概率密度函数为 f ( x) ,其累积分布函数为
1 (2 ln 1 ) cos 2 2 2 (2 ln 1 ) 2 sin 2 2
均为服从 N (0,1) 标准正态分布的独立随机变量,它在整个区域上都是精确的,只 取决于 1 和 2 的随机性和独立性。
1
1 2
4.4 标准正态分布转换为一般正态分布 如果随机变量 服从标准正态分布,则令
x x2 2 , ( x 0) ( 0) f ( x) 2 e 0, ( x 0)
2
则称服从对数正态分布,记为 ~ R( ) ,并且 E
4 2 , D 2 2
瑞利分布是最常见的用于描述平坦衰落信号接收包络或独立多径分量接受包络 统计时变特性的一种分布类型。两个正交高斯噪声信号之和的包络服从瑞利分布。 其累积分布函数为
图3
正态分布的累积分布函数(颜色与概率密度函数同)
它的反函数被称为反误差函数,为
F 1 ( x) 2 erf 1 (2 x 1)
正态分布的累积分布函数 F ( x) 没有初等函数表达式,它的值可以通过数值积分、 泰勒级数或者渐进序列近似得到。 虽然正态分布函数的积分不能用初等函数表达出来,
F ( ) f ( x)dx
a
a
ba
于是得
(b a) a
即为[a,b]区间均匀分布的随机数列。
3 指数分布 3.1 定义 指数分布可以用来表示独立随机事件发生的时间间隔, 比如旅客进机场的时间间 隔。 若连续随机变量的概率密度为
e ( x ) f ( x) 0 (x ) , (x )
12 k k i k i 1 2
其中,k 为[0,1]区间均匀分布的随机变量的个数。k 值可以根据计算精度来选取,若 取 k=12,则 i 6 。此时算得的 将不超过(-6,6)的范围,这对于一般可靠度
i 1 12
的计算已达足够精度。 4.3 Box-Muller 算法 在 4.2 节给出的方法是一种近似算法,是用多项式估计正态分布,Box-Muller 算 法则给出了一种精确的生成方法。Box-Muller 算法隐含的原理较为复杂,但结果却是 相当简单:如果 1 、 2 是在[0,1]区间上均匀分布的随机变量,则
F ( x) ,且 F ( x) 在[0,1]区间是单调递增的连续函数,则有随机变量
F ( )
是[0,1]区间上的均匀分布的随机变量。 由(1)式可得
(1)
F 1 ( )
(2)
(2)式表示可用求累积分布函数的反函数的方法来产生任意分布的随机数。若
F ( ) 不是某种典型的分布函数而是由统计得到的数值表,则用数值法作随机抽样的
累积分布函数
指数分布的概率密度函数和累积分布函数
F ( ) 1 e ( )
于是得
1
ln 1
即服从指数分布的随机数列。
4 正态分布 4.1 定义 若连续随机变量的概率密度为
1 f ( x) e 2 ( x )2 2 2
x
x 就是服从 N ( , ) 分布的随机变量的抽样。 5 对数正态分布 5.1 定义 若连续随机变量的概率密度为
f ( x) 1 x 2 e
(ln x ) 2 2 2
( 0)
则称服从对数正态分布,记为 ~ Ln( , ) ,并且 E e
2
解得
x ln y 2 2 1 x x 2 2 y ln 1 x x
再按照第 4 节给出的方法生成正态分布的随机数列 Y,代入 x e y 中,即得服从 对数正态分布的随机数列 X。 6 瑞利分布 6.1 定义 若连续随机变量的概率密度为
( 0 )
则称服从指数分布,记为 ~ e( , ) ,数学期望 E 其累积分布函数为
1 e ( x ) F ( x) 0 (x ) (x )
1
,方差 D
1
2
概率密度函数 图1 3.2 随机数列的生成 如果 为[0,1]区间均匀分布的随机数列,则令
( 0)
则称服从正态分布,并记为 ~N ( , ) ,并且 E , D 2 特别的,当 0 , 1时,称为标准正态分布,记为 ~N (0,1) ,此时
1 2 f ( x) e 2
x2
正态分布的概率密度函数曲线见图 2。
图2
正态分布的概率密度函数(绿色为标准正态分布)
2 2
, D (e 1)e 2
2ห้องสมุดไป่ตู้
2
概率密度函数 图4 5.2 随机数列的生成
累积分布函数
对数正态分布的概率密度函数和累积分布函数
对数正态分布的随机数列的可由正态分布的随机数列生成, 对数正态分布和正态 分布的关系为:如果 X 是正态分布的随机变量,则 e X 为对数正态分布;同样,如果 Y 是对数正态分布,则 ln Y 为正态分布。 首先应根据对数正态分布的随机数列的数学期望和方差, 求出正态分布的数学期
x 1 e 2 2 F ( x) 0
2
( x 0) ( x 0)
6.2 随机数列的生成 如果 为[0,1]区间均匀分布的随机数列,则令
F ( ) 1 e
于是得
2 2 2
2 2 ln(1 )
即服从瑞利分布的随机数列。
但我们还可以采用其它的方法来生成正态分布随机数。 4.2 根据中心极限定理生成正态分布随机数列 中心极限定理为: 设 1、 2、 、 n、 为 相 互 独 立 具 有 相 同 分 布 的 随 机 变 量 序 列 , E n 、
D n 2 ( n 0,1,2,) ,则
1 lim P n n 1 k x 2 k 1
n
e
x
1 t2 2
dt
中心极限定理说明, 无穷多个具有相同分布的随机变量之和是服从标准正态分布 的。相应的,如果多个随机变量均为[0,1]区间的均匀分布,则生成标准正态分布的式 子为: