⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 pgm(1,1).txt

📁 本程序为改正后的灰色系统模型,具有很好的利用价值!
💻 TXT
字号:
sizexd2 = size(x,2);
n=0;
for p=0.01:0.01:0.99
    n=n+1;
    k=0;
    for y1=x
        k=k+1;
        if k>1
            x1(k)=x1(k-1)+x(k);
                        z1(k-1)=-p*x1(k)-(1-p)*x1(k-1);
                       yn1(k-1)=x(k);
        else
            x1(k)=x(k);
        end
    end
       sizez1=size(z1,2);
       z2 = z1';
    z3 = ones(1,sizez1)';
    
    YN = yn1';      
    B=[z2 z3];
    au0=inv(B'*B)*B'*YN;
    au = au0';
       afor(n) = au(1);
    ufor(n) = au(2);
    ua = au(2)./au(1);
  
    constant1 = x(1)-ua;
    afor1(n) = -afor(n);
    x1t1 = 'x1(t+1)';
    estr = 'exp';
    tstr = 't';
    leftbra = '(';
    rightbra = ')';
  
    strcat(x1t1,'=',num2str(constant1),estr,leftbra,num2str(afor1),tstr,rightbra,'+',leftbra,num2str(ua),rightbra);
      
      
    k2 = 0;
    for y2 = x1
        k2 = k2 + 1;
        if k2 > k  
        else
            ze1(k2) = exp(-(k2-1)*afor(n));
        end
    end
    %ze1
    
    sizeze1 = size(ze1,2);
    z4 = ones(1,sizeze1)';
    G=[ze1' z4];
    X1 = x1';
    au20=inv(G'*G)*G'*X1;
    au2 = au20';
 
    Aval = au2(1);
    Bval = au2(2);
   
    strcat(x1t1,'=',num2str(Aval),estr,leftbra,num2str(afor1),tstr,rightbra,'+',leftbra,num2str(Bval),rightbra);
     nfinal = sizexd2-1 + 1;
   
    for  k3=1:nfinal
        x3fcast(k3) = constant1*exp(afor1(n)*k3)+ua;
    end
  
    for  k31=nfinal:-1:0
        if k31>1
            x31fcast(k31+1) = x3fcast(k31)-x3fcast(k31-1);
        else
            if k31>0
                x31fcast(k31+1) = x3fcast(k31)-x(1);
            else
                x31fcast(k31+1) = x(1);
            end
        end
    end
    xn(n,:)=x31fcast;
       Can(n)=0;
    for i=1:sizexd2
        Can13(n,i)=abs((x(i)-x31fcast(i))/x(i));
        Can(n)=Can(n)+abs((x(i)-x31fcast(i))/x(i));
    end
    
    
    for  k4=1:nfinal
        x4fcast(k4) = Aval*exp(afor1(n)*k4)+Bval;
    end
       
    for  k41=nfinal:-1:0
        if k41>1
            x41fcast(k41+1) = x4fcast(k41)-x4fcast(k41-1);
        else
            if k41>0
                x41fcast(k41+1) = x4fcast(k41)-x(1);
            else
                x41fcast(k41+1) = x(1);
            end
        end
    end
    xn4(n,:)=x41fcast;
     Can1(n)=0;
    for i=1:sizexd2
        Can14(n,i)=abs((x(i)-x31fcast(i))/x(i));
        Can1(n)=Can1(n)+abs((x(i)-x31fcast(i))/x(i));
    end
end
kk31m=min(Can);
for i=1:99
    if Can(i)~=kk31m
        cancha(i)=0;
    else
        cancha(i)=kk31m;
    end
end
x9=find(cancha);
p1=0.01*x9
mm=zeros(1,sizexd2);
cancha13=zeros(1,sizexd2);
mm=xn(x9,:);
mm=mm';
 
Cancha13=Can13(x9,:);
cancha13=Cancha13';

kk41m=min(Can1);
for i=1:99
    if Can1(i)~=kk41m
        cancha1(i)=0;
    else
        cancha1(i)=kk41m;
    end
end
x9=find(cancha1);
p2=0.01*x9
nn=xn4(x9,:);
nn=nn';
Cancha14=Can14(x9,:);
Cancha14=Cancha14';
a=afor(n) 
u=ufor(n) 

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -