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

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...

Public Member Functions

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
 

Detailed Description

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.

Member Function/Subroutine Documentation

◆ 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: