Bonjour :
je dois faire une fonction dans octave pour resoudre les systemes d'equations utilisabt l'algorithme householder QR j'ai suivi un algorithme mais ca marche pas
et voici les erreures
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36 function x = househo(A, b) [n,m] = size(A); Q=zeros(1:m,1:m); for i=1:m Q(i,i)=1; endfor for k=1:n s=((abs(A(k:m,k)))^2); if A(k,k)<0 s=-s; endif v=zeros(1:k-1) v(k)=A(k,k)+s; A(k,k)=s; v(k+1:m)=A(k+1:m,k); A=zeros(k+1:m,k); p=s*v(k); for j = k+1:n t=(v(k:m)'*A(k:m,j))/p; A(k:m,j)=A(k:m,j)-t*v(k:m); endfor t=((v(k:m)'*b(k:m))/p); b(k:m,j)=b(k:m,j)-(t*v(k:m)); for j=k+1:n t=v(k:m)'*Q(k:m,j)/p; Q(k:m,j)=Q(k:m,j)-t*v(k:m); endfor endfor for i=n:-1:1 s=A(i,i+1:n)*x(i+1:n) x(i)=(b(i)-s)/A(i,i) endfor R=A; Q=Q'; endfunction
Pouvez vous m'aidez ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 octave:3> x=househo(A,b) warning: implicit conversion from range to real scalar warning: implicit conversion from range to real scalar error: for A^b, A must be square error: called from: error: /househo.m at line 9, column 4
merci
Partager