哈尔滨工程大学研究生课程随机过程大作业答案.docx
《哈尔滨工程大学研究生课程随机过程大作业答案.docx》由会员分享,可在线阅读,更多相关《哈尔滨工程大学研究生课程随机过程大作业答案.docx(21页珍藏版)》请在冰豆网上搜索。
哈尔滨工程大学研究生课程随机过程大作业答案
1.答:
(1)前50个数为:
0.98620.84790.03010.17460.9100
0.88530.52680.95370.83520.6765
0.40480.80740.71440.97010.6232
0.62710.39350.64650.13500.5122
0.38550.96170.44670.25100.0035
0.84790.03010.17460.91000.2269
0.52680.95370.83520.67650.9785
0.80740.71440.97010.62320.8613
0.39350.64650.13500.51220.0144
0.96170.44670.25100.00350.4858
(2)分布检验:
(3)均值检验:
0.5042
(4)方差检验:
0.0832
(5)计算相关函数分布:
p=
199178207193211193206216191206
本题运用MATLAB进行编程,程序如下:
forn=1:
2000
xt(n)=unifrnd(0,1);%产生2000个(0,1)均匀分布白序列
end
subplot(2,1,1);
plot(xt),title('2000个(0,1)均匀分布的白噪声');
fori=1:
5
forj=1:
10
sc(j,i)=xt((i-1)*5+j);
end;
end;
disp([sc])%打印前50个数
mx=mean(xt)%求平均数并输出
dx=cov(xt)%求方差并输出
subplot(2,1,2);
p=hist(xt,10)%将产生的2000个随机数分为10组
p=p/100;t=0.025:
.1:
.975;%求概率密度
bar(t,p,1);
title('0-1均匀分布的白噪声直方图');
xlabel('x');
ylabel('f(x)');
[bx,i]=xcov(xt,10);%τ取-10到10
Bx=bx/2000;%求自相关函数Bx(τ)
figure
subplot(2,1,1);
plot(i,Bx),title('自相关函数Bx分布图');
xlabel('τ');ylabel('Bx(τ)');
[tx,i]=xcorr(xt,10);%τ取-10到10
Tx=tx/2000;
subplot(2,1,2);
plot(i,Tx),title('自相关函数Γx分布图');
xlabel('τ');ylabel('Γx(τ)');
2.答:
(1)前50个数为:
-0.43261.1909-0.18670.11390.2944
-1.66561.18920.72581.0668-1.3362
0.1253-0.0376-0.58830.05930.7143
0.28770.32732.1832-0.09561.6236
-1.14650.1746-0.1364-0.8323-0.6918
1.1909-0.18670.11390.29440.8580
1.18920.72581.0668-1.33621.2540
-0.0376-0.58830.05930.7143-1.5937
0.32732.1832-0.09561.6236-1.4410
0.1746-0.1364-0.8323-0.69180.5711
(2)分布检验:
如下图所示。
(3)均值检验:
0.0012
(4)方差检验:
0.9783
(5)计算相关函数Bx(i),i=0,±1,±2,…,±10。
本题运用MATLAB进行编程,程序如下:
clearall;
forn=1:
2000
xt(n)=normrnd(0,1);;%产生2000个N(0,1)正态分布的白噪声
end
figure
fori=1:
5
forj=1:
10
sc(j,i)=xt((i-1)*5+j);
end;
end;disp([sc]);
mx=mean(xt)%求平均数并输出
dx=cov(xt)%求方差并输出
subplot(2,1,1);
p=hist(xt,20);%将产生的2000个随机数分为20组
p=p/100;t=-2.85:
0.3:
2.85;%求概率密度
bar(t,p,1),title('N(0,1)正态分布的白噪声直方图');
xlabel('x');ylabel('f(x)');
[tx,i]=xcov(xt,10);%τ取-10到10
Tx=tx/2000;%求自相关函数Γx(τ)
subplot(2,1,2)
plot(i,Tx),title('自相关函数Γx(τ)分布图');
xlabel('τ');ylabel('Γx(τ)');
3.答:
运行程序后所得到的结果为:
(1)EX(k)=0.0878
(2)EX2(k)=339.8857
(3)DX(k)=18.4358
(4)Bx(m)
本题运用MATLAB进行编程,程序如下:
clearall
forn=1:
1000
xt(n)=normrnd(0,1);
end%产生1000个N(0,1)正态分布的白噪声
x
(1)=xt
(1);
fork=2:
1000
x(k)=xt(k)+4*xt(k-1);
end%生成一阶滑动合序列x(k)
mx=mean(x)%求平均数并输出
dx=cov(x)%求方差并输出
mxx=mx^2+dx^2%求
[bx,i]=xcov(x,20);%τ取-20到20
Bx=bx/1000;%求自相关函数Bx(τ)
subplot(2,1,1)
hist(xt,30),title('直方图');%将产生的2000个随机数分为30组
subplot(2,1,2)
plot(i,Bx),title('自相关函数分布图Bx(τ)');
xlabel('τ');ylabel('Bx(τ)');
4.答:
运行程序后所得到的结果为:
(1)EX(k)=0.0066
(2)EX=3.8356
(3)DX=1.9585
(4)Bx(i),如下图所示:
本题运用MATLAB进行编程,程序如下:
clearall;
forn=1:
1000
xt(n)=normrnd(0,1);
end%产生1000个N(0,1)正态分布的白噪声
x
(1)=0;
fork=2:
1000
x(k)=xt(k)-0.707*x(k-1);
end%生成一阶自回归序列
m=0;
fork=100:
900
m=x(k)+m;
mx=m/900;
end
mx%求E(x)x:
100→1000
[bx,i]=xcov(x,10);%τ取-10到10
dx=cov(x)
mxx=mx^2+dx^2
Tx=bx/1000;%求自相关函数Bx(τ)
subplot(2,1,1)
hist(xt,30),title('直方图');%将产生的2000个随机数分为30组
subplot(2,1,2)
plot(i,Tx),title('自相关函数分布图Bx(τ)');
xlabel('τ');ylabel('Bx(τ)');
5.答:
程序原码:
closeall;
clearall;
formatlong;
t=linspace(-2*pi,2*pi,40);
X=sin(t);
m=10000;
t10=linspace(-2*pi,2*pi,m);
k=-10:
10;
X10i=sin(k*pi/2);
Y10=zeros(1,length(t10));
fori=1:
length(t10)
forn=-10:
10
Y10(i)=Y10(i)+X10i(n+11)*sin(t10(i)-n*pi/2)/(t10(i)-n*pi/2);
end
end
m=10000;
t20=linspace(-2*pi,2*pi,m);
k=-20:
20;
X20i=sin(k*pi/2);
Y20=zeros(1,length(t20));
fori=1:
length(t20)
forn=-20:
20
Y20(i)=Y20(i)+X20i(n+21)*sin(t20(i)-n*pi/2)/(t20(i)-n*pi/2);
end
end
figure
(1);
gridon;
subplot(2,2,1);
plot(t,X,'b-');
title('输入模拟连续信号');
xlabel('t');
ylabel('X(t)');
axis([-2*pi2*pi-11]);
gridon;
subplot(2,2,2);
stem(t,X,'m.');
%plot(t,X,'m.');
title('采样信号');
xlabel('k');
ylabel('X(kT)');
axis([-2*pi2*pi-11]);
gridon;
subplot(2,2,3);
%plot(t,Y,'r-');
plot(t10,Y10,'m.');
title('n=10低通滤波器恢复曲线');
xlabel('t');
ylabel('y');
axis([-2*pi2*pi-11]);
gridon;
subplot(2,2,4);
%plot(t,Y,'r-');
plot(t20,Y20,'m.');
title('n=20低通滤波器恢复曲线');
xlabel('t');
ylabel('y');
axis([-2*pi2*pi-11]);
gridon;
图形为:
6.答:
程序原码:
clearall;
closeall;
N=20;
A=zeros(N+2,N+2);
A2=zeros(N+2,N+2);
B=zeros(N+1,N+1);
B2=zeros(N+1,N+1);
alpha(N)=0;
beta(N)=0;
forj=1:
N+1
A(1,j)=2*j-1;
end
B(1,N)=1;
fori=1:
N+1
forj=i:
N+1
ifmod(i+j,2)==0
A2(i,j)=A(i,j+1);
else
A2(i,j)=0
end
B2(i,j)=A2(i,j);
alpha(i)=A(i,i)/A2(i,i);
beta(i)=B(i,i)/B2(i,i);
ifi<20
ifmod(i+j,2)~=0
A(i+1,j)=A(i,j);
B(i+1,j)=B(i,j);
else
A(i+1,j)=A(i,j)-alpha(i)*A2(i,j);
B(i+1,j)=B(i,j)-beta(i)*