典型时间序列模型分析.docx

上传人:b****7 文档编号:15493081 上传时间:2023-07-05 格式:DOCX 页数:26 大小:807.79KB
下载 相关 举报
典型时间序列模型分析.docx_第1页
第1页 / 共26页
典型时间序列模型分析.docx_第2页
第2页 / 共26页
典型时间序列模型分析.docx_第3页
第3页 / 共26页
典型时间序列模型分析.docx_第4页
第4页 / 共26页
典型时间序列模型分析.docx_第5页
第5页 / 共26页
典型时间序列模型分析.docx_第6页
第6页 / 共26页
典型时间序列模型分析.docx_第7页
第7页 / 共26页
典型时间序列模型分析.docx_第8页
第8页 / 共26页
典型时间序列模型分析.docx_第9页
第9页 / 共26页
典型时间序列模型分析.docx_第10页
第10页 / 共26页
典型时间序列模型分析.docx_第11页
第11页 / 共26页
典型时间序列模型分析.docx_第12页
第12页 / 共26页
典型时间序列模型分析.docx_第13页
第13页 / 共26页
典型时间序列模型分析.docx_第14页
第14页 / 共26页
典型时间序列模型分析.docx_第15页
第15页 / 共26页
典型时间序列模型分析.docx_第16页
第16页 / 共26页
典型时间序列模型分析.docx_第17页
第17页 / 共26页
典型时间序列模型分析.docx_第18页
第18页 / 共26页
典型时间序列模型分析.docx_第19页
第19页 / 共26页
典型时间序列模型分析.docx_第20页
第20页 / 共26页
亲,该文档总共26页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

典型时间序列模型分析.docx

《典型时间序列模型分析.docx》由会员分享,可在线阅读,更多相关《典型时间序列模型分析.docx(26页珍藏版)》请在冰点文库上搜索。

典型时间序列模型分析.docx

典型时间序列模型分析

 

实验1典型时间序列模型分析

1、实验目的

熟悉三种典型的时间序列模型:

AR模型,MA模型与ARMA模型,学会运用Matlab工具对

对上述三种模型进行统计特性分析,通过对2阶模型的仿真分析,探讨几种模型的适用范围,并且通过实验分析理论分析与实验结果之间的差异。

2、实验原理

AR模型分析:

设有AR

(2)模型,

X(n)=-0.3X(n-1)-0.5X(n-2)+W(n)

其中:

W(n)是零均值正态白噪声,方差为4。

(1)用MATLAB模拟产生X(n)的500观测点的样本函数,并绘出波形

(2)用产生的500个观测点估计X(n)的均值和方差

(3)画出理论的功率谱

(4)估计X(n)的相关函数和功率谱

【分析】给定二阶的AR过程,可以用递推公式得出最终的输出序列。

或者按照一个白噪声通过线性系统的方式得到,这个系统的传递函数为:

Pxw

1

H(z)

12

10.3z0.5z

这是一个全极点的滤波器,具有无限长的冲激响应。

对于功率谱,可以这样得到,

 

可以看出,Fxw完全由两个极点位置决定。

对于AR模型的自相关函数,有下面的公式:

这样,就可以求出理论的AR模型的自相关序列。

1.产生样本函数,并画出波形

2.题目中的AR过程相当于一个零均值正态白噪声通过线性系统后的输出,可以按照上面的方法进行描述。

clearall;

b=[1];a=[10.30.5];%由描述的差分方程,得到系统传递函数

h=impz(b,a,20);%得到系统的单位冲激函数,在20点处已经可以认为值是0

randn('state',0);

w=normrnd(0,2,1,500);%产生题设的白噪声随机序列,标准差为2

x=filter(b,a,w);%通过线形系统,得到输出就是题目中要求的2阶AR过程

plot(x,'r');

ylabel('x(n)');

title('邹先雄——产生的AR随机序列');

gridon;

得到的输出序列波形为:

2.估计均值和方差

可以首先计算出理论输出的均值和方差,得到mx0,对于方差可以先求出理论自相

关输出,然后取零点的值。

并且,:

