• Nie Znaleziono Wyników

Kapitola 3. SLAR - přímé metody

N/A
N/A
Protected

Academic year: 2022

Share "Kapitola 3. SLAR - přímé metody"

Copied!
23
0
0

Pełen tekst

(1)

Kapitola 3. SLAR - pˇr´ım´ e metody

Formulace:

Je d´ana ˇctvercov´a matice A= [aij]ni;j=1 a vektor prav´e strany b= [b1; b2; : : : ; bn]T. Hled´ame vektor x = [x1; x2; : : : ; xn]T tak, aby platilo

Ax= b;

rozeps´ano po sloˇzk´ach

a11x1+ a12x2+    + a1nxn = b1

a21x1+ a22x2+    + a2nxn = b2

...

an1x1+ an2x2+    + annxn = bn

Pˇredpokl´ad´ame, ˇze je matice A regul´arn´ı (tj. soustava m´a pr´avˇe jedno ˇreˇsen´ı).

M´ame dva z´akladn´ı typy soustav:

 soustavy s obecnou matic´ı

 soustavy se speci´aln´ı matic´ı (symetrick´a, pozitivnˇe definitn´ı, ˇr´ıdk´a, p´asov´a apod.)

Pro prvn´ı skupinu se vˇetˇsinou pouˇz´ıvaj´ı pˇr´ım´e metody, pro druhou skupinu metody iteraˇcn´ı nebo speci´aln´ı modifikace pˇr´ım´ych metod.

Cramerovo pravidlo

nezn´am´a sloˇzka ˇreˇsen´ı xi= det Ai det A poˇcet operac´ı:

Je nutn´e vypoˇc´ıtat(n + 1) determinant˚u.

Pro v´ypoˇcet determinantu je tˇreba n! sˇc´ıt´an´ı a v kaˇzd´em sˇc´ıtanci je (n 1) n´asoben´ı.

Dost´av´ame:

(n + 1) [(n 1)n! + n!] = n(n + 1)!

napˇr: pron = 30, 106 operac´ı za sekundu ! v´ypoˇcet trv´a 7; 82  1021 let

Idea dalˇs´ıch pˇr´ım´ych metod vych´azej´ı z faktu, ˇze soustavy

Ax= b a TAx = Tb , kde T je regul´arn´ı matice, maj´ı tot´eˇz ˇreˇsen´ı, tj. jsou ekvivalentn´ı.

(2)

Josef Danˇek 9.3.2o17 Touto transformac´ı lze z´ıskat troj´uheln´ıkovou soustavu

Ux= y : U= TA; y= Tb

pˇr: 2

64

u11 u12 u13

0 u22 u23

0 0 u33

3 75

2 64

x1

x2

x3

3 75=

2 64

y1

y2

y3

3 75

Troj´uheln´ıkovou soustavu lze velmi snadno ˇreˇsit zpˇetnou substituc´ı. Realizovan´y proces se naz´yv´a zpˇetn´y chod.

Gaussova eliminaˇcn´ı metoda

Ax= b rozeps´ano po sloˇzk´ach

2 64

a11 a12 a13 b1

a21 a22 a23 b2

a31 a32 a33 b3

3 75

Definujeme multiplik´atory m21 = a21

a11 , m31 = a31

a11 ˇr(1)1 = ˇr1 b(1)1 = b1

ˇr(1)2 = ˇr2+ m21ˇr1 b(1)2 = b2+ m21b1

ˇr(1)3 = ˇr3+ m31ˇr1 b(1)3 = b3+ m31b1

Z´ısk´ame novou soustavu : : : 1. f´aze eliminace

A(1)x= b(1)

2 66 66 4

a11 a12 a13 b1

0 a(1)22 a(1)23 b(1)2 0 a(1)32 a(1)33 b(1)3

3 77 77 5

Definujeme multiplik´ator m32 = a(1)32 a(1)22

ˇr(2)1 = ˇr(1)1 b(2)1 = b(1)1 ˇr(2)2 = ˇr(1)2 b(2)2 = b(1)2

ˇr(2)3 = ˇr(1)3 + m32ˇr(1)2 b(2)3 = b(1)3 + m32b(1)2

Z´ısk´ame novou soustavu : : : 2. f´aze eliminace

A(2)x= b(2)

2 66 66 4

a11 a12 a13 b1 0 a(1)22 a(1)23 b(1)2 0 0 a(2)33 b(2)3

3 77 77 5

(3)

Cel´y tento postup naz´yv´ame pˇr´ım´y chod. Troj´uheln´ıkovou soustavu ˇreˇs´ıme zpˇetn´ym chodem.

Efektivnost algoritmu GEM

Bereme v ´uvahu pouze operace n´asoben´ı a dˇelen´ı (poˇcet operac´ı sˇc´ıt´an´ı je pˇribliˇznˇe stejn´y).

(N . . . je ˇr´ad matice A)

• Celkem je N 1 f´az´ı eliminace. V K-t´e f´azi poˇc´ıt´ame N K multiplik´ator˚u (tj. N K dˇelen´ı)

N 1X

K=1(N K) = (N 1)N N 1X

K=1K = (N 1)N 1

2(N 1)N = 1

2(N 1)N

• Kaˇzd´ym multiplik´atorem vyn´asob´ıme(N K + 1) prvk˚u rozˇs´ıˇren´e matice (jeden rozˇs´ıˇren´y ˇr´adek), tj. (N K)(N K + 1) v K-t´e f´azi

N 1X

K=1

(N K)(N K + 1) =N 1X

K=1

h(N2 + N) K(2N + 1) + K2i=

= (N 1)(N2+ N) 1

2N(N 1)(2N + 1) +1

6(N 1)N(2N 1) =

= N3 N2+ N2 N N3+1

2N2+ 1 2N +1

3N3 1

2N2 +1 6N =

= 1

3N3 1 3N

• Zpˇetn´y chod

1 + ( 1|{z}

elen´ı

+ 1|{z}

asoben´ı

) + (1 + 2) +    + (1 + N 1) = XN

K=1K = 1

2N(N + 1)

Celkem

1

2N(N 1)

| {z }

ypoˇcet multiplik´ator˚u

+1

3N3 1 3N

| {z }

r´ım´y chod

+1

2N(N + 1)

| {z }

zpˇetn´y chod

= 1

3N3+ N2 1 3N

Pˇr´ıklad 1

Reˇste soustavu rovnicˇ

x + 2y + 3z = 14 2x + 4y + 5z = 25 7x + 8y + 9z = 50

; tj.

2 64

1 2 3 2 4 5 7 8 9

3 75

2 64

x y z

3 75=

2 64

14 25 50

3 75

Reˇˇ sen´ı

(4)

Josef Danˇek 9.3.2o17 Pro z´apis budeme pouˇz´ıvat tvar matice rozsrene:

2 66 4

1 2 3 14 2 4 5 25 7 8 9 50

3 77 5

=  ( 21) 

+ =  ( 17) 1

A+

2 66 64

1 2 3 14

0 0 1 3

0 6 12 48

3 77

75 =  ( 60) 

+

!!!

el´ıme 0

 Algoritmus Gaussovy eliminaˇcn´ı metody pro tento pˇr´ıklad nen´ı realizovateln´y.

 Snadno se pˇresvˇedˇc´ıme, ˇze m´a dan´a soustava ˇreˇsen´ı

x = 1; y = 2 a z = 3:

Gaussova eliminaˇcn´ı metoda ale selhala.

Ot´azka 1: Pro jak´e matice A m´a soustava Ax = b pr´avˇe jedno ˇreˇsen´ı?

! matice A mus´ı b´yt regul´arn´ı, tj.

vˇsechna vlastn´ı ˇc´ısla mus´ı b´yt r˚uzn´a od nuly

jinak ˇreˇceno ˇr´adky matice A mus´ı b´yt line´arnˇe nez´avisl´e jinak ˇreˇceno sloupce matice A mus´ı b´yt line´arnˇe nez´avisl´e jinak ˇreˇceno det A 6= 0

Pozn´amka: Vlastn´ı ˇc´ıslo matice A je ˇc´ıslo  splˇnuj´ıc´ı rovnici Av = v, kde v je vlastn´ı vektor odpov´ıdaj´ıc´ı vlastn´ımu ˇc´ıslu . ˇC´ıslo  tedy urˇcit´ym zp˚usobem charakterizuje matici A.

Ot´azka 2: Pro jak´e matice A je algoritmus Gaussovy eliminaˇcn´ı metody realizovateln´y?

! Vˇeta: Je-li matice A ostˇre diagon´alnˇe dominantn´ı, pak je algoritmus GEM realizovateln´y.

Pozn´amka: Matice A= [aij]i;j=1;:::;n je ostˇre diagon´alnˇe dominantn´ı, plat´ı-li jaiij > Xn

j=1;j6=i

jaijj;

tj. absolutn´ı hodnota diagon´aln´ıho prvku je vˇetˇs´ı neˇz souˇcet absolutn´ıch hodnot ostatn´ıch prvk˚u v ˇr´adku.

(5)

Napˇr.:

A=

2 64

7 1 2 1 4 1 2 4 9

3 75:

! Vˇeta: Je-li matice A symetrick´a a pozitivnˇe definitn´ı, pak je algoritmus GEM realizovateln´y.

Pozn´amka: Matice A je symetrick´a, plat´ı-li pro jej´ı prvky

aij = aji 8i; j = 1; 2; : : : ; n:

Pozn´amka: Matice A je pozitivnˇe definitn´ı, m´a-li vˇsechna vlastn´ı ˇc´ısla kladn´a

nebo jinak ˇreˇceno 8x 6= o : xTAx> 0.

Pozn´amka: Pro soustavu s matic´ı, kter´a splˇnuje pˇredpoklady nˇekter´e z uveden´ych vˇet, je moˇzn´e dopˇredu ˇr´ıci, ˇze p˚ujde ˇreˇsit pomoc´ı Gaussovy eliminaˇcn´ı metody. Obr´acenˇe to ovˇsem neplat´ı, tj. nen´ı-li napˇr.

