LinearAlgebra[Generic]
HessenbergForm
compute the Hessenberg form of a square Matrix
Calling Sequence
Parameters
Description
Examples
HessenbergForm[F](A)
HessenbergForm[F](A,output=out)
F
-
a table or module, the domain of computation, a field
A
square Matrix of values in F
out
one of H, U or a list containing one or more of these names
HessenbergForm[F](A) returns the upper Hessenberg form H of A.
Given an n x n Matrix A of elements in a field F, the algorithm converts a copy of A into upper Hessenberg form H using O(n^3) operations in F. The algorithm requires that F be a field and should only be used if F is finite as there is severe expression swell in computing H.
The (indexed) parameter F, which specifies the domain of computation, a field, must be a Maple table/module which has the following values/exports:
F[`0`]: a constant for the zero of the ring F
F[`1`]: a constant for the (multiplicative) identity of F
F[`+`]: a procedure for adding elements of F (nary)
F[`-`]: a procedure for negating and subtracting elements of F (unary and binary)
F[`*`]: a procedure for multiplying two elements of F (commutative)
F[`/`]: a procedure for dividing two elements of F
F[`=`]: a boolean procedure for testing if two elements in F are equal
with⁡LinearAlgebraGeneric:
Q`0`,Q`1`,Q`+`,Q`-`,Q`*`,Q`/`,Q`=`≔0,1,`+`,`-`,`*`,`/`,`=`:
A≔Matrix⁡2,−7,−3,4,1,−3,−4,5,−7,10,5,−7,−7,10,5,−7
A≔2−7−341−3−45−7105−7−7105−7
H≔HessenbergFormQ⁡A
H≔2−14141−10150−465280000
H,U≔HessenbergFormQ⁡A,output=H,U
H,U≔2−14141−10150−465280000,10000100071000−11
MatrixMatrixMultiplyQ⁡MatrixMatrixMultiplyQ⁡U,A,MatrixInverseQ⁡U
2−14141−10150−465280000
See Also
Hessenberg Form
LinearAlgebra[Generic][HessenbergAlgorithm]
LinearAlgebra[Generic][MatrixMatrixMultiply]
LinearAlgebra[HessenbergForm]
Download Help Document