(恥矯(叭带入有

在最大值处输出的功率,也就是方差,为

<7;■匚⑼-5.6

两者合理论值吻

对实际数据进行估计,均值为mean(x)=-0.0703,而方差为var(x)=5.2795,

合得比较好。

程序及运行结果图如下,其中y_mean表示均值,y_var表示方差。

>>clearall;

b=[l];a=[l0.30.5];由描连的差分方程,稈到墓统借诺函数

hFinpitbia^O);%得到系統的单位冲液固救,在如点处已经可以认芮值是Qrandn(state',0);

iRnorarndtOij^j13500);K产主题设的白噪声曜机序列?

标准差为2x=fil-ter(bja,wk%通讨毀理焉绑・得到珈出試昱题目申裏求的2歸AR过理Plfft(X,JrJ);

ylabsl(1k(n)?

);

title(-产生的AR甌机序列);

£ridon.;

yl_Fiean.=niftarL(x)

y2_var=var(x)

yl_nean=

-0.0703

y2_var二

5.2795

3.画出理论的功率谱密度曲线

理论的功率谱为,

砂七-0|时卄4叶)

用下面的语句产生:

delta=2*pi/1000;

w_min=-pi;

w_max=pi;

Fs=1000;

可以看出,这个系统是带通系统。

4•估计自相关函数和功率谱密度

用实际数据估计自相关函数和功率谱的方法前面已经讨论过,在这里仅给出最后的仿真图形。

Mlag=20;%定义最大自相关长度

Rx=xcorr(x,Mlag,'coeff');

m=-Mlag:

Mlag;

stem(m,Rx,'r.');

title('邹先雄自相关函数');

最终的值为

邹先雄一目相关團数

可以看出,它和上面的理论输出值吻合程度很好。

实际的功率谱密度可以用类似于上面的方

法进行估计,

window=hamming(20);%采用hanmming窗,长度为20

noverlap=10;%重叠的点数

Nfft=512;%做FFT的点数

Fs=1000;%采样频率,为1000Hz

b=[1];a=[10.30.5];%由描述的差分方程,得到系统传递函数

h=impz(b,a,20);%得到系统的单位冲激函数,在20点处已经可以认为值是0

randn('state',0);

w=normrnd(0,2,1,500);%产生题设的白噪声随机序列,标准差为2

x=filter(b,a,w);%通过线形系统,得到输出就是题目中要求的2阶AR过程

[Px,f]=pwelch(x,window,noverlap,Nfft,Fs,'onesided');%估计功率谱密度

f=[-fliplr(f)f(1:

end)];%构造一个对称的频率,范围是[-Fs/2,Fs/2]

Py=[-fliplr(Px)Px(1:

end)];%对称的功率谱

plot(f,10*log10(Py),'b');

title('邹先雄一一实际的功率谱密度曲线');

估计出来的功率谱密度为,

将两幅图画在一起,可以看到拟合的情况比较好(两者相位刚好相反,但是基本波形相似)

代码如下:

clearall;

delta=2*pi/1000;

w_min=-pi;

w_max=pi;

Fs=1000;

w=w_min:

delta:

w_max;%得到数字域上的频率取样点,范围是[-pi,pi]

Gx=4*(abs(1丿(1+0.3*exp(-i*w)+0.5*exp(-2*i*w)))A2);%计算出理论值

Gx=Gx/max(Gx);%归一化处理

f=w*Fs/(2*pi);%转化到模拟域上的频率结束

plot(f,Gx,'r');

holdon;

title('邹先雄一一理论和实际的功率谱密度曲线拟合');

window=hamming(20);%采用hanmming窗,长度为20

noverlap=10;%重叠的点数

Nfft=512;%做FFT的点数

Fs=1000;%采样频率,为1000Hz

b=[1];a=[10.30.5];%由描述的差分方程,得到系统传递函数

h=impz(b,a,20);%得到系统的单位冲激函数,在20点处已经可以认为值是0

randn('state',0);

w=normrnd(0,2,1,500);%产生题设的白噪声随机序列,标准差为2

x=filter(b,a,w);%通过线形系统,得到输出就是题目中要求的2阶AR过程

[Px,f]=pwelch(x,window,noverlap,Nfft,Fs,'onesided');%估计功率谱密度f=[-fliplr(f)f(1:

end)];%构造一个对称的频率,范围是[-Fs/2,Fs/2]Py=[-fliplr(Px)Px(1:

end)];%对称的功率谱Py=-10*log10(Py);

Py=Py/max(Py);

Py=-Py;Py=3*Py;Py=Py+2.6;%用来归一处理,使两者吻合plot(f,Py,'b');

legend('实际值','理论值');

gridon;

邹先雄一理论和实际的功率谙密度曲线拟合

ARMA模型分析

设有ARMA(2,2)模型,

X(n)+0.3X(n-1)-0.2X(n-2)=W(n)+0.5W(n-1)-0.2W(n-2)

W(n)是零均值正态白噪声,方差为4。

(1)用MATLAB模拟产生X(n)的500观测点的样本函数,并绘出波形

(2)用产生的500个观测点估计X(n)的均值和方差

(3)画出理论的功率谱

(4)估计X(n)的相关函数和功率谱

【分析】给定(2,2)的ARMA过程,也可以用递推公式得出最终的输出序列。

或者按照一个白噪声通过线性系统的方式得到,这个系统的传递函数为:

7173亠。

对于功率谱,可以这样得到,

对于ARMA过程,当模型的所有极点均落在单位圆内时,才是一个渐进平稳的随机过程。

这个过程的自相关函数不能简单地写成Yule-Walker方程形式,它于模型的参数具有高度的

非线性关系。

1.产生样本函数,并画出波形

题目中的ARMA过程相当于一个零均值正态白噪声通过线性系统后的输出,可以按照上面的方法进行描述。

clearall;

b=[10.5-0.2];a=[10.3-0.2];%由描述的差分方程,得到系统传递函数

h=impz(b,a,10);%得到系统的单位冲激函数,在10点处已经可以认为值是0

randn('state',0);

w=normrnd(0,2,1,500);%产生题设的白噪声随机序列,标准差为2

x=filter(b,a,w);%通过线形系统,得到输出就是题目中要求的(2,2)阶ARMA过程

plot(x,'r');

title('邹先雄一一输出的AR随机序列');

得到的输出序列波形为:

邹先雄一输出的AR随机序列

0SO1C01S02002503003504004&0500

2.估计均值和方差

可以首先计算出理论输出的均值和方差,得到mx0,对于方差可以先求出理论自相关输出,然后取零点的值。

(nt)壬蚁川)*)*几(m)

