Jacobi rotation

Jacobi rotation

In numerical linear algebra, a Jacobi rotation is a rotation, "Q""k"ℓ, of a 2-dimensional linear subspace of an "n-"dimensional inner product space, chosen to zero a symmetric pair of off-diagonal entries of an "n"×"n" real symmetric matrix, "A", when applied as a similarity transformation:

: A mapsto Q_{kell}^T A Q_{kell} = A' . ,!

: egin{bmatrix} {*} & & & cdots & & & * \ & ddots & & & & & \ & & a_{kk} & cdots & a_{kell} & & \ vdots & & vdots & ddots & vdots & & vdots \ & & a_{ell k} & cdots & a_{ellell} & & \ & & & & & ddots & \ {*} & & & cdots & & & *end{bmatrix} oegin{bmatrix} {*} & & & cdots & & & * \ & ddots & & & & & \ & & a'_{kk} & cdots & 0 & & \ vdots & & vdots & ddots & vdots & & vdots \ & & 0 & cdots & a'_{ellell} & & \ & & & & & ddots & \ {*} & & & cdots & & & *end{bmatrix}

It is the core operation in the Jacobi eigenvalue algorithm, which is numerically stable and well-suited to implementation on parallel processors.

It is important to note that only rows "k" and ℓ and columns "k" and ℓ of "A" will be affected, and that "A"′ will remain symmetric. Also, an explicit matrix for "Q""k"ℓ is rarely computed; instead, auxiliary values are computed and "A" is updated in an efficient and numerically stable way. However, for reference, we may write the matrix as

: Q_{kell} = egin{bmatrix} 1 & & & & & & \ & ddots & & & & 0 & \ & & c & cdots & s & & \ & & vdots & ddots & vdots & & \ & & -s & cdots & c & & \ & 0 & & & & ddots & \ & & & & & & 1end{bmatrix} .

That is, "Q""k"ℓ is an identity matrix except for four entries, two on the diagonal ("q""kk" and "q"ℓℓ, both equal to "c") and two symmetrically placed off the diagonal ("q""k"ℓ and "Q"ℓ"k", equal to "s" and −"s", respectively). Here "c" = cos ϑ and "s" = sin ϑ for some angle ϑ; but to apply the rotation, the angle itself is not required. Using Kronecker delta notation, the matrix entries can be written

: q_{ij} = delta_{ij} + (delta_{ik}delta_{jk} + delta_{iell}delta_{jell})(c-1) + (delta_{ik}delta_{jell} - delta_{iell}delta_{jk})s . ,!

Suppose "h" is an index other than "k" or ℓ (which must themselves be distinct). Then the similarity update produces, algebraically,

: a'_{hk} = a'_{kh} = c a_{hk} - s a_{hell} ,! : a'_{hell} = a'_{ell h} = c a_{hell} + s a_{hk} ,!

: a'_{kell} = a'_{ell k} = (c^2-s^2)a_{kell} + sc (a_{kk} - a_{ellell}) = 0 ,!

: a'_{kk} = c^2 a_{kk} + s^2 a_{ellell} - 2 s c a_{kell} ,! : a'_{ellell} = c^2 a_{kk} + s^2 a_{ellell} + 2 s c a_{kell} ,!

Numerically stable computation

To determine the quantities needed for the update, we must solve the off-diagonal equation for zero Harv|Golub|Van Loan|1996|loc=§8.4. This implies that

