You are on page 1of 12

1

METODE NUMERICE

Obiective curs
- Crearea, analiza i implementarea de algoritmi pentru rezolvarea problemelor din matematica
continu
- Analiza complexitii, analiza i propagarea erorilor, condiionarea problemelor i stabilitatea
numeric a algoritmilor problemelor numerice
- Prezentarea metodelor numerice clasice i a celor moderne de rezolvare a problemelor tiinifice i
inginereti
- Alegerea celor mai potrivite metode numerice pentru o problem dat

Coninut curs
Reprezentare n virgul mobil. Standardul IEEE 754 pentru numere reale. Condiionarea
problemelor i stabilitatea numeric a algoritmilor.
Rezolvarea sistemelor de ecuaii liniare prin metode gaussiene. Pivotare parial i total. Factorizare
LU.
Propagarea erorilor n rezolvarea sistemelor de ecuaii liniare.
Metode iterative de rezolvare a sistemelor de ecuaii liniare
Interpolare polinomial. Polinom de interpolare Lagrange. Diferene divizate. Polinom Newton.
Eroarea interpolrii.
Interpolare cu funcii spline. Interpolare trigonometric.
Aproximare uniform. Polinoame Cebev. Algoritmii lui Remes.
Aproximare continu i discret n sensul celor mai mici ptrate.
Rezolvarea sistemelor n sensul celor mai mici ptrate. Factorizare QR.
Metodele Householder, Givens, Gram-Schmidt
Integrare numeric. Metode Newton-Cotes. Metoda Romberg. Integrare gaussian. Polinoame
ortogonale. Integrale improprii.
Integrarea ecuaiilor difereniale ordinare. Metode Runge-Kutta.
Metode multipas explicite i implicite. Predictor-corector.
Convergena metodelor multipas
Valori proprii i vectori proprii. Metodele puterii
Algoritmul QR cu deplasare explicit. Descompunerea valorilor singulare
2
Aplicaii ale calculului numeric
1. Determinarea curenilor ntr-un circuitul electric n regim staionar:
R
1
=2
1 2
R
2
=3
R
3
=4
I
1
I
2
I
3
E
2
=18
E
1
=10


conduce prin aplicarea legilor lui Kirchhoff, la un system de ecuaii liniare:

= +
= +
= +
18 4 3
10 4 2
0
3 2
3 1
3 2 1
I I
I I
I I I

cu soluia I
1
=1, I
2
=2, I
3
=3
2. Modelul Leontieff consider economia format din n sectoare independente: S
1
,S
2
,, S
n
. Fiecare
sector consum bunuri produse de celelalte sectoare (inclusive cele produse de el nsui). Introducem
notaiile:
m
ij
= numrul de uniti produse de sectorul S
i
necesare sectorului S
j
s produc o unitate
p
i
= nivelul produciei sectorului S
i

m
ij
p
j
= numrul unitilor produse de S
i
i consumate de S
j

Numrul total de uniti produs de S
i
este: p
1
m
i1
+p
2
m
i2
++p
n
m
in

ntr-un system nchis (autarhic) dac economia este echilibrat, tot ce se produce trebuie consumat, adic:

= + + +
= + + +
n n nn n n
n n
p p m p m p m
p p m p m p m

2 2 1 1
1 1 2 12 1 11

Adic sistemul: M.p = p sau (I-M).p=0, care pentru soluii nenule, conduce la o problem de valori
i vectori proprii.
ntr-un model deschis de economie, unele sectoare i satisfac unele cerine din exterior, adic:
p
i
= m
i1
p
1
+m
i2
p
2
++m
in
p
n
+d
i

care conduce la sistemul liniar de ecuaii:
p = M.p + d
cu soluia:
p = (I-M)
-1
.d
3
3. Coeficienii care apar n reaciile chimice se obin aplicnd legea conservrii masei ecuaiei de echilibru
chimic. Astfel arderea etanului:
xC
2
H
6
+ yO
2
zCO
2
+ tH
2
O
d sistemul de ecuaii liniare:

