| Labfans是一个针对大学生、工程师和科研工作者的技术社区。 | 论坛首页 | 联系我们(Contact Us) |
![]() |
|
|
|
|
#1 |
|
普通会员
注册日期: 2008-08-17
年龄: 37
帖子: 70
声望力: 21 ![]() ![]() |
这是运行结果
>> c7fun7_2 KK = 2.5837 1.0250 GM(1,N)对数列1进行预测结果 xx10 = 2.8740 5.8137 3.2135 3.3856 3.4809 数列1原始观测数据 X10 = 2.8740 3.2780 3.3070 3.3900 3.3679 |
|
|
|
|
|
#2 |
|
普通会员
注册日期: 2008-08-17
年龄: 37
帖子: 70
声望力: 21 ![]() ![]() |
原来的程序有两处错误:
disp('GM(1,N)对数列1进行预测结果'); (1) XN1=Xn1'; B=[B( ,XN1(2:m,1:n)]; (2)(1)处的右括号是中文模式下输入的,有误 (2)处少了个右括号 都是些小错误 |
|
|
|
|
|
#3 |
|
初级会员
注册日期: 2008-08-08
年龄: 66
帖子: 10
声望力: 18 ![]() |
|
|
|
|
|
|
#4 |
|
普通会员
注册日期: 2008-08-17
年龄: 37
帖子: 70
声望力: 21 ![]() ![]() |
|
|
|
|
|
|
#5 | |
|
游客
帖子: n/a
|
引用:
t=[2002 2003 2004 2005 2006 2007]; X10=[269751 2710156 270202 270202 272770 2777314 282783]/100 X20=[17675 250172 265415 239894 255345 260253]/100; X30=[566.9 756 761.3 681 590 1236]; X40=[812 1106 1108 1008 1177 1251]; global AA UU; U(4)=0;A(4,4)=0; kk1=c7fun73(X10);A(1,1)=-kk1(1);U(1)=kk1(1); kk2=c7fun72(X20,[X10;X30]);A(2,1)=kk2(2);A(2,2)=-kk2(1);A(2,3)=kk2(3); kk3=c7fun72(X20,X30);A(3,3)=-kk3(1);A(3,2)=kk3(2); kk4=c7fun73(X40);A(4,4)=kk4(1);U(4)=kk4(2); disp('估计出的系统预测模型系数-微分方程组系数') AA=A UU=U( ![]() %调用微分方程组的求解命令解微分方程组 t0=2002;tf=2016; y0=[269.751;176.75;566.9;812]; [tt,xx]=ode15s(@c7fun74,[t0,tf],y0); plot(tt,xx(:,1),'b-^',tt,xx(:,2),'b-o',tt,xx(:,3),'b-*',tt,xx(:,4),'b-p'); legend('人口-预测/100','粮食消费-预测/100','畜牧业产值-预测','粮食亩产-预测'); xlabel('年份');ylabel('预测值');hold on; function dxt =c7fun74(t,x) global AA UU; dxt=AA*[x(1);x(2);x(3);x(4)]+UU; 请帮助解决以下问题 ??? Error: File: c7fun74.m Line: 19 Column: 35 Unbalanced or unexpected parenthesis or bracket. |
|
|
|
|
#6 |
|
普通会员
注册日期: 2008-08-17
年龄: 37
帖子: 70
声望力: 21 ![]() ![]() |
代码:
function c7fun7_4
t=[2002 2003 2004 2005 2006 2007];
%X10=[269751 2710156 270202 270202 272770 2777314 282783]/100
%此处多一个数据,需要把多的删去
X10=[269751 2710156 270202 272770 2777314 282783]/100;
X20=[17675 250172 265415 239894 255345 260253]/100;
X30=[566.9 756 761.3 681 590 1236];
X40=[812 1106 1108 1008 1177 1251];
global AA UU;
U(4)=0;A(4,4)=0;
kk1=c7fun73(X10);A(1,1)=-kk1(1);U(1)=kk1(2);
kk2=c7fun72(X20,[X10;X30]);
A(2,1)=kk2(2);
A(2,2)=-kk2(1);
A(2,3)=kk2(3);
kk3=c7fun72(X20,X30);A(3,3)=-kk3(1);A(3,2)=kk3(2);
kk4=c7fun73(X40);A(4,4)=kk4(1);U(4)=kk4(2);
disp('估计出的系统预测模型系数-微分方程组系数')
AA=A
UU=U(:)
%EDIT BY PSL@CSU
%QQ:547423688
%Email:[email protected]
%——求算GM(1,N)参数函数
function a=c7fun72(X10,Xn0)
[n,m]=size(Xn0);
%——1次累加生成
s1=0;s2([1:n],1)=0;
for jj=1:1:m
X11(jj)=s1+X10(jj); Xn1(:,jj)=s2+Xn0(:,jj); s1=X11(jj); s2=Xn1(:,jj);
end
%——建立矩阵B、yn
for ii=1:1:m-1
B(ii)=-(X11(ii)+X11(ii+1))/2;
end
XN1=Xn1';B=[B(:),XN1(2:m,1:n)];
yn=X10([2:m])'; a=inv((B'*B))*B'*yn;
%——求算GM(1,1)参数函数
function au=c7fun73(X0)
m=length(X0);
%——1次累加生成
s1=0;
for jj=1:1:m; X1(jj)=s1+X0(jj); s1=X1(jj); end
%——建立矩阵B、y
for ii=1:1:m-1; B(ii)=-(X1(ii)+X1(ii+1))/2; end
B=[B(:),ones(m-1,1)];
y=X0([2:m])';au=inv((B'*B))*B'*y;
|
|
|
|
|
|
#7 |
|
初级会员
注册日期: 2008-08-08
年龄: 66
帖子: 10
声望力: 18 ![]() |
|
|
|
|