Sunteți pe pagina 1din 51

Calcul Numeric

Cursul 3
2015

Anca Ignat

Surse de erori n calculule numerice


1. Erori n datele de intrare:
- msurtori

afectate

de

erori

sistematice

sau

perturbaii temporare,
- erori de rotunjire: 1/3 , , 1/7,
2. Erori de rotunjire n timpul calculelor:
- datorate capacitii limitate de memorare a datelor,
operaiile nu sunt efectuate exact.

3. Erori de discretizare:
- limita unui ir , suma unei serii , funcii neliniare
aproximate de funcii liniare, aproximarea derivatei
unei funcii
4. Simplificri n modelul matematic
- idealizri , ignorarea unor parametri.
5. Erori umane i erori ale bibliotecilor folosite.

Eroare absolut , eroare relativ


a valoarea exact,
valoarea aproximativ.
Eroare absolut : a- sau |a - | sau a
a = Da , |a - | Da
Eroare relativ: a 0

a
a
a
sau
sau
a
a
a

a
a ( a se exprim de regul n %).
a

n aproximrile 1kg 5g, 50g5g erorile absolute sunt egale


dar pentru prima cantitate eroarea relativ este 0,5% iar
pentru a doua eroarea relativ este 10%.

a1 1 a1 ,a2 2 a2 ,

a1 a2 (1 2 ) a1 a2

a1 a2 a1 a2 .
a1 cu eroare relativ a1 i a2 cu eroare relativ a2 :

a1
a = a1 * a2 sau
rezult
a2

a a a .
1

Condiionare stabilitate
Condiionarea unei probleme caracterizeaz sensibilitatea
soluiei n raport cu perturbarea datelor de intrare, n ipoteza
unor calcule exacte (independent de algoritmul folosit pentru
rezolvarea problemei).
Fie x datele exacte de intrare, x o aproximaie cunoscut a
acestora, P(x) soluia exact a problemei i P ( x ) soluia
problemei cu x ca date de intrare. Se presupune c s-au fcut
calcule exacte la obinerea soluiilor P(x) i P ( x ) .

O problem se consider a fi prost condiionat dac P(x)

|| x x ||
este
i P ( x ) difer mult chiar dac eroarea relativ
|| x ||
mic.
Condiionarea numeric a unei probleme este exprimat
prin amplificarea erorii relative:

|| P ( x ) P ( x ) ||
|| P ( x ) ||
k( x)
pentru x 0 si P ( x ) 0

|| x x ||
|| x ||
O valoare mic pentru k(x) caracterizeaz o problem
bine-condiionat.
Condiionarea este o proprietate local (se evalueaz
pentru diverse date de intrare x). O problem este
bine-condiionat dac este bine-condiionat n orice punct.

Pentru rezolvarea unei probleme P, calculatorul execut un


algoritm P . Deoarece se folosesc numere n virgul mobil,
calculele sunt afectate de erori:
P ( x ) P ( x )

Stabilitatea numeric exprim mrimea erorilor numerice


introduse de algoritm, n ipoteza unor date de intrare exacte,

( x ) ||
||
P
(
x
)

P
.
|| P ( x ) P ( x ) || sau
|| P ( x ) ||

O eroare relativ de ordinul erorii de rotunjire caracterizeaz


un algoritm numeric stabil.
Un algoritm numeric stabil aplicat unei probleme bine

condiionate conduce la rezultate cu precizie foarte bun.


Un algoritm P destinat rezolvrii problemei P este numeric
stabil dac este ndeplinit una din condiiile:

1. P ( x ) P ( x ) pentru orice intrare x;


2. exist x apropiat de x, astfel ca P ( x ) P ( x )

x = datele exacte,
P(x) = soluia exact folosind date exacte,
P ( x ) = soluia calculat folosind algoritmul P cu date

exacte de intrare

10

Rezolvarea sistemelor liniare


Istoric
1900 .Hr. , Babilon - apar primele probleme legate de
ecuaii liniare simultane

300 .Hr. Babilon - tbli cu urmtoarea problem:Avem


dou cmpuri de arie total 1800 ha. Producia la hectar
pe primul cmp este de 2/3 buel (=36,3l) iar pe al doilea
este de 1/2 buel. Dac producia total este de 1100 bueli,
s se determine aria fiecrui teren n parte.

11

200-100 .Hr. China 9 capitole despre arta matematic


metod de rezolvare foarte asemnatoare eliminrii Gauss
(Avem 3 tipuri de gru. tim c 3 baloturi din primul tip, 2
baloturi din al doilea tip i 1 balot din al treilea tip cntresc 39
msuri. Deasemenea, 2 baloturi din primul tip, 3 baloturi din al
doilea tip i 1 balot din al treilea tip cntresc 34 msuri i 1
balot din primul tip, 2 baloturi din al doilea tip i 3 baloturi din
al treilea tip cntresc 26 msuri. Cte msuri cntrete un
balot din fiecare tip de gru)

12

1545, Cardan n Ars Magna, propune o regul (regula de


modo) pentru rezolvarea unui sistem de 2 ecuaii cu 2
necunoscute (seamn cu regula lui Cramer)

1683, Seki Kowa, Japonia - ideea de determinantMethod of solving the dissimulated problems. Calculeaz
ceea ce astzi cunoatem sub numele de determinant,
determinanii matricilor 2x2, 3x3, 4x4, 5x5 n legtur cu
rezolvarea unor ecuaii dar nu a sistemelor de ecuaii.

13

1683, Leibniz ntr-o scrisoare ctre lHpital explic faptul


c sistemul de ecuaii:

10 11x 12 y 0
20 21x 22 y 0
30 31x 32 y 0
are soluie deoarece :
10*21*32+11*22*30+12*20*31=10*22*31+11*20*32+12*21*30

(condiia ca determinantul matricii coeficienilor este 0).

14

Leibniz era convins c o notaie matematic bun este


cheia progresului i experimenteaz mai mult de 50 de
moduri diferite de a scrie coeficienii unui sistem de
ecuaii. Leibniz folosete termenul de rezultant n loc de
determinant i a demonstrat regula lui Cramer pentru
rezultani. tia c orice determinant poate fi dezvoltat n
raport cu o coloan operaia se numete azi dezvoltarea
Laplace.

15

1750, Cramer prezint o formul bazat pe determinani