+ =
=
=
t z y
t x
z x
2 2
2 6
2

care are o soluie ntreag:
x=2, y=7, z= 4, t=6.
deci ecuaia chimic este:
2C
2
H
6
+ 7O
2
4CO
2
+ 6H
2
O.
O problem avnd o natur fizic oarecare poate fi studiat experimental sau prin simulare. Aceasta poate
fi transformat, utiliznd legile fundamentale ale fizicii ntr-o problem de natur matematic
M
P . Vom
spune c problema este bine pus dac admite o soluie unic.
Matemati ci apl icate
Fi zi c teoretic
Problema fizi c PF
Fi zi c experimental Rezul tate numeri ce
Problem matemati c PM
Fi g.1.1. Modal iti de abordare a problemelor fizi ce

Ca exemplu, vom considera urmtoarea problem fizic:
P
F
: S se studieze propagarea temperaturii ntr-o bar AB de lungime l cunoscnd
-temperaturile la momentul iniial n orice punct M al barei ( ) | | l , x , x 0
0
e u
-temperaturile la cele dou capete ( ) t
A
t i ( ) t
B
t n orice moment | | 1 0 t , t e
A
M B
) (t
A
t ( ) t
B
t ( ) M
0
u
Fig.1.2. Propagarea cldurii ntr-o bar

4
Problema matematic corespunztoare este:
P
M
: S se determine funcia:

( )
| | | | 9

1 , 0 , 0
) 43 . 1 ( ) , ( , :
t l
t x t x u u

care satisface urmtoarele condiii:
t x c
cu
=
c
u c
K 1
2
2
0
ecuaia lui Fourier
) ( ) 0 , ( 2
0
0
x x u = u condiiile iniiale
) ( ) , 0 ( 3
0
t t
A
t = u condiiile pe frontier
) ( ) , ( 4
0
t t l
B
t = u
S e u
0
5 , S = spaiul funciilor de 2 ori derivabile pe | | | | 1 , 0 , 0 t l
n acest moment intervine analiza numeric i furnizeaz metodele de calcul, care n urma unui numr
finit ( ) c , , t x N de operaii elementare furnizeaz pentru soluia ( ) t x, u o aproximaie ( ) t x, u' efectiv
calculabil, astfel c: c < u' u ) , ( ) , ( t x t x .
Prezint interes metodele de calcul n timp finit, cu: 1 0 t t< < care furnizeaz aproximaii uniforme:
( ) ( ) c = c N t x N , , .
Problema continu P
M
este transformat ntr-o problem asemntoare P
h
prin discretizare.
n acest scop se selecteaz un numr finit de puncte ( ) t n x i A A , din domeniul compact | | | | 1 , 0 , 0 t l
folosind o reea de discretizare cu paii:

M
l
x = A ,

N
t
t
1
= A .
i se noteaz: ) , ( t n x i
n
i
A A u = u
Dac se aproximeaz derivatele pariale cu diferenele finite:

2
1 1
2
2
1
2
) , (
) , (
x
t n x i
x
t
t n x i
t
n
i
n
i
n
i
n
i
n
i
A
u + u u
= A A
c
u c
A
u u
= A A
c
u c
+
+

se obine urmtoarea problem discretizat: P
h
:
S se determine
1 +
u
n
i
cu 1 0 , 1 1 < < < < N n M i , care satisface condiiile:

2
1 1
1
0
) (
2
1
x
K
t
n
i
n
i
n
i
n
i
n
i
A
u + u u
=
A
u u
+
+

) ( 2
0
0 0
x i
i
A u = u
) ( 3
0
0
t n
A
n
A t = u
) ( 4
0
t n
B
n
M
A t = u

2 ) (
5
2
0
K
x
t
s
A
A

5
Problema discretizat P
h
const n rezolvarea succesiv a N sisteme de ecuaii liniare tridiagonale.
Diferena:
n
i
t n x i u A A u ) , ( evalueaz apropierea ntre soluia problemei discretizate
h
P i a modelului
matematic
M
P n fiecare punct al discretizrii.
Soluia problemei discretizate
h
P trebuie s tind spre soluia problemei continue
M
P dac 0 h ( h
reprezint pasul de discretizare n cazul problemei considerate avem paii 0 , 0 A A t x sau
M N , ); vom spune c trebuie satisfacut o condiie de consisten:

M
h
h
P P =
0
lim .
O alt condiie important o reprezint stabilitatea; aceasta impune ca soluia u' a problemei perturbate
M
P (manifestat prin perturbarea parametrilor u' ,
A
t' ,
B
t' , K' ) s fie apropiat de soluia u a
modelului matematic
M
P .
Pe baza modelului matematic discretizat se va proiecta un algoritm, care va fi analizat prin prisma:
- eficienei (resurse folosite: timp de calcul i memorie),
- convergenei ctre soluia modelului matematic continuu,
- efectului propagrii erorilor.
Etapele enumerate evideniaz urmatoarele tipuri de erori:
- erori deproblem (inerente) care apar la trecere de la modelul fizic
F
P la cel matematic
M
P ,
- erori de metod introduse prin discretizarea modelului matematic,
- erori de trunchere provin din natura infinit a unor procese care descriu soluia problemei
- erori de rotunjire specifice rezolvrii problemei pe calculatorul numeric, care utilizeaz aritmetica n
virgul mobil mobil
Problem fi zi c
Problem matematic
Problem discretizat
Al gori tm
Program
eroarea de trunchiere
eroarea de metod
eroarea de probl em
eroarea de rotunji re
numerele real e se reprezi nt n memorie cu numr
fi nit de ci fre semnificati ve
procesele infini te care descri u solutia sunt nlocui te cu
procese fini te
probl ema matematic este nlocuit printr-o problem
aproxi mativ, mai usor de rezolvat
model ul matematic i ntroduce i poteze si mpli fi catoare
Fig. 1.3. Surse de erori

6
Reprezentarea n virgul mobil
fl(x) = 0.a
1
a
2
...a
t
|
e

reprezentare normalizat
1 a
1
< | i 0 a
i
< |, i=2:t
L e U
Sistemul de reprezentare n virgul mobil F(|, t, L, U) cuprinde:
baza |
precizia reprezentrii t
limitele (superioar i inferioar ale) exponentului L i U
reprezentarea lui zero
Exemplu: F(10, 1, 0, 1)={ 0.a
1
10
e
}{0} cu a
1
e{1:9} i ee{0,1}, n total 37 de
numere.
2(|-1)|
t-1
(U-L+1) valori distincte
a
1
poate lua |-1 valori distincte,
restul de t-1 cifre poate lua fiecare | valori diferite, deci |
t-1
,
exponentul ia U-L+1, i
semnul dou).
Cel mai mare numr reprezentabil O, (realmax) are forma:
O = 0.(|-1)(|-1)...(|-1) |
U
=
= [(|-1)/|
1
+(|-1)/|
2
+...+(|-1)/|
t
] |
U
= (|-1)/|(1-|
-t
)/(1-|
-1
)|
U
= |
U
(1-|
-t
)
O = |
U
(1-|
-t
)
Cel mai mic numr pozitiv reprezentabil e numit i realmin este:
e = 0.10...0|
L
=|
L
/|=|
L-1

e =|
L-1

Surse de erori.
Un numr real xeF se reprezint exact, dac suma se termin nainte de t termeni i exponentul este
cuprins ntre limite. Altfel, numrul real x se aproximeaz printr-o valoare fl(x)eF
Aproximarea numrului real
x=(0.a
1
a
2
... )|
e
=(a
1
|
-1
+a
2
|
-2
+...+a
t
|
-t
+a
t+1
|
-t-1
+...)|
e

se poate face prin trunchiere sau prin rotunjire.
Aproximarea prin trunchiere ignor cifrele numrului real din dreapta poziiei t.
fl(x)=(0.a
1
a
2
...a
t
)|
e
=(a
1
|
-1
+a
2
|
-2
+... +a
t
|
-t
)|
e

Aproximarea prin rotunjire consider:
fl(x)=(0.a
1
a
2
...a
t
+1 )|
e
dac a
t+1
> |/2
fl(x)=(0.a
1
a
2
...a
t
)|
e
dac a
t+1
< |/2
O depire superioar apare dac e>U.
Ea declaneaz o eroare la execuie, care conduce la ntreruperea calculelor.
O depire inferioar apare dac e<L;
ea duce la nlocuirea numrului prin zero.
Epsilon main (notat eps n Matlab sau ) reprezint cel mai mic numr pozitiv cu proprietatea c:
fl(1+) > 1
De exemplu n F(10, 4, -3, 3) cu rotunjire prin tiere (trunchiere):
7
fl(1+0.0009)=fl(1.0009)=1
fl(1+0.0010)=fl(1.0010)=1.001 > 1
aadar
tr
=0.001=10
-3
>e=10
-4
.
Dac se folosete rotunjire, atunci:
fl(1+0.0004)=fl(1.0004)=1
fl(1+0.0005)=fl(1.0005)=1.001 > 1
cu
rot
=0.0005=1/2.10
-3
=1/2.
tr
- Eroarea absolut la rotunjirea prin trunchiere:
e
x
= x-fl(x)=(a
1
/|
1
+ a
2
/|
2
+...+ a
t
/|
t
+a
t+1
/|
t+1
+...)|
e
(a
1
/|
1
+ a
2
/|
2
+...+ a
t
/|
t
)|
e
e
x
= (a
t+1
/|
1
+ a
t+2
/|
2
+...)|
e-t