并且,K(耐■镂何),带入有

在最大值处就是输出的功率,也就是方差,为

GT;-7;(0>-4.2

对实际数据进行估计,均值为mean(x)=-0.0547,而方差为var(x)=3.8,两者和理论值吻

合的比较好。

附代码及运行结果截图如下:

»clearall,

b=[l0.5-0.2]:

sf[10.3-0.2];%由插述的差分方程,得到系缔传递團数hFi»pi(bjaj10):

K谒到嘉统的单位冲致函数,在10点处已经可叹认対值恳口

Anfstatet0):

^norBrndO,2^,500);%产生腫设的白噪声随机序列,标准差拘2y=filter(bja^):

35谨过线形系统,得對输出就是题目中要求的也,?

)阶ARMA过程plot(X,'rJ);

Py_mean=nieaiLtK)

Pyvarsvar(x)

Py.mean=

-0.1488

Py_var=

3.798E

3.画出理论的功率谱密度曲线

理论的功率谱为,

耳(也)=卑(岬心卜4阳

用下面的语句产生:

delta=2*pi/1000;w_min=-pi;w_max=pi;Fs=1000;

w=w_min:

delta:

w_max;%得到数字域上的频率取样点,范围是[-pi,pi]

NS=1+0.5*exp(-i*w)-0.2*exp(-2*i*w);%分子

DS=1+0.3*exp(-i*w)-0.2*exp(-2*i*w);%分母

Gx=4*(abs(NS./DS)A2);%计算出理论值

Gx=Gx/max(Gx);f=w*Fs/(2*pi);%转化到模拟域上的频率

plot(f,Gx,'b');

title('邹先雄一一理论的功率谱密度曲线');

gridon;

邹先雄一理论的功率谱密度曲线

4•估计相关函数和功率谱密度曲线

用实际数据估计自相关函数和功率谱的方法前面已经讨论过,在这里仅给出仿真图形。

%计算理论和实际的自相关函数序列

Mlag=20;%定义最大自相关长度

Rx=xcorr(x,Mlag,'coeff);

m=-Mlag:

Mlag;

stem(m,Rx,'r.');

title('邹先雄一一估计自相关函数’);

最终的值为

实际的功率谱密度可以用类似于上面的方法进行估计,

window=hamming(20);%采用hanmming窗,长度为20

noverlap=10;%重叠的点数

Nfft=512;%做FFT的点数

Fs=1000;%采样频率,为1000Hz

b=[10.5-0.2];a=[10.3-0.2];%由描述的差分方程,得到系统传递函数

h=impz(b,a,10);%得到系统的单位冲激函数,在10点处已经可以认为值是0

randn('state',0);

w=normrnd(0,2,1,500);%产生题设的白噪声随机序列,标准差为2

x=filter(b,a,w);%通过线形系统,得到输出就是题目中要求的(2,2)阶ARMA过程

[Px,f]=pwelch(x,window,noverlap,Nfft,Fs,'onesided');%估计功率谱密度

f=[-fliplr(f)f(1:

end)];%构造一个对称的频率,范围是[-Fs/2,Fs/2]

Py=[fliplr(Px)Px(1:

end)];%对称的功率谱

plot(f,10*log10(Py),'b');

title('邹先雄一一实际的功率谱密度曲线');

估计出来的功率谱密度为

邹先雄—奚际的功率谱密度曲线

”2了

-28

2§101LF」LL」I.

*-500400-300-200-1000100200300490500

把两幅图画在一起,可以得到下面的图形,可以看出两者的吻合度比较高。

delta=2*pi/1000;w_min=-pi;w_max=pi;Fs=1OOO;

w=w_min:

delta:

w_max;%得到数字域上的频率取样点,范围是[-pi,pi]

NS=1+0.5*exp(-i*w)-0.2*exp(-2*i*w);%分子

DS=1+0.3*exp(-i*w)-0.2*exp(-2*i*w);%分母

Gx=4*(abs(NS./DS).A2);%计算出理论值

Gx=Gx/max(Gx);f=w*Fs/(2*pi);%转化到模拟域上的频率

plot(f,Gx,'r');

title('邹先雄一一理论和实际的功率谱密度曲线的拟合');

holdon;

window=hamming(20);%采用hanmming窗,长度为20

noverlap=10;%重叠的点数

Nfft=512;%做FFT的点数

Fs=1000;%采样频率,为1000Hz

b=[10.5-0.2];a=[10.3-0.2];%由描述的差分方程,得到系统传递函数

h=impz(b,a,10);%得到系统的单位冲激函数,在10点处已经可以认为值是0

randn('state',0);

w=normrnd(0,2,1,500);%产生题设的白噪声随机序列,标准差为2

x=filter(b,a,w);%通过线形系统,得到输出就是题目中要求的(2,2)阶ARMA过程

[Px,f]=pwelch(x,window,noverlap,Nfft,Fs,'onesided');%估计功率谱密度

f=[-fliplr(f)f(1:

end)];%构造一个对称的频率,范围是[-Fs/2,Fs/2]

Py=[fliplr(Px)Px(1:

end)];%对称的功率谱

Py=10*log10(Py);Py=Py/max(Py);

Py=-Py;Py=3*Py;Py=Py+4;%用来归一处理,使两者吻合plot(f,Py,'b');

legend('实际值','理论值');

gridon;

邹芫嬢一理论和实际的功率谱密度由线的般合

3、实验内容

1熟悉实验原理,将实验原理上的程序应用matlab工具实现;

2、设有MA

(2)模型,

|x(n)=W(n)-0,3W(n-1)+02W(n-2)

W(n)是零均值正态白噪声,方差为4。

(1)用MATLAB模拟产生X(n)的500观测点的样本函数,并绘出波形

(2)用产生的500个观测点估计X(n)的均值和方差

(3)画出理论的功率谱

(4)估计X(n)的相关函数和功率谱完成4个问题的源代码如下

clearall;

%产生样本函数,并画出波形

b=[1-0.30.2];a=[1];%由描述的差分方程,得到系统传递函数

h=impz(b,a,10);%得到系统的单位冲激函数,在10点处已经可以认为值是0

randn('state',0);

w=normrnd(0,2,1,500);%产生题设的白噪声随机序列,标准差为2x=filter(b,a,w);%通过线形系统,得到输出就是题目中要求的(2,2)阶ARMA过程figure

(1);

plot(x,'r');

title('邹先雄——样本函数');

Py_mean=mean(x)

Py_var=var(x)%画出理论的功率谱密度曲线delta=2*pi/1000;w_min=-pi;w_max=pi;Fs=1000;

w=w_min:

delta:

w_max;%得到数字域上的频率取样点,范围是[-pi,pi]NS=1-0.3*exp(-i*w)+0.2*exp(-2*i*w);%分子

DS=1;%分母

Gx=4*(abs(NS./DS)A2);%计算出理论值

Gx=Gx/max(Gx);f=w*Fs/(2*pi);%转化到模拟域上的频率figure

(2);

plot(f,Gx,'b');

title('邹先雄——理论的功率谱密度曲线');%估计相关函数

Mlag=20;%定义最大自相关长度Rx=xcorr(x,Mlag,'coeff');

m=-Mlag:

Mlag;

figure(3);

stem(m,Rx,'r.');

title('邹先雄——估计相关函数');%画出估计的功率谱密度曲线window=hamming(20);%采用hanmming窗,长度为20noverlap=10;%重叠的点数Nfft=512;%做FFT的点数

Fs=1000;%采样频率,为1000Hz[Px,f]=pwelch(x,window,noverlap,Nfft,Fs,'onesided');%估计功率谱密度

f=[-fliplr(f)f(1:

end)];%构造一个对称的频率,范围是[-Fs/2,Fs/2]

Py=[fliplr(Px)Px(1:

end)];%对称的功率谱

figure(4);plot(f,10*log10(Py),'b');

title('邹先雄——估计的功率谱密度曲线');%对实际和估计两功率谱密度曲线进行拟合delta=2*pi/1000;w_min=-pi;w_max=pi;Fs=1000;

w=w_min:

delta:

w_max;%得到数字域上的频率取样点,范围是[-pi,pi]

NS=1-0.3*exp(-i*w)+0.2*exp(-2*i*w);%分子

DS=1;%分母

Gx=4*(abs(NS./DS).A2);%计算出理论值

Gx=Gx/max(Gx);f=w*Fs/(2*pi);%转化到模拟域上的频率figure(5);

plot(f,Gx,'r');

title('邹先雄——实际和估计两功率谱密度曲线的拟合');

holdon;

window=hamming(20);%采用hanmming窗,长度为20

noverlap=10;%重叠的点数

Nfft=512;%做FFT的点数

Fs=1000;%采样频率,为1000Hz

b=[1-0.30.2];a=[1];%由描述的差分方程,得到系统传递函数

h=impz(b,a,10);%得到系统的单位冲激函数,在10点处已经可以认为值是0

randn('state',0);

w=normrnd(0,2,1,500);%产生题设的白噪声随机序列,标准差为2

x=filter(b,a,w);%通过线形系统,得到输出就是题目中要求的(2,2)阶ARMA过程

[Px,f]=pwelch(x,window,noverlap,Nfft,Fs,'onesided');%估计功率谱密度

f=[-fliplr(f)f(1:

end)];%构造一个对称的频率,范围是[-Fs/2,Fs/2]

Py=[fliplr(Px)Px(1:

end)];%对称的功率谱

Py=10*log10(Py);

Py=Py/max(Py);

Py=-Py;Py=3*Py;Py=Py+4;%用来归一处理,使两者吻合

plot(f,Py,'b');

legend('实际值','理论值');

gridon;

样本函数波形为:

邹先雄——样本函数

理论功率谱密度曲线为:

邹先雄——理论的功率谱密度曲线

估计相关函数波形为:

 

邹先雄一怙计相关商数

 

0.G

0.4

0.2

11T

-0.2

■°^0d5-10

10

15

20

 

估计功率谱密度曲线为:

实际和估计两功率谱密度曲线的拟合截图如下:

 

附程序运行后得到的均值与方差的截图,其中差,大小为3.9324:

y_mean为均值,大小为-0.1127;y_var为方

holdon,

windov^hanuung(20);%采用harunning窗'点度为20

rwnrerlap=10:

%重屋的点數

Nfft=612;%做FFT的点勤

Fs=10CO;K采样频車,再血0Hz

b=[l-0.3D.2];a^[l];%由描述的差分方程,得到系统传递的敎

hFl些叫13;M得到系绕的单位冲漱函敎,在IO点处已径可以认论值是Urandu(*stat$".D);

^norurndCD^^1,500):

%产生题设的白噪芦随机序列,标淮差苑2

黑通过线形系编,得到输出就是题目中要求的住,2)阶ARIA过程[Px*f]=pnrelch(Xjwindo-Vjnoverlap,Hfft,Fs,7onesided,);%皆计功率i普密度f=[-fliplr(f)f(l!

fend)J;%构程一个对称的范圍是[-昨/2』Fs/2]

P尸[fldplr(Px)Pkti;ozuD];%对称的#1車谱

Py=10»losl0(Py):

Py=Py/niax(Py);

Py=^Py;Py=3+

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 经管营销 > 经济市场

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2