You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
86 Algebră liniară în MATLAB<br />
Să presupunem că b s-a init¸ializat cu b=A*ones(n,1). Un astfel de sistem are<br />
solut¸iax = [1,1,...,1] T . Operatorul \ ne dă, pentru n=100<br />
>> x=A\b;<br />
>> reshape(x,10,10)<br />
ans =<br />
1 1 1 1 1 1 0 0 0 0<br />
1 1 1 1 1 1 0 0 0 0<br />
1 1 1 1 1 1 0 0 0 0<br />
1 1 1 1 1 0 0 0 0 0<br />
1 1 1 1 1 0 0 0 0 0<br />
1 1 1 1 1 0 0 0 0 0<br />
1 1 1 1 1 0 0 0 0 0<br />
1 1 1 1 1 0 0 0 0 0<br />
1 1 1 1 1 0 0 0 0 0<br />
1 1 1 1 1 0 0 0 0 1<br />
>> norm(b-A*x)/norm(b)<br />
ans =<br />
0.3191<br />
rezultat total eronat, des¸i A este bine condit¸ionată<br />
>> cond(A)<br />
ans =<br />
44.8023<br />
Dacă rezolvăm folosind metoda QR, se obt¸ine<br />
>> [Q,R]=qr(A);<br />
>> x2=R\(Q’*b);<br />
>> x2’<br />
ans =<br />
Columns 1 through 6<br />
1.0000 1.0000 1.0000 1.0000 1.0000 1.0000<br />
...<br />
Columns 97 through 100<br />
1.0000 1.0000 1.0000 1.0000<br />
>> norm(b-A*x2)/norm(b)<br />
ans =<br />
8.6949e-016<br />
Funct¸ia linsolve permite rezolvarea mai rapidă a sistemelor de ecuat¸ii liniare<br />
prin specificarea matricei sistemului. Apelată sub forma<br />
x = linsolve(A,b,opts)<br />
rezolvă sistemul liniar A*x=b, selectând un rezolvitor adecvat în funct¸ie de proprietăt¸ile<br />
matricei A, descrise de structura opts. Nu se face nici un test pentru a