|e
x
||(|-1)/|
1
+(|-1)/|
2
+...||
e-t
=
(|-1)|
e-t
(1/|
1
+1/|
2
+...) (|-1)|
e-t
/(|-1)= |
e-t
|e
x
| |
e-t
Dac se folosete rotunjirea atunci eroarea absolut este i mai mic:
|e
x
| 1/2. |
e-t
- Eroarea relativ este:
c
x
= |e
x
|/|x| = |x-fl(x)|/|x| |
e-t
/(0.a
1
...a
t
...|
e
)

c
x
|
e-t
/(0.10...0|
e
)= |
1-t

c
x
|
1-t
la trunchiere
c
x
1/2. |
1-t
la rotunjire
n general:
|x-fl(x)|/|x|
de unde deducem:
fl(x) =x(1+c), |c| =K |
-t

De exemplu F(10,4,-20,20),O=10
20
(1-10
-4
) =9.99910
19
,

e=10
-20-1
=1.010
-21
,
r
=1/2.10
-4+1
=510
-4
Propagarea erorilor
numere aproximative -operaii exacte
operaii aproximative - date exacte
1.Rezultatul exact al adunrii a dou numere x i y, dac operaiile se execut exact este x+y.
n realitate, se lucreaz cu valorile inexacte x i y, n care:
e
x
=|x-x| i e
y
=|y-y|
x+y=x+ye
x+y
=xe
x
+ye
y
=x+y(e
x
+e
y
)
e
x+y
=e
x
+e
y
c
x+y
=e
x+y
/|x+y|=(e
x
+e
y
)/|x+y|=(|x|c
x
+|y|c
y
)/|x+y|
c
x+y
=|x|/|x+y|c
x
+|y|/|x+y|c
y
=k
x
c
x
+k
y
c
y
8
Pentru scdere:
x-y=x-ye
x-y
=xe
x
-(ye
y
)=x-y(e
x
+e
y
)
de unde:
e
x-y
=e
x
+e
y
c
x-y
=|x|/|x-y|c
x
+|y|/|x-y|c
y
=k
x
c
x
+k
y
c
y

n acest caz coeficienii de ponderare:
k
x
=|x|/|x-y| i k
y
=|y|/|x-y|
pot lua valori foarte mari dac x~y, deci n cazul scderii numerelor apropiate ca ordin de mrime se pot
comite erori foarte mari
n cazul nmulirii:
xy=xye
xy
=(xe
x
)(ye
y
)=xyxe
y
ye
x
+e
x
e
y
~xy(xe
y
+ye
x
)
e
xy
=xe
y
+ye
x
c
xy
=c
x
+c
y
2. Dac operaiile se reprezint aproximativ, iar numerele sunt reprezentate exact, adunarea a dou
numere x=f
x
.b
ex
i y=f
y
.b
ey
presupune aducerea celui mai mic (fie acesta y) la exponentul celui mai
mare, producndu-se o denormalizare
fl(x+y)=fl(f
x
b
ex
+f
y
b
-(ex-ey)
b
ex
)=fl[(f
x
+ f
y
b
-(ex-ey )
) b
ex
]
fl(x+y)=fl[(f
x
+f
y
(1+))b
ex
]=fl[x+(1+)y]
Rezultatul operaiei este normalizat:
fl(x+y)=[x+(1+)y](1+)
Denormalizarea unuia dintre termeni poate fi evitat dac se pstreaz rezultatul intermediar ntr-un
acumulator cu lungimea 2t (acumulator dublu) n acest caz numai rezultatul final va fi afectat de
trunchiere la t cifre semnificative i normalizare, deci:
fl
2
(x+y)=(x+y)(1+)
Anularea catastrofal
La scderea a dou numere apropiate ca ordin de mrime, cifrele semnificative se anuleaz reciproc,
rezultnd o eroare relativ mare.
fl(x)=0.a
1
a
2
...a
p-1
a
p
...a
t
|
e
fl(y)=0.a
1
a
2
...a
p-1
b
p
...b
t
|
e
fl(y)-fl(y)=0.0 0 ...0 c
p
...c
t
|
e
=0.c
p
...c
t
|
e-p

Iniial avem o singur cifr inexact, n poziia t, cu eroarea relativ |


1-t
Dup scdere, bitul inexact trece n poziia t-p cu eroarea relativ |
1-(t-p)
adic amplificat de |
p
ori.
S considerm scderea numerelor x=0.120 i y=-0.119 n sistemul F(10,2,-10,10):
fl(x)=-fl(y)=0.120
c=|((x+y)-fl(x+y))/(x+y)|=(0.001-0)/0.001=1 !
eroarea este de 100% !
Se evit scderea numerelor apropiate ca ordin de mrime prin:
nmulire cu conjugatul,
dezvoltare n serie Taylor,
9
rearanjarea termenilor etc .
Prin rearanjarea termenilor evitm adunarea numerelor foarte diferite ca ordin de mrime.
Astfel n sistemul F(10, 3,-10,10) cu rotunjire suma: 1+0.002+0.002+0.002 calculat
fl(fl(fl(1+0.002)+0.002)+0.002)=1
n timp ce asocierea:
fl(1+fl(0.002+fl(0.002+0.002)))=1.01.
n aritmetica n virgul mobil, asociativitatea nu se mai pstreaz. Astfel:
fl(fl(x+y)+z)=fl(x+fl(y+z)).
De exemplu:
fl(fl(1+/2)+ /2)= fl(1+/2)=1,
n timp ce:
fl(1+fl(/2+/2))= fl(1+) > 1
Reprezentarea numerelor reale (standardul IEEE 754)
Permite reprezentarea realilor n:
1) precizie simpl F(2, 24, -126, 127), folosind 32 bii

2) precizie dubl F(2, 53, -1022, 1023); se folosesc 64 bii:
3) precizie extins F(2, 65, -16382, 16382); se folosesc 80 bii:
ntruct a
1
=1, acesta nu se mai reprezint (este ascuns), ctigndu-se astfel precizie suplimentar. Bitul
ascuns este evideniat n reprezentarea:
fl(x)=(-1)
s
2
e
.(1.+.f)

Precizie simpl
reprezentare pe 32 bii
baza |= 2
precizie t= 24 bii (numerele normalizate pstreaz numai 23 bii)
Numrul real este pstrat prin 3 componente:
semnul: 1 bit
exponentul: 8 bii
mantissa: 23 bii (logic24)
Cei 8 bii permit: 2
8
= 256 valori diferite. Domeniul [0, 255] este transformat n [-127,
128]
La exponentul (pozitiv sau negativ) se adaug o valoare constant care duce la un exponent
deplasat sau caracteristic pozitiv. Factorul de deplasare pentru precizie simpl este127.
Domeniul deplasat [0-255] reprezint exponeni n domeniul [-127, 128]
exponent_deplasat = exponent + 127
Valoarea numrului este: V=(-1)
s
.2
e
.(1.+.f)
1=(-1)
0
.2
0
.(1.+.0)

0+127

0 01111111 00000000000000000000000
S e(8) f(23)
0 011 1111 1000 0000 0000 0000 0000 0000

10
3 F 8 0 0 0 0 0

-6.5=(-1)
1
.2
2
.(1.+0.625)

2+127

1 10000001 10100000000000000000000
S e(8) f(23)
1 100 0000 1 101 0000 0000 0000 0000 0000

C 0 D 0 0 0 0 0
Un numr mai mare dect cel mai mare numr reprezentabil M (cunoscut sub numele de modulul
reprezentrii) se obine n urma unei depiri superioare (de regul o mprire prin 0: 1/0 = , -1/0
= -) va fi desemnat prin infinit Inf, iar nedeterminrile 0/0, / etc, vor fi desemnate ca NaN (Not a
Number).
Pentru toate acestea se rezerv n reprezentare cel mai mare exponent posibil 128 (adic exponentul
deplasat 255).
Precizie simpl
S E
(8biti)
e=
E-127
H f
(23biti)
Valoare
NaN 0 11111111 128 1 0
+Inf 0 11111111 128 1 000 000 (-1)
0
2
128
0x7F800000
0 11111110 127 1 111 111 (-1)
0
2
127
(2-2
-23
)3.4E38 0x7F7FFFFF
. . .
1+ 0 01111111 0 1 000 001 (-1)
0
2
0
(1+2
-23
)
=2
-23
1.92E-7
0x3F800001
1 0 01111111 0 1 000 000 (-1)
0
2
0
=1 0x3F800000
e
0 00000001 -126 1 000 000 (-1)
0
2
-126
=2
-126
1.18E-38 0x00FFFFFF
Max
D
0 00000001 -126 0 111 111 (-1)
0
2
-126
(1-2
-23
)=2
-126
-2
-149

. . .
Min
D
0 00000001 -126 0 000 001 (-1)
0
2
-126
2
-23
=2
-149
1.4E-45 0x00000001
+0 0 00000000 -127 1 000 000 (-1)
0
2
-127
=2
-127
0x00000000
Precizie dubl
S E(11b) E-1023 H f(52biti) Valoare
NaN 0 1111 1024 1 0
+Inf 0 1111 1024 1 000 000 (-1)
0
2
1024

0 1110 1023 1 111 111 (-1)
0
2
1023
(2-2
-52
)1.8E308
1+ 0 0101 0 1 000 001 (-1)
0
2
0
(1+2
-52
) =2
-52
1.1E-16
1 0 0101 0 1 000 000 (-1)
0
2
0
=1
e
0 0001 -1022 1 000 000 (-1)
0
2
-1022
=2
-1022
2.2E-308
MaxD 0 0001 -1022 0 111 111 (-1)
0
2
-1022
(1-2
-52
)=2
-1022
-2
-1074

MinD 0 0001 -1022 0 000 001 (-1)
0
2
-1022
2
-52
=2
-1074
5E-324
+0 0 0000 -1023 1 000 000 (-1)
0
2
-1023
=2
-1023


Cel mai mic numr normalizat este2
-126
1.175E-38
Cel mai mic numr denormalizat este .001 * 2
-126
= 2
-149
1.4E-45
11
Infinit rezult din calcule precum: 1/0 = , -1/0 = -
Se reprezint cu exponentul deplasat 255, (nedeplasat 128), i fracia 0. 0
Cel mai mare numr = 1.1111*2
127
3.4E38
NaN (not a number)
Apare cnd se ncearc o operaie nelegal (ca sqrt dintr-un numr negativ)
Orice expresie care conine un termen NaN este evaluat ca NaN
Exist cazuri n care apariia unui NaN nu declaneaz nici o ntrerupere (excepie) NaNs
este linitit
Un NaN semnalizat declaneaz o excepie (de exemplu o valoare neiniializat)
Alte NaN semnalizate:
sqrt(numr negativ)
0 * , 0 / 0, /
x % 0, % x, -
Condiionarea problemelor
Condiionarea unei probleme caracterizeaz sensibilitatea soluiei n raport cu erorile din datele de
intrare.
O problem este bine condiionat dac erori mici n date produc de asemeni erori mici n rezultate.
Condiionarea este o proprietate a problemei, independent de soluia aleas.
O problem ru condiionat este aproape nerezolvabil n practic (chiar dac problema este
rezolvat exact, soluia poate fi lipsit de semnificaie).
De exemplu, la evaluarea funciei y=f(x), o perturbare a datelor x+Ax produce o perturbare a
soluiei y+Ay = f(x+Ax), n care:
eroarea absolut ( ) x x ' f y A ~ A
eroarea relativ
( )
( ) x
x
x
x f
x f
y
y
A

'
~
A

Problema este ru condiionat dac factorul Lipschitz
( )
( )
x
x f
x ' f
L = este mare.
Stabilitatea numeric a algoritmilor
Stabilitatea numeric caracterizeaz erorile numerice introduse de algoritm, n ipoteza unor date de
intrare exacte. Se refer la precizia algoritmului.
Un algoritm este instabil dac erorile de rotunjire produc erori mari n rezultate.
Un algoritm numeric stabil nu introduce o sensibilitate suplimentar la perturbaii.
Un algoritm stabil d rezultate apropiate de soluia exact pentru o problem bine condiionat.
Un algoritm stabil nu poate rezolva o problem ru condiionat, dar un algoritm instabil poate da
soluii slabe chiar pentru o problem bine condiionat.
Dac f: X Y este o problem i f
~
: X Y este un algoritm, atunci acesta este numeric stabil
dac pentru xeX, -x
~
eX, astfel nct:
( ) ( ) ( )
m
O x f x f c =

i ( )
m
O x x c =


12
Algoritmul f
~
destinat rezolvrii problemei f este numeric stabil, dac este ndeplinit una din condiiile:
1. f
~
(x)~ f(x), adic soluia calculat aproximeaz bine soluia exact
2. exist x
~
apropiat de x astfel nct f
~
(x)=f(x
~
) soluia calculat de algoritm cu date de
intrare exacte este soluia exact cu date uor perturbate.
Exemple de algoritmi instabili:
inversarea de matrice folosind determinani
rezolvarea sistemelor liniare prin factorizare LU fr pivotare
utilizarea factorizrii Cholesky n metoda celor mai mici ptrate (rezultate mult mai bune furnizeaz
factorizarea QR).
calculul valorilor proprii ca rdcini ale polinomului caracteristic

Bibliografie
V.Iorga, B.Jora Metode Numerice,Ed.Albastr,2005
C.Popeea, B.Jora, B.Dumitrescu Calcul Numeric Algoritmi fundamentali, Ed.ALL
C.Moler Numerical Computing with Matlab
V.Iorga, F.Pop Metode Numerice ndrumar de laborator

You might also like