: frac{c^2-s^2}{sc} = frac{a_{ellell} - a_{kk{a_{kell .

Set β to half this quantity,

: eta = frac{a_{ellell} - a_{kk{2 a_{kell .

If "a""k"ℓ is zero we can stop without performing an update, thus we never divide by zero. Let "t" be tan ϑ. Then with a few trigonometric identities we reduce the equation to

: t^2 + 2eta t - 1 = 0 . ,!

For stability we choose the solution

: t = frac{sgn(eta)}{|eta|+sqrt{eta^2+1 .

From this we may obtain "c" and "s" as

: c = frac{1}{sqrt{t^2+1 ,! : s = c t ,!

Although we now could use the algebraic update equations given previously, it may be preferable to rewrite them. Let

: ho= frac{s}{1+c} ,

so that ρ = tan(ϑ/2). Then the revised update equations are

: a'_{hk} = a'_{kh} = a_{hk} - s (a_{hell} + ho a_{hk}) ,! : a'_{hell} = a'_{ell h} = a_{hell} + s (a_{hk} - ho a_{hell}) ,!

: a'_{kell} = a'_{ell k} = 0 ,!

: a'_{kk} = a_{kk} - t a_{k ell} ,! : a'_{ellell} = a_{ellell} + t a_{k ell} ,!

As previously remarked, we need never explicitly compute the rotation angle ϑ. In fact, we can reproduce the symmetric update determined by "Q""k"ℓ by retaining only the three values "k", ℓ, and "t", with "t" set to zero for a null rotation.

See also

* Givens rotation

References

* citation
last1 = Golub
first1 = Gene H.
author1-link = Gene H. Golub
last2 = Van Loan
first2 = Charles F.
author2-link = Charles F. Van Loan
title = Matrix Computations
edition = 3rd
publisher = Johns Hopkins University Press
date = 1996
location = Baltimore
isbn = 978-0-8018-5414-9


Wikimedia Foundation. 2010.

Игры ⚽ Нужно сделать НИР?

Look at other dictionaries:

  • Jacobi eigenvalue algorithm — The Jacobi eigenvalue algorithm is a numerical procedure for the calculation of all eigenvalues and eigenvectors of a real symmetric matrix. Description Let varphi in mathbb{R}, , 1 le k < l le n and let J(varphi, k, l) denote the n imes n matrix …   Wikipedia

  • Jacobi-Rotationsverfahren — Das Jacobi Verfahren (nach Carl Gustav Jacob Jacobi (1846)) ist ein iteratives Verfahren zur numerischen Berechnung aller Eigenwerte und vektoren (kleiner) symmetrischer Matrizen. Inhaltsverzeichnis 1 Beschreibung 2 Klassisches und zyklische… …   Deutsch Wikipedia

  • Jacobi-Verfahren (Eigenwerte) — Das Jacobi Verfahren (nach Carl Gustav Jacob Jacobi (1846)) ist ein iteratives Verfahren zur numerischen Berechnung aller Eigenwerte und vektoren (kleiner) symmetrischer Matrizen. Inhaltsverzeichnis 1 Beschreibung 2 Klassisches und zyklische… …   Deutsch Wikipedia

  • Givens-Rotation — In der linearen Algebra ist eine Givens Rotation (nach Wallace Givens) eine Drehung in einer Ebene, die durch zwei Koordinaten Achsen aufgespannt wird. Manchmal wird dies auch als Jacobi Rotation (nach Carl Gustav Jacobi) bezeichnet. Beschreibung …   Deutsch Wikipedia

  • Carl Gustav Jacob Jacobi — Carl Jacobi Carl Gustav Jacob Jacobi Born December 10, 1804(1804 …   Wikipedia

  • Givens rotation — In numerical linear algebra, a Givens rotation is a rotation in the plane spanned by two coordinates axes. Givens rotations are named after Wallace Givens who introduced them to numerical analysts in the 1950s while he was working at Argonne… …   Wikipedia

  • Masse Fluide En Rotation — Soit un fluide incompressible, autogravitant, en rotation, de masse M , de masse volumique ρ. Le problème est de trouver sa forme. Pour une rotation faible, la solution de Maclaurin (1742) est la bonne : un ellipsoïde de révolution aplati.… …   Wikipédia en Français

  • Hamilton–Jacobi equation — In physics, the Hamilton–Jacobi equation (HJE) is a reformulation of classical mechanics and, thus, equivalent to other formulations such as Newton s laws of motion, Lagrangian mechanics and Hamiltonian mechanics. The Hamilton–Jacobi equation is… …   Wikipedia

  • Masse fluide en rotation — Soit un fluide incompressible, autogravitant, en rotation, de masse M , de masse volumique ρ. Le problème est de trouver sa forme. Pour une rotation faible, la solution de Maclaurin (1742) est la bonne : un ellipsoïde de révolution aplati.… …   Wikipédia en Français

  • Givens-Drehung — In der linearen Algebra ist eine Givens Rotation (nach Wallace Givens) eine Drehung in einer Ebene, die durch zwei Koordinaten Achsen aufgespannt wird. Manchmal wird dies auch als Jacobi Rotation (nach Carl Gustav Jacobi) bezeichnet. Beschreibung …   Deutsch Wikipedia

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”