Kurs:Funktionalanalysis/Gram-Schmidtsches Orthonormalisierungsverfahren

Aus testwiki
Version vom 16. Mai 2024, 12:19 Uhr von imported>Fath7937 (Induktionsbehauptung)
(Unterschied) ← Nächstältere Version | Aktuelle Version (Unterschied) | Nächstjüngere Version → (Unterschied)
Zur Navigation springen Zur Suche springen

Einleitung

Diese Seite kann als Wiki2Reveal Folien angezeigt werden. Einzelne Abschnitte werden als Folien betrachtet und Änderungen an den Folien wirken sich sofort auf den Inhalt der Folien aus.

Orthogonal - Orthonormal

Das Gram-Schmidtsche Orthonormalisierungsverfahren ist ein Spezialfall des Gram-Schmidtsche Orthogonalisierungsverfahren, bei dem aus einem gegebenen System linear unabhängiger Vektoren (z.B. einer Hamelbasis) ein System von orthogonal zueinander stehenden Vektoren der Länge 1 ersteht. ist ein Algorithmus aus dem mathematischen Teilgebiet der linearen Algebra.

Orthogonalsystem

Das Verfahren erzeugt zu jedem System linear unabhängiger Vektoren aus einem Prähilbertraum (einem Vektorraum mit Skalarprodukt) ein Orthogonalsystem, das denselben Untervektorraum erzeugt.


Orthonormalsystem

Aus dem Orthogonalsystem erhält man durch Normalisierung vk:=wkwk ein Orthonormalsystem. Die Normalisierung ist möglich, da linear unabhängige Vektoren sich vom Nullvektor unterscheiden und damit eine positive Länge haben wk>0.

Basis/Hamelbasis

Verwendet man ein System von Basisvektoren als Eingabe für die Algorithmen, so berechnen sie eine Orthogonal- bzw. Orthonormalbasis.

Numerische Berechnung von Orthonormalsystem

Für die numerische Berechnung durch einen Computer mit Gleitpunktarithmetik sind die Gram-Schmidt-Verfahren schlecht geeignet. Durch akkumulierte Rundungsfehler weisen die berechneten Vektoren z.T. deutliche Abweichung von orthogonalen Vektor auf. Es existieren aber Modifikationen des Verfahrens, die diesen Nachteil nicht haben. Andere Orthogonalisierungsverfahren basieren auf Householdertransformationen oder Givens-Rotationen.

Geschichte

Die beiden Verfahren sind nach Jørgen Pedersen Gram und Erhard Schmidt benannt. Sie wurden allerdings bereits früher in den Werken von Pierre-Simon Laplace und Augustin-Louis Cauchy verwendet.


Orthonormalisierungsatz nach Gram-Schmidt

Im Folgenden betrachteten man ein separablen Hilbertraum (V,,) mit einer abzählbaren Basis B=n=1{bn}V. Dann gibt es ein Orthonormalsystem B0=n=1{vn}V mit der Eigenschaft:

  • (ON1) Span(B)=Span(B0)
  • (ON2) vk,vn=0 für alle n,k und n=k
  • (ON3) vn=1 für alle n


Bemerkung - Orthogonalprojektion

Für zwei beliebige vom Nullvektor 0V verschiedene Vektoren v,wV ist die Orthogonalprojektion von w auf v=0V über das Skalarprodukt wie folgt definiert.

Pv(w):=v,wv,vv=v,wv2v

Bemerkung - seminlinear komplexer Fall

Im komplexen Fall wird dabei die Konvention verwendet, dass das Skalarprodukt im ersten Argument semilinear, im zweiten Argument linear ist, das heißt

λv,w=λv,w,v,λw=λv,w

für alle Vektoren v, w und alle λ. Im komplexen Fall kommt es deshalb bei den unten dargestellten Formeln auf die Reihenfolge der Faktoren im Skalarprodukt an, im reellen Fall jedoch nicht.

Bemerkung - Skalarproduktinduzierte Norm

Zudem bezeichnet v=v,v die Norm des Vektors v. Dabei liegt der von B0=n=1{vn} aufgespannte Untervektorraum dicht in V bzgl. dieser Norm.

Animation - Orthonormalisierung

Illustration des Gram-Schmidt-Verfahrens an einem Beispiel mit drei Vektoren

Illustration des Gram-Schmidt-Verfahrens an einem Beispiel mit drei Vektoren.

Bemerkung - Orthogonalisierung

Für die Orthogonalisierung des 3. Vektors v3 subtrahiert die Orthogonalprojektionen von v3 auf die bereits orthogonalisierten Vektoren u1 und u2 und erhält dann u3.

u3:=v3k=12uk,v3uk,ukuk

Dieses Vorgehen entspricht dem induktiv im konstruktiven Beweis des Gram-Schmidtsches Orthonormalisierungsverfahren, bei dem un+1 über die Subtraktion der Orthogonalprojektion von vn+1 auf die n vorher bereits orthogonalisierten Vektoren u1,...,un berechnet wird.

Algorithmus des Orthogonalisierungsverfahrens

Die Kontruktion und der Beweis für abzählbar viele Basisvektoren erfolgt über vollständige Induktion.

Induktionsanfang

Zunächt einmal wird als Induktionsanfang der erste Vektor gewählt v1:=w1 gewählt. Im Gegensatz zur Orthonormalisierung muss hier v1 nicht normiert werden.

  • Definiere V1:=Span({v1})=Span({w1})
  • Für die Orthogonalität ist nichts zu überprüfen, da es in dem System B1 keine zwei paarweise verschiedene Vektoren gibt.

Induktionsvoraussetzung

Seien nun n linear unabhängigen Vektoren w1,,wn in ein Orthogonalsystem von n paarweise orthogonalen Vektoren überführt worden, mit Bn:={v1,,vn}:

  • (ON1) Vn:=Span({v1,,vn})=Span({b1,,bn})
  • (ON2) vk,vm=0 für alle k,m{1,,n} und m=k

Induktionsbehauptung

Man kann einen weiteren Vektor vn+1V so wählen, dass mit Bn+1:={v1,,vn,vn+1}:

  • (ON1) Vn+1:=Span({v1,,vn,vn+1})=Span({b1,,bn,bn+1})
  • (ON2) vk,vm=0 für alle k,m{1,,n,n+1} und m=k

Induktionschritt

Der Vektor vn+1V wird über bn+1B und die Projektion von bn+1B auf Vektoren aus dem Orthogonalsystem aus v1,,vn definiert.

vn+1:=bn+1k=1nvk,bn+1vk,vkvk

Span

Die Bedingung (ON1) Vn+1:=Span({v1,,vn,vn+1})=Span({b1,,bn,bn+1}) gilt über den Nachweis von zwei Mengeninklusionen.

  • Vn+1=Span({v1,,vn,vn+1})Span({b1,,bn,bn+1})
  • Vn+1=Span({v1,,vn,vn+1})Span({b1,,bn,bn+1})

Span - Mengeninklusion 1

Aus wVn+1:=Span({v1,,vn,vn+1}) folgt, dass es ein w1Vn und ein w2=λvn+1Span({vn+1}) gibt mit:

w=w1+w2=w1+λvn+1==w1Vn=Span({b1,...,bn})+λ(bn+1i=1nvi,bn+1vi,viviVn=Span({b1,...,bn}))Span({b1,...,bn,bn+1})Span({b1,...,bn,bn+1})

Span - Mengeninklusion 2

Aus wSpan({b1,,bn,bn+1}) folgt, dass es ein w1Vn=Span({b1,,bn}) und ein w2=λbn+1Span({bn+1}) gibt mit:

w=w1+w2=w1+λbn+1==w1+λi=1nvi,bn+1vi,viviVn=Span({v1,...,vn})+λ(bn+1i=1nvi,bn+1vi,viviVn=Span({b1,...,bn}))=vn+1Span({v1,...,vn,vn+1})

Nachweis der Orthogonalität

Sei nun m{1,...,n} beliebig gewählt und man zeigt nun das vm,vn+1=0 gilt:

vm,vn+1=vm,bn+1i=1nvi,bn+1vi,vivi=vm,bn+1i=1nvm,vi,bn+1vi,vivi=vm,bn+1vm,bn+1vm,vmvm,vmvm,bn+1=0

In der zweiten Gleichung fallen durch die Orthogonalität von vm,vi=0 für i=m genau n1 weg.

Normalisierung der Vektoren

Wenn die Vektoren v1,,vn durch normalisierte Vektoren der Länge 1 ersetzt, spannen die normalisierten Vektoren genau den Gleichen Untervektorraum auf und die Skalarprodukte bleiben 0 durch die Semilinearität in der ersten und die Linearität in der zweiten Komponente.

