20.07.2013 Views

Software matematic

Software matematic

Software matematic

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

52 Introducere în MATLAB<br />

Aritmetica de precizie variabilă se realizează cu ajutorul funct¸iei vpa. Numărul de cifre<br />

este controlat de variabila Maple Digits. Funct¸ia digits afis¸ează valoarea lui Digits,<br />

iar digits(n), unde n este întreg setează Digits la n cifre. Comanda vpa(E)<br />

evaluează E cu precizia Digits, iar vpa(E,n) evaluează E cu n cifre. Rezultatul este<br />

de tip sym.<br />

De exemplu, instruct¸iunile MATLAB<br />

>> clear<br />

>> format long<br />

1/2+1/3<br />

folosesc modul de calcul numeric pentru a produce<br />

ans =<br />

0.83333333333333<br />

Cu toolbox-ul Symbolic Math, intruct¸iunea<br />

>> sym(1/2)+1/3<br />

va produce, folosind calculul simbolic<br />

ans =<br />

5/6<br />

Tot în toolbox, cu aritmetica cu precizie variabilă, instruct¸iunile<br />

>> digits(25)<br />

>> vpa(’1/2+1/3’)<br />

au ca rezultat<br />

>> ans =<br />

.8333333333333333333333333<br />

Pentru a converti un număr în precizie variabilă într-unul de tip double se poate<br />

folosi funct¸ia double.<br />

În exemplul următor<br />

>> digits(32)<br />

>> clear, phi1=vpa((1+sqrt(5))/2)<br />

phi1 =<br />

1.6180339887498949025257388711907<br />

>> phi2=vpa(’(1+sqrt(5))/2’), diff=phi1-phi2<br />

phi2 =<br />

1.6180339887498948482045868343656<br />

diff =<br />

.543211520368251e-16

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!