Bonjour,
Voici mon énoncé : On considère la matrice de hilbert de taille n de terme générale
. Ecrire une fonction construisant la matrice
. On note
le vecteur de
dont toutes les composantes sont égales à 1 et
. Résoudre le système
. Tracer l'erreur relative entre la solution obtenue par Scilab et la solution exacte en fonction de n. Tracer le conditionnement en norme 2 de
en fonction de n. Commenter
Voilà ce que j'ai fait :
clc; clear;
function [H]=hilbert(n)
H=zeros(n,n)
for i=1:n
for j=1:n
H(i,j)=1/(i+j-1)
end
end
endfunction
funcprot(0)
for n=1:10
[H]=hilbert(n)
//print(%io(2),H)
e=ones(n,n)
b=hilbert(n)*e
x=inv(H)*b
//print(%io(2),x)
//erreur_relative=norm(x,1)/norm(e,1)
end
function [E]=fct(n)
e=ones(n,n)
b=hilbert(n)*e
x=inv(H)*b
E=norm(x,1)/norm(e,1)
endfunction
n=1:10
plot2d(n,cond(hilbert(n)))
Si je lance, ça me dit qu'il y a une erreur : mauvaise dimension pour l'argument 2. Je ne comprends pas pourquoi, alors que ça ne me le marque pas si j'enlève n=1:10. Quelqu'un peut m'aider du coup, je suis bloquée.
Vous devez être membre accéder à ce service...
Pas encore inscrit ?
1 compte par personne, multi-compte interdit !
Ou identifiez-vous :