基本信息
源码名称:GM(1,1)及二次残差修正
源码大小:2.31KB
文件格式:.zip
开发语言:MATLAB
更新时间:2021-06-26
   友情提示:(无需注册或充值,赞助后即可获取资源下载链接)

     嘿,亲!知识可是无价之宝呢,但咱这精心整理的资料也耗费了不少心血呀。小小地破费一下,绝对物超所值哦!如有下载和支付问题,请联系我们QQ(微信同号):813200300

本次赞助数额为: 2 元 
   源码介绍


%计算残差序列
epsilon =A - H;
disp(['残差为:',num2str(epsilon(1:n))]);
%法一:相对残差Q检验
%计算相对误差序列
delta = abs(epsilon./A);
disp(['相对残差为:',num2str(delta(1:n))]);
%计算相对误差Q
disp(['相对残差ς检验:ς=',num2str(mean(delta).*100),'%']);
%二:方差比C检验
C = std(epsilon, 0)/std(A, 0);
disp(['方差比检验:C=',num2str(mean(C))]);
if C<0.35
    disp('精度等级:一级 ');
else if (0.35<=C)&&(C<0.5)
        disp('精度等级:二级');
    else if (0.5<=C)&&(C<0.65)
            disp('精度等级:三级');
        else
            disp('精度等级:四级');
        end
    end
end
%三:小误差概率P检验
S1 = std(A, 1);
tmp = find(abs(epsilon - mean(epsilon))< 0.6745 * S1);
P = length(tmp)/n;
disp(['小误差概率检验:P=',num2str(mean(P))]);
if P>0.95
    disp('精度等级:一级 ');
else if P>0.8
        disp('精度等级:二级');
    else if P>0.7
            disp('精度等级:三级');
        else
            disp('精度等级:四级');
        end
        end
end
for i=1:n
    Q(i)=epsilon(i) 2.*88448.8916;
end
disp(['正化后的序列 Q :',num2str(Q(1:n))]);
disp('取最后十个数重新建模,进行残差一次修正;');