next up previous index
Next: Bibliography Up: Dissertation Christoph Wasshuber Previous: G Rational Padé Approximations

  
H Arnoldi Algorithm

  The Arnoldi algorithm [44] builds an orthonormal basis $\boldsymbol{B_m}=[\boldsymbol{b_1},\boldsymbol{b_2},\ldots,\boldsymbol{b_m}]$ for a Krylov subspace $K_m(\boldsymbol{A},\boldsymbol{b})\equiv \text{span}\{\boldsymbol{b},\boldsymbol{A}\boldsymbol{b},\ldots,
\boldsymbol{A}^{m-1}\boldsymbol{b}\}$.

1. Set $\boldsymbol{b_1} = \boldsymbol{b}/\Vert\boldsymbol{b}\Vert _2$ this makes the first vector a unit-vector

2. For $j=1,2,\ldots,m$ do

Compute z=Abj next vector spanning the subspace.

For $i=1,2,\dots,j$ do

Compute hij=biTz $\textstyle \parbox{\textwidth}{compute the projection of new
vector $\boldsymbol{z}$\space onto already calculated orthonormal vectors $\boldsymbol{b_i}$ .}$

Compute z=z-hijbi $\textstyle \parbox{\textwidth}{subtract the projections to obtain
the linear i...
... orthogonal to the before
calculated orthonormal vectors $\boldsymbol{b_i}$ .}$

Compute $h_{j+1,j}=\Vert\boldsymbol{z}\Vert _2$ and bj+1=z/hj+1,j make bj+1 a unit vector.

The computed basis Bm is orthonormal and the $m\times m$ upper Hessenberg matrix Hm, formed by the coefficients hij satisfies the relationship
\begin{gather}\boldsymbol{AB_m}=\boldsymbol{B_mH_m}+h_{m+1,m}\boldsymbol{b_{m+1}e_m}^T.
\end{gather}




Christoph Wasshuber