Maple Professional
Maple Academic
Maple Student Edition
Maple Personal Edition
Maple Player
Maple Player for iPad
MapleSim Professional
MapleSim Academic
Maple T.A. - Testing & Assessment
Maple T.A. MAA Placement Test Suite
Möbius - Online Courseware
Machine Design / Industrial Automation
Aerospace
Vehicle Engineering
Robotics
Power Industries
System Simulation and Analysis
Model development for HIL
Plant Modeling for Control Design
Robotics/Motion Control/Mechatronics
Other Application Areas
Mathematics Education
Engineering Education
High Schools & Two-Year Colleges
Testing & Assessment
Students
Financial Modeling
Operations Research
High Performance Computing
Physics
Live Webinars
Recorded Webinars
Upcoming Events
MaplePrimes
Maplesoft Blog
Maplesoft Membership
Maple Ambassador Program
MapleCloud
Technical Whitepapers
E-Mail Newsletters
Maple Books
Math Matters
Application Center
MapleSim Model Gallery
User Case Studies
Exploring Engineering Fundamentals
Teaching Concepts with Maple
Maplesoft Welcome Center
Teacher Resource Center
Student Help Center
LinearAlgebra[HessenbergForm] - reduce a square Matrix to upper Hessenberg form
Calling Sequence
HessenbergForm(A, out, ip, options, outopts)
Parameters
A
-
square Matrix
out
(optional) equation of the form output = obj where obj is one of 'H', 'Q', or 'NAG', or a list containing one or more of these names; selects result objects to compute
ip
(optional) BooleanOpt(inplace); specifies if output overwrites input
options
(optional); constructor options for the result object(s)
outopts
(optional) equation(s) of the form outputoptions[o] = list where o is one of 'H', 'Q', or 'NAG'; constructor options for the result object(s)
Description
The HessenbergForm(A) function returns a Matrix in upper Hessenberg form. This routine operates in the floating-point domain. Hence, the entries in Matrix A must necessarily be of type complex(numeric).
An upper Hessenberg Matrix has nonzero entries only in the upper triangle and on the first sub-diagonal.
The original Matrix A, the orthogonal Matrix Q, and the upper Hessenberg Matrix H are related by .
If A is complex, then Q is unitary and .
If the Matrix A does not have a floating-point datatype, then a working copy which does is made in agreement with the environment variable UseHardwareFloats.
The output option (out) determines the content of the returned expression sequence.
Depending on what is included in the output option, an expression sequence containing one or both of the factors H (the upper Hessenberg form) and Q (the orthogonal reduction Matrix) can be returned. If output is a list, the objects are returned in the same order as specified in the list.
If NAG is included in the output list, then the returned objects are an expression sequence consisting of a Matrix with the same dimensions as A, followed by a Vector of appropriate dimension. The upper triangle and the first sub-diagonal of the Matrix contain the upper Hessenberg form of A, while the remaining lower portion, along with the returned Vector, contain details of the unitary reduction Matrix.
The inplace option (ip) determines where the result is returned. If given as inplace=true, the result overwrites the first argument. If given as inplace=false, or if this option is not included in the calling sequence, the result is returned in a new Matrix.
The condition inplace=true can be abbreviated to inplace.
The inplace option must be used with caution since, if the operation fails, the original Matrix argument may be corrupted.
The constructor options provide additional information (readonly, shape, storage, order, datatype, and attributes) to the Matrix or Vector constructor that builds the result. These options may also be provided in the form outputoptions[o]=[...], where [...] represents a Maple list. If a constructor option is provided in both the calling sequence directly and in an outputoptions[o] option, the latter takes precedence (regardless of the order).
The following list indicates permissible values for index [o] of outputoptions with their corresponding meaning.
H
upper Hessenberg form
Q
orthogonal reduction Matrix
NAG
NAG format of the reduction
The inplace and constructor options are mutually exclusive.
This function is part of the LinearAlgebra package, and so it can be used in the form HessenbergForm(..) only after executing the command with(LinearAlgebra). However, it can always be accessed through the long form of the command by using LinearAlgebra[HessenbergForm](..).
Examples
See Also
Matrix, type[BooleanOpt], type[complex], type[numeric], Vector
Download Help Document