@@ -13,26 +13,26 @@ module la_lapack
13
13
public
14
14
15
15
!> BBCSD: computes the CS decomposition of a unitary matrix in
16
- !> bidiagonal-block form,
17
- !> [ B11 | B12 0 0 ]
18
- !> [ 0 | 0 -I 0 ]
19
- !> X = [----------------]
20
- !> [ B21 | B22 0 0 ]
21
- !> [ 0 | 0 0 I ]
22
- !> [ C | -S 0 0 ]
23
- !> [ U1 | ] [ 0 | 0 -I 0 ] [ V1 | ]**H
24
- !> = [---------] [---------------] [---------] .
25
- !> [ | U2 ] [ S | C 0 0 ] [ | V2 ]
26
- !> [ 0 | 0 0 I ]
27
- !> X is M-by-M, its top-left block is P-by-Q, and Q must be no larger
28
- !> than P, M-P, or M-Q. (If Q is not the smallest index, then X must be
29
- !> transposed and/or permuted. This can be done in constant time using
30
- !> the TRANS and SIGNS options. See CUNCSD for details.)
31
- !> The bidiagonal matrices B11, B12, B21, and B22 are represented
32
- !> implicitly by angles THETA(1:Q) and PHI(1:Q-1).
33
- !> The unitary matrices U1, U2, V1T, and V2T are input/output.
34
- !> The input matrices are pre- or post-multiplied by the appropriate
35
- !> singular vector matrices.
16
+ !! bidiagonal-block form,
17
+ !! [ B11 | B12 0 0 ]
18
+ !! [ 0 | 0 -I 0 ]
19
+ !! X = [----------------]
20
+ !! [ B21 | B22 0 0 ]
21
+ !! [ 0 | 0 0 I ]
22
+ !! [ C | -S 0 0 ]
23
+ !! [ U1 | ] [ 0 | 0 -I 0 ] [ V1 | ]**H
24
+ !! = [---------] [---------------] [---------] .
25
+ !! [ | U2 ] [ S | C 0 0 ] [ | V2 ]
26
+ !! [ 0 | 0 0 I ]
27
+ !! X is M-by-M, its top-left block is P-by-Q, and Q must be no larger
28
+ !! than P, M-P, or M-Q. (If Q is not the smallest index, then X must be
29
+ !! transposed and/or permuted. This can be done in constant time using
30
+ !! the TRANS and SIGNS options. See CUNCSD for details.)
31
+ !! The bidiagonal matrices B11, B12, B21, and B22 are represented
32
+ !! implicitly by angles THETA(1:Q) and PHI(1:Q-1).
33
+ !! The unitary matrices U1, U2, V1T, and V2T are input/output.
34
+ !! The input matrices are pre- or post-multiplied by the appropriate
35
+ !! singular vector matrices.
36
36
interface bbcsd
37
37
#ifdef LA_EXTERNAL_LAPACK
38
38
pure subroutine cbbcsd(jobu1,jobu2,jobv1t,jobv2t,trans,m,p,q,theta,phi, &
0 commit comments