fortran-lapack
Loading...
Searching...
No Matches
la_lapack::bbcsd Interface Reference

BBCSD computes the CS decomposition of a unitary matrix in bidiagonal-block form. More...

Public Member Functions

 la_cbbcsd
 
 la_dbbcsd
 
 la_qbbcsd
 
 la_sbbcsd
 
 la_wbbcsd
 
 la_zbbcsd
 

Detailed Description

BBCSD computes the CS decomposition of a unitary matrix in bidiagonal-block form.

\[ \renewcommand\arraystretch{1.3} \left[ \begin{array}{c|ccc} B_{11} & B_{12} & 0 & 0 \\ 0 & 0 & -I & 0 \\ \hline B_{21} & B_{22} & 0 & 0 \\ 0 & 0 & 0 & I \\ C & -S & 0 & 0 \end{array} \right] = \left[ \begin{array}{c|c} U_1 & 0 \\ \hline 0 & U_2 \end{array} \right] \left[ \begin{array}{c|ccc} 0 & 0 & -I & 0 \\ \hline S & C & 0 & 0 \\ 0 & 0 & 0 & I \end{array} \right] \left[ \begin{array}{c|c} V_1^H & 0 \\ \hline 0 & V_2^H \end{array} \right] \]

X is \(M \times M\), its top-left block is \(P \times Q\), and \(Q\) must be no larger than \(P\), \(M-P\), or \(M-Q\). (If \(Q\) is not the smallest index, then X must be transposed and/or permuted. This can be done in constant time using the TRANS and SIGNS options. See CUNCSD for details.)

The bidiagonal matrices \(B_{11}\), \(B_{12}\), \(B_{21}\), and \(B_{22}\) are represented implicitly by angles \(\theta(1:Q)\) and \(\phi(1:Q-1)\).

The unitary matrices \(U_1\), \(U_2\), \(V_1^T\), and \(V_2^T\) are input/output.

The input matrices are pre- or post-multiplied by the appropriate singular vector matrices.

Member Function/Subroutine Documentation

◆ la_cbbcsd()

la_lapack::bbcsd::la_cbbcsd

◆ la_dbbcsd()

la_lapack::bbcsd::la_dbbcsd

◆ la_qbbcsd()

la_lapack::bbcsd::la_qbbcsd

◆ la_sbbcsd()

la_lapack::bbcsd::la_sbbcsd

◆ la_wbbcsd()

la_lapack::bbcsd::la_wbbcsd

◆ la_zbbcsd()

la_lapack::bbcsd::la_zbbcsd

The documentation for this interface was generated from the following file: