利用混合乘同余法产生(0,1)均匀分布随机数.doc

利用混合乘同余法产生(0,1)均匀分布随机数.doc

ID:57727904

大小:67.50 KB

页数:6页

时间:2020-09-02

利用混合乘同余法产生(0,1)均匀分布随机数.doc_第1页
利用混合乘同余法产生(0,1)均匀分布随机数.doc_第2页
利用混合乘同余法产生(0,1)均匀分布随机数.doc_第3页
利用混合乘同余法产生(0,1)均匀分布随机数.doc_第4页
利用混合乘同余法产生(0,1)均匀分布随机数.doc_第5页
资源描述:

《利用混合乘同余法产生(0,1)均匀分布随机数.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、一、概念混合同余法:用一常数与已产生的伪随机数之积的同余式做递推公式,产生均匀伪随机数的方法。即:第一步:递推式其中:M=2^k,k>2整数;A=1(mod4),即为正整数,初值为非负整数。第二步:可以证明,是周期为2k的伪随机数。1、混合同余法(0,1)均匀分布的随机数L=60,取k=2,c=1,n=5,l=60,=1公式原理:见上第一第二步。程序:clearclck=8;c=1;n=5;x=1;M=2^k;A=2^n+1;store=[];fori=1:60ee=x/M;store(i)=ee;x=mod(A*x+c,M);endplot(

2、1:60,store)title('混合同余法产生随机数')store=0.0.00000.00000.00000.00000.00000.00000.00000.00000.00000.00000.00000.00000.00000.00000.000000.000000.00000.00000.00000.00000.00000.00000.00000.00000.00000.00000.00000.00000.00000.00000.00000.00000.00000.00000.00000.00000.000000.00000.0000

3、0.00000.00000.000000.00000.00000.00000.00000.00000.00000.00000.00000.00000.00000.000000.00000.00000.00000.00000.00000.0000第二题:LS递推,L=15,输入4位M序列,v(K)为均值c的白噪声序列,z(k)-2.1z(k-1)+1.2z(k-2)=u(k-1)+0.4u(k-2)+v(k)幅值:0.03程序:%FLch3RLSeg3clear%清理工作间变量L=15;%M序列的周期y1=1;y2=1;y3=1;y4=0;%四个

4、移位积存器的输出初始值fori=1:L;%开始循环,长度为Lx1=xor(y3,y4);%第一个移位积存器的输入是第3个与第4个移位积存器的输出的“或”x2=y1;%第二个移位积存器的输入是第3个移位积存器的输出x3=y2;%第三个移位积存器的输入是第2个移位积存器的输出x4=y3;%第四个移位积存器的输入是第3个移位积存器的输出y(i)=y4;%取出第四个移位积存器幅值为"0"和"1"的输出信号,ify(i)>0.5,u(i)=-0.03;%如果M序列的值为"1"时,辨识的输入信号取“-0.03”elseu(i)=0.03;%当M序列的值为"

5、0"时,辨识的输入信号取“0.03”end%小循环结束y1=x1;y2=x2;y3=x3;y4=x4;%为下一次的输入信号做准备end%大循环结束,产生输入信号ufigure(1);%第1个图形stem(u),gridon%以径的形式显示出输入信号并给图形加上网格z(2)=0;z(1)=0;%取z的前两个初始值为零fork=3:15;%循环变量从3到15z(k)=2.1*z(k-1)-1.2*z(k-2)+u(k-1)+0.4*u(k-2);%给出理想的辨识输出采样信号end%RLS递推最小二乘辨识c0=[0.0010.0010.0010.00

6、1]';%直接给出被辨识参数的初始值,即一个充分小的实向量p0=10^6*eye(4,4);%直接给出初始状态P0,即一个充分大的实数单位矩阵E=0.;%相对误差E=0.c=[c0,zeros(4,14)];%被辨识参数矩阵的初始值及大小e=zeros(4,15);%相对误差的初始值及大小fork=3:15;%开始求Kh1=[-z(k-1),-z(k-2),u(k-1),u(k-2)]';x=h1'*p0*h1+1;x1=inv(x);%开始求K(k)k1=p0*h1*x1;%求出K的值d1=z(k)-h1'*c0;c1=c0+k1*d1;%求

7、被辨识参数ce1=c1-c0;%求参数当前值与上一次的值的差值e2=e1./c0;%求参数的相对变化e(:,k)=e2;%把当前相对变化的列向量加入误差矩阵的最后一列c0=c1;%新获得的参数作为下一次递推的旧参数c(:,k)=c1;%把辨识参数c列向量加入辨识参数矩阵的最后一列p1=p0-k1*k1'*[h1'*p0*h1+1];%求出p(k)的值p0=p1;%给下次用ife2<=Ebreak;%若参数收敛满足要求,终止计算end%小循环结束end%大循环结束c%显示被辨识参数e%显示辨识结果的收敛情况%分离参数a1=c(1,:);a2=c(

8、2,:);b1=c(3,:);b2=c(4,:);ea1=e(1,:);ea2=e(2,:);eb1=e(3,:);eb2=e(4,:);figure

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

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

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