UNGTSQR_ROW: generates an M-by-N complex matrix Q_out with orthonormal columns from the output of CLATSQR. These N orthonormal columns are the first N columns of a product of complex unitary matrices Q(k)_in of order M, which are returned by CLATSQR in a special format. Q_out = first_N_columns_of( Q(1)_in * Q(2)_in * ... * Q(k)_in ). The input matrices Q(k)_in are stored in row and column blocks in A. See the documentation of CLATSQR for more details on the format of Q(k)_in, where each Q(k)_in is represented by block Householder transformations. This routine calls an auxiliary routine CLARFB_GETT, where the computation is performed on each individual block. The algorithm first sweeps NB-sized column blocks from the right to left starting in the bottom row block and continues to the top row block (hence _ROW in the routine name). This sweep is in reverse order of the order in which CLATSQR generates the output blocks.
More...
|
pure subroutine | cungtsqr_row (m, n, mb, nb, a, lda, t, ldt, work, lwork, info) |
|
| la_cungtsqr_row |
|
| la_wungtsqr_row |
|
pure subroutine | zungtsqr_row (m, n, mb, nb, a, lda, t, ldt, work, lwork, info) |
|
| la_zungtsqr_row |
|
UNGTSQR_ROW: generates an M-by-N complex matrix Q_out with orthonormal columns from the output of CLATSQR. These N orthonormal columns are the first N columns of a product of complex unitary matrices Q(k)_in of order M, which are returned by CLATSQR in a special format. Q_out = first_N_columns_of( Q(1)_in * Q(2)_in * ... * Q(k)_in ). The input matrices Q(k)_in are stored in row and column blocks in A. See the documentation of CLATSQR for more details on the format of Q(k)_in, where each Q(k)_in is represented by block Householder transformations. This routine calls an auxiliary routine CLARFB_GETT, where the computation is performed on each individual block. The algorithm first sweeps NB-sized column blocks from the right to left starting in the bottom row block and continues to the top row block (hence _ROW in the routine name). This sweep is in reverse order of the order in which CLATSQR generates the output blocks.
◆ cungtsqr_row()
pure subroutine la_lapack::ungtsqr_row::cungtsqr_row |
( |
integer(ilp), intent(in) |
m, |
|
|
integer(ilp), intent(in) |
n, |
|
|
integer(ilp), intent(in) |
mb, |
|
|
integer(ilp), intent(in) |
nb, |
|
|
complex(sp), dimension(lda,*), intent(inout) |
a, |
|
|
integer(ilp), intent(in) |
lda, |
|
|
complex(sp), dimension(ldt,*), intent(in) |
t, |
|
|
integer(ilp), intent(in) |
ldt, |
|
|
complex(sp), dimension(*), intent(out) |
work, |
|
|
integer(ilp), intent(in) |
lwork, |
|
|
integer(ilp), intent(out) |
info |
|
) |
| |
◆ la_cungtsqr_row()
la_lapack::ungtsqr_row::la_cungtsqr_row |
◆ la_wungtsqr_row()
la_lapack::ungtsqr_row::la_wungtsqr_row |
◆ la_zungtsqr_row()
la_lapack::ungtsqr_row::la_zungtsqr_row |
◆ zungtsqr_row()
pure subroutine la_lapack::ungtsqr_row::zungtsqr_row |
( |
integer(ilp), intent(in) |
m, |
|
|
integer(ilp), intent(in) |
n, |
|
|
integer(ilp), intent(in) |
mb, |
|
|
integer(ilp), intent(in) |
nb, |
|
|
complex(dp), dimension(lda,*), intent(inout) |
a, |
|
|
integer(ilp), intent(in) |
lda, |
|
|
complex(dp), dimension(ldt,*), intent(in) |
t, |
|
|
integer(ilp), intent(in) |
ldt, |
|
|
complex(dp), dimension(*), intent(out) |
work, |
|
|
integer(ilp), intent(in) |
lwork, |
|
|
integer(ilp), intent(out) |
info |
|
) |
| |
The documentation for this interface was generated from the following file: