x=[-1;-0.6;-0.2;0.2;0.6;1;1.4;1.8;2.2;2.6;3];
y=[0.4;0.53;0.72;0.89;1.11;1.23;1.53;1.6;1.7;1.85;1.87];
A=[ones(size(x)),exp(-x)]; 
a=A\(1./y); 
printf('a=(%f,%f)\n',1/a(1),a(2)/a(1));
X=linspace(-4,4);
Y=1./(a(1)+a(2)*exp(-X));
plot(X,Y, x,y,'o'); 


A=zeros(8);
X=[0,1,2,3,4];
Y=[1,3,2,0,3];
B=[Y(1:3),Y(3:5),0,0]';
A(1:3,1:4)=[1,X(1),X(1)^2,X(1)^3;1,X(2),X(2)^2,X(2)^3;1,X(3),X(3)^2,X(3)^3];
A(4:6,5:8)=[1,X(3),X(3)^2,X(3)^3;1,X(4),X(4)^2,X(4)^3;1,X(5),X(5)^2,X(5)^3]; 
A(7,:)=[0,1,2*X(3),3*X(3)^2,0,-1,-2*X(3),-3*X(3)^2];
A(8,:)=[0,0,2,2*3*X(3),0,0,-2,-2*3*X(3)];
a=A\B;
x=linspace(0,4,100);
y=[polyval(a(4:-1:1),x(1:50)),polyval(a(8:-1:5),x(51:100))];
figure;
plot(x,y);
