www.gusucode.com > 灰色预测工具箱源码程序 > 灰色预测工具箱/ccgm11.m

    function [px0,ab,rel]=ccgm11(x0,number)
%[px0,ab,rel]=gm11(x0,number)
%px0为残差预测数列,ab为求得的系数,rel为平均相对误差(为百分比)
%默认的number参数为原数组大小
if nargin==1
    number=max(size(x0));
end

n=max(size(x0));    %数组大小..

[px0,ab,rel]=gm11(x0,number);
wucha=x0-px0(1:n);
i=n;
%求后面的同号的数目.
while(wucha(i)*wucha(i-1)>0 & i>=2)
    i=i-1;
end

start=i;
length=n-i+1;
new=wucha(start:n);
if length>=4
    pwucha=gm11(new);

px0(start:n)=px0(start:n)+pwucha  
clear wucha;
wucha=px0-x0;
wucha=wucha./x0;    %相对误差
wucha=abs(wucha);
rel=sum(wucha)/(n-1)*100;
end