Orthogonal diagonalization
In linear algebra, an orthogonal diagonalization of a symmetric matrix is a diagonalization by means of an orthogonal change of coordinates.
The following is an orthogonal diagonalization algorithm that diagonalizes a quadratic form q on Rn by means of an orthogonal change of coordinates X = PY.
The X=PY is the required orthogonal change of coordinates, and the diagonal entries of will be the eigenvalues which correspond to the columns of P.