pentru rezolvarea unui sistem de ecuaii liniare regula lui
Cramer Introduction in the analysis of algebraic curves
(d o regul general pentru sisteme n x n:
One finds the value of each unknown by forming n
fractions of which the common denominator has as
many terms as there are permutations of n things

1764 Bezout, 1771 Vandermonde, 1772 Laplace reguli de


calcul al determinanilor

16

1773 Lagrange prima utilizare implicit a matricilor n


legtur cu formele biliniare ce apar la optimizarea unei
funcii reale de 2 sau mai multe variabile (dorea s
caracterizeze punctele de maxim i minim a funciilor de
mai multe variabile)

17

1800-1801, Gauss introduce noiunea de determinant


(determin proprietile formei ptratice) Disquisitiones
arithmeticae(1801);

descrie

operaiile

de

nmulire

matricial i invers a unei matrici n contextul tabloului


coeficienilor

unei

forme

ptratice.

Gauss

dezvolt

eliminarea Gaussian pe cnd studia orbita asteroidului


Pallas de unde obine un sistem liniar cu 6 ecuaii cu 6
necunoscute.

18

1812, Cauchy folosete termenul de determinant n sensul


cunoscut azi.

1826, Cauchy gsete valorile proprii i deduce rezultate


legate de diagonalizarea unei matrici. Introduce noiunea de
matrici asemenea i demonstreaz ca acestea au aceeai
ecuaie caracteristic. Demonstreaz c orice matrice real
simetric este diagonalizabil.

19

1850, Sylvester introduce pentru prima data termenul de

matrice (din latin, uter un loc unde ceva se formeaz


sau este produs, an oblong arrangement of terms)

1855, Cayley algebr matricial, prima definiie abstarct


a unei matrici. Studiaz transformrile liniare i compunerea
lor ceea ce l conduce la operaiile cu matrici (adunare,
nmulire, nmulirea cu un scalar, inversa)

20

1858, Cayley n Memoriu asupra teoriei matricilor : Sunt


multe lucruri de spus despre aceast teorie a matricilor i,
dup prerea mea, aceast teorie ar trebui s precead
teoria determinanilor

Jordan (1870 Treatise on substitutions and algebraic


equations forma canonic Jordan), Frobenius (1878 On
linear substituions and bilinear forms, rangul unei matrici),
Peano

21

1890, Weierstrass On determinant theory, definiia


axiomatic a determinantului

1925, Heisenberg reinventeaz algebra matricial pentru


mecanica cuantic

1947, vonNeuman & Goldstine introduc numerele de


condiionare atunci cnd analizeaz erorile de rotunjire

1948, Turing introduce descompunerea LU a unei matrici


1958, Wilkinson dezvolt factorizarea QR
....

22

Evaluarea erorii n rezolvarea sistemelor liniare


(condiionarea sistemelor liniare)
Fie A nn ,b n , x n i sist. de ec. liniare:

Ax b
A nesingular det A 0 sol. sist. x A1b

Pentru erorile n datele de intrare facem notaiile:

A nn eroarea absolut pentru A ;


b n eroarea absolut pentrub ;

23

n realitate se rezolv sistemul:


A A x b b
soluia fiind x :
x x x
n mod natural se ridic urmtoarele probleme :
1. dac A nesingular, A ? a.. A A s fie nesingular
?
2. Pp. A i A A nesingulare care sunt relaiile ntre
x
A b
i
?
,
x
A
b

24

1. Pp. A nesingular.
A A A I n A1A

A A nesingular I n A1A nesingular


Propoziia 5
1
Fie A nesingular i A 1 . Atunci I+A-1A este
A
nesingular i avem:

A A
1

25

1
1 A 1 A

Demonstraie. Avem:
Pr .4
1
1
1
1
1
A 1 A A A A 1 I A A
A

I A

1
1

.
1
1
1 A A 1 A A

1
Pp. c A este nesingular i A 1 .
A

26

A A x x b b A A x Ax A x b b
A I A A xb A x x I A A A1 b A x
1

x I A A
1

A 1

A 1
b
x

1
x
1 A A x

A x

(1)

A
1
Din Ax =b obinem b A x
i innd seam

x
b

de acest rezultat, din (1) deducem:

A 1 A

b
x
A

1
x
A
1 A A b
27

k(A) = ||A-1|| ||A|| numrul de condiionare al matricii A.


Propoziia 6
1
Dac matricea A este nesingular i A 1 atunci:
A

k A

b
A

A b
A
1 k A
A

Din In =A A-1 rezult 1 I n A A1 k A .

k(A) 1, A dar dep. de norma matricial natural utilizat.


28

O matrice A pentru care numrul de condiionare este mare se


numete matrice prost condiionat (k(A) mare).

Ax=b cu k(A) mare

x
poate fi mare chiar dac erorile
x

b
A
relative
i
sunt mici.
b
A

29

Fie A o matrice simetric A AT , nesingular. Utiliznd


norma matricial subordonat normei vectoriale euclidiene:

A 2 AT A A2
k A A 2 A1

Matricea simetric A are valorile proprii reale 1 , 2 n ,

A2 are valorile proprii 12 , 22 n2


-1

A are valorile proprii

30

1 2

, ,....,

1 2 .... n A n i A

A A A 2 A n , A
T

1
2

n
numr de condiionare spectral.
k2 A || A ||2 || A ||2
1
1

A matrice ortogonal k2(A)=1


AT A A AT I n A1 AT
A 2 AT A I 1 AT
k2 A A 2 A1 2 A 2 AT

31

1,

Matrice aproape singular dar cu numr de condiionare mic

A diag [1,0.1,0.1,...,0.1] 100100 det A 1 (0.1)99 1099


|| A ||2 1 , || A1 ||2 10 k2 ( A) || A ||2 || A1 ||2 10

32

Matrice foarte prost condiionat cu det. nenul (det A=1)

A 1

1
0

2
1

0
2

0
0

0
0

0
0

0
0
,

2
1

1
0

2
1

4
2

( 2)i 1
( 2)i 2

33

( 2)n1
n 2
( 2)

|| A || || A ||1 3 ,
|| A1 || || A1 ||1 1 2 2n1 2n 1
n 100 k ( A) || A || || A1 || || A ||1 || A1 ||1 3 (2100 1)
det A 1

34

2
x y

x 1.001 y 2
x2, y0

400 x 201 y 200

800 x 401 y 200


x 100 , y 200

2
x y

x 1.001 y 2.001
x 1, y 1

k ( A) 4002

401 x 201 y 200


,
k ( A) 4002
800 x 401 y 200
x 40000 , y 79800

35

1.2969 x 0.8648 y 0.8642

0.2161 x 0.1441 y 0.1440

x 2 , y 2

k2 ( A) 249730000

x 0.9911, y 0.4870 ,
0.8642 1.2969 0.8648 0.9911 108
r b Az

8
0.1440 0.1441 0.1441 0.4870 10

36

Matricea Hilbert
1

H ( hij )ni , j 1

1
, hij
x i j 2 dx
i j 1 0

k2 ( H n )

( 2 1)4( n1)
2

15
4

37

e 3.5 n

n
1
2
3
4
5
6

H 1

k2(Hn)
1
19.281
5.241 102
1.551104
4.766105
1.495107

n
7
8
9
10
11
12

k2(Hn)
4.753108
1.5261010
4.9321011
1.6021013
5.2201014
1.6781016

( 1)i j
( n i 1)! ( n j 1)!
( gij ) gij
( i j 1) ( i 1)!( j 1)!2 ( n i )!( n j )!

38

Metode numerice de rezolvarea sistemelor liniare


Fie matricea nesingular A nn i b n . Rezolvarea
sistemului de ecuaii liniare Ax=b se poate face folosind

regula lui Cramer:


det Ai (b )
,i 1, , n ,
xi
det A

n care Ai(b) se obine din matricea A prin nlocuirea coloanei

i cu vectorul b.
Algoritmul dat de regula lui Cramer este foarte costisitor din
punct de vedere al resurselor i instabil numeric.
39

Din aceste motive s-au cutat alte metode de aproximare a


soluiei x. Unul din cele mai folosii algoritmi este algoritmul

de eliminare Gauss :

bcu A matrice superior triunghiular


Ax=b Ax
x A1b A 1 b (notm Ax b
Ax b )

40

Metoda substituiei
Fie sistemul liniar Ax = b unde matricea sistemului A este
triunghiular. Pentru a gsi soluia unic a sistemului, trebuie
ca matricea s fie nesingular. Determinantul matricilor
triunghiulare este dat de formula:

det A = a11a22 ann


det A 0,aii 0 i = 1, 2, , n

41

Vom considera nti cazul cnd matricea A este inferior


triunghiular. Sistemul are forma:

a11 x1 = b1
a21 x1 a22 x2 = b2

ai 1 x1 ai 2 x2 aii xi = bi

an1 x1 an 2 x2 ani xi ann xn = bi

42

(1)

Necunoscutele x1 , x2 , , xn , se deduc folosind ecuaiile


sistemului de la prima ctre ultima.
Din prima ecuaie se deduce x1:
b1
x1
a11

(2)

Din a doua ecuaie , utiliznd valoarea x1 din (2) , obinem x2:


b2 a21 x1
x2 =
a22

43

Cnd ajungem la ecuaia i:

ai 1 x1 ai 2 x2 aii 1 xi 1 aii xi = bi
folosind variabilele x1 , x2 , , xi 1 calculate anterior, avem:

bi ai 1 x1 aii 1 xi 1
xi =
aii
Din ultima ecuaie se deduce xn astfel:

bn an1 x1 an 2 x2 ann1 xn1


xn =
ann

44

Algoritmul de calcul a soluiei sistemelor (1) cu matrice


inferior triunghiular este urmtorul:
i 1

xi

bi aij x j
j 1

aii

,i 1,2, , n 1, n

Acest algoritm se numete metoda substituiei directe.

45

Vom considera, n continuare sistemul (1) cu matrice


superior triunghiular :

a11 x1 a1i xi a1n1 xn1 a1n xn = b1

aii xi ain1 xn1 ain xn = bi

an1n1 xn1 an1n xn = bn1


ann xn = bn

46

Necunoscutele x1 , x2 , , xn se deduc pe rnd, folosind


ecuaiile sistemului, de la ultima ctre prima.
Din ultima ecuaie gsim xn:

bn
xn
ann
Folosind valoarea lui xn dedus

mai sus, din penultima

ecuaie obinem:

x n 1

bn1 an1n xn
=
an 1 n 1
47

Cnd ajungem la ecuaia i:

aii xi aii 1 xi 1 ain xn = bi


se cunosc deja xi 1 , xi 2 , , xn de unde ducem:

bi aii 1 xi 1 ain xn
xi =
aii
Din prima ecuaie gsim valoarea lui x1:

b1 a12 x2 a1n xn
x1 =
a11

48

Procedeul descris mai sus se numete de metoda substituiei

inverse pentru rezolvarea sistemelor liniare cu matrice


superior triunghiular:

bi
xi

j i 1

aii

ij

xj
,i n, n 1, , 2,1.

M - numrul de operaii *, / (nmuliri/mpriri) efectuate


A - numrul operaiilor (adunri/scderi) efectuate.

49

Atunci pentru calculul componentei xi se efectueaz

M=n-i+1, A=n-i i n total:


n n 1
M n i 1 k
,
2
in
k 1
1

n n 1
A n i k
2
in
k 1
n 1

Efortul de calcul pentru metoda substituiei directe este

n n 1

50

n n 1
2

S-ar putea să vă placă și