N=500;
z=rand(N,1)-0.5;
x=zeros(N,2); % prawdziwy proces (symulowany)
%y=zeros(N,1);
fi=zeros(N,3);
est=zeros(3,1);
model=zeros(N,2); % model procesu

%symulacja
for i=1:N
 x(i,1)=i;
 x(i,2)=(0.00001*i*i)+(0.001*i)-1+z(i,1);
end
plot(x(:,1),x(:,2),'.')
hold on

for i=1:N
 %y(i,1)=x(i,2);
 fi(i,1)=i*i;
 fi(i,2)=i;
 fi(i,3)=1;
end

est=inv(fi'*fi)*fi'*x(:,2);

for i=1:N
 model(i,1)=i;
 model(i,2)=est(1,1)*i*i+est(2,1)*i+est(3,1);
end
plot(model(:,1),model(:,2),'r-')
hold on

filin=zeros(N,2);
modellin=zeros(N,2);
estlin=zeros(2,1);

for i=1:N
 %y(i,1)=x(i,2);
 filin(i,1)=i;
 filin(i,2)=1;
end

estlin=inv(filin'*filin)*filin'*x(:,2);

for i=1:N
 modellin(i,1)=i;
 modellin(i,2)=estlin(1,1)*i+estlin(2,1);
end
plot(modellin(:,1),modellin(:,2),'g-')

