用MATLAB求一组数据的自相关函数和偏相关函数,并画图

该文描述了如何使用MATLAB处理一个水文站1915年至1973年的最大径流量数据,计算并绘制了自相关函数和偏相关函数的图像,保留了3位有效数字。程序通过parcorr和autocorr函数直接求解,并使用vpa函数进行数值精度控制。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

某条河流的一个水文站从1915年到1973年记录的最大径流量见下,共59个数据。

15600 8960 10400 10600 10800 9880 9850 10900 8810 9960 12200 7510 8640 6380 6810 8820 14400 7440 7240 6430 11000 7340 9260 5290 9130 7480 6980 9650 7260 8750 9900 7310 9040 7310 8850 7840 10700 6190 9610 7580 9990 6150 8250 6030 8980 6180 9630 9490 2340 11100 5090 10900 6490 12600 6640 7430 6760 10000 9300

求自相关函数\widehat{\rho }_{k}和偏相关函数\widehat{\Phi }_{kk}(k=1,2,3,.....,15),保留3位有效数字。

用matlab编写程序,计算出\widehat{\rho }_{k}\widehat{\Phi }_{kk},并做出其图像。

在Matlab编辑器中编写以下程序:

clear ;
z = [15600 8960 10400 10600 10800 9880 9850 10900 8810 9960 ...
    12200 7510 8640 6380 6810 8820 14400 7440 7240 6430 11000 ...
    7340 9260 5290 9130 7480 6980 9650 7260 8750 9900 7310 9040 ...
    7310 8850 7840 10700 6190 9610 7580 9990 6150 8250 6030 8980 ...
    6180 9630 9490 2340 11100 5090 10900 6490 12600 6640 7430 6760 ...
    10000 9300] ;
%计算z的平均值
m=mean(z);
%z的标准化
for k = 1:59 
    w(k) = z(k) - m;
end

x = 0:1:15;
figure;
subplot(2,1,1);
PartialACF=parcorr(z,15);                %用这个函数,直接可以求得偏相关函数的值
plot(x,PartialACF,'-b.');                %画曲线
xlabel('k取值');
ylabel('偏相关函数值');
title('偏相关函数');

subplot(2,1,2);
ACF = autocorr(z,15);                     %用这个函数直接可以求得自相关函数的值
plot(x,ACF,'-b.');                        %画曲线
xlabel('k取值');
ylabel('自相关函数值');
title('自相关函数');

 若要求得得自相关函数和偏相关函数得值取有效数字3位,可以使用vpa(a,b)这个函数。

在这个函数语句中,a 是所求得的这一组数,也就是所求对象;b是保留几位有效数字。

在本题目中,可以在命令窗口输入:

 vpa([PartialACF],3)

 

 vpa([ACF],3)

即可得出最后结果。

评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值