Exemple 2 - 2 - Met Gauss-Seidel.pdf

Embed Size (px)

Citation preview

  • 8/18/2019 Exemple 2 - 2 - Met Gauss-Seidel.pdf

    1/6

     REZOLVAREA SISTEMELOR LINIARE DE ECUAȚ  II

    1

    2. Metoda Gauss-Seidel 

    Problema 

    Fie sistemul de n  ecua\ii cu n  necunoscute:

    =⋅++⋅+⋅

    =⋅++⋅+⋅

    =⋅++⋅+⋅

    nnnnnn

    nn

    nn

    b xa xa xa

    b xa xa xa

    b xa xa xa

    L

    LL

    L

    L

    2211

    22222121

    11212111

     

    [n care: i x   ( )ni ,,1L=

      - necunoscutele,iia   ( )n ji ,,1,   L=   - coeficien\ii necunoscutelor,

    ib   ( )ni ,,1L=   - termenii liberi ai ecua\iilor.

    Se cunoaște o primă estimare a necunoscutelor:)0(

    i x , ni   L,3,2,1= .

    Se calculează  valorile neconoscutelor, cu o eroarea relativă  aproximativă  de calcul

    mai mică decât o valoare impusă.

    Principiul metodei

    Se efectuează  un calcul iterativ în care rădăcinile din iterația curentă  secalculează  în funcție de ultima valoarea calculată  a rădăcinilor (din

    interația curentă sau anterioară), după formula: 

    ⋅−⋅−⋅= ∑∑

    +=

    =

    ++

    n

    i j

     jij

    i

     j

     jiji

    ii

    i  xa xaba

     x1

    )(1

    1

    )1()1( 1   , ni   L,3,2,1=  

    unde : )1(   +k i x  este valoarea necunoscutei  j x   în iterația curentă,

    )(k 

     j x  este valoarea necunoscutei  j x   în iterația anterioară.

    o  Calculul iterativ se repetă  până  când eroarea relativă  aproximativă  de

    calcul a fiecărei necunoscute este mai mică decât cea impusă. 

    o  Condiții de aplicabilitate a metodei:

    - să nu se anuleze numitorul: 0≠iia , ni   L,3,2,1=  

    - sistemul să fie diagonal: ∑≠

    =

    >

    n

    i j j

    ijii aa1

    , ni   L,3,2,1=  

    Observa ț ie:

    Ordinea ecuațiilor în sistem poate fi schimbată astfel încât condițiile să fie satisf ăcute.

  • 8/18/2019 Exemple 2 - 2 - Met Gauss-Seidel.pdf

    2/6

     REZOLVAREA SISTEMELOR LINIARE DE ECUAȚ  II

    2

    Exemplu de calcul

    Problemă:

    Să se rezolve sistemul de mai jos prin metoda Iacobi:

    −=−−

    −=+−−

    =−+

    1552

    927

    23

    321

    321

    321

     x x x

     x x x

     x x x

     

    Se cunoaște o primă estimare a necunoscutelor:

    =

    =

    =

    0

    0

    0

    )0(3

    )0(

    2

    )0(

    1

     x

     x

     x

     

    Eroarea relativă aproximativă de calcul a rădăcinii trebuie să fie mai mică de 0,1%.

    Date problemă:

    −=−−

    −=+−−

    =−+

    1552

    927

    23

    321

    321

    321

     x x x

     x x x

     x x x

      ;

    =

    =

    =

    0

    0

    0

    )0(3

    )0(

    2

    )0(

    1

     x

     x

     x

     

    %1,0=admε    

    Cerință:

    =

    =

    =

    ?

    ?

    ?

    3

    2

    1

     x

     x

     x

      pentru admε  ε    <  

    Rezolvare:

    Verificarea condițiilor de aplicabilitate a metodei:

    - să nu se anuleze numitorul:

    03  ≠ (coeficientul lui 1 x  din prima ecuație diferit de zero) 

    07  ≠−  (coeficientul lui 2 x  din a doua ecuație diferit de zero);

    05  ≠−  (coeficientul lui3

     x  din a treia ecuație diferit de zero).

    ⇒ condiție îndeplinită 

  • 8/18/2019 Exemple 2 - 2 - Met Gauss-Seidel.pdf

    3/6

     REZOLVAREA SISTEMELOR LINIARE DE ECUAȚ  II

    3

    - sistemul să fie diagonal:

     pentru prima ecuație: 113   −+>  

     pentru a doua ecuație: 217   +−>−  

     pentru a treia ecuație: 125   −+>−  

    ⇒ condiție îndeplinită 

    Determinarea formulelor iterative de calcul a necunoscutelor (din fiecare ecuație se

    explicitează câte o necunoscută):

    +−−=

    −+−

    =

    +−=

    +

    +

    +

    5

    215

    7

    29

    3

    2

    )(

    2

    )(

    1)1(

    3

    )(

    3

    )(

    1)1(

    2

    )(

    3

    )(

    2)1(

    1

    k k k 

    k k 

    k k 

     x x x

     x x

     x

     x x x

     

    Calculul iterativ:

    o   Itera ț ia 1:

    1=k   

    Calculul necunoscutelor:

    =

    +⋅−−=

    +−−=

    =

    ⋅−+−=

    −+−=

    =+−

    =+−

    =

    0286,35

    1905,16667,0215

    5

    215

    1905,17

    026667,09

    7

    29

    6667,03

    002

    3

    2

    )0(

    2

    )0(

    1)1(

    3

    )0(

    3

    )0(

    1)1(

    2

    )0(

    3

    )0(

    2)1(

    1

     x x x

     x x x

     x x x

     

    Verificarea condiției de oprire a calculului iterativ:

    >=⋅−

    =⋅−

    =

    >=⋅−

    =⋅−

    =

    >=⋅−

    =⋅−

    =

    %1,0%1001000286,3

    00286,3100

    %1,0%1001001905,1

    01905,1100

    %1,0%1001006667,0

    06667,0100

    )1(

    3

    )0(

    3

    )1(

    3)1(

    3

    )1(

    2

    )0(

    2

    )1(

    2)1(

    2

    )1(

    1

    )0(

    1

    )1(

    1)1(

    1

     x

     x x

     x

     x x

     x

     x x

    ε  

    ε  

    ε  

     

    ⇒ condiția de oprire a calcului iterativ nu este îndeplinită 

  • 8/18/2019 Exemple 2 - 2 - Met Gauss-Seidel.pdf

    4/6

     REZOLVAREA SISTEMELOR LINIARE DE ECUAȚ  II

    4

    o   Itera ț ia 2: 2=k   

    Calculul necunoscutelor:

    =

    +⋅−−=

    +−−=

    =

    ⋅−+−=

    −+−=

    =

    +−

    =

    +−

    =

    1181,35

    9683,12794,215

    5

    215

    9683,17

    0286,322794,19

    7

    29

    2794,13

    0286,31905,12

    3

    2

    )1(

    2

    )1(

    1)2(

    3

    )1(

    3

    )1(

    1)2(

    2

    )1(

    3

    )1(

    2)2(

    1

     x x x

     x x x

     x x

     x

     

    Verificarea condiției de oprire a calculului iterativ:

    >=⋅−

    =⋅−

    =

    >=⋅−

    =⋅−

    =

    >=⋅

    =⋅

    =

    %1,0%8711,21001181,3

    0286,31181,3100

    %1,0%5161,391009683,1

    1905,19683,1100

    %1,0%8908,471002794,1

    6667,02794,1

    100

    )2(

    3

    )1(

    3

    )2(

    3)2(

    3

    )2(

    2

    )1(

    2

    )2(

    2)2(

    2

    )2(

    1

    )1(

    1

    )2(

    1)2(

    1

     x

     x x

     x

     x x

     x

     x x

    ε  

    ε  

    ε  

     

    ⇒ condiția de oprire a calcului iterativ nu este îndeplinită 

    o   Itera ț ia 3: 3=k   

    Calculul necunoscutelor:

    =

    +⋅−−=

    +−−=

    =

    ⋅−+−=

    −+−=

    =+−

    =+−

    =

    0147,35

    0266,20499,1215

    5

    215

    0266,27

    1181,320499,19

    7

    29

    0499,13

    1181,39683,12

    3

    2

    )2(

    2

    )2(

    1)3(

    3

    )2(

    3

    )2(

    1)3(

    2

    )2(

    3

    )2(

    2)3(

    1

     x x x

     x x x

     x x x

     

    Verificarea condiției de oprire a calculului iterativ:

    >=⋅−

    =⋅−

    =

    >=⋅−

    =⋅−

    =

    >=⋅−

    =⋅−

    =

    %1,0%4312,31000147,3

    11815,30147,3100

    %1,0%8797,21000266,2

    9683,10266,2100

    %1,0%8504,211000499,1

    2794,10499,1100

    )3(

    3

    )2(

    3

    )3(

    3)3(

    3

    )3(

    2

    )2(

    2

    )3(

    2)3(

    2

    )3(

    1

    )2(

    1

    )3(

    1)3(

    1

     x

     x x

     x

     x x

     x

     x x

    ε  

    ε  

    ε  

     

    ⇒ condiția de oprire a calcului iterativ nu este îndeplinită 

  • 8/18/2019 Exemple 2 - 2 - Met Gauss-Seidel.pdf

    5/6

     REZOLVAREA SISTEMELOR LINIARE DE ECUAȚ  II

    5

    o   Itera ț ia 4: 4=k   

    Calculul necunoscutelor:

    =

    +⋅−−=

    +−−=

    =

    ⋅−+−=

    −+−=

    =

    +−

    =

    +−

    =

    9975,25

    0048,29960,0215

    5

    215

    0048,27

    0147,329960,09

    7

    29

    9960,03

    0147,30266,22

    3

    2

    )3(

    2

    )3(

    1)4(

    3

    )3(

    3

    )3(

    1)4(

    2

    )3(

    3

    )3(

    2)4(

    1

     x x x

     x x x

     x x

     x

     

    Verificarea condiției de oprire a calculului iterativ:

    >=⋅−

    =⋅−

    =

    >=⋅−

    =⋅−

    =

    >=⋅

    =⋅

    =

    %1,0%5739,01009975,2

    0147,39975,2100

    %1,0%0899,11000048,2

    9687,10048,2100

    %1,0%4146,51009960,0

    0499,19960,0

    100

    )4(

    3

    )3(

    3

    )4(

    3)4(

    3

    )4(

    2

    )3(

    2

    )4(

    2)4(

    2

    )4(

    1

    )3(

    1

    )4(

    1)4(

    1

     x

     x x

     x

     x x

     x

     x x

    ε  

    ε  

    ε  

     

    ⇒ condiția de oprire a calcului iterativ nu este îndeplinită 

    o   Itera ț ia 5: 5=k   

    Calculul necunoscutelor:

    =

    +⋅−−=

    +−−=

    =

    ⋅−+−=

    −+−=

    =+−

    =+−

    =

    9991,25

    9996,19976,0215

    5

    215

    9996,17

    9975,229976,09

    7

    29

    9976,03

    9975,20048,22

    3

    2

    )4(

    2

    )4(

    1)5(

    3

    )4(

    3

    )4(

    1)5(

    2

    )4(

    3

    )4(

    2)5(

    1

     x x x

     x x x

     x x x

     

    Verificarea condiției de oprire a calculului iterativ:

    >=⋅−

    =⋅−

    =

    >=⋅−

    =⋅−

    =

    >=⋅−

    =⋅−

    =

    %1,0%0549,01009991,2

    9975,29991,2100

    %1,0%2569,01009996,1

    0048,29996,1100

    %1,0%1553,01009976,0

    9960,09976,0100

    )5(

    3

    )4(

    3

    )5(

    3)5(

    3

    )5(

    2

    )4(

    2

    )5(

    2)5(

    2

    )5(

    1

    )4(

    1

    )5(

    1)5(

    1

     x

     x x

     x

     x x

     x

     x x

    ε  

    ε  

    ε  

     

    ⇒ condiția de oprire a calcului iterativ nu este îndeplinită 

  • 8/18/2019 Exemple 2 - 2 - Met Gauss-Seidel.pdf

    6/6

     REZOLVAREA SISTEMELOR LINIARE DE ECUAȚ  II

    6

    o   Itera ț iile 6,7:

    Calculele se fac la fel în continuare, obținându-se rezultatele din tabelul de mai jos.

    Tabel. Rezultate pentru itera ț iile 6,7  

    Iterația Necunoscutele Eroarea relativă aproximativă 

    k   )(1

    k  x   )(2k  x   )(3

    k  x   )(1

    k ε     )(2

    k ε     )(3

    k ε    

    6 0,9998 1,9998 3,0000 0,2261 0,0074 0,0292

    7 1,0001 2,0000 3,0000 0,0242 0,0108 0,0018

    După cea de-a 10-a iterație condiția de oprire a calcului iterativ este îndeplinită: