DSHSVD#
Dense Hyperbolic Singular Value Decomposition.
Notes#
The problem is expressed as \(A = U\Sigma V^*\), where \(A\) is rectangular in
general, with \(n\) rows and \(m\) columns. \(U\) is orthogonal with respect to a
signature matrix \(\Omega\), stored in \(D\), \(V\) is orthogonal, \(\Sigma\) is a diagonal
matrix whose diagonal elements are the arguments of DSSolve(). After
solve, \(A\) is overwritten with \(\Sigma\), \(D\) is overwritten with the new signature.
The matrices of left and right singular vectors, \(U\) and \(V\), have size \(n\) and \(m\),
respectively. The number of columns m must be specified via DSHSVDSetDimensions().
If the DS object is in the intermediate state, \(A\) is assumed to be in upper
bidiagonal form (possibly with an arrow) and is stored in compact format
on matrix \(T\). The compact storage is implemented for the square case
only, \(m=n\). The extra row should be interpreted in this case as an extra column.
Used DS matrices#
Implemented methods#
0 - Cross product \(A^*\Omega A\)
See Also#
DS: Direct Solver (or Dense System), DSCreate(), DSSetType(), DSType, DSHSVDSetDimensions(), DSSetCompact()
Level#
beginner
Location#
src/sys/classes/ds/impls/hsvd/dshsvd.c
Index of all DS routines Table of Contents for all manual pages Index of all manual pages