u(t) | -0,4 | -2,3 | 0,3 | 0 | -0,5 | -1 | 100,2 | 6,7 | 9,7 | 9.0 | 4,89 | 89 | 100 | 2 | -0,67 |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
y(t) | 89 | -5 | -100,2 | -103,8 | -2,2 | 510,9 | -364 | -799,6 |
R=2;%%ilość y (nuemracja od jeden)
S=3;%%ilość u (numeracja od zera)
%%N=5;
N=R+S+1;
%%wektor, który będziemy szukać - jeśli zmieniamy R i S to tutaj też zmieniamy
p=[1;-1;4;-9;1;3];
%%wektor wejść
u=[-0.4 -2.3 0.3 0 -0.5 -1 100.2 6.7 9.7 9.0 4.89 89 100 2 -0.67]
%%warunki początkowe
y=[89,-5];
for i=0:N-1
X=[fliplr(y(1+i:R+i)),fliplr(u(1+i:S+1+i))];
y=[y X*p];
end
disp('y =')
disp(y)
Q=[];
for i=0:N-1
Q=[Q ; [fliplr(y(1+i:R+i)),fliplr(u(1+i:S+1+i))] ];
end
Q
P=inv(Q'*Q)*Q'*y(R+1:end)'
89.0000 -5.0000 -100.2000 -103.8000 -2.2000 510.9000 -364.4000 -799.6000
Q =
-5.0000 89.0000 0 0.3000 -2.3000 -0.4000
-100.2000 -5.0000 -0.5000 0 0.3000 -2.3000
-103.8000 -100.2000 -1.0000 -0.5000 0 0.3000
-2.2000 -103.8000 100.2000 -1.0000 -0.5000 0
510.9000 -2.2000 6.7000 100.2000 -1.0000 -0.5000
-364.4000 510.9000 9.7000 6.7000 100.2000 -1.0000
Y=
-100.2000
-103.8000
-2.2000
510.9000
-364.4000
-799.6000
P =
1.0000
-1.0000
4.0000
-9.0000
1.0000
3.0000