Top Banner
Sisteme de ecuaţii liniare 13 1. Sisteme de ecuaţii liniare Reamintim că un sistem de n ecuaţii algebrice liniare cu n necunoscute este de forma: (1) = + + + = + + + = + + + n n nn n n n n n n b x a x a x a b x a x a x a b x a x a x a K K K 2 2 1 1 2 2 2 22 1 21 1 1 2 12 1 11 . . . . . . . . . . . . . . . . . . . . Dacă notăm cu A matricea coeficienţilor, cu x vectorul coloană format cu necunoscutele sistemului şi cu b coloana termenilor liberi, sistemul (1) se scrie sub formă matriceală : Ax=b, (2) unde: , , = nn n n n n a a a a a a a a a A K M M M L K 2 1 2 22 21 1 12 11 = n x x x x M 2 1 = n b b b b M 2 1 Metodele numerice de rezolvare a sistemelor algebrice de ecuaţii liniare sunt de două tipuri: metode directe şi metode indirecte (sau iterative). Metodele directe constau în transformarea sistemului (1) într–un sistem triunghiular echivalent, care se rezolvă uşor. Cele mai cunoscute metode directe sunt: metoda Gauss, metoda Cholesky (utilizată pentru sistemele în care matricea A este simetrică şi pozitiv definită) şi metoda Householder. Metodele directe permit determinarea soluţiei exacte a sistemului în cazul ideal, când nu avem erori de rotunjire. Numărul operaţiilor aritmetice efectuate este de ordinul n 3 . Pentru sisteme cu un număr de ecuaţii mai mare de 100, metodele directe devin inutilizabile datorită acumulării erorilor de rotunjire care alterează soluţia. Metodele indirecte (sau iterative) constau în construcţia unui şir {x (k) } de vectori n–dimensionali, care converge la soluţia exactă a sistemului. Se alege ca
78

CMS Metoda Cholesky

Oct 19, 2015

Download

Documents

zepp_a

