Função de Runge e nós de Chebyshev
> f:=x->1/(1+25*x^2);
> with(plots):
>
n:=2:
m:=n+1:
a:=-1:b:=1:
X:=vector(m,k->evalf((a+b)/2+(b-a)/2*cos(((2*k-1)*Pi)/(2*m))));
fX:=vector(m,[f(X[1]),f(X[2]),f(X[3])]);
plotf:=plot(f(x),x=-1..1,color=black,thickness=1,labels=["",""]):
poli:=PoliLagrangeChebyshev(2,f,-1,1,10);
p:=x->poli:
plotp:=plot(p(x),x=-1..1,l,color=black,linestyle=3,thickness=1,labels=["",""]):
display(plotp,plotf);
>
>
n:=4:
m:=n+1:
a:=-1:b:=1:
X:=vector(m,k->evalf((a+b)/2+(b-a)/2*cos(((2*k-1)*Pi)/(2*m))));
fX:=vector(m,[f(X[1]),f(X[2]),f(X[3]),f(X[4]),f(X[5])]);
plotf:=plot(f(x),x=-1..1,color=black,thickness=1,labels=["",""]):
poli:=PoliLagrangeChebyshev(4,f,-1,1,10);
p:=x->poli:
plotp:=plot(p(x),x=-1..1,l,color=black,linestyle=3,thickness=1,labels=["",""]):
display(plotp,plotf);
>
n:=8:
m:=n+1:
a:=-1:b:=1:
X:=vector(m,k->evalf((a+b)/2+(b-a)/2*cos(((2*k-1)*Pi)/(2*m))));
fX:=vector(m,[f(X[1]),f(X[2]),f(X[3]),f(X[4]),f(X[5]),f(X[6]),f(X[7]),f(X[8]),f(X[9])]);
plotf:=plot(f(x),x=-1..1,color=black,thickness=1,labels=["",""]):
poli:=PoliLagrangeChebyshev(8,f,-1,1,10);
p:=x->poli:
plotp:=plot(p(x),x=-1..1,l,color=black,linestyle=3,thickness=1,labels=["",""]):
display(plotp,plotf);
>
n:=14:
m:=n+1:
a:=-1:b:=1:
X:=vector(m,k->evalf((a+b)/2+(b-a)/2*cos(((2*k-1)*Pi)/(2*m))));
fX:=vector(m,[f(X[1]),f(X[2]),f(X[3]),f(X[4]),f(X[5]),f(X[6]),f(X[7]),f(X[8]),f(X[9]),f(X[10]),f(X[11]),f(X[12]),f(X[13]),f(X[14]),f(X[15])]);
plotf:=plot(f(x),x=-1..1,color=black,thickness=1,labels=["",""]):
poli:=PoliLagrangeChebyshev(14,f,-1,1,10);
p:=x->poli:
plotp:=plot(p(x),x=-1..1,l,color=black,linestyle=3,thickness=1,labels=["",""]):
display(plotp,plotf);
>
n:=16:
m:=n+1:
a:=-1:b:=1:
X:=vector(m,k->evalf((a+b)/2+(b-a)/2*cos(((2*k-1)*Pi)/(2*m))));
fX:=vector(m,[f(X[1]),f(X[2]),f(X[3]),f(X[4]),f(X[5]),f(X[6]),f(X[7]),f(X[8]),f(X[9]),f(X[10]),f(X[11]),f(X[12]),f(X[13]),f(X[14]),f(X[15]),f(X[16]),f(X[17])]);
plotf:=plot(f(x),x=-1..1,color=black,thickness=1,labels=["",""]):
poli:=PoliLagrangeChebyshev(16,f,-1,1,10);
p:=x->poli:
plotp:=plot(p(x),x=-1..1,l,color=black,linestyle=3,thickness=1,labels=["",""]):
display(plotp,plotf);