“常用公式”在线计算,“设计手册”在线查询
%多元变量灰色预测clear allclc%输入带预测时刻k及原始序列X0k=2;%预测的代数 我自己输的p1=[1 2 3 4 5 6]';p2=[2 3 4 5 6 7]';p3=[3 4 5 6 7 8]';X0=[p1 p2 p3];%对原始序列X0累加生成序列X1[n,m]=size(X0);for j=1:m c=0;for i=1:nc=X0(i,j)+c;X1(i,j)=c;endend%计算数据矩阵Lfor j=1:mfor i=1:n-1l(i,j)=(X1(i,j)+X1(i+1,j))/2;endendL=[l ones(n-1,1)];%计算Y及参数计值for j=1:mY(1:n-1,j)=X0(2:n,j);a(:,j)=inv(L'*L)*L'*Y(1:n-1,j);enda=a';A=a(1:end,1:end-1);B=a(1:end,end);%计算模型的拟合值或预测值S=X1(1,1:end);if k==1Z=S'elseif k>1Z=expm2(A*(k-1))*S'+inv(A)*(expm2(A*(k-1))-eye(size(expm2(A*(k-1)))))*B-(expm2(A*(k-2))*S'+inv(A)*(expm2(A*(k-2))-eye(size(expm2(A*(k-2)))))*B)%Expm2通过泰勒级数求矩阵指数else disp('输入错误!k不得小于1')end为啥我k=1时就能运行,换个数就不能了
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 分享淘帖 支持支持 反对反对

共 2 个关于本帖的回复 最后回复于 2014-5-16 10:32

沙发
刘建锋 十品草民 发表于 2014-5-15 17:50:32 | 只看该作者
研发埠培训中心
Undefined function 'expm2' for input arguments of type 'double'.你的expm2函数没定义!
板凳
明德烈 十品草民 发表于 2014-5-16 10:32:17 | 只看该作者
研发埠人才中心
这是matlab自带的函数啊,这个可以运行的,问题不在于此吧
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关注我们

360网站安全检测平台