statistica
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
  • Sisteme de ecuaii liniare 13

    1. Sisteme de ecuaii liniare Reamintim c un sistem de n ecuaii algebrice liniare cu n necunoscute este de forma:

    (1)

    =+++

    =+++=+++

    nnnnnn

    nn

    nn

    bxaxaxa

    bxaxaxabxaxaxa

    K

    KK

    2211

    22222121

    11212111

    . . . . . . . . . . . . . . . . . . . .

    Dac notm cu A matricea coeficienilor, cu x vectorul coloan format cu necunoscutele sistemului i cu b coloana termenilor liberi, sistemul (1) se scrie sub form matriceal : Ax=b, (2) unde:

    , ,

    =

    nnnn

    n

    n

    aaa

    aaaaaa

    A

    KMMM

    LK

    21

    22221

    11211

    =

    nx

    xx

    x M2

    1

    =

    nb

    bb

    b M2

    1

    Metodele numerice de rezolvare a sistemelor algebrice de ecuaii liniare sunt de dou tipuri: metode directe i metode indirecte (sau iterative). Metodele directe constau n transformarea sistemului (1) ntrun sistem triunghiular echivalent, care se rezolv uor. Cele mai cunoscute metode directe sunt: metoda Gauss, metoda Cholesky (utilizat pentru sistemele n care matricea A este simetric i pozitiv definit) i metoda Householder. Metodele directe permit determinarea soluiei exacte a sistemului n cazul ideal, cnd nu avem erori de rotunjire. Numrul operaiilor aritmetice efectuate este de ordinul n3. Pentru sisteme cu un numr de ecuaii mai mare de 100, metodele directe devin inutilizabile datorit acumulrii erorilor de rotunjire care altereaz soluia. Metodele indirecte (sau iterative) constau n construcia unui ir {x(k)} de vectori ndimensionali, care converge la soluia exact a sistemului. Se alege ca

  • Bazele Analizei Numerice 14

    soluie aproximativ a sistemului un termen x(s) al irului, al crui ordin depinde de precizia impus. O iteraie presupune efectuarea unui numr de operaii aritmetice de ordinul n2. Metodele iterative sunt utilizate la rezolvarea sistemelor mari de ecuaii. Cele mai cunoscute metode iterative sunt: Jacobi, GaussSeidel, metodele de relaxare.

    1.1. Metoda Gauss. Factorizarea LU Fie

    =+

    rn

    rrr

    m

    mm

    ,

    ,1

    0

    0

    M

    M

    i

    =

    0

    01

    0

    M

    M

    re

    (elementul 1 din er se afl pe linia r). O matrice de forma Mr = In mrer T, unde erT= (0, ... , 1, ... ,0) , se numete matrice Frobenius. O astfel de matrice are urmtoarea structur:

    = +

    100

    010010

    0001

    ,1

    LLM

    LLL

    OL

    nr

    rrr

    m

    mM

    De exemplu, dac n = 4 i r = 2 , avem:

    ( ) =

    =

    =

    00000000000000

    1000010000100001

    001000

    1000010000100001

    42

    32

    42

    322

    mm

    mm

    M

    =

    10001000100001

    42

    32mm

  • Sisteme de ecuaii liniare 15

    Propoziia 1. Orice matrice Frobenius Mr este inversabil i inversa sa este: Mr1 = In + mr erT.

    Demonstraie. (In mr erT)( In + mr erT)= In mr erT + mr erT mr (erT mr ) erT. Deoarece erT mr = 0 , rezult: Mr (In + mr erT) = In, i deci Mr1 = In + mr erT. Teorema 1. Fie A o matrice ptrat de ordinul n care satisface condiia:

    (*) pentru orice 0det

    1

    111

    rrr

    r

    aa

    aa

    KMM

    K1,1 = nr .

    Atunci exist o matrice inferior triunghiular MM n(R) astfel nct matricea U = MA este superior triunghiular. Demonstraie. Deoarece a110 , putem considera matricea Frobenius

    =

    10

    001

    001

    11

    1

    11

    21

    1

    KMM

    KK

    aa

    aa

    M

    n

    .

    Dac notm A1 = A i A2 =M1A1 , atunci avem

    =

    )2()2(2

    )2(2

    )2(22

    )2(1

    )2(12

    )2(11

    2

    0

    0

    nnn

    n

    n

    aa

    aaaaa

    A

    KMMM

    KK

    ,

    unde, notnd cu = a)1(ija ij, pentru nji ,1, = , avem: pentru )1(1)2(1 jj aa =

    nj ,1= ; )1(11

    )1(1

    )1(1)1()2(

    a

    aaaa jiijij = , pentru orice nji ,2, = .

    Observm c

    012221

    1211

    1122

    11

    1221)2(22 == aa

    aaaa

    aaaa .

    Dac notm

  • Bazele Analizei Numerice 16

    =

    100

    010

    00100001

    )2(22

    )2(2

    )2(22

    )2(32

    2

    K

    MMMM

    K

    KK

    a

    a

    a

    a

    M

    n

    ,

    atunci

    ==

    )3(

    )3(3

    )3(33

    )3(2

    )3(23

    )3(22

    )3(1

    )3(13

    )3(12

    )3(11

    223

    000

    000

    nn

    n

    n

    n

    a

    aaaaaaaaa

    AMA

    KMMMM

    KKK

    ,

    unde pentru i=1, 2, )2()3( ijij aa = nj ,1= i )2(22

    )2(2

    )2(2)2()3(

    a

    aaaa jijiji = , nji ,3, = .

    Un calcul simplu ne arat c

    01

    333231

    232221

    131211

    )2(22

    )1(11

    )3(33 =

    aaaaaaaaa

    aaa .

    n general, i se poate considera matricea Frobenius: 0)( rrra

    = +

    100

    010

    010

    0001

    )(

    )(

    )(

    )(,1

    LL

    M

    LL

    LO

    L

    rrr

    rnr

    rrr

    rrr

    r

    aa

    a

    aM .

    Dac notm cu Ar+1=MrAr , atunci

  • Sisteme de ecuaii liniare 17

    =

    +++

    ++

    +++

    ++

    +++++++

    +

    )1()1(1,

    )1(,1

    )1(1,1

    )1()1(

    )1(2

    )1(2

    )1(22

    )1(1

    )1(1

    )1(12

    )1(11

    1

    000.

    000

    00

    0

    rnn

    rrn

    rnr

    rrr

    rnr

    rrr

    rn

    rr

    r

    rn

    rr

    rr

    r

    aa

    aa

    aa

    aaaaaaa

    A

    KKMMMMM

    KKKK

    MMMMKKKK

    ,

    unde , pentru )()1( rjirji aa =+ ,ri=1 , nj ,1= , )(

    )()()1( )(

    rrr

    rjr

    rrir

    a

    aaaa rjiji =+ ,

    nrji ,1, += . n final se obine matricea superior triunghiular

    ===

    )(

    )(2

    )(22

    )(1

    )(12

    )(11

    121

    00.

    0...

    nnn

    nn

    n

    nn

    nn

    nn

    a

    aaaaa

    AMMMAU

    KMMM

    KK

    .

    Notm cu M=Mn1 Mn2 ... M2 M1 i demonstraia teoremei este complet. Exemplu.

    ==

    124265125

    1 AA ,

    =

    1054

    011001

    1M ,

    =

    59

    5180

    180125

    2A ,

    =

    12090

    010001

    2M ,

    ==

    4900180125

    3AU ,

    ==

    1209

    207

    011001

    12MMM .

    Considerm sistemul

    =++=+

    =++

    3241265

    1225

    321

    321

    321

    xxxxxxxxx

    ,

  • Bazele Analizei Numerice 18

    a crui soluie este x1=1, x2=2, x3=3. Sub form matriceal sistemul se scrie:

    Ax=b , unde . Acest sistem este echivalent cu urmtorul sistem:

    (M

    =

    31

    12b

    2M1A)x=(M2M1)b . Efectund calculele obinem

    ==+

    =++

    427

    49

    138 1225

    3

    32

    321

    x

    xxxxx

    .

    Numrul operaiilor pentru determinarea matricei U i a vectorului Mb

    Pentru o linie fixat i se calculeaz )(

    )(

    rrr

    rir

    a

    a , apoi se fac nmulirile cu

    , i se adun . La fel i cu . Sunt

    2(nr)+3 operaii elementare pentru fiecare linie i,

    njra rrj +1 ,)( njra rij +1 ,)( )1( +ribnir +1 , i pentru fiecare

    etap r vor fi ( ) ( )[ ]32 + rnrn operaii. n total vor fi ( )[ ]

    =+=+

    n

    rnnnrnrn

    1

    23267

    21

    32)(32 operaii elementare. Dac adugm i

    cele n2 operaii pentru rezolvarea sistemului triunghiular, rezult c numrul de

    operaii pentru rezolvarea sistemului Ax=b este nnn67

    23

    32 23 + .

    n continuare notm cu . Din Propoziia 1 rezult c L1= rr ML r este de

    forma:

    = +

    100

    00

    010

    001

    )(

    )(

    )(

    )(,1

    KK

    MMM

    L

    KMMOM

    KK

    rrr

    rnr

    rrr

    rrr

    r

    aa

    a

    aL .

    Dac notm cu L=L1L2...Ln1, atunci L este o matrice inferior triunghiular de tipul urmtor

  • Sisteme de ecuaii liniare 19

    .

    =

    1

    00.10001

    321

    21

    KlllMMMM

    KlK

    nnn

    L

    Deoarece , rezult c: UMMMA n11

    12

    11 ...

    = A=LU (3) Aadar, orice matrice ptratic ce ndeplinete condiia (*) din Teorema 1 admite o descompunere unic de forma (3), unde L este inferior triunghiular avnd elementele de pe diagonala principal egale cu 1 i U este superior triunghiular. Descompunerea (3) este cunoscut sub numele de factorizarea LU. Algoritmul pentru factorizarea LU { Determinarea matricelor U i L cu pstrarea matricei A } Pentru i:=1,n execut Pentru j:=1,n execut uij:=aij ; dac i=j atunci l i i:=1 altfel l i j:=0 ; sfrit pentru j ; sfrit pentru i ; Pentru r:=1,n1 execut Pentru i:=r+1,n execut Pentru j:=r+1,n execut

    rr

    rjirijij u

    uuuu =: ;

    sfrit pentru j ;

    rr

    irir u

    u=:l ; sfrit pentru i ; sfrit pentru r ; Pentru i:=2,n execut Pentru j:=1,i1 execut uij:=0 ; sfrit pentru j ; sfrit pentru i . Algoritmul se afl programat n MATLAB i poate fi apelat cu secvena: [ ] )(, AluUL = { se afieaz cele dou matrice }

    n exemplul precedent avem:

  • Bazele Analizei Numerice 20

    =

    1054

    011001

    1L ,

    =

    12090

    010001

    2L ,

    =

    ==

    124265125

    4900180125

    1209

    54

    011001

    LUA

    Observaia 1. Dac pivotul este foarte mic , adic 1)(

  • Sisteme de ecuaii liniare 21

    Pentru i:=n1,1,1 execut s:=0 ; Pentru j:=i+1,n execut s:=s+aijxj ; sfrit pentru j ; ( )

    ii

    ii a

    sbx =: ; sfrit pentru i .

    1.2. Matrice simetrice pozitiv definite Reamintim c o matrice simetric se numete pozitiv definit, dac forma ptratic asociat este pozitiv definit. Mai precis, dac A este o matrice simetric, atunci A se numete pozitiv definit dac

    (x)=xTAx > 0 , pentru orice x0 , unde . ( )Tnxxxx ,...,, 21=Din Algebra Liniar, se tie c o matrice simetric A, este pozitiv definit dac i numai dac r >0 pentru orice nr ,1= , unde

    =

    rrr

    r

    raa

    aa

    KMM

    K

    1

    111det .

    n practic aceste condiii sunt greu de verificat pentru matrice de dimensiuni mari. De aceea, n continuare vom prezenta unele condiii necesare, respectiv i suficiente, pentru ca o matrice simetric s fie pozitiv definit. Propoziia 1. Dac A este o matrice simetric pozitiv definit, atunci:

    (a) aii > 0 pentru orice ni ,1= , (b) aiiajj>aij2 pentru orice nji ,1, = .

    Demonstraie.

    ( ) ( ) ( )( ) ( nnnnnnnn

    nn

    nnnn

    nn

    nT

    xxaxaxaxxaxaxa

    xxaxaxaxaxa

    xaxaxxAxxx

    +++++++++

    ++++=

    ++

    ++==

    .........

    ......

    ...,...,

    221122222121

    11212111

    11

    1111

    1 M

    )

    innd seama c aij = aji , n continuare avem

  • Bazele Analizei Numerice 22

    ( )

    2

    222222

    1121122111

    1 1

    2....

    2...2

    nnn

    nn

    nnn

    i

    n

    jjiij

    xa

    xxaxa

    xxaxxaxaxxax

    +

    ++++

    ++++== = =

    M

    n particular, pentru avem (e

    ==

    0

    1

    0

    M

    Miex i) = aii . Cum este pozitiv definit i

    ei 0 , rezult c aii = (ei) > 0 , adic (a). Pentru un numr real oarecare avem

    (ei+ej)=aii2+2aij+ajj > 0 . (1) Pentru ca inegalitatea (1) s fie adevrat entru orice R, trebuie ca p( ) 04 2

  • Sisteme de ecuaii liniare 23

    Dac inegalitile (d) devin egaliti pentru anumii indici, dar nu pentru toi, matricea se numete slab diagonal dominant. Teorema 1. Fie A o matrice simetric cu urmtoarele proprieti:

    (i) A este tare diagonal dominant, (ii) aii > 0 pentru ni ,1= .

    Atunci A este pozitiv definit. Demonstraie. Din condiia (i) rezult c dac x0 , atunci:

    ( )

    ( )

    = =

    = = == == =

    =

    =>+=

    n

    i

    n

    ijj

    jiiij

    n

    i

    n

    i

    n

    ijj

    jiijn

    i

    n

    ijj

    iijn

    i

    n

    ijj

    jiijiii

    xxxa

    xxaxaxxaxax

    1 1

    1 11 1

    2

    1 1

    2

    1

    Deoarece aij=aji avem i inegalitatea:

    ( ) ( ) = =

    >n

    i

    n

    ijj

    ijjij xxxax1 1

    .

    Adunnd cele dou inegaliti rezult

    ( ) ( ) 0 2 21 1

    > = =

    n

    i

    n

    ijj

    jiij xxax .

    Aadar, (x) > 0 pentru orice x0 , deci este pozitiv definit. Definiia 2. Fie M={1,2,...,n}. O matrice A se numete reductibil dac exist dou submulimi S, T M cu proprietile:

    (i) S , T (ii) ST= (iii) ST=M (iv) aij = 0 pentru orice iS i jT .

    Matricea A se numete ireductibil dac oricare ar fi submulimile S i T ale lui M cu proprietile (i)(iii), exist i0S i j0T astfel nct 000 jia . Cel mai simplu exemplu de matrice reductibil este matricea diagonal. Teorema 2. Fie A o matrice simetric avnd urmtoarele proprieti:

    (i) A este slab diagonal dominant, (ii) A este ireductibil, (iii) aii > 0 pentru orice ni ,1= .

  • Bazele Analizei Numerice 24

    Atunci A este pozitiv definit. Demonstraie. Procednd ca n demonstraia Teoremei 1, rezult:

    ( ) 0 21)(

    2

    1 1

    = =

    n

    i

    n

    ijj

    jiij xxax .

    Vom arta c situaia (x)=0 pentru x0 nu poate avea loc. ntradevr, (x) se anuleaz n urmtoarele cazuri:

    1) aij = 0 pentru orice ij . Atunci matricea A are forma diagonal i este reductibil.

    2) 0== ji xx pentru orice i i j. ( ) 0)(

    1

    2

    11 1 1

    2 += = == = =n

    i

    n

    ijj

    ijiin

    i

    n

    i

    n

    ijj

    jiijii aaxxaax .

    Cum exist cel puin un indice i0 astfel nct 00

    0

    01

    iin

    ijj

    ji aa=

    < , rezult

    (x) > 0 pentru x0. 3) aij=0 pentru orice pereche de indici (i,j) pentru care ji xx i

    aij0 dac 0= ji xx . Fie M={1,2, ... , n} i { } 0 ; , == ji xxMjiS . Dac S=M, atunci suntem n cazul 2). Dac S= , atunci ji xx pentru orice i i j i evident (x) > 0 pentru x0. Aadar, putem presupune c SM (incluziune strict). Dac notm cu T=M \ S atunci S i T satisfac condiiile (i)(iv) din Definiia 2, deci A este reductibil. Exemplu. Fie

    =2100121001210012

    A .

    Matricea A este simetric, slab diagonal dominant, ireductibil i are elementele de pe diagonala principal strict pozitive. Din Teorema 2 rezult c A este pozitiv definit.

  • Sisteme de ecuaii liniare 25

    Oservaia 2. Teorema 2 este util la stabilirea faptului c anumite matrice care apar n rezolvarea numeric a ecuaiilor cu derivate pariale de tip eliptic sunt pozitiv definite.

    1.3. Metoda Cholesky Fie A o matrice simetric, pozitiv definit i

    ( ) = =

    ==n

    i

    n

    jjiij

    T xxaAxxx1 1

    forma ptratic asociat. Deoarece a11 > 0 avem:

    ( )

    njia

    aaaaxxa

    xa

    axaxxaxxaxxaxax

    jiijij

    n

    i

    n

    jjiij

    n

    i

    n

    j

    n

    jj

    jjiijnn

    ,2, , unde ,

    2...2

    11

    11)1(

    2 2

    )1(

    2

    2 2 2 11

    1111112112

    2111

    ==+

    +

    +=++++=

    = =

    = = =

    Dac notm cu

    , ( ) = =

    =n

    i

    n

    jjiij xxax

    2 2

    )1(1

    atunci 1 este la rndul su o form ptratic pozitiv definit.

    ntradevr, s presupunem prin absurd c exist astfel nct 02

    =

    nz

    zz M

    1(z) 0.

    Fie = n2=j 11

    11 j

    j zaa

    z i

    =

    nz

    zz

    z.2

    1

    .

    n continuare avem

    ( ) ( ) 00)( 112

    2 11

    1111 +=+

    += =

    zzza

    azaz

    n

    jj

    j , ceea ce contrazice faptul c este pozitiv definit. Aadar, am demonstrat c 1 este pozitiv definit. n particular, rezult c

    . Mai departe procedm cu 0)1(22 >a 1 aa cum am procedat cu i obinem

  • Bazele Analizei Numerice 26

    ( ) ( ) 22

    3 122

    12

    21

    221 xxa

    axax

    n

    jj)(

    )(j)( +

    +=

    = ,

    unde

    ( ) = =

    =n

    i

    n

    jjiij xxax

    3 3

    )2(2

    este pozitiv definit. n final (x) se reprezint ca o sum de ptrate. Mai precis (x) admite urmtoarea scriere:

    ( )2

    1 1 )1(

    )1()1(

    = +=

    +=

    n

    i

    n

    ijji

    ii

    iij

    ii

    ii xa

    axax ,

    unde

    ijij aa =)0( i 1,1 , )1()1()1(

    )1()( ==

    npa

    aaaa p

    pp

    ppj

    ppip

    ijp

    ij .

    Introducem notaiile:

    .,1, ,1,1 ,

    ,0

    ,

    ,1 ,

    )1()(

    )1(

    )1(

    npjinprraa

    ijr

    jir

    ar

    niar

    pjpip

    ijp

    ij

    ij

    ii

    iij

    ij

    iiiii

    +===

  • Sisteme de ecuaii liniare 27

    unde R este o matrice superior triunghiular. Descompunerea (2) poart numele de factorizarea Cholesky a matricei A i are loc pentru matrice simetrice pozitiv definite. Numrul de operaii pentru determinarea matricei R Pentru a calcula elementele liniei a ia a matricei R sunt necesare (ni)(2i1)+2i2 operaii elementare i o extragere de rdcin ptrat. Pentru toate liniile sunt necesare

    [ ]6

    523

    22)12)((23

    1

    nnniiinn

    i+=+

    =

    operaii elementare plus n extrageri de rdcin ptrat. Exemplu. S se determine descompunerea Cholesky a matricei

    =

    322232223

    A

    57 ,

    57

    , 35 ,

    152 ,

    32

    , 35 ,

    35 ,

    32 ,

    32 , 3

    33223

    )1(33

    )2(33

    21333

    )1(33

    22

    )1(23

    23131223)1(

    23

    222

    1222)1(

    22131211

    ===

    ======

    ======

    rraa

    raara

    rrraa

    rraarrr

    =

    5700

    152

    350

    32

    323

    R .

    Se verific imediat c A=RTR . Rezolvarea sistemului Ax=b cu metoda Cholesky, n cazul cnd matricea

    A este simetric i pozitiv definit, revine la rezolvarea a dou sisteme triunghiulare i anume

    =

    =yRxbyRT

    Algoritmul Cholesky pentru rezolvarea sistemelor de ecuaii liniare Pentru p:=1,n1 execut

  • Bazele Analizei Numerice 28

    pppp a:r = ; Pentru k:=p+1,n1 execut

    pp

    pkpk r

    ar =: ;

    sfrit pentru k ; Pentru i:=p+1,n execut Pentru j:=i,n execut aij:=aijrpirpj ; sfrit pentru j ; sfrit pentru i ; sfrit pentru p ;{ Rezolvarea sistemului RTy=b }

    11

    11 r

    by = ; Pentru i:=2,n execut s:=0 ; Pentru j:=1,i execut s:=s+rijyj ; sfrit pentru j ;

    ii

    ii r

    sby =: ; sfrit pentru i ; { Rezolvarea sistemului Rx=y }

    nn

    nn r

    yx = ; Pentru i:=n1,1 execut s:=0 ; Pentru j:=i+1,n execut s:=s+rijxj ; sfrit pentru j ;

    ii

    ii r

    syx =: ; sfrit pentru i . Algoritmul se afl programat i n MATLAB i se apeleaz cu secvena: R=chol(A); x=R\R'\b { pentru afiarea soluiei }

  • Sisteme de ecuaii liniare 29

    1.4. Metoda Householder. Factorizarea QR O matrice Householder este o matrice de forma H = In 2hhT, unde

    hT=(0,..., 0, hi, ..., hn) i 1... 222 =++= ni hhh . Se observ imediat c o matrice Householder este simetric i are urmtoarea structur:

    =

    +

    +

    21

    12

    2122

    222101

    01

    ninin

    niiii

    hhhhh

    hhhhhH

    KMMM

    K

    O

    Mai mult, constatm c H este ortogonal. ntradevr, H2 = (In 2hhT)(In 2hhT) = In 2hhT 2hhT + 4h(hTh)hT.

    Cum hTh = 1, rezult H2 = In. Aadar, avem H1 = H = HT. Un calcul simplu ne arat c (hhT)x = (hTx)h , pentru orice ( )Tnxxxx ,...,, 21= . n continuare ne punem urmtoarea problem: dat fiind un vector coloan x 0, se poate determina o matrice Householder H , astfel nct Hx s fie colinear cu e1 ? ( unde e1T = (1,0,...,0) ). Cu alte cuvinte, se poate determina un vector coloan h, cu 12 =h i un numr real astfel nct Hx=x2hhTx=e1 ? innd seama de observaia de mai sus, aceasta revine la x2(hTx)h=e1, de unde rezult x e1=2(hTx)h. Aadar, h trebuie s fie colinear cu xe1. Cum 12 =h rezult

    21

    1exexh

    = . (1)

    Pe de alt parte, H fiind ortogonal avem === 122 eHxx .

    Alegem = sgn(x1) 2x i facem convenia sgn(x1) = 1 dac x1 = 0. n continuare avem

  • Bazele Analizei Numerice 30

    ( )

    +=

    +=

    nn x

    xxxx

    x

    xxxx

    ex MM2

    121

    2211

    1

    )sgn()sgn(

    i

    ( )1222122221 222 xxxxxxex +=+= . nlocuind n (1) obinem

    ( )( )

    +

    +=

    nx

    xxxx

    xxxh M

    2

    121

    122

    sgn

    21 . (2)

    Se obine astfel urmtorul algoritm pentru determinarea lui h i deci a matricei H: H = In u uT

    ( )( )

    ( )( )Tnxxxxxuxxx

    ..., , ),sgn( 2121

    1122

    +=+=

    (3)

    sgn(x1) = 1 dac x1 = 0. Teorema 1. Pentru orice matrice AM n(R) nesingular exist o matrice ortogonal H astfel nct matricea R = HA este superior triunghiular. Demonstraie.

    Fie , prima coloan a matricei A. Din cele artate mai nainte rezult

    c exist o matrice Householder H

    =

    1

    21

    11

    1

    na

    aa

    a M

    1 astfel nct H1a1=e1. Matricea H1 se determin astfel:

    ( )( ) ( )( ) , ..., , ),sgn( , , 12111111112/1

    1

    21

    Tn

    n

    jj aaasauassas +=+=

    = =

    . , 0 daca 1)sgn( 11111

    Tn uuIHaa === (4)

    Dac notm cu A1 = H1A, atunci A1 are urmtoarea form:

    =

    )1()1(2

    )1(2

    )1(22

    )1(1

    )1(1211

    1

    0

    0)sgn(

    nnn

    n

    n

    aa

    aaaasa

    A

    KMMM

    KK

  • Sisteme de ecuaii liniare 31

    n continuare considerm vectorul i determinm o matrice

    ortogonal

    =

    )1(2

    )1(22

    )1(2

    na

    aa M

    2~H Mn1(R) astfel nct

    1)1(

    22~~ eaH = ,

    unde )0 , ... , 0 , 1(~1 =Te Rn1. Notm cu M

    =

    22 ~0

    01H

    H n(R) i cu A2 = H2A1. Matricea A2 va arta astfel

    njaa

    aa

    aaaaaaaaa

    A jj

    nnn

    n

    n

    n

    ,1 , unde ,

    00

    000

    )1(1

    )2(1

    )2()2(3

    )2(3

    )2(33

    )2(2

    )2(23

    )2(22

    )2(1

    )2(13

    )2(12

    )2(11

    2 ==

    =

    KMMMM

    KKK

    .

    n continuare se determin o matrice Householder 3~H Mn2(R) cu

    proprietatea c 1)2(

    32~~~ eaH = , unde M)0 ..., ,0 ,1(~~1 =Te n2(R). Vom nota cu

    M

    =

    3

    23 ~0

    0H

    IH n(R) i cu A3=H3A2. Matricea A3 va avea toate elementele de

    sub diagonala principal, din primele trei coloane, zero. Procedeul continu ntr-un mod evident. n final, obinem o matrice superior triunghiular An1 = Hn1An2 = =Hn1...H2H1A. Dac notm H=Hn1...H2H1 i cu R=HA, atunci H este ortogonal i R superior triunghiular. Corolar. Pentru orice matrice nesingular AM n(R) exist o matrice ortogonal Q i o matrice superior triunghiular R astfel nct A= QR. Algoritmul Householder pentru rezolvarea sistemelor de ecuaii liniare Fie sistemul Ax =b cu AM n(R). Notm cu C=(A|b)=(cij)M n,n+1 (R) matricea extins. Pentru i: = 1,n1 execut

    =

    =n

    ijijcs

    2: ;

    dac s = 0 atunci A este singular . Stop! altfel := (s(|cii|+s))1 ; dac cii = 0 atunci sgn(cii): = 1 ; u := (0, ..., 0, (cii + s)sgn(cii), ci+1,i , ..., cni)T ;

  • Bazele Analizei Numerice 32

    Hi: = In uuT ; C: = HiC ; sfrit pentru i ; Exemplu. Fie sistemul

    =++=+

    =++

    3241265

    1225

    321

    321

    321

    xxxxxxxxx

    Soluia exact este x1 = 1, x2 = 2, x1 = 3. Aplicm metoda Householder.

    =

    124265125

    A ; , ;

    =31

    12b

    =31241265

    12125C

    Iteraia I

    ; 124038405.866 ; 5 ; 455

    111 ===

    = sca

    ; 4

    5124038405.13

    ; 1069.37908646 124038405.13124038405.8

    1 3-

    === u

    =

    70.8499346190.1875817240.4923659690.1875817280.7655228350.6154574540.4923659650.6154574550.61545745

    1H

    ; 1.717464031.5591107801.103169955.4488884801.354006403.446561748.12403840

    11

    == AHA

    ; 78.27061368

    97.5882671025.29293411

    1 1

    == bHb [ ]111 bACHC == Iteraia a IIa

    ; 559110785.1448888481.5)1(

    2

    =a 667557862.5232222 =+= ccs ;

    c22=5.448888481 ; ; =0.015872234 ; ; 559110785.1116446343.11

    0

    =u

  • Sisteme de ecuaii liniare 33

    ; 40.9614173530.27509393030.2750939340.961417350

    001 2

    =H

    ==21.954675090070.5881427925.66755786011.3540064073.4465617458.12403840-

    122 AHA ;

    ==

    75.8640252739.5706873325.29293411

    122 bHb ; [ ]222 bACHC == ;

    ==60.8687444880.390935010.3040605770.0534675260.6843843470.7271583640.4923659650.6154574550.61545745

    12 HHH ;

    ==21.954675090070.5881427925.66755786011.3540064073.4465617458.12403840

    AHR ;

    Soluia sistemului iniial este x=R1Hb , unde:

    =

    50.511593970010.0530899490.17644283070.0627426580.0748545310.12309149

    1R .

    Se obine soluia x1=1 ; x2= 2 ; x3= 3.000000001 .

    1.5. Norme de matrice Cele mai utilizate norme vectoriale pe Rn sunt: 1) }{ ,...,, max 21 nxxxx = 2)

  • Bazele Analizei Numerice 34

    (i) MA = 0 dac i numai dac A = 0 ,

    (ii) MM AA = , ; R, AM n(R) , (iii) MMM BABA ++ , (iv) MMM BAAB , A, BM n(R). Un exemplu de norm de matrice este norma euclidian de matrice, care se definete astfel

    2/1

    1 1

    2

    = = =

    n

    i

    n

    jijE aA . (1)

    Proprietile (i) i (ii) sunt evidente. Pentru a demonstra proprietile (iii) i (iv) se folosete inegalitatea CauchyBuniakovskiSchwarz pe Rn. Pentru exemplificare demonstrm (iv). Fie C = AB. Atunci

    =

    ===

    n

    kkj

    n

    kik

    n

    kkjikij babac

    1

    2

    1

    22

    1

    2

    n continuare avem

    22

    1 1

    2

    1 1

    2

    1 1

    22EE

    n

    j

    n

    kkj

    n

    i

    n

    kik

    n

    i

    n

    jijE BAbacAB =

    =

    = == == =,

    de unde rezult EEE BAAB . Definiia 2. O norm de matrice M se numete compatibil cu norma vectorial p dac pMp xAAx pentru orice x. Observaia 1. 22 xAAx E , () x.

    ntradevr, ( ) 2221 1

    2

    1

    2

    1

    211

    22 ... xAxaxaxaAx E

    n

    i

    n

    jj

    n

    jij

    n

    inini =

    ++= = ===

    .

    Observaia 2. Dac este o valoare proprie a matricei A, atunci MA pentru orice norm de matrice compatibil cu o norm vectorial. ntradevr, fie v un vector propriu al matricei A care corespunde valorii proprii . Atunci avem

    vAAvvv M== ,

  • Sisteme de ecuaii liniare 35

    deci MA . Dup cum se tie, ntre mulimea M n(R) a matricelor ptratice cu elemente din R i mulimea L(Rn) a aplicaiilor liniare i continue, U : RnRn , exist o coresponden bijectiv. Mai precis, dac A este matricea asociat transformrii liniare U, atunci U(eiT) = (a1i, a2i, ..., ani), unde eiT = (0, ..., 1, ..., 0)Rn i U(xT) = (Ax)T. Pe de alt parte, spaiul L(Rn) este un spaiu normat n raport cu norma operatorial: ( ){ } 1 ; supo == TT xxUU (2) unde cu am notat o norm oarecare pe Rn. Se tie de asemenea c: ( ){ } )( , c ; 0 info nTTT xxxUcU R>= (3) Definiia 3. Se numete norma matricei A subordonat normei vectoriale urmtorul numr:

    { }x

    AxxAxA

    x 0sup 1 ; sup

    === (4)

    Ca i n cazul normei operatoriale, avem { )( , c ; 0 inf xxAxcA >= } . (5) Din relaia (5) rezult n particular c nxxAAx R , , deci norma matriceal definit de (4) este compatibil cu norma vectorial creia i este subordonat. Este evident c aplicaia AA definit de (4) satisface proprietile (i)(iii) din definiia 1. De asemenea avem

    xBABxAABx , de unde rezult BABA . Aadar, formula (4) definete ntradevr o norm de matrice. Definiia 4. Dac 1, ..., n sunt valorile proprii ale matricei A , atunci se noteaz cu (A)= i

    ni

    1max i (A) se numete raza spectral a matricei A (n aceast

    definiie i pot fi reale sau complexe) Teorema 1. Pentru AM n(R) avem:

    (1) =

    =n

    jij

    niaA

    11max ,

  • Bazele Analizei Numerice 36

    (2) =

    =n

    iij

    njaA

    111 max ,

    (3) ( )( )212 AAA T = , unde cu pA am notat norma matricei A subordonat normei vectoriale px .

    Demonstraie.

    ===

    =n

    jij

    ni

    n

    jjij

    ni

    n

    jjij

    niaxxaxaAx

    111111maxmaxmax

    Rezult =

    n

    jij

    niaA

    11max . Rmne s artm c exist 1x~cu ~ =x

    astfel nct =

    =n

    jij

    niaxA

    11max~ . Pentru aceasta, fie k astfel nct s avem

    = =

    =n

    j

    n

    jij

    ikj aa

    1 11max (6)

    i fie

    =

    = 0 dac0 dac0

    ~kj

    kj

    kjkj

    j aa

    aa

    x .

    Evident c 1~ =x i == ==n

    jij

    ni

    n

    jkj aa

    111maxx~A . Aadar, am demonstrat

    (1). n continuare avem

    ( )( ) 1

    111

    11

    111

    1111

    max...max

    ......

    xaxxa

    xaxaxaxaAx

    n

    iij

    njn

    n

    iij

    nj

    n

    inini

    n

    inini

    =++

    ++++=

    ==

    ==

    de unde rezult =

    n

    iij

    njaA

    111 max .

  • Sisteme de ecuaii liniare 37

    Pe de alt parte dac eTj=(0,...,1,...,0) , atunci 11 =je i ==n

    iijj aAe

    11

    , de

    unde rezult ijn

    iaA

    =

    11 , pentru orice nj ,1= . Aadar, =

    n

    iij

    njaA

    111 max

    i cu aceasta afirmaia (2) este dovedit. Fie B=ATA i fie { } 1 ; sup 21 == xBxx T (7) Evident ( ){ } 2221 1 ; sup AxAxAx T === , deci 12 A = . Deoarece mulimea { } 1 ; 2 == xxS este compact, rezult c exist v cu proprietile: 1=vTBv i 12 =v . Vom arta n continuare c Bv=1v , deci c v este un vector propriu pentru B i corespunde valorii proprii 1. ntr-adevr, pentru orice z0 avem: 1

    22

    zzB

    zz

    T

    i deci

    zzzBzz TT 1221 = (8)

    Pe de alt parte este evident c relaia (8) este verificat i pentru z=0. Deci relaia (8) are loc pentru orice z. De asemenea avem: vTBv=1vTv (9) Dac notm cu C=B1In , atunci avem: zTCz0 , () z i (8') vTCv=0 (9') Fie z=v+ty , unde tR este oarecare i y este un vector oarecare. Din (8') i din faptul c C este simetric rezult

    vTCv+2tyT(Cv)+t2yTCy0 . innd seama de (9') avem . (10) ( ) 022 + CvtyCyyt TTPentru ca (10) s fie adevrat pentru orice tR trebuie ca yTCv = 0. Cum y a fost arbitrar rezult 0=Cv=(B1In)v=Bv1v. Aadar, avem Bv=1v, deci 1 este valoare proprie pentru B i n plus 221 A= . Pe de alt parte, fie o alt valoare proprie a matricei B i fie u0, 12 =u , astfel nct Bu=u. n continuare avem

    ==== uuBuuAuA TT22221 . Aadar, 1 este cea mai mare valoare proprie a matricei B, deci am demonstrat i afirmaia (3).

  • Bazele Analizei Numerice 38

    n particular dac presupunem c matricea A este simetric, rezult c B=A2. Fie 1, 2, ..., n valorile proprii ale matricei A, care n acest caz sunt reale. Se tie c sunt valorile proprii ale matricei A222

    21 ..., , , n 2. S

    presupunem c . 21

    21 max j

    nj

    =

    Din Teorema 1 rezult c 12 =A . Dac, n plus, A este pozitiv definit, atunci i>0 pentru orice i. S presupunem c: n ...21 . Din cele de mai sus rezult 12 =A , unde 1 este cea mai mare valoare proprie a matricei simetrice i pozitiv definite A.

    1.6. Perturbarea sistemelor liniare. Numrul de condiionare al unei matrice

    Considerm urmtorul sistem de ecuaii liniare

    =+++=+++=+++=+++

    311095733910682356573278710

    4321

    4321

    4321

    4321

    xxxxxxxxxxxxxxxx

    (1)

    a crui soluie exact este x1=x2=x3=x4=1. S considerm acum sistemul (1') n care am modificat puin termenii liberi

    =+++=+++=+++=+++

    9.30109571.33910689.2256571.3278710

    4321

    4321

    4321

    4321

    xxxxxxxxxxxxxxxx

    . (1')

    Soluia sistemului (1') este x1= 9.2 ; x2= 12.6 ; x3= 4.5 ; x4= 1.1 . Aadar, o eroare mic, de ordinul 0.1, a termenilor liberi, produce o eroare mare, de ordinul 10, a soluiei sistemului. Fie acum sistemul (1") n care modificm puin coeficienii sistemului

    =+++=+++=+++

    =+++

    3198.9999.499.633989.998.58235604.508.7

    322.71.8710

    4321

    4321

    4321

    4321

    xxxxxxxxxxxx

    xxxx

    . (1")

    Soluia sistemului (1") este: x1= 81 ; x2= 137 ; x3= 34 ; x4= 22 . S analizm acum efectul perturbrii membrului drept asupra soluiei unui sistem liniar Ax=b, n care matricea A este nesingular.

  • Sisteme de ecuaii liniare 39

    Notm cu b perturbarea membrului drept i cu x perturbarea care rezult pentru soluie. Avem: A(x+ x )=b + b , de unde rezult A x = b i deci

    x =A1 b . Pentru orice norm de matrice compatibil avem: bAx 1 (2) Pe de alt parte xAAxb = , de unde rezult:

    bA

    x1 (3)

    Din relaiile (2) i (3) obinem bb

    AAxx 1 .

    Numrul de condiionare al unei matrice se definete astfel 1)( = AAAcond . (4) Aadar, ntre eroarea relativ a membrului drept i eroarea relativ a soluiei sistemului avem urmtoarea inegalitate

    bb

    Acondxx )( . (5)

    Observm c dac numrul de condiionare al matricei coeficienilor sistemului este mare, atunci la erori relativ mici ale termenilor liberi, pot apare erori relativ mari pentru soluia sistemului. n cazul exemplului (1) avem

    =

    1095791068565788710

    A ,

    =

    23106351710

    101768416104125

    1A

    i cond2(A) 2984. (Sa folosit norma de matrice 2 ). Dup cum se vede, numrul de condiionare este destul de mare, ceea ce explic instabilitatea soluiei sistemului. Numrul de condiionare are urmtoarele proprieti: (i) cond(In)1 (ii) cond(A)=cond(A1) (iii) cond(A)=cond(A) pentru orice 0 (iv)

    nA

    12 )(cond = , unde 12...n>0 sunt valorile proprii ale matricei

    B=ATA

  • Bazele Analizei Numerice 40

    (v) Dac A este simetric, atunci i

    iA

    minmax

    )(cond2 = , unde 1, ..., n sunt valorile proprii ale matricei A

    (vi) Dac A este ortogonal, atunci cond(A)=1 . Pentru a evalua eroarea soluiei sistemului la o perturbare a coeficienilor sistemului, avem nevoie de urmtoarele dou leme. Lema 1. Dac AM n(R) i 1

  • Sisteme de ecuaii liniare 41

    Cum det(A1B) = det(A1)detB, va rezulta detB 0, deci B este nesingular. Tot din Lema 1 rezult

    ( )[ ] ( ) kABAABAIAB n += 1 1 1 11111 . Mai departe avem ( )

    kAABAABB =

    1

    11111 . Teorema 1. Dac perturbm matricea coeficienilor sistemului Ax = b cu A i

    11

  • Bazele Analizei Numerice 42

    Observaia 1. Dac presupunem n plus c perturbm i membrul drept al sistemului cu b atunci rezult

    +

    bb

    AA

    AA

    Acond

    Acondxx

    )(1

    )( .

    Observaia 2. Rezolvarea sistemului Ax=b, cu metoda Gauss revine la rezolvarea a dou sisteme triunghiulare Uy=b i Lx=y. Rezolvarea fiecrui sistem necesit n2 operaii. Dac unul din aceste sisteme este ru condiionat (ceea ce se poate ntmpla chiar dac sistemul iniial Ax=b este bine condiionat) metoda Gauss conduce la erori mari. Cu totul altfel stau lucrurile n cazul metodei Householder. Deoarece cond(Q) = 1 i cond(QR) = cond(R), rezult c sistemul Qy = b este bine condiionat i deci c sistemul Ax = b are aceeai condiionare ca sistemul Rx = y. Aadar, algoritmul Householder are proprieti de stabilitate mai bune dect algoritmul Gauss. Observaia 3. Pentru evaluarea numrului de condiionare cond(A), este suficient s cunoatem un majorant pentru 1A . Calculul lui ( ) 1LU este mai uor dect calculul lui 1A , deoarece inversarea matricelor triunghiulare este uoar. S presupunem c

    ( ) =1LU i kLUA

  • Sisteme de ecuaii liniare 43

    1.7. Metode iterative de rezolvare a sistemelor de ecuaii liniare

    Metodele directe de rezolvare numeric a sistemelor de ecuaii liniare se utilizeaz pentru sisteme care au matricea coeficienilor dens (aproape toi coeficienii sunt nenuli) i cu un numr de ecuaii moderat (pn la 100 de ecuaii). Pentru sisteme mari de ecuaii de ordinul 103 105 i care au matricea coeficienilor rar (cu multe elemente nule), se utilizeaz metode iterative de rezolvare numeric. S presupunem c sistemul Ax = b (1) se poate pune sub forma echivalent x = Bx + c (2) Forma echivalent (2) ne sugereaz urmtorul proces iterativ: , (3) ( ) ( ) 01 +=+ c, mBxx mmunde x(0) este un vector arbitrar. Dac notm cu x* soluia exact a sistemului, atunci avem x*=Bx*+c (4) Fie e(m) = x*x(m) vectorul eroare. Din (3) i (4) rezult , mN)()1( mm Bee =+ * i mai departe (5) )0()( eBe mm = Teorema 1. Dac 1

  • Bazele Analizei Numerice 44

    Demonstraie. Este suficient s artm c dac i numai dac 0lim =

    mm

    B 1)(

  • Sisteme de ecuaii liniare 45

    Cum , rezult c 0))((lim =kmk

    mBm 0lim =

    mm

    J , deci c

    . 0lim =m

    mJ

    Reciproc, s presupunem c i c 0lim =m

    mB ( ) 1B . Atunci exist

    un vector propriu x 0 i o valoare proprie 1cu , , astfel nct Bx=x i deci Bmx = m x. Cum (m x) nu converge la 0, rezult c Bm nu converge la 0, ceea ce contrazice ipoteza fcut. Una din cele mai cunoscute metode iterative este metoda Jacobi. S presupunem c matricea sistemului Ax=b are proprietatea niaii 1,= ,0 . Dac notm cu i cu E=DA, atunci obinem sistemul echivalent (DE)x=b i mai departe

    ) ..., ,(diag 11 nnaaD =

    (7) bDxEx=D- 11 +

    Cum 1 ..., ,1diag11

    1-

    =

    nnaaD , rezult c

    =

    = n

    ijj ii

    ij

    ni aa

    ED11

    1 max .

    Observm c dac matricea A este tare diagonal dominant, atunci 11

  • Bazele Analizei Numerice 46

    Dac matricea A este tare diagonal dominant, irul ( )) ( mx converge la soluia exact a sistemului. Exemplu. Fie sistemul

    =

    348

    124

    101111511111011115

    4

    3

    2

    1

    xxxx

    Soluia exact este x1 = 1, x2 = 2, x3 = 3, x4 = 4.

    =

    100000500001000005

    D , , ,

    ,

    =

    0111101111011110

    E

    =

    01,01,01,02,002,02,01,01,001,02,02,02,00

    D 1- E

    =

    4,36,12,18,0

    1- bD 16.01

  • Sisteme de ecuaii liniare 47

    Sistemul (1) devine (D+L) x = Ux +b i mai departe obinem urmtorul proces iterativ: (D+L) x(m+1) = Ux(m) +b . (9) Pe componente obinem

    ( ) ( ) ( ) ,ni,xaxaba

    xn

    ij

    mjij

    i-

    j

    mjiji

    ii

    m+i 1

    1

    1

    1

    1

    11 =

    =

    +==+ . (10)

    Din algoritmul (10) se observ c fiecare nou component, ( )1m+jx , este imediat utilizat la calculul urmtoarei componente. Se poate arta c procesul iterativ GaussSeidel este convergent dac matricea A este tare diagonal dominant. n cazul exemplului precedent obinem

    ( )( )( )( )

    ( )( )( )( )

    +

    =

    348

    124

    0000100011001110

    101110511001010005

    4

    3

    2

    1

    1+4

    1+3

    1+2

    1+1

    m

    m

    m

    m

    m

    m

    m

    m

    xxxx

    xxxx

    sau

    ( ) ( ) ( )( ) ( ) ( )

    ( ) ( ) ( )( ) ( ) ( )

    +++=

    +++=

    +++=

    ++=

    34101

    851

    12101

    451

    13

    12

    11

    14

    41

    21

    11

    3

    431

    11

    2

    4321

    1

    m+m+m+)(m+

    mm+m+)(m+

    mmm+)(m+

    mmm)(m+

    xxxx

    xxxx

    xxxx

    xxxx

    .

    Pentru dup 5 iteraii obinem ,0)0(4)0(

    3)0(

    2)0(

    1 ==== xxxx999.3998.2998.19950 (5)4

    (5)3

    (5)2

    (5)1 ; ; ; ==== xxx.x .

    1.8. Metode de relaxare. Principiile de baz Metodele de relaxare sunt metode iterative i sunt utilizate pentru rezolvarea numeric a sistemelor liniare care au matricea coeficienilor simetric i pozitiv definit. Fie sistemul liniar Ax b = 0 (1)

  • Bazele Analizei Numerice 48

    unde matricea A este simetric i pozitiv definit. Dac este un vector de

    prob oarecare, atunci notm cu

    =

    nv

    vv

    v M2

    1

    r= Av b . (2) Vectorul r se numete vectorul rezidual. Scopul oricrei metode de relaxare este ca prin schimbarea sistematic a vectorului v, vectorul rezidual corespunztor r s se micoreze, eventual s se anuleze. n cele ce urmeaz, pentru orice doi vectori

    =

    nu

    uu

    u M2

    1

    i

    =

    nv

    vv

    v M2

    1

    vom nota produsul lor scalar cu nvnu...vuvuu

    Tvu,v +++== 2211 (3) Asociem sistemului (1) funcia ptratic

    = ==

    == ni

    n

    iii

    n

    jjiij b,vAv,vvbvvavF

    1 11 21

    21)( (4)

    Deoarece A este pozitiv definit, rezult Q(v)>0 pentru orice v0, unde Av,vvQ =)( . Observm de asemenea c pentru orice ,ni 1= avem

    =

    = nj

    ijiji

    bvavF

    1

    ,

    deci vectorul rezidual r = gradF . (5) Teorema 1. Problema determinrii soluiei sistemului (1) este echivalent cu problema determinrii punctului de minim al funciei ptratice (4). Demonstraie. Fie v0 soluia sistemului (1). Atunci r0=Av0b=0. Cum

    r0=gradF(v0), rezult 0)(

    0 =vvF

    i . Aadar, v=v0 este punct critic pentru F. Pe

    de alt parte,

    = =

    >= ni

    n

    jjiij dvdvavFd

    1 10

    2 0)( .

    Rezult c v=v0 este un punct de minim global pentru F.

  • Sisteme de ecuaii liniare 49

    Reciproc, dac v=v0 este punct de minim pentru F atunci

    0)(

    0 =vvF

    i , ,ni 1= .

    Rezult ,ni=,bva in

    jjij 1 0

    1

    0 ==

    , deci v=v0 este soluie pentru (1).

    n continuare prezentm principiul de baz al metodei relaxrii. Fie v un vector de prob oarecare, p o direcie dat i { } R+== ttp;vvD , dreapta care trece prin v i este paralel cu p. Ne propunem s determinm astfel nct

    Dv 0{ }Dv; vFvF = )(min)( 0 . innd seama de (4), rezult

    . 2

    )(

    2)(

    2)(

    22221

    )(21)(

    2

    22

    2

    r,ptAp,ptvF

    b,pAvtAp,ptvFb,ptAv,ptAp,ptvF

    b,ptAp,vtAp,ptAv,ptb,vAv,v

    tpb,vtpv,tpvAvF

    ++=

    =++=++=

    =+++=

    =+++=

    Folosim notaia

    r,ptAp,ptvFtpvFvFtf ++=+==2

    )()()()(2

    (6)

    Determinm pe t astfel nct )()( vFtf = s fie minim. Pentru aceasta trebuie s avem 0)( = tf , de unde rezult 0=+ r,pAp,pt . Aadar, obinem:

    Ap,pr,p

    t =min (7) Cum 0)( >= Ap,ptf , rezult c vectorul ptvv min0 + = este un punct de minim pentru . )v(F n continuare avem

    Ap,pr,p

    vFvFtf2

    0min 21)()()( ==

    de unde rezult

    021

    2

    0 == Ap,pr,p

    F(v))vF(F .

    Pentru ca F

  • Bazele Analizei Numerice 50

    Observaia 1. Dac bvAr = 00 este vectorul rezidual corespunztor vectorului , atunci ptvv min0 += 00 = ,pr .

    ntradevr,

    0min0 ==+= Ap,pAp,pr,p

    r,pAp,ptAv-b,p,pr .

    Pentru interpretarea geometric a principiului relaxrii s considerm cazul particular n = 2. Ecuaiile F(v) = constant, reprezint ecuaiile unor elipse concentrice, al cror centru comun, coincide cu punctul de minim al funciei F. ntradevr, ecuaia F(v) = c revine la . (8) cvbvbvavvava 2222 2211

    22222112

    2111 =++

    Deoarece A este pozitiv definit, rezult c

    02212

    1211 >aaaa

    = ,

    deci (8) reprezint o elips. Fie v0 un vector de prob oarecare i c0=F(v0). Ecuaia F(v)=c0 reprezint o elips i v=v0 aparine acestei elipse. Deoarece r0=gradF(v0), rezult c r0 este perpendicular pe tangenta n v=v0 la elips. Direcia p1 o alegem astfel nct s nu fie perpendicular pe r0. Fie v1=v0+tminp1 i fie c1=F(v1). Punctul v=v1 aparine elipsei F(v)=c1 i de asemenea aparine dreptei ce trece prin v0 i are direcia p1. Fie r1=Av1b. Din Observaia 1, rezult c r1 este perpendicular pe direcia p1. Pe de alt parte r1=gradF(v1) este perpendicular pe tangenta n v=v1 la elipsa F(v)=c1. Rezult c v=v1, este punctul de tangen la elipsa F(v)=c1 al dreptei care trece prin v0 i are direcia p1.

    v1v0

    r0

    r1 p1

    1.9. Metoda relaxrii simple Este o metod specific calculelor de mn, avnd mai ales o semnificaie istoric. Fie v un vector de prob oarecare i fie r=Av b vectorul rezidual corespunztor.

  • Sisteme de ecuaii liniare 51

    Dac jini

    rr =1

    max , atunci alegem p=ej unde ( )0,...,1,...,0=Tje . Rezult

    jj

    j

    ar

    Ap,ppr

    t == ,min i

    jjj

    j ear

    vptvv =+= min (1) Pe componente avem:

    =

    = jiar

    v

    jivv

    jj

    jj

    i

    i daca

    daca . (2)

    De asemenea vom avea jjj

    j Aear

    rbvAr == i mai departe

    =

    =

    =

    njjj

    jnn

    j

    jjj

    j

    aar

    rr

    ...................

    r.................

    aar

    rr

    0

    111

    (3)

    021)()(

    2

  • Bazele Analizei Numerice 52

    i .

    =

    405060

    1

    .

    .

    .)(r 60) max( (1)1

    (1)3

    (1)2,

    (1)1 .rr,rr ==

    Aadar

    ==

    001

    11 ep , 111

    (1)1(1)(2) ear

    vv = i 111

    (1)1(1)(2) Aear

    rr = .

    Pe componente avem

    ===

    ===

    52.0

    62.0

    0

    ,

    0

    0

    6.0

    (2)3

    (2)2

    (2)1

    )2(3

    )2(2

    )2(1

    rrr

    vvv

    ,

    ( ) 62.0 , ,max (2)3(2)2(2)1)2(2 == rrrr . Rezult

    ==

    010

    22 ep , 222

    (2)2(2)(3) e

    ar

    vv = i 222

    (2)2(2)(3) Ae

    ar

    rr = ;

    ===

    ===

    644.0

    0

    124.0

    ,

    0

    62.0

    6.0

    (3)3

    (3)2

    (3)1

    )3(3

    )3(2

    )3(1

    r

    rr

    v

    vv

    ( ) 644.0 , ,max (3)3(3)2(3)1)3(3 == rrrr . n continuare

    ==

    100

    33 ep , 333

    (3)3(3)(4) ear

    vv = i 333

    (3)3(3)(4) Aear

    rr = .

    ===

    ===

    0

    1288.0

    2528.0

    ,

    644.0

    62.0

    6.0

    (4)3

    (4)2

    (4)1

    )4(3

    )4(2

    )4(1

    rrr

    vvv

    , etc.

  • Sisteme de ecuaii liniare 53

    1.10. Metoda deplasrilor succesive (Gauss - Seidel) n metoda deplasrilor succesive, direcia de relaxare urmeaz ciclic direciile e1, e2, ... , en, indiferent de reziduurile respective, dup care ciclul se reia. Pentru simplificare s presupunem c avem sistemul

    =+=++=++

    000

    3333232131

    2323222121

    1313212111

    bx+axaxabxaxaxabxaxaxa

    Fie v(0) vectorul de prob iniial i fie . Conform formulei (1) din 9

    rezult

    ==

    001

    1ep

    111

    (0)10 ear

    vv )( = , iar pe componente

    ( )

    ==

    ++=

    )(

    )(

    )()()()(

    vvvv

    bvavavaa

    vv

    033

    022

    10

    3130

    2120

    11111

    011

    1

    .

    n continuare alegem direcia de relaxare

    ==

    010

    2ep

    i obinem vectorul de componente v

    ( )

    =++=

    =

    )(

    )(

    v

    bvavaaa

    vv

    v

    v

    vv

    033

    232322212122

    022

    111 .

    n sfrit, pentru direcia de relaxare

    ==

    100

    3ep ,

  • Bazele Analizei Numerice 54

    obinem vectorul de componente v

    ( )

    ++===

    333323213133

    033

    22

    11

    1 bvavavaa

    vv

    vvvv

    )(

    .

    Dup ncheierea acestui ciclu, vectorul gsit va fi notat cu v(1) i va avea componentele:

    +==

    +==

    +==

    33

    312

    33

    3211

    33

    313

    13

    22

    203

    22

    2311

    22

    212

    12

    11

    103

    11

    1302

    11

    121

    11

    abv

    aav

    aavv

    abv

    aav

    aavv

    abv

    aav

    aavv

    )()()(

    )()()(

    )()()(

    (1)

    Efectund calculele obinem:

    =+=++=++

    3)1(

    333)1(

    232)1(

    131

    2)0(

    323)1(

    222)1(

    121

    1)0(

    313)0(

    212)1(

    111

    + bvavava

    bvavava

    bvavava

    .

    n general, pentru un sistem de n ecuaii, dup (m+1) cicluri se obine vectorul care verific ecuaiile: 1)( +mv

    (2)

    =+++

    =++++=++++

    +++

    ++

    n)(m+

    nnn)(m

    n)(m

    n)(m

    n

    (m)nn

    (m))(m)(m+

    (m)nn

    (m)(m))(m

    bva...v+avava

    ..........................................................................bva...vavava

    bva...vavava

    1133

    122

    111

    223231

    2221

    121

    113132121

    111

    Observaia 1. Formulele (1) coincid cu formulele (10) din 7. Dac notm cu

    =

    0...

    0...0......

    0...000...000

    21

    3231

    21

    nn aa

    aaa

    E , TEF = i ,

    =

    nna

    aa

    D

    LMMM

    LL

    00

    0000

    22

    11

  • Sisteme de ecuaii liniare 55

    atunci matricea A admite descompunerea A=E+D+F i irul de vectori verific relaia matricial

    )(mv

    (D+E)v(m+1) + Fv(m) = b , (3) de unde rezult v(m+1)= (D+E) 1Fv(m)+(D+E) 1b . (4) n sfrit, notnd M= (D+E) 1F i C=(D+E) 1b (5) obinem procesul iterativ v(m+1)=Mv(m)+C . (6) Exemplu. S se gseasc soluia aproximativ obinut dup 5 iteraii cu metoda deplasrilor succesive, lund vectorul iniial (0, 0, 0), pentru sistemul Ax = b, unde:

    ,

    2100131001310012

    =A

    =

    1111

    b .

    Rezolvare

    =

    0000100001000010

    18621012420012600018

    361)( 1

    --

    -

    F=D+E -

    =+=

    6210124200126000180

    361)( 1FEDM

    +=361

    94)(det 22 IM .

    Valorile proprii ale matricei M sunt ; . ; . 07703690 21 == 00 43 == ; . 1369.0)(

  • Bazele Analizei Numerice 56

    Iteraia I

    =

    =

    =

    =

    )(1

    )(1

    )(1

    )(1

    )1(343

    )1(242

    )1(141

    44

    )1(4

    )0(434

    )1(232

    )1(131

    33

    )1(3

    )0(424

    )0(323

    )1(121

    22

    )1(2

    )0(441

    )0(331

    )0(212

    11

    )1(1

    xaxaxaba

    x

    xaxaxaba

    x

    xaxaxaba

    x

    xaxaxaba

    x

    rezult

    =

    0.750.50.50.5

    )1(x

    Iteraia a II a

    =

    =

    =

    =

    )(1

    )(1

    )(1

    )(1

    )2(343

    )2(242

    )2(141

    44

    )2(4

    )1(434

    )2(232

    )2(131

    33

    )2(3

    )1(424

    )1(323

    )2(121

    22

    )2(2

    )1(441

    )1(331

    )1(212

    11

    )2(1

    xaxaxaba

    x

    xaxaxaba

    x

    xaxaxaba

    x

    xaxaxaba

    x

    rezult

    =

    0.916670.83333

    0.750.75

    )2(x

    Iteraia a III a

    =

    =

    =

    =

    )(1

    )(1

    )(1

    )(1

    )3(343

    )3(242

    )3(141

    44

    )3(4

    )2(434

    )3(232

    )3(131

    33

    )3(3

    )2(424

    )2(323

    )3(121

    22

    )3(2

    )2(441

    )2(331

    )2(212

    11

    )3(1

    xaxaxaba

    x

    xaxaxaba

    x

    xaxaxaba

    x

    xaxaxaba

    x

    rezult

    =

    0.969910.939810.902780.875

    )3(x

    Iteraia a IV a

    =

    =

    =

    =

    )(1

    )(1

    )(1

    )(1

    )4(343

    )4(242

    )4(141

    44

    )4(4

    )3(434

    )4(232

    )4(131

    33

    )4(3

    )3(424

    )3(323

    )4(121

    22

    )4(2

    )3(441

    )3(331

    )3(212

    11

    )4(1

    xaxaxaba

    x

    xaxaxaba

    x

    xaxaxaba

    x

    xaxaxaba

    x

    rezult

    =

    0.988940.977880.963730.95139

    )4(x

    Iteraia a V a

  • Sisteme de ecuaii liniare 57

    =

    =

    =

    =

    )(1

    )(1

    )(1

    )(1

    )5(343

    )5(242

    )5(141

    44

    )5(4

    )4(434

    )5(232

    )5(131

    33

    )5(3

    )4(424

    )4(323

    )5(121

    22

    )5(2

    )4(441

    )4(331

    )4(212

    11

    )5(1

    xaxaxaba

    x

    xaxaxaba

    x

    xaxaxaba

    x

    xaxaxaba

    x

    rezult .

    =

    0.995920.991840.986580.98187

    )5(x

    Teorema 1. Dac matricea A este simetric i pozitiv definit, procesul iterativ Gauss Seidel este convergent. Demonstraia rezult din analiza descreterii funciei ptratice F prin trecerea de la o iteraie la alta. O alt demonstraie se bazeaz pe faptul c se poate arta c dac A este simetric i pozitiv definit, atunci 1)(

  • Bazele Analizei Numerice 58

    (2)

    30

    33311

    31

    331

    2321

    131

    20

    3230

    22211

    21

    221

    121

    10

    3130

    2120

    11111

    1111

    1

    1

    1

    =++=+++=+++

    bv)a(v+avava

    bvav)a(vava

    bvavav)a(va

    )()(-)()(

    )()()(-)(

    )()()()(-

    Dac introducem notaiile

    =

    000000

    3231

    21aa

    aE , i F=E

    =

    33

    22

    11

    000000

    aa

    aD T ,

    relaiile (2) capt forma matricial (E+ 1D)v(1) + [F+(1 1)D]v(0) = b . (3) n general, pentru un sistem de n ecuaii, irul de vectori v(m) satisface relaia: (E+ 1D) v(m+1) + [F+(1 1)D] v(m) = b . (4) n continuare avem v(m+1)= (E+ 1D) 1 [F+(1 1)D] v(m)+ (E+ 1D) 1b . Notm cu

    [ ]

    [ ] )()1()()(

    11

    111

    +=++=

    bDEC

    DFDEM . (5)

    Obinem astfel procesul iterativ v(m+1) =M( )v(m) + C() . (6) Pentru = 1 obinem algoritmul Gauss Seidel (vezi (4), (5), (6) din 10). Parametrul optim, opt, va fi acela pentru care raza spectral a matricei M() va fi minim. Evident, pentru acest parametru se obine cea mai rapid convergen. Se poate demonstra urmtoarea teorem. Teorema 1. Dac matricea A este simetric i pozitiv definit, metoda suprarelaxrii este convergent pentru orice 0 < < 2. n particular, rezult c metoda Gauss Seidel este convergent dac A este simetric i pozitiv definit, deoarece corespunde cazului particular = 1. Determinarea parametrului optim, opt, este posibil n cazul matricelor bloc tridiagonale. Definiia 1. O matrice A se numete bloc tridiagonal, dac are urmtoarea structur:

  • Sisteme de ecuaii liniare 59

    =

    mm

    mmmDE

    FDE

    FDEFDE

    FD

    A

    1

    112

    332

    221

    11

    000

    0000000

    LL

    MOMLLL

    ,

    unde Di sunt matrice ptratice de diferite ordine, Ek i Fk sunt, n general, matrice dreptunghiulare. Fk are acelai numr de linii ca matricea Dk i acelai numr de coloane ca matricea Dk+1. Ek are acelai numr de linii cu Dk+1 i acelai numr de coloane cu Dk. n afara matricelor care intr n band, toate elementele sunt nule. Dac, n plus, matricele Di sunt diagonale, A se numete diagonal bloc tridiagonal. Prezentm de asemenea fr demonstraie urmtoarea teorem. Teorema 2. Fie A o matrice simetric, pozitiv definit i diagonal tridiagonal.

    Atunci parametrul optim de relaxare este dat de relaia 21

    opt11

    2

    += , unde

    1 este cea mai mare valoare proprie a matricei D 1(E+F) . Exemplu. Fie sistemul Ax = b din exemplul din paragraful precedent, care are matricea diagonal bloc tridiagonal

    =2100131001310012

    A , ,

    01001010

    01010010

    =+ FE

    2000030000300002

    D

    = ,

    =+

    02100

    310

    310

    0310

    31

    00210

    )(1 FED .

    Ecuaia caracteristic este

  • Bazele Analizei Numerice 60

    0

    2100

    31

    310

    031

    31

    0021

    =

    ,

    care este echivalent cu

    011636

    21001310

    01310012

    24 =++=

    .

    Rezult 18

    74 =i i 1 =0.60763 .

    Parametrul optim de relaxare 2111

    2

    opt +

    = =1.11469 .

    Procedeul iterativ x(m+1) =M( )x(m) + C() , unde

    =0.09240.013030.019130.00882482

    0.371560.023370.034330.0158300.371560.09240.04261000.557340.11469

    )(M , ,

    =

    0.884260.586570.578650.55734

    )(C

    conduce la urmtoarele valori ale vectorului soluiilor pentru primele cinci iteraii:

    =

    0.884260.586570.578650.55734

    )1(x , , , ,

    =

    0.979760.939880.826310.81593

    )2(x

    =

    0.995650.988030.969460.92431

    )3(x

    =

    0.999530.998250.995950.99166

    )4(x

    =

    0.999930.999780.999330.9987

    )5(x .

  • Sisteme de ecuaii liniare 61

    1.12. Metoda gradienilor conjugai

    Fie sistemul Ax=b, unde A este simetric i pozitiv definit. Definiia 1. Spunem c direciile p i q sunt direcii conjugate n raport cu matricea A dac 0== p,AqAp,q . Fie v(0) un vector de prob i r(0)=Av(0) b vectorul rezidual corespunztor. n metoda gradienilor conjugai pentru rezolvarea sistemului Ax=b, prima direcie de relaxare se alege p(1) = r(0) . n continuare avem:

    (1)(1)

    (0)(0)

    (1)(1)

    (1)0

    min,pAp

    ,rr

    ,pAp

    ,prt

    )(

    == , (1)

    v(1) = v(0) + q1p(1) , (2) unde

    )1()1(

    (1))0(

    min1 =,pAp

    ,prtq = (3)

    Valoarea minim a funciei F=F(v), cnd v parcurge dreapta ce trece prin v(0) i are direcia p(1)= r(0) este v(1).

    Fie r(1)=gradF(v(1))=Av(1) b.

    Din Observaia 1 din 8 rezult c 0(0)(1)(1)(1) == ,rr,pr . (4) Urmtoarea direcie de relaxare p(2) se alege de forma p(2)= r(1)+c1p(1) i n plus s fie conjugat direciei p(1) n raport cu A. Aadar, avem:

    (1)(1)1

    (1)(1)(1)(2)(1)(2)0 ,pApc,Apr,App,pAp +=== de unde rezult

    (1)(1)

    (1)(1)

    1,pAp

    ,Aprc = . (5)

    Avem de asemenea

  • Bazele Analizei Numerice 62

    (2)(2)(2)

    (2)(1)(1)(2)

    min(1)(2) p

    ,pAp

    ,prvptvv =+= . (6)

    n general, pentru orice k2 obinem

    )1()1(

    )1()1(

    1

    =

    kk

    kk

    k-,pAp

    ,Aprc , (7)

    , (8) )1(1)1()( += kkkk pcrp

    )kk

    kk

    k,pAp

    ,prq

    ()(

    )()1( = , (9)

    . (10) )()1( kkk

    k pqvv += Metoda gradienilor conjugai este definit de formulele (7) (10). n continuare prezentm unele simplificri i proprieti suplimentare. Deoarece r(k 1) este ortogonal pe direcia p(k 1) rezult

    )1()1()1(1

    )1()1()()1( ,,, =+= kkkkkkkk rrpcrrpr i deci

    0)()(

    )1()1(

    >=

    kk

    kk

    k,pAp

    ,rrq . (9)

    Pe de alt parte, din (10) avem )()1()()1()()( k

    kkk

    kkkk ApqrbApqAvbAvr +=+== .

    Obinem deci urmtoarea relaia de recuren . (11) )()1()( kk

    kk Apqrr += Observm c 0)1()( =kk ,rr . (12) ntr adevr, din (11) rezult

    )()1()1()1()1()( ,,, kkkkkkk Aprqrrrr += . (13)

    Pe de alt parte, innd seama de (8), de (9) i de faptul c p(k) i p(k 1) sunt A conjugate, rezult

    )(kkk

    kkk

    kkkk(k))(k

    k rrpcrAp

    Aprrr,Aprq 1)1(

    )1(1

    )1()(

    )()1()1()1(1 ,

    ,

    ,,

    =

    +=

    . Din (13) i (14) rezult acum (12) .

  • Sisteme de ecuaii liniare 63

    Deoarece Ap(k) oricum trebuie calculat, rezult c vectorul rezidual r(k) se va calcula din relaia de recuren (11) i nu prin nlocuirea direct a lui v(k) n expresia Av=b. n continuare vom stabili o alt formul pentru coeficientul ck 1. Din (11) i (12) rezult

    ( ) )1()1(1

    )2()1(

    1

    )1()1()1( 11

    == kkk

    kk

    k

    kkk ,rrq

    rrq

    ,r,Apr .

    innd seama de (7) i de (9) obinem

    )(k)(k

    )(k)(k

    )(k)(k

    )(k)(k

    k,rr

    ,rr

    ,pAp

    ,Aprc

    22

    11

    11

    11

    1

    == .

    Algoritm pentru rezolvarea sistemelor de ecuaii liniare cu metoda gradienilor conjugai Calculeaz ; ; bAvr )()( = 00 )()( rp 01 =

    ;Apqr ; rpqv ; v,pAp

    ,rrq )()()()()()(

    )()(

    )()(1

    1011

    101

    11

    00

    1 +=+==

    Pentru k:=2,n calculeaz

    ; 111

    22

    11

    1 pcr ; p,rr

    ,rrc )(kk

    )(k(k))(k)(k

    )(k)(k

    k

    +==

    ;Apqr ; rpqv ; v,pAp

    ,rrq (k)k

    )(k(k)(k)k

    )(k(k)(k)(k)

    )(k)(k

    k +=+==

    1111

    sfrit pentru k . n Mathcad algoritmul de mai sus este aplicat unui exempu.

  • Bazele Analizei Numerice 64

    Metoda gradientilor conjugati

    Folosind metoda gradientilor conjugati sa se gaseasca solutia sistemului de ecuatii liniare Ax=b

    Vectorul de proba x

    0

    0

    0

    0

    n 4A

    5

    1

    1

    1

    1

    6

    2

    2

    1

    2

    7

    1

    1

    2

    1

    8

    b

    6

    7

    9

    8

    Algoritmul metodei gradientilor conjugati

    GrCon A b, x, n,( ) r 0< > A x. bp r 0< >

    q r0< > r 0< >.A p. p.

    x x q p.r 1< > r 0< > q A. p.

    c rk 1< > r k 1< >.

    r k 2< > r k 2< >.p r k 1< > c p.

    q rk 1< > r k 1< >.

    A p. p.x x q p.r k< > r k 1< > q A. p.

    k 2 n..for

    x

    Apelarea programului si afisarea rezultatelor

    GrCon A b, x, n,( )

    1

    1

    1

    1

    =

  • Sisteme de ecuaii liniare 65

    Teorema 1. n metoda gradienilor conjugai direciile de relaxare p(k), (k=1,2,...) sunt conjugate dou cte dou n raport cu matricea A, iar vectorii reziduali r(k), (k=0,1,...) sunt ortogonali doi cte doi. Demonstraie. Demonstraia se face prin inducie relativ la k . Pentru k=1 avem 0, )0()1( =rr din (4), iar pentru prima afirmaie nu avem ce arta. Ipoteza de inducie este: 0, )()( =ji rr pentru ij , 0i, jk , (15) 0, )()( =ji App pentru ij , 1ijk . (16) Va trebui s artm c 01 =+ (j))(k ,rr , pentru ,kj 0= (17) 0, )()1( =+ jk App , pentru ,kj 1= . (18) Fie j=k, atunci

    =+ )()1( , kk App 01 =+ (k))(k ,pAp deoarece pk i pk+1 sunt A conjugate. Fie 1j

  • Bazele Analizei Numerice 66

    se gsete n cel mult n pai. Teoretic ar trebui ca vectorul rezidual r(n) s fie zero i deci v=v(n) s fie soluia exact a sistemului. n practic acest lucru nu se ntmpl, deoarece n determinarea vectorilor r(k) intervin erori de calcul, care fac ca acetia s nu formeze un sistem ortogonal. Deoarece n general r(n)0, continum s calculm r(k), k>n pn obinem un vector rezidual nul sau foarte mic

  • Sisteme de ecuaii liniare 67

    n general, sistemul (1) nu este compatibil i 0minR

    >=

    )f(xf(x) *x n

    , iar x=x*

    este un substitut pentru soluia sistemului i anume soluia n sensul celor mai mici ptrate. Funcia f se poate pune sub forma

    b,bAx,bAx,AxAx-b,Ax-br,rf(x)= +== 2 i mai departe b,bb,xAAx,xAf(x)= TT + 2 (4) Teorema 1. Dac rangA = n, atunci sistemul (1) admite o singur soluie n sensul celor mai mici ptrate i aceasta este soluia (unic) a sistemului. (5) bAx=AA TT(Sistemul (5) se numete sistemul normal al lui Gauss). Demonstraie. Punctele de extrem ale funciei ptratice f dat de (4), se caut printre punctele sale critice, iar acestea, se afl rezolvnd sistemul:

    grad f = 0 Cum grad f=ATAx ATb, obinem sistemul ATAx=ATb. Pe d alt parte se tie c: e( ) ( )TTT AA=AA=AA= rangrangrangrang . Matricea B=ATA este o matrice ptratic de ordinul n i rangB=n, conform celor de mai sus. Rezult c sistemul (5) admite o soluie unic, x=x*, care este punct critic pentru f. Matricea B este evident simetric i semipozitiv definit. Mai mult, n ipoteza noastr, matricea B este pozitiv definit. ntr adevr, dac presupunem c

    0=Bx,x , atunci rezult 0=Ax,Ax i deci Ax=0. Cum rezult x=0.

    A=n= = =

    n

    i

    n

    jjiij dxdxbf(x)d ,

    de unde rezult c x=x* este punct de minim pentru f i cu aceasta teorema este demonstrat. Aadar, n ipoteza rangA=n, soluia sistemului (1), n sensul celor mai mici ptrate, este unic i se afl rezolvnd sistemul (5). Acest sistem este simetric pozitiv definit. Rezolvarea sa se poate face prin metoda Cholesky sau una din metodele de relaxare. Observaia 1. Teoretic, soluia sistemului (5) este x*=(ATA) 1ATb. Matricea P=(ATA) 1AT se numete pseudoinversa matricei (dreptunghiu lare) A.

  • Bazele Analizei Numerice 68

    Se observ c dac A este ptratic, atunci P=A 1(AT) 1AT=A 1, deci noiunea de matrice pseudoinvers generalizeaz noiunea de matrice invers (pentru matrice dreptunghiulare). Rezolvarea practic a sistemului (5) ridic probleme din cauza faptului c numrul de condiionare al matricei B=ATA este mare. Fie valorile proprii ale matricei B. Atunci:

    021 > n...

    n(B) 1cond = . (6)

    Cum

    iii

    iiix

    b,eBex,x

    Bx,x maxmaxsup

    01 ==

    i iii

    iiix

    n b,eBex,xBx,x

    minmininf0

    == , rezult

    ii

    iibbB

    minmax)(cond . (7)

    Exemplul 1. (Dreapta de regresie) S presupunem c vrem s gsim o dreapt y=mx+n care s treac prin punctele: M1(0,0) ; M2(2,1) ; M3(5,3) ; M4(8,5) ; M6(10,6) Se obine astfel sistemul

    . (8)

    61058351200

    m+n=m+n=m+n=m+n=m+n=

    Evident, sistemul (8) este supradimensionat i incompatibil. Avem:

    =

    ==

    =

    =15

    117

    52525193

    65310

    11018151210

    b; AAA; B; bA TT .

    Ecuaiile normale ale lui Gauss sunt

    =+=+15525

    11725193nm

    nm .

    Soluia exact este 343 ,

    3421 == nm , iar valorile proprii sunt i

    . Rezult

    2681961 . =73212 . = 113)cond( B . Dac folosim estimarea (7) obinem

  • Sisteme de ecuaii liniare 69

    6,385

    193minmax ==

    ii

    iibb

    .

    Dreapta de regresie n acest caz este: 343

    3421= xy . Aceast dreapt nu trece

    prin punctele Mi, dar este acea dreapt din plan care trece cel mai aproape de aceste puncte. S presupunem c vrem s determinm dreapta de regresie corespunztoare punctelor ,n , i,yxM iii 1)( = . Matricele

    =

    1

    1211

    n

    A MM i

    +

    +++==

    nnn

    nnnnn

    AAB T

    2)1(

    2)1(

    6)12)(1(

    conduc la ( )( )

    36121

    minmax 2nnn

    bb

    ii

    ii >++= . Pentru n=100, cond(B)>13333, deci sistemul normal al lui Gauss este prost condiionat. Sistemele subdimensionate apar n probleme legate de ajustarea datelor. S presupunem c msurnd n cantiti x1, x2, ... , xn, gsim valorile l1, l2, ... , ln. Pe de alt parte, necunoscutele x1, x2, ... , xn satisfac anumite ecuaii i anume

    . (9) n m,bxa...xa

    ........................bxa...xa

    mnmnm

    nn++= ndxdxd

    Exerciii

  • Sisteme de ecuaii liniare 71

    Folosind metoda Gauss s se rezolve urmtoarele sisteme de ecuaii liniare:

    1.

    =++=+++

    =++=++

    591282

    12726

    4321

    4321

    4321

    4321

    xxxxxxxx

    xxxxxxxx

    R. Matricea triunghiular ,

    0.10002150.00.1001707.03171.00.10

    1667.01667.01667.00.1~

    =A

    vectorul termenilor liberi transformat .

    0.17850.11951.0333.0

    ~

    =b

    Soluia sistemului .

    1211

    =x

    2.

    =+++=+++

    =+++=++

    127106

    7814

    4321

    4321

    4321

    4321

    xxxxxxxxxxxxxxxx

    R. Matricea triunghiular ,

    0.10001105.00.1000968.01613.00.102500.02500.02500.00.1

    ~

    =A

    vectorul termenilor liberi transformat .

    0.27789.1

    8710.02500.0

    ~

    =b

    Soluia sistemului x = (1 1 2 2).

  • Bazele Analizei Numerice 72

    3.

    =+++=++

    =+++=+++

    10156

    12728145

    4321

    4321

    4321

    4321

    xxxxxxxxxxxxxxxx

    R. Matricea triunghiular ,

    0.10001558.00.100

    1026.02308.00.102000.02000.02000.00.1

    ~

    =A

    vectorul termenilor liberi transformat .

    0.43766.21026.38000.2

    ~

    =b

    Soluia sistemului x = (1 2 3 4).

    S se rezolve urmtoarele sisteme de ecuaii liniare folosind metoda Cholesky:

    4.

    =++=+++

    =++=+

    78811

    69910

    4321

    4321

    4321

    4321

    xxxxxxxx

    xxxxxxxx

    R. . Soluia sistemului

    R

    7774.23082.03017.03162.0032809.03687.03162.0009833.23162.00001623.3

    =

    TR

    Ty=b este , iar cea a sistemului Rx=y , i deci soluia

    sistemului iniial este .

    7774.29726.23129.2846.2

    =y

    1111

    =x

  • Sisteme de ecuaii liniare 73

    5.

    =++=+++

    =++=+

    119287

    62678

    4321

    4321

    4321

    4321

    xxxxxxxxxxxx

    xxxx

    R. .

    82564.254071.077357.035355.0059705.2361.035355.00042384.235355.000082843.2

    =TR

    Soluia sistemului RTy=b este iar cea a sistemului Rx=y , i

    deci soluia sistemului iniial este .

    82564.213776.3

    83641.247487.2

    =y

    1111

    =x

    6.

    =+=++=++=+

    10481121551926

    4321

    4321

    4321

    4321

    xxxxxxxx

    xxxxxxxx

    R. .

    88878.134954.037905.040825.0015682.360648.08165.00019848.240825.000044949.2

    =

    TR

    Soluia sistemului RTy=b este , iar cea a sistemului Rx=y , i

    deci soluia sistemului iniial este x= (3 2 1 1).

    88878.150636.33825.575672.7

    =y

  • Bazele Analizei Numerice 74

    Folosind metoda Householder, s se rezolve sistemele:

    7.

    =+=+=++

    =++

    0306789148765

    2234

    4321

    4321

    4321

    4321

    xxxxxxxxxxxx

    xxxx

    R. det(A)= 1112; descompunerea A=QR este dat de

    9487.02774.01217.00902.002.00784.05787.08115.0

    0257.05445.07068.04508.0 3143.07877.03882.03607.0

    =Q ,

    .

    58889.100083368.52130.6009155.10016.01569.1000249.80249.86148.20905.11

    =R

    Soluia sistemului Qy=b este ,

    5888.15498.112430.89354.29

    =y

    iar cea sistemului Rx=y este x=(1 1 1 1).

    8. .

    =+=+++=+=+

    22346678928765

    16432

    4321

    4321

    4321

    4321

    xxxxxxxxxxxxxxxx

    R. det(A)= 2808; descompunerea A=QR este dat

    65727.053098.039494.036067.003651.018504.055307.08115.047469.02494.071359.045083.0

    58424.078843.017005.009017.0

    =Q ,

    69631.5000 79972.23444.400

    7419.842367.223107.100541.02872.988534.209054.11

    =R .

  • Sisteme de ecuaii liniare 75

    Soluia sistemului Qy=b este ,

    39263.1194384.940201.549202.6

    =y

    iar cea sistemului Rx=y este .

    2121

    =x

    9. .

    =+=+

    =+++=+++

    4307689

    24322234

    4321

    4321

    4321

    4321

    xxxxxxxx

    xxxxxxxx

    R. det(A)= 80 ; descompunerea A=QR este dat de

    98213.014663.006173.01005.012673.005925.04028.090453.012039.090448.039663.01005.00697.03961.082257.040202.0

    =Q ,

    50691.000066043.242341.20029041.53565.05451.6062821.563325.692972.594987.9

    =R .

    Soluia sistemului Qy=b este ,

    50691.023702.047901.1114106.28

    =y

    iar cea sistemului Rx=y este .

    1111

    =x

  • Bazele Analizei Numerice 76

    10. Pentru matricea , s se calculeze:

    1111111231121121

    =A

    a) det(A) , A1, det(A1); b)

    12

    11

    121 , , ; , , AAAAAA ;

    c) cond1(A) , cond2(A) , cond(A) .

    R. a) det(A)=6, ,

    05.05.0015.15.0116667.003333.0

    13333.006667.0

    1

    =A

    det(A1)=0.1667;

    b)

    ==

    =

    . 4 2.848,= ,3

    ; 7= 5.7446,= ,6

    1

    21

    11

    21

    AAA

    AAA

    c) cond1(A)=18, cond2(A)=12.7511, cond(A)=28 .

    11. S se calculeze: a) det(A) , A1, det(A1); b)

    12

    11

    121 , , ; , , AAAAAA ;

    c) cond1(A) , cond2(A) , cond (A)

    pentru matricea . 316223514

    =A

    R. a) det(A)=8, , det(A 375.125.1125.1875.225.2625.2111

    1

    =A 1)=0.125 ;

    b)

    ==

    =

    . 4 2.848,= ,3

    ; 7= 5.7446,= ,6

    1

    21

    11

    21

    AAA

    AAA

    c) cond1(A)=68.25, cond2(A)=48.28525, cond (A)=77.5 . Folosind metoda Iacobi s se gseasc soluia aproximativ pentru

    urmtoarele sisteme de ecuaii liniare :

  • Sisteme de ecuaii liniare 77

    12.

    =+=++

    =

    9746

    55

    321

    321

    321

    xxxxxxxxx

    R. Sistemul se poate pune sub forma x = Bx+c, unde B = D1 (DA), iar D =

    , E = DA = , 700060005

    28571.166667.01

    011101

    110

    B = , c = D 014286.014286.016667.0016667.0

    2.02.00

    1 b = , 2B =0.41997,

    (B)= 0.29277. Soluia la fiecare iteraie, pornind cu , este:

    , ,

    000

    )0(

    =x

    28571.166667.01

    )1(

    =x

    04762.104762.1

    12381.1)2(

    =x

    97551.002857.11

    )3(

    =x , .

    019959299592.0

    98939.0)4(

    =x

    Soluia exact fiind , eroarea care se face dac se reine ca soluie

    aproximativ x

    111

    *

    =x

    (4) , este 01208.0)4(* = xx .

    13. (s se scrie soluia obinut dup patru

    iteraii).

    +++=+++=++

    =++

    8968247

    26

    4321

    4321

    4321

    4321

    xxxxxxxxxxxxxxxx

    R. Se poate pune sistemul sub forma x = Bx+c, unde B = D1 E , iar

    D = , E = DA = ,

    9000080000700006

    0111102111012110

  • Bazele Analizei Numerice 78

    B = ,

    011111.011111.011111.0125.0025.0125.0

    14286.014286.0014286.033333.016667.016667.00

    c=D1 b = , 88889.075.0

    57143.033333.0

    2B =0.5989, (B)= 0.27926. Soluia pentru primele

    4 iteraii, pornind cu , este: ,

    0000

    )0(

    =x

    88889.075.0

    57143.033333.0

    )1(

    =x

    , , .

    94577.09623.085317.0

    84987.0

    )2(

    =x 99544.0

    97528.096542.0

    95117.0

    )3(

    =x 99567.0

    99689.098884.09886.0

    )4(

    =x

    Soluia exact fiind , eroarea care se face dac se reine ca soluie

    aproximativ x

    1111

    *

    =x

    (4) , este 01682.0)4(* = xx .

    14.

    =+=++=++=+

    38921614734

    4321

    4321

    4321

    4321

    xxxxxxxxxxxxxxxx

    R. Se poate pune sistemul sub forma x=Bx+c, unde B=D1E , iar

    D = , E = DA = ,

    9000060000700004

    0111101111011110

  • Sisteme de ecuaii liniare 79

    B = ,

    011111.011111.011111.016667.0016667.016667.0

    14286.014286.0014286.025.025.025.00

    c=D1b = , 22222.4

    5.3275.0

    2B =0.60753, (B)= 0.22758. Pentru primele 4 iteraii,

    pornind cu , soluia este: ,

    0000

    )0(

    =x

    22222.45.3

    275.0

    )1(

    =x

    97222.300463.399603.106944.1

    )2(

    =x , , .

    99133.399239.298545.100711.1

    )3(

    =x

    99844.399784.299883.199663.0

    )4(

    =x

    Soluia exact fiind , eroarea care se face dac se reine ca soluie

    aproximativ x

    4321

    *

    =x

    (4) , este 00417.0)4(* = xx . S se rezolve cu metoda GaussSeidel urmtoarele sisteme:

    15.

    =+=+

    =

    84326

    3225

    321

    321

    321

    xxxxxxxxx

    R. Se observ c matricea coeficienilor sistemului este tare

    diagonal dominant i atunci algoritmul GaussSeidel este convergent.

    431161225

    =A

    Sistemul se poate pune sub forma x(m+1)=(D+L)1(Ux(m)+b), m0, unde:

    031001000

    =L , , .

    000100220

    =U 400060005

    =D

    Atunci

  • Bazele Analizei Numerice 80

    25.0125.0075.0016667.003333.0002.0

    )( 1

    =+ LD ,

    (D+L)1U = , 275.015.00

    23333.006667.004.04.00

    (D+L)1b = . Se obin pornind cu , vectorii:

    , , ,

    025.2

    23333.06.0

    000

    )0(

    =x

    025.2

    23333.06.0

    )1(

    =x

    61687.272139.030333.0

    )2(

    =x

    85285.289203.073531.0

    )3(

    =x

    94334.295847.089795.0

    )4(

    =x .

    16.

    =+++=++=+=+

    142283862226

    4321

    4321

    4321

    4321

    xxxxxxxx

    xxxxxxxx

    R. Se observ c matricea coeficienilor sistemului

    4111283111621216

    =A

    este tare diagonal dominant i algoritmul GaussSeidel este convergent. Sistemul se poate pune sub forma x(m+1) = (D+L)1(Ux(m)+b) , m0, unde:

    0111003100020000

    =L , , 0000200011001210

    =U

  • Sisteme de ecuaii liniare 81

    4000080000600006

    =D .

    Atunci ,

    25.003125.005729.002778.00125.00625.000016667.005556.000016667.0

    )( 1

    =+ LD

    (D+L)1U = ,

    03299.011285.002778.001875.00625.000

    22222.005556.005556.0016667.033333.016667.00

    (D+L)1b = .

    82639.075.0

    22222.133333.0

    Alegnd , obinem: , ,

    0000

    )0(

    =x

    85938.09375.015.0

    )1(

    =x

    98831.096973.002778.195573.0

    )2(

    =x

    , , .

    99697.099592.099937.099259.0

    )3(

    =x

    99942.099918.000048.199803.0

    )4(

    =x

    9999.099984.000006.199971.0

    )5(

    =x

    17.

    =+++=++

    =+=+

    24132212

    1011710

    4321

    4321

    4321

    4321

    xxxxxxxx

    xxxxxxxx

    R. Se observ c matricea coeficienilor sistemului

    13111112111111111110

    =A

    este tare diagonal dominant i algoritmul GaussSeidel este convergent.

  • Bazele Analizei Numerice 82

    Sistemul se poate pune sub forma x(m+1)=(D+L)1(Ux(m)+b) , m0, unde:

    0111001100010000

    =L , , 0000100011001110

    =U

    13000012000011000010

    =D

    Atunci

    ,

    07692.000641.000758.000758.0008333.000758.000758.00009091.000909.00001.0

    )( 1

    =+ LD

    (D+L)1U = ,

    00641.001515.000758.0008333.001515.000758.00

    1.008182.000909.001.01.01.00

    (D+L)1b = .

    96445.181061.197273.0

    7.0

    Alegnd , obinem: ,

    0000

    )0(

    =x

    96445.181061.197273.0

    7.0

    )1(

    =x

    99711.199437.101219.1

    98023.0

    )2(

    =x , , , 99999.1

    99958.100001.1

    99793.0

    )3(

    =x 99999.1

    99998.100001.1

    99993.0

    )4(

    =x

    2211

    )5(

    =x .

  • Sisteme de ecuaii liniare 83

    Folosind metoda relaxrii simple s se scrie soluia aproximativ pentru urmtoarele sisteme:

    18.

    =+=+=+

    28914638

    321

    321

    321

    xxxxxx

    xxx

    R. Matricea sistemului este . 911161118

    =A

    Lund vectorul de prob se obine , deci prima direcie

    de relaxare este . Rezult .

    000

    )1(

    =x

    2814

    3)1(

    =r

    100

    3)1(

    == ep

    11