matice soustavy ostˇre diagon´alnˇe dominantn´ı, jeˇstˇe to obecnˇe neznamen´a, ˇze nep˚ujde pomoc´ı Gaussovy eliminaˇcn´ı metody ˇreˇsit.

Pozn´amka: Abychom zaruˇcili, ˇze soustava p˚ujde vyˇreˇsit pro libovolnou regul´arn´ı matici, mus´ıme algo- ritmus Gaussovy eliminaˇcn´ı metody upravit. Zavedeme tzv. v´ybˇer hlavn´ıho prvku (pivotaci).

Pozn´amka: Pivot (hlavn´ı prvek) . . . prvn´ı nenulov´y prvek v dan´em ˇr´adku matice.

Pˇr´ıklad 2

Pomoc´ıGEM se sloupcovou pivotac´ıvyˇreˇste soustavu rovnic z Pˇr´ıkladu 1, kde selhala klasick´a GEM, tj. ˇreˇs´ıme soustavu Ax= b, kde

A=

2 64

1 2 3 2 4 5 7 8 9

3

75 a b =

2 64

14 25 50

3 75:

Reˇˇ sen´ı

1. sloupec

#

vymˇeˇn

2 4

!

!

0 BB B@

1 2 3 14 2 4 5 25 7 8 9 50

1 CC CA ;

0 BB B@

7 8 9 50 2 4 5 25 1 2 3 14

1 CC CA

=  ( 27) 

+ =  ( 17) 1

A+

2. sloupec

#

(6)

Josef Danˇek 9.3.2o17

nen´ı tˇreba mˇenit

!

0 BB BB

@

7 8 9 50 0 127 177 757 0 67 127 487

1 CC CC A

=  ( 1267

7 ) = 12 ! +

0 BB BB

@

7 8 9 50 0 127 177 757 0 0 12 32

1 CC CC A

=) x=

2 64

1 2 3

3 75

Pozn´amky:

• Pˇri sloupcov´e pivotaci jsme postupnˇe v kaˇzd´em sloupci (resp. jeho ˇc´asti pod diagon´alou vˇcetnˇe) vyb´ırali ˇc´ıslo, kter´e bylo maxim´aln´ı v absolutn´ı hodnotˇe a v pˇr´ıpadˇe, ˇze toto ˇc´ıslo neleˇzelo na diagon´ale, vymˇenili jsme pˇr´ısluˇsn´e 2 rovnice. D´ale jsme pokraˇcovali jako v GEM bez pivotace, tj. nulovali jsme koeficienty pod diagon´alou.

• Sloupcov´a pivotace nen´ı jedin´a moˇznost. Podobnˇe m˚uˇzeme vyb´ırat i maxim´aln´ı prvek v absolutn´ı hodnotˇe z pˇr´ısluˇsn´eho ˇr´adku (resp. jeho ˇc´asti) a pot´e vymˇenit pˇr´ısluˇsn´e sloupce. Pozor! Je ovˇsem tˇreba zamˇenit i pˇr´ısluˇsn´e sloˇzky ˇreˇsen´ı x. V tomto pˇr´ıpadˇe hovoˇr´ıme oˇr´adkov´e pivotaci.

• Dalˇs´ı moˇznost´ı je vyb´ırat maxim´aln´ı prvek v absolutn´ı hodnotˇe z cel´e matice A (resp. pˇr´ısluˇsn´e podma- tice). V tomto pˇr´ıpadˇe hovoˇr´ıme o ´upln´e pivotaci. Opˇet je tˇreba m´ıt na pamˇeti, ˇze je tˇreba zamˇenit sloˇzky ve vektoru ˇreˇsen´ı. Nev´yhodou ´upln´e pivotace je pomalejˇs´ı v´ypoˇcet nebot’ hlavn´ı prvek vyhled´av´ame z cel´e dosud neupraven´e ˇc´asti.

• Libovolnou pivotac´ı dos´ahneme realizovatelnosti GEM pro libovolnou regul´arn´ı matici A.

Metoda LU-rozkladu

Opˇet uvaˇzujeme regul´arn´ı matici A ˇr´adu N. Matici A lze rozloˇzit na souˇcin A = LU , kde L je doln´ı troj´uheln´ıkov´a matice ˇr´adu N a U je horn´ı troj´uheln´ıkov´a matice ˇr´adu N.

Napˇr:

2 64

a11 a12 a13 a21 a22 a23

a31 a32 a33

3 75=

2 64

l11 0 0 l21 l22 0 l31 l32 l33

3 75

2 64

u11 u12 u13 0 u22 u23

0 0 u33

3 75

Tento rozklad nen´ı d´an jednoznaˇcnˇe (12 nezn´am´ych a 9 podm´ınek), jednoznaˇcnosti dos´ahneme napˇr. t´ım, ˇze poloˇz´ıme lii = 1; i = 1; 2; : : : ; N .

Algoritmus: (viz skripta)

(7)

je odvozen z postupn´eho n´asoben´ı ˇr´adk˚u matice L a sloupc˚u matice U

(1; 1) u11= a11 (2; 1) a21 = l21u11 (3; 1) a31 = l31u11

(1; 2) u12= a12 (2; 2) a22 = l21u12+ u22 (3; 2) a32 = l31u12+ l32u22

(1; 3) u13= a13 (2; 3) a23 = l21u13+ u23 (3; 3) a33 = l31u13+ l32u23+ u33

Reˇsen´ı soustavy Axˇ = b metodou LU-rozkladu:

1. Realizace LU-rozkladu: A= LU

2. ˇReˇsen´ı troj´uheln´ıkov´e soustavy: Ly= b L Ux|{z}

y

= b 3. ˇReˇsen´ı troj´uheln´ıkov´e soustavy: Ux= y

Souvislost GEM a metody LU-rozkladu

Gaussovu eliminaci lze popsat pomoc´ı n´asoben´ı regul´arn´ımi maticemi.

Prvn´ı f´azi pop´ıˇseme takto : : : A(1) = M1A , kde M1 =

2 66 66 66 66 66 4

1 m21 1

m31 1

m41 1

... . ..

mn1 1

3 77 77 77 77 77 5

2 66 66 66 64

a11 a12 a13 : : : a1n

m21a11+ a21 m21a12+ a22 m21a13+ a23 : : : m21a1n+ a2n

m31a11+ a31 m31a12+ a32 m31a13+ a33 : : : m31a1n+ a3n

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

mn1a11+ an1 mn1a12+ an2 mn1a13+ an3 : : : mn1a1n+ ann

3 77 77 77 75

=

=

2 66 66 66 66 66 4

1 m21 1

m31 1

m41 1

... . ..

mn1 1

3 77 77 77 77 77 5



2 66 66 66 64

a11 a12 a13 : : : a1n

a21 a22 a23 : : : a2n

a31 a32 a33 : : : a3n

... ... ... ... an1 an2 an3 : : : ann

3 77 77 77 75

Druhou f´azi pop´ıˇseme takto : : : A(2) = M2A(1) , kde M2 =

2 66 66 66 66 66 4

1 1 m32 1

m42 1

... . ..

mn2 1

3 77 77 77 77 77 5

...

(8)

Josef Danˇek 9.3.2o17

Nakonec(n 1) f´azi pop´ıˇseme : : : A(n 1) = Mn 1A(n 2) , kde Mn 1 =

2 66 66 66 66 66 4

1 1

1 . ..

1 mn;n 1 1

3 77 77 77 77 77 5

Dostali jsme horn´ı troj´uheln´ıkovou matici, oznaˇc´ıme ji napˇr. V V= A(n 1) = Mn 1Mn 2Mn 3: : : M2M1

| {z }

ozn.M

A ) A = M 1V

M 1 = M11M21: : : Mn 11

Jak vypad´a napˇr. M21 ?

M2 =

2 66 66 66 66 66 4

1 1 m32 1

m42 1

... . ..

mn2 1

3 77 77 77 77 77 5

! M21 =

2 66 66 66 66 66 66 66 66 4

1 1

m32 1

m42 1

... . ..

mn2 1

3 77 77 77 77 77 77 77 77 5

protoˇze po vyn´asoben´ı:

• i-t´y ˇr´adek  j-t´y sloupec (j 6= i) – bud’ m42 1 + 1  ( m42) = 0

– nebo m42 0 + 0  1 + 1  0 = 0

• i-t´y ˇr´adek  i-t´y sloupec – m42 0 + 1  1 = 1

tj. M2 M21 = I

Jak vypad´a M 1 ?

(9)

M 1 =

2 66 66 66 64

1

m21 1

m31 m32 1

... . ..

mn1 mn2 mn3 : : : 1

3 77 77 77 75

Pˇr.:

2 64

1 0 0

m21 1 0 m31 0 1

3 75

2 64

1 0 0

0 1 0

0 m32 1

3 75=

2 64

1 0 0

m21 1 0

m31 m32 1

3 75

Plat´ı

A= M| {z }1

()

 V|{z}

()

(*) doln´ı troj´uheln´ıkov´a s 1 na diagon´ale (**) horn´ı troj´uheln´ıkov´a

) jedn´a se o LU-rozklad (rozklad je jednoznaˇcn´y) L= M 1 a U= V

V´ypoˇcet determinant˚u

1. Uˇzit´ı GEM

U= MN 1MN 2: : : M2M1A

det U = det M| {zN 1}

=1

det MN 2

| {z }

=1

: : : det M| {z }2

=1

det M1

| {z }

=1

det A

det A = det U =YN

i=1uii

2. Uˇzit´ı LU-rozkladu

det A = det L det U = YN

i=1

uii

V´ypoˇcet inverzn´ı matice 1. Uˇzit´ı GEM

A X= I (maticov´a soustava) X= A 1

(10)

Josef Danˇek 9.3.2o17 2. Uˇzit´ı LU-rozkladu

A= L U A 1 = U 1L 1

Numerick´e aspekty GEM a metody LU-rozkladu

Pˇri numerick´e realizaci nevypoˇcteme pˇresnˇe matice L a U, ale pˇribliˇzn´e matice L ae U.f Teoreticky plat´ı A= LU.

Oznaˇc´ıme fA=LefU . . . dopoˇcteno pro z´ıskan´e matice L ae fU.

Budeme zkoumat rozd´ıl fA A.

Oznaˇcme E a F matice chyb takov´e, ˇze plat´ı:

Le = L + E; fU= U + F

Potom:

fA A=LefU LU= (L + E)(U + F) LU = EU + LF + EF

Odtud plyne z´avˇer: Pokud jsou multiplik´atory v absolutn´ı hodnotˇe velk´e, pak prvky L jsou v absolutn´ı hodnotˇe velk´e ) chyba m˚uˇze b´yt velk´a. Toto je jeden z d˚uvod˚u realizace pivotace.

Pˇr´ım´e metody pro soustavy se speci´aln´ı matic´ı

Uvaˇzujeme matice:

• symetrick´a

• symetrick´a a pozitivnˇe definitn´ı

• diagon´alnˇe dominantn´ı

• p´asov´a

Plat´ı: Je-li matice A symetrick´a a A(k) jsou matice z´ıskan´e GEM v z´akladn´ı verzi, pak podmatice A(k) jsou tak´e symetrick´e.

pˇr:

2 66 66 4

a b c b d e c e f

3 77 77 5

=  ( ab) 

+ =  ( ca) 1

A+

(11)

2 66 66 66 4

a b c

0 d ba2 e bca 0 e bca f ca2

3 77 77 77 5

Lze pak pouˇz´ıt symetrickou verzi GEM a LU-rozkladu.

Je-li matice A nav´ıc pozitivnˇe definitn´ı, pak lze realizovat Cholesk´eho metodu rozkladu A = UTU

Pozn´amka: V algoritmu je potˇreba realizovat v´ypoˇcet odmocnin a to lze pouze pro pozitivnˇe definitn´ı matice.

pˇr: 2

64

a11 a12 a13

a21 a22 a23 a31 a32 a33

3 75=

2 64

u11 0 0 u21 u22 0 u31 u32 u33

3 75

2 64

u11 u12 u13

0 u22 u23 0 0 u33

3 75

(1; 1) : a11= u211 (2; 1) : a21 = u12 u11 (3; 1) : a31 = u13 u11

(1; 2) : a12= u11 u12 (2; 2) : a22 = u212+ u222 (3; 2) : a32 = u13 u12+ u23 u22 (1; 3) : a13= u11 u13 (2; 3) : a23 = u12 u13+ u22 u23 (3; 3) : a33 = u213+ u223+ u233

Metoda LU-rozkladu pro p´asov´e matice

Uvaˇzujeme matici A takovou, ˇze aij = 0 , kdyˇz ji jj > p (ˇs´ıˇrka p´asu je 2p + 1).

Pokud lze realizovat LU-rozklad, pak

lij = 0, kdyˇz j > i a j < i p, uij = 0, kdyˇz j < i a j > i + p.

(12)

Josef Danˇek 9.3.2o17 Pozn´amka: V pˇr´ıpadˇe obecn´e matice vˇsak nelze ˇcekat, ˇze matice L a U bude m´ıt nulov´y prvek v t´eˇze pozici jako jej mˇela matice A.

Pro p´asov´e, symetrick´e, pozitivnˇe definitn´ı matice pouˇz´ıv´ame speci´aln´ı verzi Cholesk´eho rozkladu.

Metoda faktorizace pro tˇr´ıdiagon´aln´ı matici

Uvaˇzujeme soustavun + 1 line´arn´ıch algebraick´ych rovnic A  Y = F ve tvaru:

0 BB BB BB BB BB BB

@

c0 b0 f0

a1 c1 b1 f1

a2 c2 b2 f2

a3 c3 b3 f3

. .. . .. . .. ... an 1 cn+1 bn 1 fn 1

an cn fn

1 CC CC CC CC CC CC A

Oznaˇc´ıme

1 = b0

c0 ; 1 = f0

c0

Prvn´ı dvˇe rovnice (prvn´ı rovnice je vydˇelen´a c0) lze ps´at ve tvaru:

y0 1y1 = 1

a1y0 + c1y1 b1y2 = f1

=  a1  +

(c1 a1 1) y1 b1y2 = f1 + a1 1

Pˇrep´ıˇseme (rovnice vydˇelen´a koeficientem u y1) na tvar:

y1 2y2 = 2 kde

2 = b1

c1 a1 1 ; 2 = f1+ a1 1 c1 a1 1

Po zobecnˇen´ı:

• PˇR´IM´Y CHOD

1 = b0

c0 1 = f0

c0

i+1 = bi

ci ai i i = 1; 2; : : : ; n 1 i+1 = fi+ai i

ci ai i i = 1; 2; : : : ; n

(13)

• ZPˇETN´Y CHOD

Pro posledn´ı dvˇe rovnice z´ısk´ame:

yn 1 nyn = n