λkvk,λmvm=λkλmvk,vm=0=0

Zusammenfassung 1

Die einzelnen Vektoren v1,,vn des Orthogonalsystems berechnen sich wie folgt:

v1=b1
v2=b2v1,b2v1,v1v1
v3=b3v1,b3v1,v1v1v2,b3v2,v2v2
vn=bnv1,bnv1,v1v1v2,bnv2,v2v2vn1,bnvn1,vn1vn1=bni=1n1vi,bnvi,vivi

Zusammenfassung 2

Die Vektoren wurden induktiv definiert für vn+1 über die bereits definierten Vektoren vi für j=1,2,,n.

vn+1=bn+1i=1nvi,bn+1vi,vivi

In dem neu definierten System sind paarweise verschiedene Vektoren zueinander orthogonal und für ein festes n spannt das erzeugte Orthogonalsystem den gleichen Untervektoraum auf. Über die vollständige Induktion wird die Behauptung auf das abzählbare System von linear unabhängigen Vektoren übertragen.

Beispiel - Orthogonalisierung

Im 3 versehen mit dem Standardskalarprodukt , seien zwei linear unabhängige Vektoren vorgegeben, die einen Untervektorraum erzeugen:

w1=(312),w2=(222)

Es werden nun zwei orthogonale Vektoren v1 und v2 berechnet, die denselben Untervektorraum erzeugen:

v1=w1=(312)
v2=w2v1,w2v1,v1v1=(222)1214(312)=17(482)

Algorithmus des Orthonormalisierungsverfahrens

Der folgende Algorithmus berechnet zu den linear unabhängigen Vektoren w1,,wn ein Orthonormalsystem von n normierten, paarweise orthogonalen Vektoren, das denselben Untervektorraum erzeugt. Er ist identisch mit einer Normierung der orthogonalen Vektoren, welche durch den obigen Algorithmus bestimmt wurden.

Die einzelnen Vektoren v1,,vn des Orthonormalsystems erhält man, indem zuerst jeweils ein orthogonaler Vektor berechnet und anschließend normalisiert wird:

v1=w1w1 (Normalisieren des ersten Vektors w1)
v2=w2v1,w2v1 (Orthogonalisieren des zweiten Vektors w2)
v2=v2v2 (Normalisieren des Vektors v2)
v3=w3v1,w3v1v2,w3v2 (Orthogonalisieren des dritten Vektors w3)
v3=v3v3 (Normalisieren des Vektors v3)
vn=wni=1n1vi,wnvi (Orthogonalisieren des n-ten Vektors wn)
vn=vnvn (Normalisieren des Vektors vn)

Anders gesagt werden die vj und vj für j=1,2,,n also rekursiv durch

vj=wji=1j1vi,wjvi und vj=vjvj definiert.

Im Allgemeinen erhält man durch dieses Verfahren kein besonders ausgezeichnetes System. Im 3 muss z. B. erst ein Umordnungsschritt nachgeschaltet werden, um ein Rechts- oder Linkssystem zu erhalten.


Beispiel - Orthonormalisierung

Im 2 versehen mit dem Standardskalarprodukt , seien zwei Basisvektoren gegeben:

w1=(31),w2=(22)

Es werden nun zwei Vektoren v1 und v2 berechnet, die eine Orthonormalbasis des 2 bilden.

v1=w1w1=110(31)
v2=w2v1,w2v1=(22)110(31),(22)110(31)=15(26)
v2=v2v2=254015(26)=110(13)

Anmerkungen

Eine besondere Eigenschaft der beiden Verfahren ist, dass nach jedem Zwischenschritt die bisher berechneten Vektoren v1,,vi den gleichen Vektorraum erzeugen wie die Vektoren w1,,wi. Die Vektoren v1,,vi bilden also eine Orthogonal- bzw. Orthonormalbasis der entsprechenden Untervektorräume. Anders ausgedrückt ist die Transformationsmatrix, die die Koordinaten des einen Systems im anderen ausdrückt, eine rechtsobere Dreiecksmatrix. Diese hat außerdem eine positive Determinante, daher hat die resultierende Orthogonal- bzw. Orthonormalbasis die gleiche Orientierung wie die Ausgangsbasis. Fasst man die orthonormalen Vektoren v1,,vn als Spalten einer Matrix Q zusammen, ebenso die Vektoren des Ausgangssystems w1,,wn zu einer Matrix A, so gibt es eine Dreiecksmatrix R mit A=QR, es wird also eine QR-Zerlegung bestimmt. Dementsprechend kann das Ergebnis der Gram-Schmidt-Orthonormalisierung auch mit anderen Methoden zur QR-Zerlegung bestimmt werden, die mit Givens-Rotationen oder Householder-Spiegelungen arbeiten.

Berechnet man ein Orthonormalsystem von Hand, ist es oftmals einfacher, zunächst ein Orthogonalsystem auszurechnen und dann die einzelnen Vektoren zu normieren. Dadurch erspart man sich das zweifache Normieren und kann oftmals mit einfacheren Werten rechnen. Gegebenenfalls lohnt es sich, vor dem Erstellen des Orthogonalsystems/Orthonormalsystems das Gaußsche Eliminationsverfahren durchzuführen.

Prinzip des Verfahrens

Sind die orthogonalen Vektoren v1,,vk1 bereits bestimmt, versuchen wir, von bk eine passende Linearkombination der Vektoren v1,,vk1 abzuziehen, sodass der Differenzvektor

vk=bki=1k1λivi

zu allen Vektoren v1,,vk1 orthogonal wird. Dies ist gleichbedeutend damit, dass das Skalarprodukt vj,vk für alle j=1,,k1 den Wert 0 ergibt. Eine solche Linearkombination ergibt sich, wenn für jedes i der Ausdruck

λi=vi,bkvi,vi

gewählt wird. Eine Kontrollrechnung zeigt, dass dadurch alle Skalarprodukte vj,vk mit jk den Wert 0 annehmen:

vj,vk=vj,bki=1k1λivi=vj,bki=1k1vi,bkvi,vivj,vi=vj,bkvj,bk=0

Orthonormalisierung unendlicher Systeme von Vektoren

In einem beliebigen Hilbertraum H lässt sich das Verfahren auch auf unendliche Systeme unabhängiger Vektoren anwenden, wobei die Unabhängigkeit in dem Sinne zu verstehen ist, dass kein Element im Abschluss der linearen Hülle der übrigen Vektoren liegt. Den Fall eines abzählbaren Systems (d. h. H ist ein separabler Hilbertraum) kann direkt auf den oben dargestellten endlichen Fall zurückgeführt werden: Gegeben sei eine unabhängige Folge (wn)n, so erhält man eine entsprechende orthonormale Folge (vn)n, indem man für jedes n das obige Verfahren anwendet und vn erhält. Allgemeiner kann jedes unabhängige System nach dem Wohlordnungssatz als Folge (wα)α<d für eine Kardinalzahl d und Ordinalzahlen α angesehen werden (im Falle einer dichten linearen Hülle des unabhängigen Systems ist d gerade die Dimension von H). Bezeichne nun πA:HA die orthogonale Projektion auf einen abgeschlossenen Teilraum A, die aufgrund der Vollständigkeit des Raumes stets existiert, x^ bezeichne die Normierung xx. So ergibt sich ein Orthonormalsystem (vα)α<d durch

Aα:=span({wβ:β<α})
vα:=(wαπAα(wα))^.

Per transfiniter Induktion lässt sich dann zeigen, dass Aα=span({vβ:β<α}), sogar für α=d. Expliziter lässt sich das Verfahren per transfiniter Rekursion wie folgt schreiben:

vα:=(wαβ<αvβ,wαvβ)^

Hierbei ist die Summe aufgrund der besselschen Ungleichung wohldefiniert (insbesondere sind stets nur abzählbar viele Summanden ungleich Null).

Literatur

  • K. Kirchgessner, M. Schreck: Vektoranalysis für Dummies. Das Pocketbuch Paperback . Wiley-VCH, 2012. ISBN 978-3-527-70742-3


Seiteninformation

Diese Lernresource können Sie als Wiki2Reveal-Foliensatz darstellen.

Wiki2Reveal

Dieser Wiki2Reveal Foliensatz wurde für den Lerneinheit Kurs:Funktionalanalysis' erstellt der Link für die Wiki2Reveal-Folien wurde mit dem Wiki2Reveal-Linkgenerator erstellt.

Wikipedia2Wikiversity

Diese Seite wurde auf Basis der folgenden Wikipedia-Quelle erstellt: