Culegere de probleme de Analiz˘a numeric˘a
Culegere de probleme de Analiz˘a numeric˘a
Culegere de probleme de Analiz˘a numeric˘a
You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
52 Teoria erorilor<br />
obt¸ine<br />
Deoarece p ′ (ξ) = 0, putem obt¸ine ∂ξ<br />
∂aν<br />
(condξ)(a) =<br />
s¸i să înlocuim în (3.8) s¸i (3.9) pentru a<br />
1<br />
|ξp ′ n−1<br />
(ξ)|<br />
ν=0<br />
<br />
|aν||ξ| ν<br />
(3.10)<br />
Vom ilustra (3.10) consi<strong>de</strong>rând un polinomp<strong>de</strong> gradncu rădăcinile1,2,...,n<br />
n<br />
p(x) =<br />
(3.11)<br />
ν=1<br />
(x−ν) = x n +an−1x n−1 +···+a0<br />
Acesta este un exemplu faimos, datorat lui Wilkinson, care a <strong>de</strong>scoperit proasta<br />
condit¸ionare a anumitor zerouri aproape printr-un acci<strong>de</strong>nt. Dacă luăm ξµ = µ,<br />
µ = 1,2,...,n se poate arăta că<br />
minµcondξµ = condξ1 ∼ n 2 când n → ∞<br />
maxµcondξµ ∼ 1<br />
(2− √ 2)πn<br />
√ 2+1<br />
√ 2−1<br />
n<br />
când n → ∞.<br />
Cea mai prost condit¸ionată rădăcină este ξµ0 cu µ0 întregul cel mai apropiat<br />
<strong>de</strong> n/ √ 2 când n este mare. Numărul său <strong>de</strong> condit¸ionare cres¸te ca (5.828...) n ,<br />
<strong>de</strong>ci exponent¸ial. De exemplu pentrun = 20condξµ0 = 0,540×10 14 .<br />
Exemplul ne învat¸ă că rădăcinile unei ecuat¸ii algebrice scrise în forma (3.7) pot<br />
fi extrem <strong>de</strong> sensibile la schimbări mici ale coeficient¸ilor. De aceea este contraindicat<br />
să se exprime orice polinom cu ajutorul puterilor ca în (3.7) s¸i (3.11). Aceasta<br />
este în particular a<strong>de</strong>vărat pentru polinoamele caracteristice ale matricelor. Este<br />
mult mai bine să lucrăm cu matricele însele s¸i să le reducem (prin transformări<br />
<strong>de</strong> similaritate) la o formă care să permită obt¸inerea rapidă a valorilor proprii -<br />
rădăcini ale ecuat¸iei caracteristice.<br />
Problema 3.5.3 Presupunem că o rutină <strong>de</strong> bibliotecă pentru funct¸ia logaritmică<br />
ne furnizeazăy = lnx pentru orice număr în virgulă flotantă,x, producând unyA<br />
ce satisfaceyA = (1+ε)lnx, |ε| ≤ 5eps. Ce putem spune <strong>de</strong>spre condit¸ionarea<br />
algoritmuluiA?<br />
Solut¸ie. Avem evi<strong>de</strong>nt<br />
yA = lnxA un<strong>de</strong>xA = x 1+ε<br />
(unic)<br />
În consecint¸ă<br />
<br />
xA<br />
<br />
−x<br />
<br />
x =<br />
<br />
<br />
<br />
x<br />
<br />
1+ε <br />
−x<br />
<br />
x = |xε −1| ≈ |εlnx| ≤ 5|lnx|eps<br />
s¸i <strong>de</strong>ci (condA)(x) ≤ 5|lnx|. Algoritmul A este bine condit¸ionat exceptând vecinătatea<br />
dreaptă a lui x = 0 s¸i pentru x foarte mare. În ultimul caz, totus¸i, este<br />
posibil caxsă <strong>de</strong>a <strong>de</strong>păs¸ire înainte caAsă <strong>de</strong>vină prost condit¸ionat.