anyn 1 + cnyn | = fn

=  an  +

(cn an n) yn = fn + an n

| ve druh´e rovnici jiˇz nen´ı ˇclen bnyn+1

Vyj´adˇr´ıme posledn´ı sloˇzku ˇreˇsen´ı:

yn = fn+ an n

cn an n =: n+1

Zpˇetnˇe dosazujeme:

yi 1= i+ iyi i = n; n 1; : : : ; 1 ()

Efektivnost algoritmu

dˇelen´ı 2n + 1 (1 + n 1 + 1 + n)

n´asoben´ı  3n (n + n + n)

sˇc´ıt´an´ı a odˇc´ıt´an´ı  3n (n + n + n)

celkem (8n + 1) operac´ı

Pozn´amka: Pokud budeme ˇreˇsit tuto soustavu pro r˚uzn´e prav´e strany F, nemus´ıme jiˇz znovu vyjadˇrovat koeficienty i, protoˇze nez´avis´ı na F. Staˇc´ı tedy pˇrepoˇc´ıtat i.

Zat´ım jsme neuvedli pˇredpoklady pro metodu faktorizace

• je tˇreba zajistit, aby jmenovatel ci ai i byl nenulov´y pro i = 1; 2; : : : ; n

• yi se urˇcuje z rekurentn´ı formule (), pˇritom m˚uˇze doj´ıt k akumulaci zaokrouhlovac´ıch chyb.

Necht’ i, i jsou dokonce pˇresnˇe vypoˇc´ıtan´e a necht’ m´ame yen = yn+ "n (s chybou"n).

Potom postupnˇe vypoˇc´ıt´ame podle ()

yei 1 = i+ iyei ; i = n; n 1; : : : ; 1

(14)

Josef Danˇek 9.3.2o17 Oznaˇc´ıme-li "i=yei yi chybu, bude jistˇe splˇnovat homogenn´ı rovnici

"i 1 = i"i ; i = n; n 1; : : : ; 1 (protoˇze pˇresn´e hodnotyyi splˇnuj´ıyi 1 = i+ iyi)

) Pokud by byly koeficienty j ij > 1, dojde k velk´emu n´ar˚ustu chyby "0 !!!

Pro j ij  1; i = 1; 2; :::; n

| {z }

()

je algoritmus stabiln´ı.

Postaˇcuj´ıc´ı podm´ınky pro zajiˇstˇen´ı(): Matice soustavy je ostˇre diagon´alnˇe dominantn´ı.

D˚ukaz viz literatura.

Pˇr´ıklady aplikac´ı, kter´e vedou na soustavu s tˇr´ıdiagon´aln´ı matic´ı

1. ˇReˇsen´ı okrajov´e ´ulohy

(k(x)u0(x))0 q(x)u(x) = f(x) x 2 (0; l) u(0) = 0

u(l) = 0 k(x) > 0 q(x)  0

x na h0; li diskretizujeme : : : s´ıt’xi

p˚uvodn´ı ´ulohu nahrad´ıme ´ulohou s diferenˇcn´ı rovnic´ı a pouˇzijeme vzorec pro pomˇernou diferenci

2. Diferenˇcn´ı sch´emata pro rovnici veden´ı tepla

@u

@t = @2u

@x2 x 2 (0; l) ; t > 0 u(0; t) = 1(t)

u(l; t) = 2(t) u(x; 0) = u0(x)

(15)

3. Soustava pro v´ypoˇcet koeficient˚u kubick´eho spline (aproximace funkce) . . . budeme prob´ırat

Podm´ınˇenost ´ulohy ˇreˇsit SLAR

Uvaˇzujeme opˇet soustavu Ax= b, A . . . n  n regul´arn´ı, b 2 Rn. Oznaˇcen´ı:

A . . . mal´a zmˇena matice A

b . . . mal´a zmˇena vektoru b

x . . . odpov´ıdaj´ıc´ı zmˇena vektoru nezn´am´ych x . . . pˇresn´e ˇreˇsen´ı soustavy Ax= b

Plat´ı:

(A + A)(x+ x) = b + b 1. Uvaˇzujme situaci A = 0, tj. A je zad´ana pˇresnˇe

Ot´azka: Jakou zmˇenu ˇreˇsen´ı vyvol´a zmˇena prav´e strany?

Ax+ Ax = b + b Ax = b

x = A 1b Z vlastnost´ı maticov´e normy plyne:

(16)

Josef Danˇek 9.3.2o17

Ax = b ) kbk  kAk  kxk ) 1

kxk  kAk kbk

x = A 1b ) kxk  kA 1k  kbk

kxk

kxk  kA 1k  kbk  kAk kbk

Cp =

kxkkxk kbkkbk

 kA 1k  kAk

2. Pˇr´ıpad, kdy b = 0, tj. b je zad´ana pˇresnˇe

(A + A)(x+ x) = b

Ax+ Ax+ Ax + Ax = b

Ax = A(x+ x)

x = A 1A(x+ x)

kxk  kA 1k  kAk  kx+ xk  kAk kAk kxk

kx+ xk  kA| 1k  kAk{z }

Cp

kAk kAk

Cp=

kxkxk+ xk kAkkAk

 kA 1k  kAk

3. Rozmyslete obecn´y pˇr´ıpad b 6= 0, A 6= 0 viz skripta (D.cv.)

(17)

Pozn´amka: Pro symetrick´e matice je ˇc´ıslo podm´ınˇenosti pod´ıl nejvˇetˇs´ı a nejmenˇs´ı absolutn´ı hodnoty vlastn´ıho ˇc´ısla.

Cp= kA| {z }1k

min1

 kAk| {z }

max

= jmaxj jminj

(Pro symetrick´e matice plat´ı, ˇze maj´ı re´aln´a vlastn´ı ˇc´ısla.)

Geometrick´a interpretace - dobˇre podm´ınˇen´a ´uloha (2D)

x + y = 3

x y = 1 ) y = 3 x

y = x 1

9=

; ˇreˇsen´ı x = 2 y = 1

A=

"

1 1

1 1

#

; b =

"

3 1

#

Dobˇre podm´ınˇen´a ´uloha - mal´a relativn´ı zmˇena vstupn´ıch dat vyvol´a malou relativn´ı zmˇenu v´ystupn´ıch dat.

Cp= kA 1k  kAk

A 1 =

"

0; 5 0; 5 0; 5 0; 5

#

= 0; 5 A

Cp= 1  2 =2 (ˇr´adkov´a, sloupcov´a norma); Cp= p12p

2 =1 (spektr´aln´ı norma)

(18)

Josef Danˇek 9.3.2o17 ATA =

"

2 0 0 2

#

kAkSP =p

2; kA 1kSP = p12

!

1. zmˇena prav´e strany (zmˇena matice A = 0)

b =

"

0; 1 0; 2

#

; b + b =

"

3; 1 1; 2

#

zmˇenˇen´a soustava y = 3; 1 x; y = x 1; 2

2. zmˇena matice soustavy (zmˇena prav´e strany b = 0)

A =

"

0 0; 1 0; 2 0

#

; A + A =

"

1 1; 1 1; 2 1

#

(19)

zmˇenˇen´a soustava y = 1;11 (3 x); y = 1; 2 x 1

Geometrick´a interpretace - ˇspatnˇe podm´ınˇen´a ´uloha (2D)

x + y = 2

x + 1; 1 y = 2; 1 ) y = 2 x y = 1;11 (2; 1 x)

9=

; ˇreˇsen´ı x = 1 y = 1

(20)

Josef Danˇek 9.3.2o17

A=

"

1 1

1 1; 1

#

; b =

"

2 2; 1

#

Spatnˇˇ e podm´ınˇen´a ´uloha - mal´a relativn´ı zmˇena vstupn´ıch dat vyvol´a velkou relativn´ı zmˇenu v´ystupn´ıch dat.

Cp= kA 1k  kAk

A 1 =

"

11 10

10 10

#

Cp= 2; 1  21 =44,1(ˇr´adkov´a, sloupcov´a norma); Cp= 2; 0512  20; 5125 = 42,07 (spektr´aln´ı norma)

1. zmˇena prav´e strany (zmˇena matice A = 0)

b =

"

0; 1 0; 2

#

; b + b =

"

2; 1 2; 3

#

zmˇenˇen´a soustava y = 2; 1 x; y = 1;11 (2; 3 x)

2. zmˇena matice soustavy (zmˇena prav´e strany b = 0)

A =

"

0 0

0 0; 05

#

; A + A =

"

1 1

1 1; 05

#

(21)

zmˇenˇen´a soustava y = 2 x;y = 1;051 (2; 1 x)

Pozn´amka: Jin´y v´ypoˇcet ˇc´ısla podm´ınˇenosti (prakticky)

Ax= b zmˇena na vstupu : : : A

vyvol´a zmˇenu na v´ystupu : : : x

(A + A)(x + x) = b

Cp=

kxkkxk kAkkAk

Pˇr´ıklad

A=

"

50 100 50 101

#

; b =

"

0 1

#

; x=

"

2 1

#

zmˇena matice soustavy

A =

"

0 0; 1 0; 2 0

#

) fA= A + A =

"

50 99; 9 50; 2 101

#

e

x=fA 1b=

"

2; 8527 1; 4278

#

(22)

Josef Danˇek 9.3.2o17

x = x xe =

"

2 1

# "

2; 8527 1; 4278

#

=

"

0; 8527 0; 4278

#

k:k 1.vektorov´a / sloupcov´a maximov´a / ˇr´adkov´a euklidovsk´a / spektr´aln´ı

x =

"

0; 8527 0; 4278

#

1,2805 0,8527 0,9539

x=

"

2 1

#

3 2 2,2361

A =

"

0 0; 1 0; 2 0

#

0,2 0,2 0,2

A=

"

50 100 50 101

#

201 151 158,7479

Cp 428,97 321,89 338,6

kxk1 =X

i

jxij ; kxk1= max

i jxij ; kxk2 =sX

i

x2i

