Numerisches Programmieren

Lineare Gleichungssysteme Nikola Tchipev 28.10.2014

Nikola Tchipev: Lineare Gleichungssysteme NumPro, 28.10.2014

1

Folien von Professor Huckle, SoSe 2014

Nikola Tchipev: Lineare Gleichungssysteme NumPro, 28.10.2014

2

Folien von Professor Huckle, SoSe 2014 (mit Einschub)

Nikola Tchipev: Lineare Gleichungssysteme NumPro, 28.10.2014

2

¨ Ubersicht Wiederholung Matrizen ¨ Losen Ax = b Versuch an Visualisierung? Rechnen mit Matrizen ¨ Losungsverfahren Dreieckssysteme Gauss Elimination Gauss Elimination mit Pivotsuche LU-Zerlegung Matrixnormen

Nikola Tchipev: Lineare Gleichungssysteme NumPro, 28.10.2014

3

¨ Losen Ax = b Beispiel:  1 −1

     2 x 1 · = 0 y 1

(1)

Zeileninterpretierung Schnittpunkt zweier Geraden: x + 2y = 1 −x + 0y = 1 x = −1, y = 1.

Nikola Tchipev: Lineare Gleichungssysteme NumPro, 28.10.2014

4

¨ Losen Ax = b Beispiel:  1 −1

     2 x 1 · = 0 y 1

(1)

Spalteninterpretierung Korrekte lineare Kombination den Spaltenvektoren der Matrix A:       1 2 1 ·x + ·y = −1 0 1 x = −1, y = 1.

Nikola Tchipev: Lineare Gleichungssysteme NumPro, 28.10.2014

4

¨ Losen Ax = b Beispiel:  1 −1

     2 x 1 · = 0 y 1

(1)

Spalteninterpretierung Korrekte lineare Kombination den Spaltenvektoren der Matrix A:       1 2 1 ·x + ·y = −1 0 1 x = −1, y = 1.

Nikola Tchipev: Lineare Gleichungssysteme NumPro, 28.10.2014

4

¨ Losen Ax = b Beispiel:  1 −1

     2 x 1 · = 0 y 1

(1)

Spalteninterpretierung Korrekte lineare Kombination den Spaltenvektoren der Matrix A:       1 2 1 ·x + ·y = −1 0 1 x = −1, y = 1. ¨ Wann ist Ax = b losbar?

Nikola Tchipev: Lineare Gleichungssysteme NumPro, 28.10.2014

4

¨ Losen Ax = b Beispiel:  1 −1

     2 x 1 · = 0 y 1

(1)

Spalteninterpretierung Korrekte lineare Kombination den Spaltenvektoren der Matrix A:       1 2 1 ·x + ·y = −1 0 1 x = −1, y = 1. ¨ Wann ist Ax = b eindeutig losbar?

Nikola Tchipev: Lineare Gleichungssysteme NumPro, 28.10.2014

4

Invertierbarkeit 

Fur ¨ eine quadratische Matrix A ∈ Rn×n

a11  .. A= . an1

··· .. . ···

 a1n ..  sind .  ann

¨ die folgende aquivalent: • A ist invertierbar, • det A 6= 0, • rankA = n,       a12 a1n    a11   ..   ..   ..  • die Spaltenvektoren  .  ,  .  , · · · ,  .  sind     an1 an2 ann ¨ linear unabhangig.   0   • Ax = b ist eindeutig losbar ¨ fur ¨ alle b 6=  ...  0 Nikola Tchipev: Lineare Gleichungssysteme NumPro, 28.10.2014

5

Invertierbarkeit

Gibt es mehr invertierbare oder nicht-invertierbare Matrizen?

Nikola Tchipev: Lineare Gleichungssysteme NumPro, 28.10.2014

6

Invertierbarkeit

Gibt es mehr invertierbare oder nicht-invertierbare Matrizen?

Sind alle reele Zahlen invertierbar?

Sind alle quadratische Matrizen invertierbar?

Nikola Tchipev: Lineare Gleichungssysteme NumPro, 28.10.2014

6

Invertierbarkeit

Gibt es mehr invertierbare oder nicht-invertierbare Matrizen?

Sind alle reele Zahlen invertierbar? fast alle - außer die Null Sind alle quadratische Matrizen invertierbar?

Nikola Tchipev: Lineare Gleichungssysteme NumPro, 28.10.2014

6

Invertierbarkeit

Gibt es mehr invertierbare oder nicht-invertierbare Matrizen?

Sind alle reele Zahlen invertierbar? fast alle - außer die Null Sind alle quadratische Matrizen invertierbar? fast alle - außer die “Nullen”

Nikola Tchipev: Lineare Gleichungssysteme NumPro, 28.10.2014

6

Versuch an Visualisierung: Diagonale 2 × 2 Matrizen 4 3 2

a22

1 0

-1 -2 -3 -4 -4 -3 -2 -1

0 1 a11

2

3

4

Nikola Tchipev: Lineare Gleichungssysteme NumPro, 28.10.2014

7

Versuch an Visualisierung: Diagonale 2 × 2 Matrizen wo finden wir: die Matrizen

4 3 2

   0 0 1 0 , , 0 0 0 1     π 0 e 0 , 0 e 0 π

1 a22



0

-1 -2 -3 -4 -4 -3 -2 -1

0 1 a11

2

3

4

Nikola Tchipev: Lineare Gleichungssysteme NumPro, 28.10.2014

7

Versuch an Visualisierung: Diagonale 2 × 2 Matrizen wo finden wir: die Matrizen

4 3 2

   0 0 1 0 , , 0 0 0 1     π 0 e 0 , 0 e 0 π

1 a22



0

-1 -2 -3 -4 -4 -3 -2 -1

0 1 a11

2

3

4

Nikola Tchipev: Lineare Gleichungssysteme NumPro, 28.10.2014

7

Versuch an Visualisierung: Diagonale 2 × 2 Matrizen wo finden wir: die Matrizen

4 3 2

   0 0 1 0 , , 0 0 0 1     π 0 e 0 , 0 e 0 π

1 a22



0

-1 -2 -3 -4 -4 -3 -2 -1

0 1 a11

2

3

4

Nikola Tchipev: Lineare Gleichungssysteme NumPro, 28.10.2014

7

Versuch an Visualisierung: Diagonale 2 × 2 Matrizen wo finden wir: die Matrizen

4 3 2

   0 0 1 0 , , 0 0 0 1     π 0 e 0 , 0 e 0 π

1 a22



0

-1 -2 -3 -4 -4 -3 -2 -1

0 1 a11

2

3

4

Nikola Tchipev: Lineare Gleichungssysteme NumPro, 28.10.2014

7

Versuch an Visualisierung: Diagonale 2 × 2 Matrizen wo finden wir: die Matrizen

4 3 2

   0 0 1 0 , , 0 0 0 1     π 0 e 0 , 0 e 0 π

1 a22



0

-1 -2 -3 -4 -4 -3 -2 -1

0 1 a11

2

3

4

Nikola Tchipev: Lineare Gleichungssysteme NumPro, 28.10.2014

7

Versuch an Visualisierung: Diagonale 2 × 2 Matrizen wo finden wir: die Summe der Matrizen

4 3 2

  2 0 1 + 0 3 0   3 0 = 0 1.5

 0 −1.5

1 a22



0

-1 -2 -3 -4 -4 -3 -2 -1

0 1 a11

2

3

4

Nikola Tchipev: Lineare Gleichungssysteme NumPro, 28.10.2014

7

Versuch an Visualisierung: Diagonale 2 × 2 Matrizen wo finden wir: die Summe der Matrizen

4 3 2

  2 0 1 + 0 3 0   3 0 = 0 1.5

 0 −1.5

1 a22



0

-1 -2 -3 -4 -4 -3 -2 -1

0 1 a11

2

3

4

Nikola Tchipev: Lineare Gleichungssysteme NumPro, 28.10.2014

7

Versuch an Visualisierung: Diagonale 2 × 2 Matrizen wo finden wir: die Summe der Matrizen

4 3 2

  2 0 1 + 0 3 0   3 0 = 0 1.5

 0 −1.5

1 a22



0

-1 -2 -3 -4 -4 -3 -2 -1

0 1 a11

2

3

4

Nikola Tchipev: Lineare Gleichungssysteme NumPro, 28.10.2014

7

Versuch an Visualisierung: Diagonale 2 × 2 Matrizen wo finden wir: Matrizen mit:

4 3 2

• det = −1 • det = 2−1 • det = 2−2 • det = 2−5 • det = 0

1 a22

• det = 1

0

-1 -2 -3 -4 -4 -3 -2 -1

0 1 a11

2

3

4

Nikola Tchipev: Lineare Gleichungssysteme NumPro, 28.10.2014

7

Versuch an Visualisierung: Diagonale 2 × 2 Matrizen wo finden wir: Matrizen mit:

4 3 2

• det = −1 • det = 2−1 • det = 2−2 • det = 2−5 • det = 0

1 a22

• det = 1

0

-1 -2 -3 -4 -4 -3 -2 -1

0 1 a11

2

3

4

Nikola Tchipev: Lineare Gleichungssysteme NumPro, 28.10.2014

7

Versuch an Visualisierung: Diagonale 2 × 2 Matrizen wo finden wir: Matrizen mit:

4 3 2

• det = −1 • det = 2−1 • det = 2−2 • det = 2−5 • det = 0

1 a22

• det = 1

0

-1 -2 -3 -4 -4 -3 -2 -1

0 1 a11

2

3

4

Nikola Tchipev: Lineare Gleichungssysteme NumPro, 28.10.2014

7

Versuch an Visualisierung: Diagonale 2 × 2 Matrizen wo finden wir: Matrizen mit:

4 3 2

• det = −1 • det = 2−1 • det = 2−2 • det = 2−5 • det = 0

1 a22

• det = 1

0

-1 -2 -3 -4 -4 -3 -2 -1

0 1 a11

2

3

4

Nikola Tchipev: Lineare Gleichungssysteme NumPro, 28.10.2014

7

Versuch an Visualisierung: Diagonale 2 × 2 Matrizen wo finden wir: Matrizen mit:

4 3 2

• det = −1 • det = 2−1 • det = 2−2 • det = 2−5 • det = 0

1 a22

• det = 1

0

-1 -2 -3 -4 -4 -3 -2 -1

0 1 a11

2

3

4

Nikola Tchipev: Lineare Gleichungssysteme NumPro, 28.10.2014

7

Versuch an Visualisierung: Diagonale 2 × 2 Matrizen wo finden wir: Matrizen mit:

4 3 2

• det = −1 • det = 2−1 • det = 2−2 • det = 2−5 • det = 0

1 a22

• det = 1

0

-1 -2 -3 -4 -4 -3 -2 -1

0 1 a11

2

3

4

Nikola Tchipev: Lineare Gleichungssysteme NumPro, 28.10.2014

7

Versuch an Visualisierung: Diagonale 2 × 2 Matrizen wo finden wir: Matrizen mit:

4 3 2

• det = −1 • det = 2−1 • det = 2−2 • det = 2−5 • det = 0

1 a22

• det = 1

0

-1 -2 -3 -4 -4 -3 -2 -1

0 1 a11

2

3

4

Nikola Tchipev: Lineare Gleichungssysteme NumPro, 28.10.2014

7

Versuch an Visualisierung: Diagonale 2 × 2 Matrizen wo finden wir: Matrizen mit Frobeniusnorm 1?

4 3 2

q (a11 )2 + . . . + (ann )2

1 a22

kAkF =

0

-1 -2 -3 -4 -4 -3 -2 -1

0 1 a11

2

3

4

Nikola Tchipev: Lineare Gleichungssysteme NumPro, 28.10.2014

7

Versuch an Visualisierung: Diagonale 2 × 2 Matrizen wo finden wir: Matrizen mit Frobeniusnorm 1?

4 3 2

q (a11 )2 + . . . + (ann )2

1 a22

kAkF =

0

-1 -2 -3 -4 -4 -3 -2 -1

0 1 a11

2

3

4

Nikola Tchipev: Lineare Gleichungssysteme NumPro, 28.10.2014

7

Rechnen mit Matrizen Lineare Abbildung 

Matrix A ∈ Rn×n

a11  .. A= . an1

··· .. . ···

 a1n ..  beschreibt lineare Abbildung: .  ann

y → f (x) = Ax         y1 a b x ax1 + bx2 = · 1 = y2 c d x2 cx1 + dx2

Beispiel: A =

√1 2



1 −1

 1 1

Nikola Tchipev: Lineare Gleichungssysteme NumPro, 28.10.2014

8

Rechnen mit Matrizen Addition Matrizen bilden kommutative Gruppe bzgl. Addition. Multiplikation Pk cij = r =1 air · brj

• Multiplikation ist associativ, distributiv bzgl. Addition, aber

im algemein nicht kommutativ: AB 6= BA

Nikola Tchipev: Lineare Gleichungssysteme NumPro, 28.10.2014

9

Rechnen mit Matrizen Transponierte Matrix “Spiegelung an der Hauptdiagonalen” AT =



ai,j

n,m T i,j=1

= aj,i



Eigenwert, eigenvektor Ein Vektor u ∈ Rn heißt Eigenvektor zu Eigenwert λ ∈ R, wenn gilt: • u 6= 0 • Au = λu • A ∈ Rn×n

Nikola Tchipev: Lineare Gleichungssysteme NumPro, 28.10.2014

10

¨ Losungsverfahren: Dreieckssysteme 3.1 Dreiecksgleichungssysteme Beispiel:

Unbekannte x1, x2, x3:

10 x1 −

7 x2

+

0 x3

2.5 x2

+

5 x3 6.2 x3

=

7 = 2.5 = 6.2

In Matrixschreibweise:

10 − 7 0   x1   7         0 2.5 5  ⋅  x2  =  2.5   0 0 6.2   x   6.2     3   3

Nikola Tchipev: Lineare Gleichungssysteme NumPro, 28.10.2014

11

¨ Losungsverfahren: Dreieckssysteme Wegen der Dreiecksform lässt sich das System leicht von unten her auflösen:

x3 = 6.2 / 6.2 = 1;

also

2.5 x2 = 2.5 − 5 x3 = −2.5, 10 x1 = 7 + 7 x2 = 7 − 7 = 0,

Lösungsvektor:

also

x3 = 1; x2 = −1;

also

x1 = 0 ;

 x1   0       x2  =  − 1; x   1   3  

Probe durch Einsetzen! 4

Nikola Tchipev: Lineare Gleichungssysteme NumPro, 28.10.2014

11

¨ Losungsverfahren: Dreieckssysteme Allgemein:

 a11 a12  a1n   x1   b1        a22 a2 n   x2   b2   ⋅ =              ann   xn   bn   wird gelöst mittels Programm 3.1.1.:

xn = bn / ann ; für i = n − 1, n − 2,,1 : bi − ∑ j = i +1 aij x j n

xi =

aii 5

Nikola Tchipev: Lineare Gleichungssysteme NumPro, 28.10.2014

11

¨ Losungsverfahren: Dreieckssysteme Genauso wird das untere Dreieckssystem  a11   x1   b1         a21 a22   x2   b2    ⋅   =           a       n1   ann   xn   bn  von oben her gelöst mit dem Programm:

x1 = b1 / a11 ; für i = 2,3,, n : bi − ∑ j =1 aij x j i −1

xi =

aii

Immer lösbar?

Wichtig: Alle aii ≠ 0 , da sonst System nicht eindeutig lösbar!

det( A) = a11 ⋅ a22 ⋅  ⋅ ann ≠ 0

6

Nikola Tchipev: Lineare Gleichungssysteme NumPro, 28.10.2014

11

¨ Losungsverfahren: Gauss Elimination 3.3 Gauss-Elimination 3.3.1. Beispiel: 10 x1 − 3 x1 5 x1

− 7 x2 + 2 x2 − x2

+ 0 x3 + 6 x3 + 5 x3

= 7 = 4 = 6

In Matrixschreibweise:

 10 − 7 0   x1   7         − 3 2 6  ⋅  x2  =  4   5 −1 5  x   6    3   Grundidee: Zurückführung auf den bekannten Fall eines Dreiecksgleichungssystems. 15

Nikola Tchipev: Lineare Gleichungssysteme NumPro, 28.10.2014

12

¨ Losungsverfahren: Gauss Elimination 3.3.2. Erlaubte Transformationen: - Multiplizieren einer Zeile (Gleichung) mit einer Zahl verschieden von Null. - Addieren eines Vielfachen einer Zeile zu einer anderen Zeile (Gleichung). - Vertauschen von Zeilen (Gleichungen), bzw. Spalten (Unbekannten) (entspricht Umnummerierung). Operationen sind dabei nicht nur an der Matrix durchzuführen, sondern ev. auch an der rechten Seite (Vektor b) und dem Lösungsvektor x! Benutze diese Regeln, um in der Matrix die SubdiagonalElemente der Reihe nach von oben nach unten, bzw. von links nach rechts, zu Null zu machen  Dreieckssystem. 16

Nikola Tchipev: Lineare Gleichungssysteme NumPro, 28.10.2014

12

¨ Losungsverfahren: Gauss Elimination  10 − 7 0   x1   7         − 3 2 6  ⋅  x2  =  4  ,  5 −1 5  x   6    3  

⋅ (3 / 10 ) ↓ +

Zu Eliminieren: -3 Addiere dazu zur zweiten Zeile die erste, multipliziert mit 3/10. Ergibt:

10 − 7 0   x1   7  ⋅ (− 5 / 10 )       |  0 − 0.1 6  ⋅  x2  =  6.1 ,      5 ↓ + − 1 5   x3   6  

Danach soll 5 zu Null werden: Dritte Zeile - 5/10 * Erste Zeile 17

Nikola Tchipev: Lineare Gleichungssysteme NumPro, 28.10.2014

12

¨ Losungsverfahren: Gauss Elimination 10 − 7 0   x1   7         0 − 0.1 6  ⋅  x2  =  6.1 , ⋅ (2.5 / 0.1)  0 2.5 5   x   2.5  ↓ +    3   Eliminiere 2.5 in letzter Zeile. Resultat:

0   x1   7  10 − 7       0 0 . 1 6  ⋅  x2  =  6.1 , −  0 0 155   x3  155  

Dieses System kann nun von unten her aufgelöst werden, wie in Abschnitt 3.1. beschrieben. 18

Nikola Tchipev: Lineare Gleichungssysteme NumPro, 28.10.2014

12

¨ Losungsverfahren: Gauss Elimination mit Pivotsuche Benutze also jeweils das Diagonalelement, um die darunter liegenden Einträge Spalte für Spalte zu eliminieren, und zwar von a11 , a22 , bis an-1,n-1. Immer lösbar? Problem: Es könnte irgendwann eine Null auf der Diagonalen auftreten: aii=0 !!!??? Was dann? Im Beispiel: Ersetze a22 = 2 durch a22 = 2.1

 10 − 7 0   x1   7         − 3 2 .1 6  ⋅  x 2  =  4  ,  5 −1 5  x   6     3  

3 / 10 ↓

− 5 / 10 | ↓ 19

Nikola Tchipev: Lineare Gleichungssysteme NumPro, 28.10.2014

13

¨ Losungsverfahren: Gauss Elimination mit Pivotsuche 10 − 7 0   x1   7         0 0 6  ⋅  x2  =  6.1.  0 2.5 5   x   2.5    3    Um Fortfahren zu können, ist eine Vertauschung notwendig, z.B. vertausche zweite Zeile mit dritter Zeile.

10 − 7 0   x1   7         0 2.5 5  ⋅  x2  =  2.5   0 6   x3   6.1 0



Problem gelöst! 20

Nikola Tchipev: Lineare Gleichungssysteme NumPro, 28.10.2014

13

¨ Losungsverfahren: Gauss Elimination mit Pivotsuche

Betrachten wir das ursprüngliche System, so sehen wir, dass wir zwar ohne Vertauschung durchkommen, aber der Wert -0.1 auf der Diagonalen a22 führt zu der großen Zahl 155 in der letzten Zeile.

Erinnerung:

Zu vermeiden sind große Zwischenwerte!

Daher ist es auch im ursprünglichen System besser, die Vertauschung von zweiter und dritter Zeile vorzunehmen.

21

Nikola Tchipev: Lineare Gleichungssysteme NumPro, 28.10.2014

13

¨ Losungsverfahren: Gauss Elimination mit Pivotsuche 10 − 7 0   x1   7         0 2.5 5  ⋅  x2  =  2.5   0 − 0.1 6   x   6.1    3   



⋅ 0.1 / 2.5 ↓ +

Dann lautet der letzte Eliminationsschritt

10 − 7 0   x1   7         0 2.5 5  ⋅  x2  =  2.5   0 0 6.2   x   6.2     3   Es treten keine großen Zwischenwerte mehr auf. Allgemeines Vorgehen:

Pivotsuche 22

Nikola Tchipev: Lineare Gleichungssysteme NumPro, 28.10.2014

13

¨ Losungsverfahren: Gauss Elimination mit Pivotsuche Sieht im k-ten Eliminationsschritt so aus:

 a11  0    0    0

    ak −1,k −1  0   0

a1n         ak , n       ann 

 

akk  ank

Suche in Untermatrix ‚großen’ Eintrag und vertausche entsprechend Zeilen und Spalten, so dass diese große Zahl an die Diagonal-Position akk kommt. Dieses Element heißt Pivotelement.

23

Nikola Tchipev: Lineare Gleichungssysteme NumPro, 28.10.2014

13

¨ Losungsverfahren: Gauss Elimination mit Pivotsuche Gebräuchlichste Variante: 3.3.3. Spaltenpivotsuche: Durchsuche nur die Spalte von akk bis ank nach betragsgrößtem Element ajk und vertausche dann die gefundene Zeile j mit der k-ten Zeile. Der Zusatzaufwand ist gering, da nur jeweils eine Spalte durchsucht werden muss, und zwei Zeilen (Gleichungen) vertauscht werden müssen. Vertausche also zwei Zeilen in der Matrix und entsprechend in der rechten Seite b. 24

Nikola Tchipev: Lineare Gleichungssysteme NumPro, 28.10.2014

13

¨ Losungsverfahren: Gauss Elimination mit Pivotsuche Weniger üblich - Zeilenpivotsuche: Durchsuche die k-te Zeile nach betragsgrößtem Element und vertausche zwei Spalten (= Umnummerierung in Vektor x), so dass das betragsgrößte Element der k-ten Zeile an die Diagonalposition kommt. Keine Vertauschungen in b nötig! Totalpivotsuche: Durchsuche die gesamte n-k+1 x n-k+1 – Untermatrix und vertausche sowohl Spalten, als auch Zeilen, um das betragsgrößte Element an die Diagonalposition zu versetzen. Aufwändig! Nur sinnvoll, wenn das Gleichungssystem sehr schlecht konditioniert ist! (Mehr dazu später) 25

Nikola Tchipev: Lineare Gleichungssysteme NumPro, 28.10.2014

13

¨ Losungsverfahren: Gauss Elimination mit Pivotsuche 3.3.4. Umwandlung auf Dreiecksform mit Spaltenpivotsuche: Algorithmus der Gauss-Elimination. 1. Teil des Programms: Pivotsuche und –vertauschung FOR k=1,...,n-1 DO alpha = |a(k,k)|; j=k; FOR s=k+1,...,n DO IF |a(s,k)| > alpha THEN alpha = |a(s,k)|; j=s; ENDIF ENDFOR # Pivotelement ist a(j,k) und Pivotzeile ist j FOR i=k,...,n DO alpha = a(k,i); a(k,i) = a(j,i); a(j,i) = alpha; ENDFOR alpha = b(j); b(j) = b(k); b(k) = alpha; 26

Nikola Tchipev: Lineare Gleichungssysteme NumPro, 28.10.2014

13

¨ Losungsverfahren: Gauss Elimination mit Pivotsuche 2. Teil: Eigentliche Elimination # Eliminationsschritt FOR s=k+1,...,n DO l(s,k) = a(s,k)/a(k,k); b(s) = b(s) - l(s,k)b(k); FOR i=k+1,...,n DO a(s,i) = a(s,i) - l(s,k)a(k,i); ENDFOR ENDFOR ENDFOR Dadurch ist das System auf obere Dreiecksform gebracht, und kann wie in 3.1 beschrieben einfach von unten her gelöst werden. 27

Nikola Tchipev: Lineare Gleichungssysteme NumPro, 28.10.2014

13

¨ Losungsverfahren: LU-Zerlegung 3. 4 Die LU-Zerlegung Idee: Faktorisierung von A in „einfache“ Matrizen. 3.4.1. Definition: Sei Ak die Matrix, die im k-ten Schritt der Gauss-Elimination bearbeitet wird, also A1 = A die Ausgangsmatrix und An = U die Endmatrix in oberer Dreiecksgestalt. Die Gewichte l(s,k)=ls,k aus obigem GE-Algorithmus schreiben wir in eine neue untere Dreiecksmatrix:  1   l    2,1     1   L := lk +1, k 1             l  n ,1  ln , k  ln , n −1 1 

28

Nikola Tchipev: Lineare Gleichungssysteme NumPro, 28.10.2014

14

¨ Losungsverfahren: LU-Zerlegung Für jede Spaltenelimination sammeln wir die Gewichte in 0     0 Lk :=  lk +1,k     0 l n ,k 

     0     0  0 

P sei die Permutationsmatrix zu den Pivotvertauschungen. Beispiel: Vertauschung 1 2 entspricht

0 1  P =  1 0

Im Folgenden betrachten wir zur Vereinfachung die Gauss-Elimination ohne Pivotsuche und ohne Permutation P. 29

Nikola Tchipev: Lineare Gleichungssysteme NumPro, 28.10.2014

14

¨ Losungsverfahren: LU-Zerlegung Der k-te Schritt der GE kann als Matrixprodukt beschrieben werden in der Form

Ak +1 = ( I − Lk ) Ak = Ak − Lk Ak mit Einheitsmatrix I. (Ziehe von den unteren Zeilen von Ak jeweils die entsprechend gewichtete k-te Zeile ab.)

0   0 ⋅ Lk ⋅ Ak =  ⋅ l k +1, k    0 l n,k 

0 0      0 ⋅  *      ⋅  *  Ak ,.  =  l k +1, k * Ak ,.        *      l *A  0  k ,.   n,k

Dabei bezeichnet Ak,. die k-te Zeile von Ak . 30

Nikola Tchipev: Lineare Gleichungssysteme NumPro, 28.10.2014

14

¨ Losungsverfahren: LU-Zerlegung Insgesamt:

U = An = ( I − Ln−1 ) An−1

~

L    ~ =  = ( I − Ln−1 ) ( I − L1 ) A1 = L A

mit der Matrix

~ L := ( I − Ln −1 )( I − L2 )( I − L1 ) Wie sieht die Inverse dieser Matrix aus? Es gilt

( I + L j ) ⋅ ( I − L j ) = I − L j + L j − L2j = I Dabei verwenden wir: LiLj = 0 für i 0 fur ¨ v 6= 0

“Einheitskreis” kv k = 1 bei unterschiedliche Normen: 2

• ka · v k = |a| · kv k fur ¨ a∈R • kv + uk ≤ kv k + kuk

1.5 1 0.5 v2

¨ mehrere Moglichkeiten • euklidsche Lange: q ¨

kv k2 =

v12 + . . . + vn2

• 1-Norm:

kv k1 = |v1 | + . . . + |vn | • max-Norm:

0

-0.5 -1 -1.5 -2 -2 -1.5 -1 -0.5 0 0.5 1 1.5 2 v1

kv k∞ = maxi=1,...,n |vi | Nikola Tchipev: Lineare Gleichungssysteme NumPro, 28.10.2014

15

Matrixnormen 3.5 Die Kondition eines linearen Gleichungssystems (einer Matrix) Neu benötigt:

Matrixnorm und ihre Eigenschaften.

|| . || Matrixnorm: ||A|| > 0 für A ≠ 0 ||a*A|| = |a|*||A|| für a∈R ||A+B||