Home | History | Annotate | Download | only in Eigenvalues

Lines Matching refs:matrix

32   * \brief Reduces a square matrix to Hessenberg form by an orthogonal similarity transformation
34 * \tparam _MatrixType the type of the matrix of which we are computing the Hessenberg decomposition
36 * This class performs an Hessenberg decomposition of a matrix \f$ A \f$. In
38 * matrix \f$ Q \f$ and a Hessenberg matrix \f$ H \f$ such that \f$ A = Q H
39 * Q^T \f$. An orthogonal matrix is a matrix whose inverse equals its
40 * transpose (\f$ Q^{-1} = Q^T \f$). A Hessenberg matrix has zeros below the
42 * of a complex matrix is \f$ A = Q H Q^* \f$ with \f$ Q \f$ unitary (that is,
46 * given matrix. Alternatively, you can use the
82 typedef Matrix<Scalar, SizeMinusOne, 1, Options & ~RowMajor, MaxSizeMinusOne, 1> CoeffVectorType;
91 * \param [in] size The size of the matrix whose Hessenberg decomposition will be computed.
109 /** \brief Constructor; computes Hessenberg decomposition of given matrix.
111 * \param[in] matrix Square matrix whose Hessenberg decomposition is to be computed.
118 HessenbergDecomposition(const MatrixType& matrix)
119 : m_matrix(matrix),
120 m_temp(matrix.rows()),
123 if(matrix.rows()<2)
128 m_hCoeffs.resize(matrix.rows()-1,1);
133 /** \brief Computes Hessenberg decomposition of given matrix.
135 * \param[in] matrix Square matrix whose Hessenberg decomposition is to be computed.
139 * matrix successively in the required form using Householder reflections
140 * (see, e.g., Algorithm 7.4.2 in Golub \& Van Loan, <i>%Matrix
142 * denotes the size of the given matrix.
150 HessenbergDecomposition& compute(const MatrixType& matrix)
152 m_matrix = matrix;
153 if(matrix.rows()<2)
158 m_hCoeffs.resize(matrix.rows()-1,1);
170 * before to compute the Hessenberg decomposition of a matrix.
172 * The Householder coefficients allow the reconstruction of the matrix
185 * \returns a const reference to a matrix with the internal representation
190 * before to compute the Hessenberg decomposition of a matrix.
192 * The returned matrix contains the following information:
193 * - the upper part and lower sub-diagonal represent the Hessenberg matrix H
196 * allows to reconstruct the matrix Q as
203 * with M the matrix returned by this function.
218 /** \brief Reconstructs the orthogonal matrix Q in the decomposition
220 * \returns object representing the matrix Q
224 * before to compute the Hessenberg decomposition of a matrix.
227 * HouseholderSequence. You can either apply it directly to a matrix or
228 * you can convert it to a matrix of type #MatrixType.
240 /** \brief Constructs the Hessenberg matrix H in the decomposition
242 * \returns expression object representing the matrix H
246 * before to compute the Hessenberg decomposition of a matrix.
248 * The object returned by this function constructs the Hessenberg matrix H
249 * when it is assigned to a matrix or otherwise evaluated. The matrix H is
250 * constructed from the packed matrix as returned by packedMatrix(): The
251 * upper part (including the subdiagonal) of the packed matrix contains
252 * the matrix H. It may sometimes be better to directly use the packed
253 * matrix instead of constructing the matrix H.
268 typedef Matrix<Scalar, 1, Size, Options | RowMajor, 1, MaxSize> VectorType;
282 * \param matA the input selfadjoint matrix
287 * Implemented from Golub's "%Matrix Computations", algorithm 8.3.1.
327 * \tparam MatrixType type of matrix in the Hessenberg decomposition
329 * Objects of this type represent the Hessenberg matrix in the Hessenberg
330 * decomposition of some matrix. The object holds a reference to the
348 /** \brief Hessenberg matrix in decomposition.
350 * \param[out] result Hessenberg matrix in decomposition \p hess which