亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? gpc.m

?? generalized predictive control
?? M
字號:
function [ys,y,ym,u,du,NoiseVariance,G,A,B]=gpc(NU,NY,plant,delayp,model,delaym,par,alfa,gama,q,T);
set(plant,'iodelay',delayp);
set(model,'iodelay',delaym);

M=par(1); n1=par(2); n2=par(3);f=par(4); Ts=par(5); sw=par(6);
Noise=par(7);
Disturbance=par(8);
P=n2-n1+1;

plantd=c2d(plant,Ts,'zoh');
modeld=c2d(model,Ts,'zoh');

delp=plantd.iodelay;
delm=modeld.iodelay;

for i=1:NY;
    for j=1:NU,
        B=plantd.num{i,j};
        A=plantd.den{i,j};
        Bp(i,j,1:length(B)+delp(i,j))=[zeros(1,delp(i,j)) B];
        Ap(i,j,1:length(B)+delp(i,j))=[A zeros(1,delp(i,j))];
        nbp(i,j)=length(Bp);
        nap(i,j)=length(Ap);
    end,
end,

for i=1:NY;
    for j=1:NU,
        B=modeld.num{i,j};
        A=modeld.den{i,j};
        Bm(i,j,1:length(B)+delm(i,j))=[zeros(1,delm(i,j)) B];
        Am(i,j,1:length(B)+delm(i,j))=[A zeros(1,delm(i,j))];
        nbm(i,j)=length(Bm);
        nam(i,j)=length(Am);
    end,
end,

switch sw,  
    case 0,  
        for i=1:NY,
            ys(i,:)=zeros(T,1);
        end,


    case 1,
        for i=1:NY,
            ys(i,:)=[zeros(1,(i-1)*fix(0.5*T/NY)) ones(1,fix(0.5*T)) zeros(1,fix(0.5*T)-(i-1)*fix(0.5*T/NY))];
        end,
    case 2,
        for i=1:NY,
            ys(i,:)=sin(2*pi*0.001*f*(0:Ts:Ts*(T-1))/Ts+(i-1)*pi/NY);
        end,
    case 3,
        for i=1:NY,
            ys(i,:)=square(2*pi*0.001*f*(0:Ts:Ts*(T-1))/Ts+(i-1)*pi/NY);
        end,
end,

    %----------------------------------------------------------------------
switch Disturbance,
    case 0,  
        for i=1:NY,
            Dis(i,:)=zeros(1,T);
        end,

    case 1,
        for i=1:NY,
            Dis(i,:)=[zeros(1,(i-1)*fix(0.5*T/NY)+1) ones(1,fix(0.5*T)+1) zeros(1,fix(0.5*T)-(i-1)*fix(0.5*T/NY)+1)];
%             Dis(i,:)=[zeros(1,fix(0.5*T/NY)+1) ones(1,fix(0.5*T)+1) zeros(1,fix(0.5*T)-fix(0.5*T/NY)+1)];
        end,
    case 2,
        for i=1:NY,
            Dis(i,:)=sin(2*pi*0.007*(0:Ts:Ts*(T-1))/Ts+(i-1)*pi/NY);%.002 baraie f
        end,
    case 3,
        for i=1:NY,
            Dis(i,:)=square(2*pi*0.006*(0:Ts:Ts*(T))/Ts+(i-1)*pi/NY);%.002 baraie f
        end,
end,
switch Noise,
    case 0,      
        for i=1:NY,
            noise(i,:)=zeros(1,T+1);
        end, 
    case 1,
        for k=1:T+1,
            for i=1:NY,
                noise(i,k)=.1*rand(1);
            end,
        end,
        for i=1:NY,
            noise(i,:)=noise(i,:)-mean(noise(i,:));
        end,
    case 2,  
        for k=1:T+1,
            for i=1:NY,
                noise(i,k)=.3*rand(1);
            end,
        end,
        for i=1:NY,
            noise(i,:)=noise(i,:)-mean(noise(i,:));
        end,
        for k=1:T+1,
            for i=1:NY,
                if(k>1)
                    noise(i,k)=.5*noise(i,k-1)+.5*noise(i,k);
                else
                    noise(i,k)=.5*noise(i,k);
                end,
            end,
        end,
end,

    %----------------------------------------------------------------------

for i=1:NY,
    for j=1:NU,
        g(i,j,1:T)=filter(Bm(i,j,:),Am(i,j,:),ones(T,1));
    end,
end,

