TGEXC: reorders the generalized Schur decomposition of a complex matrix pair (A,B), using an unitary equivalence transformation (A, B) := Q * (A, B) * Z**H, so that the diagonal block of (A, B) with row index IFST is moved to row ILST. (A, B) must be in generalized Schur canonical form, that is, A and B are both upper triangular. Optionally, the matrices Q and Z of generalized Schur vectors are updated. Q(in) * A(in) * Z(in)**H = Q(out) * A(out) * Z(out)**H Q(in) * B(in) * Z(in)**H = Q(out) * B(out) * Z(out)**H.
More...
|
pure subroutine | ctgexc (wantq, wantz, n, a, lda, b, ldb, q, ldq, z, ldz, ifst, ilst, info) |
|
| la_ctgexc |
|
pure subroutine | dtgexc (wantq, wantz, n, a, lda, b, ldb, q, ldq, z, ldz, ifst, ilst, work, lwork, info) |
|
| la_dtgexc |
|
| la_qtgexc |
|
pure subroutine | stgexc (wantq, wantz, n, a, lda, b, ldb, q, ldq, z, ldz, ifst, ilst, work, lwork, info) |
|
| la_stgexc |
|
| la_wtgexc |
|
pure subroutine | ztgexc (wantq, wantz, n, a, lda, b, ldb, q, ldq, z, ldz, ifst, ilst, info) |
|
| la_ztgexc |
|
TGEXC: reorders the generalized Schur decomposition of a complex matrix pair (A,B), using an unitary equivalence transformation (A, B) := Q * (A, B) * Z**H, so that the diagonal block of (A, B) with row index IFST is moved to row ILST. (A, B) must be in generalized Schur canonical form, that is, A and B are both upper triangular. Optionally, the matrices Q and Z of generalized Schur vectors are updated. Q(in) * A(in) * Z(in)**H = Q(out) * A(out) * Z(out)**H Q(in) * B(in) * Z(in)**H = Q(out) * B(out) * Z(out)**H.
◆ ctgexc()
pure subroutine la_lapack::tgexc::ctgexc |
( |
logical(lk), intent(in) |
wantq, |
|
|
logical(lk), intent(in) |
wantz, |
|
|
integer(ilp), intent(in) |
n, |
|
|
complex(sp), dimension(lda,*), intent(inout) |
a, |
|
|
integer(ilp), intent(in) |
lda, |
|
|
complex(sp), dimension(ldb,*), intent(inout) |
b, |
|
|
integer(ilp), intent(in) |
ldb, |
|
|
complex(sp), dimension(ldq,*), intent(inout) |
q, |
|
|
integer(ilp), intent(in) |
ldq, |
|
|
complex(sp), dimension(ldz,*), intent(inout) |
z, |
|
|
integer(ilp), intent(in) |
ldz, |
|
|
integer(ilp), intent(in) |
ifst, |
|
|
integer(ilp), intent(inout) |
ilst, |
|
|
integer(ilp), intent(out) |
info |
|
) |
| |
◆ dtgexc()
pure subroutine la_lapack::tgexc::dtgexc |
( |
logical(lk), intent(in) |
wantq, |
|
|
logical(lk), intent(in) |
wantz, |
|
|
integer(ilp), intent(in) |
n, |
|
|
real(dp), dimension(lda,*), intent(inout) |
a, |
|
|
integer(ilp), intent(in) |
lda, |
|
|
real(dp), dimension(ldb,*), intent(inout) |
b, |
|
|
integer(ilp), intent(in) |
ldb, |
|
|
real(dp), dimension(ldq,*), intent(inout) |
q, |
|
|
integer(ilp), intent(in) |
ldq, |
|
|
real(dp), dimension(ldz,*), intent(inout) |
z, |
|
|
integer(ilp), intent(in) |
ldz, |
|
|
integer(ilp), intent(inout) |
ifst, |
|
|
integer(ilp), intent(inout) |
ilst, |
|
|
real(dp), dimension(*), intent(out) |
work, |
|
|
integer(ilp), intent(in) |
lwork, |
|
|
integer(ilp), intent(out) |
info |
|
) |
| |
◆ la_ctgexc()
la_lapack::tgexc::la_ctgexc |
◆ la_dtgexc()
la_lapack::tgexc::la_dtgexc |
◆ la_qtgexc()
la_lapack::tgexc::la_qtgexc |
◆ la_stgexc()
la_lapack::tgexc::la_stgexc |
◆ la_wtgexc()
la_lapack::tgexc::la_wtgexc |
◆ la_ztgexc()
la_lapack::tgexc::la_ztgexc |
◆ stgexc()
pure subroutine la_lapack::tgexc::stgexc |
( |
logical(lk), intent(in) |
wantq, |
|
|
logical(lk), intent(in) |
wantz, |
|
|
integer(ilp), intent(in) |
n, |
|
|
real(sp), dimension(lda,*), intent(inout) |
a, |
|
|
integer(ilp), intent(in) |
lda, |
|
|
real(sp), dimension(ldb,*), intent(inout) |
b, |
|
|
integer(ilp), intent(in) |
ldb, |
|
|
real(sp), dimension(ldq,*), intent(inout) |
q, |
|
|
integer(ilp), intent(in) |
ldq, |
|
|
real(sp), dimension(ldz,*), intent(inout) |
z, |
|
|
integer(ilp), intent(in) |
ldz, |
|
|
integer(ilp), intent(inout) |
ifst, |
|
|
integer(ilp), intent(inout) |
ilst, |
|
|
real(sp), dimension(*), intent(out) |
work, |
|
|
integer(ilp), intent(in) |
lwork, |
|
|
integer(ilp), intent(out) |
info |
|
) |
| |
◆ ztgexc()
pure subroutine la_lapack::tgexc::ztgexc |
( |
logical(lk), intent(in) |
wantq, |
|
|
logical(lk), intent(in) |
wantz, |
|
|
integer(ilp), intent(in) |
n, |
|
|
complex(dp), dimension(lda,*), intent(inout) |
a, |
|
|
integer(ilp), intent(in) |
lda, |
|
|
complex(dp), dimension(ldb,*), intent(inout) |
b, |
|
|
integer(ilp), intent(in) |
ldb, |
|
|
complex(dp), dimension(ldq,*), intent(inout) |
q, |
|
|
integer(ilp), intent(in) |
ldq, |
|
|
complex(dp), dimension(ldz,*), intent(inout) |
z, |
|
|
integer(ilp), intent(in) |
ldz, |
|
|
integer(ilp), intent(in) |
ifst, |
|
|
integer(ilp), intent(inout) |
ilst, |
|
|
integer(ilp), intent(out) |
info |
|
) |
| |
The documentation for this interface was generated from the following file: