next up previous
Next: 6.1.2 Givensrotation auf dem Up: 6.1 Elimination durch Drehungsmatrizen Previous: 6.1 Elimination durch Drehungsmatrizen

   
6.1.1 Die Givensrotation

Die Transformationsmatrix aus (6.2) wird leicht verändert (wiederum nur der erste Schritt)

 \begin{displaymath}
\begin{pmatrix}
c & s & 0 & \cdots \\
- s & c & 0 & \cdo...
...ts & & \ddots
\end{pmatrix} \,\cdot\,\underline{b} \enspace ,
\end{displaymath} (6.3)

mit dem Ziel

\begin{displaymath}-s \cdot a_{11} + c \cdot a_{21} \;=\; 0 \enspace . \end{displaymath}

Die Wahl

 \begin{displaymath}
s \;=\; \frac{a_{21}}{\sqrt{a_{11}^2+a_{21}^2}} \hspace{2em...
...\hspace{2em}
c \;=\; \frac{a_{11}}{\sqrt{a_{11}^2+a_{21}^2}}
\end{displaymath} (6.4)

entspricht durch die Normierung exakt den Einträgen $s=\sin\varphi$ und $c=\cos\varphi$ einer Drehungsmatrix.
In der Gaußelimination wurde die Größe $\tfrac{a_{21}}{a_{11}}=\tan\varphi$ verwendet.

Vorteil: $a_{11}=0$ $\Longrightarrow$ $s=1$, $c=0$ $\Longrightarrow$ numerisch stabil $\Longrightarrow$ keine Pivotsuche.

Da der Hauptaufwand bei den Berechnungen in der Transformation der Matrix $A$ liegt, wird nur noch die Anwendung der Rotation auf diese betrachtet. Im folgenden bezeichnen die Vektoren  $\underline{u}$ und  $\underline{v}$ die durch die Rotation zu verändernden Matrixzeilen, $\widehat{\underline{u}} \makebox[0pt]{}$ und  $\widehat{\underline{v}} \makebox[0pt]{}$ stellen die resultierenden Matrixzeilen dar.

Eine einzelne Givensrotation

 \begin{displaymath}
\begin{split}
\widehat{\underline{u}} \makebox[0pt]{} &\;:...
...=\; c \cdot \underline{v} - s \cdot \underline{u}
\end{split}\end{displaymath} (6.5)

ist in manchen BLAS1-Bibliotheken als ein Aufruf enthalten ( SROT/ DROT).

Gundolf Haase
1998-12-22