% Constructs dynamic matrix of the system
for i=1:NY,
    for j=1:NU,
        gr(1:M)=zeros(1,M);
        if n1 <= M,
            gr(1:n1)=g(i,j,n1+1:-1:2);
        else,
            gr(1:M)=g(i,j,n1+1:-1:n1+2-M);
        end,
        gc(1:n2-n1+1)=g(i,j,n1+1:n2+1);
        G((i-1)*P+1:i*P,(j-1)*M+1:j*M)=toeplitz(gc,gr);
        gdc(i,j)=g(i,j,size(g,3));
    end,
end,

% Calculate KGPC
for k=1:n2-n1+1,
    Q(1+NY*(k-1):NY*k,1+NY*(k-1):NY*k)=q;
end,

for k=1:M,
    rr(1+NY*(k-1):NY*k,1+NU*(k-1):NU*k)=gdc*gama;
end,
R=rr'*rr;
%R=eye(NU*M);
KGPC=inv(G'*Q'*Q*G+R)*G'*Q';
up=zeros(NU,1);
u(1:NU,1)=zeros(NU,1);
y(1:NY,1)=zeros(NY,1);
ym(1:NY,1)=zeros(NY,1);
ymt(1:NY,1:NU,1)=zeros(NY,NU,1);
dd(1:NY,1)=zeros(NY,1);

for k=1:T-1,
    if k > 1,
        up=u(:,k-1);
    end
    for i=1:NY,
        ydd(i,k)=y(i,k);
        for l=1:n2,
            ydd(i,k+l)=alfa(i,i)*ydd(i,k+l-1)+(1-alfa(i,i))*ys(i,k);
        end,
        yd((i-1)*(n2-n1+1)+1:i*(n2-n1+1),1)=ydd(i,k+n1:k+n2)';
    end,
  
    for i=1:NY,
        for j=1:NU,
            for m=1:n2,
                ymt(i,j,k+m)=0;
                for n=2:nam(i,j),
                    if k+m-n+1 > 0,
                        ymt(i,j,k+m)=ymt(i,j,k+m)-Am(i,j,n)*ymt(i,j,k+m-n+1);
                    end,
                end,
                for n=2:nbm(i,j),
                    if k+m-n+1 > 0,
                        if m-n+1 < 0,
                            ymt(i,j,k+m)=ymt(i,j,k+m)+Bm(i,j,n)*u(j,k+m-n+1);
                        else,
                            ymt(i,j,k+m)=ymt(i,j,k+m)+Bm(i,j,n)*up(j,1);
                        end,
                    end,
                end,
            end,
        end,
        for m=1:n2,
            ypastt(i,k+m)=0;
            for j=1:NU,
                ypastt(i,k+m)=ypastt(i,k+m)+ymt(i,j,k+m);
            end,
        end,
    end,
    
    for i=1:NY,
        ypast((i-1)*(n2-n1+1)+1:i*(n2-n1+1),1)=ypastt(i,k+n1:k+n2)';
    end,
    
    for i=1:NY,
        d((i-1)*(n2-n1+1)+1:i*(n2-n1+1),1)=dd(i,k)*ones(n2-n1+1,1);
    end,
   
    duu=KGPC*(yd-d-ypast);
    
    for j=1:NU,
        du(j,k)=duu((j-1)*M+1,1);
    end,

    u(1:NU,k)=up+du(:,k);
    
    for i=1:NY,
        for j=1:NU,
            yt(i,j,k+1)=0;
            for n=2:nap(i,j),
                if k+2-n > 0,
                    yt(i,j,k+1)=yt(i,j,k+1)-Ap(i,j,n)*yt(i,j,k+2-n);
                end,
            end,
            for n=2:nbp(i,j),
                if k+2-n > 0,
                    yt(i,j,k+1)=yt(i,j,k+1)+Bp(i,j,n)*u(j,k+2-n);
                end,
            end,
        end,
        y(i,k+1)=0;
        for j=1:NU,
            y(i,k+1)=y(i,k+1)+yt(i,j,k+1)+Dis(i,k+1)+noise(i,k+1);
        end,
    end,
          
    for i=1:NY,
        for j=1:NU,
            ymt(i,j,k+1)=0;
            for n=2:nam(i,j),
                if k+2-n > 0,
                    ymt(i,j,k+1)=ymt(i,j,k+1)-Am(i,j,n)*ymt(i,j,k+2-n);
                end,
            end,
            for n=2:nbm(i,j),
                if k+2-n > 0,
                    ymt(i,j,k+1)=ymt(i,j,k+1)+Bm(i,j,n)*u(j,k+2-n);
                end,
            end,
        end,
        ym(i,k+1)=0;
        for j=1:NU,
            ym(i,k+1)=ym(i,k+1)+ymt(i,j,k+1);
        end,
    end,
        
    for i=1:NY,
        dd(i,k+1)=y(i,k+1)-ym(i,k+1);
    end,
end,

for j=1:NU,
    u(j,T)=u(j,T-1);
    du(j,T)=du(j,T-1);
end,
if(par(7)==0)
    NoiseVariance=zeros(2,1);
else
    NoiseVariance=[std(noise(1,:)) std(noise(2,:))];
end
NN=max(NY,NU);
figure(1)

for i=1:NY,
    subplot(4,NN,i), plot((1:T)*Ts,y(i,:),'g',(1:T)*Ts,ys(i,:),'r'), title(['y',num2str(i),'     ys',num2str(i)]), grid
end,
for i=1:NY,
    subplot(4,NN,NN+i), plot((1:T)*Ts,ym(i,1:T),'g'), ylabel('ym'), grid
end,
for j=1:NU,
    subplot(4,NN,2*NN+j), plot((1:T)*Ts,u(j,:),'r'), title(['u',num2str(j)]), grid
end,
for j=1:NU,
    subplot(4,NN,3*NN+j), plot((1:T)*Ts,du(j,:),'g'), ylabel('du'), grid
end,
% for i=1:NY,
%      subplot(1,NN,i), plot((1:T)*Ts,y(i,:),'g',(1:T)*Ts,ys(i,:),'r'), title(['y',num2str(i),'     ys',num2str(i)]), grid
%  end,
%  figure(2)
%  for j=1:NU,
%      subplot(1,NN,j), plot((1:T)*Ts,u(j,:),'r'), title(['u',num2str(j)]), grid
%  end,
%  

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
日韩欧美高清一区| 久久这里只有精品6| 国精产品一区一区三区mba桃花 | 国产一区日韩二区欧美三区| 国产精品久久久久久户外露出| 欧美喷水一区二区| 99国产精品国产精品久久| 免费在线观看不卡| 亚洲制服丝袜av| 中文字幕精品三区| 26uuu精品一区二区三区四区在线 26uuu精品一区二区在线观看 | 玖玖九九国产精品| 亚洲一区在线观看免费观看电影高清 | 亚洲国产高清不卡| 精品久久国产字幕高潮| 欧美久久久久久久久久| 91色综合久久久久婷婷| 国产91精品一区二区麻豆亚洲| 免费成人美女在线观看| 午夜欧美电影在线观看| 亚洲卡通欧美制服中文| 中文字幕日韩av资源站| 国产日产欧美一区二区三区| 欧美精品一区男女天堂| 欧美一区二区三区在线看| 欧美午夜在线一二页| 91麻豆国产自产在线观看| 高清不卡在线观看av| 精品在线播放午夜| 麻豆精品久久精品色综合| 日韩影院在线观看| 午夜精品久久久久久久久久久| 一二三四区精品视频| 一区二区在线观看免费视频播放| 18欧美乱大交hd1984| 国产精品电影一区二区| 国产精品国产三级国产aⅴ无密码| 国产欧美一区二区在线| 国产亚洲综合在线| 亚洲国产精品精华液ab| 自拍偷自拍亚洲精品播放| 国产精品女同互慰在线看| 国产精品久久久久久久裸模| 国产精品视频一二三区| 亚洲欧洲日韩av| 亚洲免费观看高清完整| 一级精品视频在线观看宜春院 | 中文字幕一区日韩精品欧美| 中文字幕视频一区二区三区久| 亚洲婷婷综合色高清在线| 亚洲丝袜另类动漫二区| 一区二区三区资源| 丝瓜av网站精品一区二区| 日韩综合一区二区| 久久99精品久久久| 丁香婷婷综合激情五月色| 成人免费视频视频在线观看免费| 91麻豆精品秘密| 在线91免费看| 久久久影视传媒| 亚洲视频一区二区免费在线观看| 亚洲综合在线免费观看| 日精品一区二区三区| 国产一区二区三区免费看| 成人av手机在线观看| 色综合久久久久久久久久久| 欧美久久一二区| 国产欧美一区二区在线| 亚洲综合久久久| 国产综合色在线视频区| 91色在线porny| 欧美一区二区免费观在线| 国产欧美日韩视频一区二区| 九九九精品视频| 99久久精品国产精品久久| 91精品在线一区二区| 国产欧美日韩亚州综合| 亚洲自拍偷拍图区| 国产精品亚洲综合一区在线观看| 99精品一区二区| 日韩精品一区在线| 国产精品福利一区二区| 青青草国产精品亚洲专区无| 国产丶欧美丶日本不卡视频| 91精品福利在线| 欧美精品一区二区精品网| 亚洲精品中文在线观看| 激情综合一区二区三区| 91黄色激情网站| 久久蜜臀精品av| 亚洲第一在线综合网站| 成人久久18免费网站麻豆| 欧美高清dvd| 最好看的中文字幕久久| 久久99精品久久久久婷婷| 91国内精品野花午夜精品| 久久免费视频色| 青青草国产精品97视觉盛宴| 在线视频国产一区| 国产欧美一区二区三区在线看蜜臀| 婷婷久久综合九色国产成人| 91在线一区二区三区| 国产日韩精品一区二区浪潮av| 日本一不卡视频| 欧亚洲嫩模精品一区三区| 国产清纯美女被跳蛋高潮一区二区久久w| 图片区日韩欧美亚洲| 色婷婷综合中文久久一本| 国产亚洲精品精华液| 美脚の诱脚舐め脚责91 | 国内精品伊人久久久久av影院 | 国产精品一区在线| 欧美一区二区三区四区久久| 一区二区在线免费| 91亚洲资源网| 国产精品欧美久久久久无广告 | 91精品国产综合久久福利软件| 中文字幕一区二区三区色视频| 韩国v欧美v亚洲v日本v| 在线播放91灌醉迷j高跟美女| 亚洲免费在线视频一区 二区| 成人小视频免费在线观看| 337p粉嫩大胆色噜噜噜噜亚洲| 奇米影视一区二区三区小说| 欧美视频一区二区在线观看| 亚洲电影一区二区| 欧美无人高清视频在线观看| 亚洲私人影院在线观看| 91美女片黄在线| 亚洲精品自拍动漫在线| 色综合亚洲欧洲| 亚洲私人黄色宅男| 在线亚洲一区观看| 亚洲黄色录像片| 欧美在线观看视频一区二区三区| 亚洲精品欧美二区三区中文字幕| 91小视频在线| 一区二区久久久久| 欧美理论电影在线| 偷拍与自拍一区| 日韩欧美国产小视频| 精品一区二区免费看| www日韩大片| 国产传媒一区在线| 中文字幕日韩精品一区| 色综合色狠狠天天综合色| 亚洲综合一区在线| 欧美精品乱码久久久久久按摩| 日本一道高清亚洲日美韩| 日韩精品中文字幕在线不卡尤物 | 亚洲成精国产精品女| 欧美裸体一区二区三区| 伦理电影国产精品| 国产亚洲制服色| 91丨九色丨国产丨porny| 亚洲综合成人在线视频| 日韩午夜av电影| 国产一区二区主播在线| 国产精品国产三级国产aⅴ原创 | 国产精品1区二区.| 国产精品久久一卡二卡| 欧美日韩一区视频| 国产在线一区二区| 综合av第一页| 欧美一区二区三区四区久久| 国产91在线|亚洲| 亚洲综合男人的天堂| 日韩一级二级三级| 成人av网站免费观看| 五月天婷婷综合| 久久久99精品免费观看不卡| 色综合色综合色综合色综合色综合| 日本v片在线高清不卡在线观看| 久久婷婷色综合| 91国产成人在线| 国产一区二区三区高清播放| 亚洲黄色免费网站| 亚洲精品在线电影| 91福利国产成人精品照片| 久久电影网站中文字幕| 亚洲图片欧美激情| 日韩精品一区二区三区中文不卡 | 亚洲成人手机在线| 久久免费美女视频| 欧美色视频在线观看| 国产成人精品一区二区三区四区 | 欧美丝袜丝交足nylons图片| 捆绑调教美女网站视频一区| 亚洲天堂av一区| 国产视频一区二区在线| 欧美日本一区二区在线观看| 丁香婷婷综合激情五月色| 男女男精品视频网| 亚洲激情六月丁香| 国产精品欧美综合在线| 精品日产卡一卡二卡麻豆| 欧美在线三级电影| av不卡在线观看| 国产精品一区三区| 蜜桃视频一区二区|