\% Interpolation examples
\% adapted by Yuri Lvov
\% Choose Number of points to play with:
Number=10;
t=linspace(.2,2.3,Number)
y=1./t+t.$\hat{\ }$2
a=polyfit(t,y,Number-1)
x=linspace(.2,2.3,100);
f=1./x+x.$\hat{\ }$ 2;
ftilde=polyval(a,x);
plot(x,f,'r',x,ftilde,'g',t,y,'mo')
\% Shows Function, interpolation and dots on the same plot
\% Try unequal spaced points, result is strange
t=[.2 .3 .5 .6 1.6 2.3]
y=1./t+t.$\hat{\ }$ 2
a=polyfit(t,y,Number-1)
x=linspace(.2,2.3,100);
f=1./x+x.$\hat{\ }$ 2;
ftilde=polyval(a,x);
plot(x,f,'r',x,ftilde,'g',t,y,'mo')
Number=20;
\% This is the classical example producing wiggles
t=linspace(-1,1,Number);
\% t=-cos((2*(1:Number)-1)*pi./(2*Number));
\% Uncomment the preveous line for C. points
y=1./ (1+25* t.$\hat{\ }$ 2);
a=polyfit(t,y,Number-1);
x=linspace(-1,1,200);
f=1./(1+25*x.$\hat{\ }$ 2);
ftilde=polyval(a,x);
plot(x,f,'r',x,ftilde,'g',t,y,'mo')
\% Do the same with SPLINE interpolation
\% Type 'help spline' to get more info
\% type 'help interp1' to get even more information
x = -1:.1:1;
y = 1./(1+25*x.$\hat{\ }$ 2);
xx = -1:.01:1;
yy = spline(x,y,xx);
plot(x,y,'o',xx,yy)