kAkS = max

k

X

i

jaikj ; kAkR= max

i

X

k

jaikj ; kAkSP = max

k k12(AHA) (Pˇri pouˇzit´ı r˚uzn´ych norem dost´av´ame obecnˇe r˚uzn´a ˇc´ısla podm´ınˇenosti.)

Cp= kA 1k  kAk

A 1 =

"

2; 02 2

1 1

#

Cp= 151  4; 02 = 607; 02 (ˇr´adkov´a k:k);

Cp = 201  3; 02 = 607; 02 (sloupcov´a k:k);

Cp = 158; 7479  3; 1750 := 504; 03 (spektr´aln´ı k:k)

Pozn´amky k podm´ınˇenosti

(23)

• St´ale pˇredpokl´ad´ame, ˇze A je regul´arn´ı matice.

Soustava Ax= b m´a potom pr´avˇe jedno ˇreˇsen´ı.

Pˇredpokl´adejme, ˇze je matice A normalizov´ana tak, ˇze jej´ı max. prvek v absolutn´ı hodnotˇe je roven1.

Je-li soustava ˇspatnˇe podm´ınˇen´a, potom matice A 1 mus´ı obsahovat velk´e prvky.

napˇr:

A=

"

1 1

1 0; 99999

#

) A 1 =

"

99999 100000 100000 100000

#

To odpov´ıd´a faktu, ˇze ˇc´ıslo podm´ınˇenosti je velk´e Cp= kAk  kA 1k (norma kA 1k je velk´a).

• Rozbor chyb

Ax= b , x . . . pˇresn´e, xc : : : vypoˇcten´e

) chybu m˚uˇzeme mˇeˇrit pomoc´ı rezidua r = Axc b (pro pˇresn´e ˇreˇsen´ı je r= Ax b= 0)

Plat´ı: Je-li xc bl´ızko x ) reziduum je mal´e. Bohuˇzel to neplat´ı obr´acenˇe !!!

r = A(xc x)

xc x = A 1r

Pro ˇspatnˇe podm´ınˇenou ´ulohu obsahuje A 1 velk´e prvky, kter´e i pro mal´e hodnoty r mohou znamenat velkou chybu.

pˇr:

A=

"

1 1

1 0; 99999

#

; b =

"

2 1; 99999

#

pˇresn´e ˇreˇsen´ı: x = [1; 1]T

vypoˇcten´e m˚uˇze b´yt: xc = [ 98; 100]T

r = Axc b=

"

2 1; 999

# "

2 1; 99999

#

=

"

0 0; 00099

#

) je lepˇs´ı pokouˇset se odhadovat kxc xk.

Bohuˇzel se v odhadech vˇzdy vyskytuje norma kA 1k !!! Podrobnˇeji viz literatura.

Cytaty

Powiązane dokumenty

V dalˇ s´ı ˇ c´ asti pr´ ace byly navrˇ zeny ´ upravy konstrukce kˇ r´ıdla pro zv´ yˇ sen´ e zat´ıˇ zen´ı a jin´ e uspo- ˇ r´ ad´ an´ı palivov´ ych n´ adrˇ

Stˇr´ıdaˇ c vyˇ zaduje 5 galvanicky oddˇ elen´ ych vˇ etv´ı - jednu pro nap´ ajen´ı procesorov´ e ˇ c´ asti, dvˇ e pro na- p´ ajen´ı horn´ıch tranzistor˚ u v m˚

zdravotn´ıch sestr ´ach - person ´aln´ı obsazen´ı, vzd ˇel ´an´ı, pˇresˇcasy, nevykonan ´a zdravotn´ı p ´eˇce.. pacientech - spokojenost se zdravotn´ı p

Nejd˚ uleˇ zi- tˇ ejˇs´ım v´ ystupem pˇredkl´ adan´ e disertaˇ cn´ı pr´ ace jsou n´ avrhy postupu stanoven´ı oborov´ eho kalkulaˇ cn´ıho vzorce pro stavebn´ı pr´ ace

Pˇri ˇreˇsen´ı soustav s parametrem pomoc´ı GEM mus´ıme b´ yt velmi opatrn´ı na prov´ adˇ en´ı element´ arn´ıch ´ uprav.. Pro soustavy se ˇ ctvercovou matic´ı

Gaussova eliminaˇ cn´ı metoda (GEM) je pˇ r´ımou metodou ˇ reˇ sen´ı soustavy line´ arn´ıch algebraick´ ych rovnic A~x = ~b, kde matice A je regul´arn´ı... Z´

Z´ aludnosti: Promˇ enn´ e, pamˇ et’, rekurze Pr´ ace se soubory, textem, regul´ arn´ı v´ yrazy Sloˇ zen´ e datov´ e typy, objekty v Pythonu Obr´ azky (reprezentace,

Pˇri numerick ´em ˇreˇsen´ı diferenci ´aln´ı rovnice se v kaˇzd ´em kroku dopouˇst´ıme lok ´aln´ı diskretizaˇcn´ı chyby.. Glob ´aln´ı diskretizaˇcn´ı chyba