J'ai créé un code pour calculer le résultat de la méthode des différences divisées et de la méthode de Lagrange en interpolant des points. Je voudrais aussi construire un polynôme en utilisant des variables symboliques mais comment puis-je accomplir cela?Générer un polynôme d'interpolation symbolique dans Scilab
function dividedDifferences(X,Y,x)
ddMatrix = X'
ddMatrix(:,2) = Y'
for j=3:length(Y)+3
for i=1:length(Y)+2-j
ddMatrix(i,j) = (ddMatrix(i,j-1)-ddMatrix(i+1,j-1))/(ddMatrix(i,1)-ddMatrix(i+j-2,1))
end
end
disp(ddMatrix)
Px = 0
for j=2:length(Y)+1
prd = 1
for i=1:j-2
prd = prd * (x - ddMatrix(i,1))
end
Px = Px + ddMatrix(1,j)*prd
end
disp(Px)
endfunction
function lagrange(X,Y,x)
for i=1:length(Y)
l(i)=1
for j=1:length(Y)
if i~=j
l(i) = l(i)*(x-X(j))/(X(i)-X(j))
end
end
end
disp(l')
L=0
for i=1:length(Y)
L = L+Y(i)*l(i)
end
disp(L)
endfunction
//example instance
X = [0 1 5 8]
Y = [0 1 8 16.4]
x = 7
dividedDifferences(X,Y,x)
lagrange(X,Y,x)
Merci! Pourriez-vous juste changer l'utilisation de x dans 'l (i) =' à 'p'? La façon dont il est écrit donne 'Undefined variable: x' à la ligne 7. – 0rkan
A droite, c'était une faute de frappe. Fixe –
Après avoir créé ce polynôme symbolique, y a-t-il une méthode pour le résoudre avec un 'x' discret? par exemple: x = 7' – 0rkan