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

TREVC3: computes some or all of the right and/or left eigenvectors of a complex upper triangular matrix T. Matrices of this type are produced by the Schur factorization of a complex general matrix: A = Q*T*Q**H, as computed by CHSEQR. The right eigenvector x and the left eigenvector y of T corresponding to an eigenvalue w are defined by: T*x = w*x, (y**H)*T = w*(y**H) where y**H denotes the conjugate transpose of the vector y. The eigenvalues are not input to this routine, but are read directly from the diagonal of T. This routine returns the matrices X and/or Y of right and left eigenvectors of T, or the products Q*X and/or Q*Y, where Q is an input matrix. If Q is the unitary factor that reduces a matrix A to Schur form T, then Q*X and Q*Y are the matrices of right and left eigenvectors of A. This uses a Level 3 BLAS version of the back transformation. More...

Public Member Functions

pure subroutine ctrevc3 (side, howmny, select, n, t, ldt, vl, ldvl, vr, ldvr, mm, m, work, lwork, rwork, lrwork, info)
 
 la_ctrevc3
 
pure subroutine dtrevc3 (side, howmny, select, n, t, ldt, vl, ldvl, vr, ldvr, mm, m, work, lwork, info)
 
 la_dtrevc3
 
 la_qtrevc3
 
pure subroutine strevc3 (side, howmny, select, n, t, ldt, vl, ldvl, vr, ldvr, mm, m, work, lwork, info)
 
 la_strevc3
 
 la_wtrevc3
 
pure subroutine ztrevc3 (side, howmny, select, n, t, ldt, vl, ldvl, vr, ldvr, mm, m, work, lwork, rwork, lrwork, info)
 
 la_ztrevc3
 

Detailed Description

TREVC3: computes some or all of the right and/or left eigenvectors of a complex upper triangular matrix T. Matrices of this type are produced by the Schur factorization of a complex general matrix: A = Q*T*Q**H, as computed by CHSEQR. The right eigenvector x and the left eigenvector y of T corresponding to an eigenvalue w are defined by: T*x = w*x, (y**H)*T = w*(y**H) where y**H denotes the conjugate transpose of the vector y. The eigenvalues are not input to this routine, but are read directly from the diagonal of T. This routine returns the matrices X and/or Y of right and left eigenvectors of T, or the products Q*X and/or Q*Y, where Q is an input matrix. If Q is the unitary factor that reduces a matrix A to Schur form T, then Q*X and Q*Y are the matrices of right and left eigenvectors of A. This uses a Level 3 BLAS version of the back transformation.

Member Function/Subroutine Documentation

◆ ctrevc3()

pure subroutine la_lapack::trevc3::ctrevc3 ( character, intent(in)  side,
character, intent(in)  howmny,
logical(lk), dimension(*), intent(in)  select,
integer(ilp), intent(in)  n,
complex(sp), dimension(ldt,*), intent(inout)  t,
integer(ilp), intent(in)  ldt,
complex(sp), dimension(ldvl,*), intent(inout)  vl,
integer(ilp), intent(in)  ldvl,
complex(sp), dimension(ldvr,*), intent(inout)  vr,
integer(ilp), intent(in)  ldvr,
integer(ilp), intent(in)  mm,
integer(ilp), intent(out)  m,
complex(sp), dimension(*), intent(out)  work,
integer(ilp), intent(in)  lwork,
real(sp), dimension(*), intent(out)  rwork,
integer(ilp), intent(in)  lrwork,
integer(ilp), intent(out)  info 
)

◆ dtrevc3()

pure subroutine la_lapack::trevc3::dtrevc3 ( character, intent(in)  side,
character, intent(in)  howmny,
logical(lk), dimension(*), intent(inout)  select,
integer(ilp), intent(in)  n,
real(dp), dimension(ldt,*), intent(in)  t,
integer(ilp), intent(in)  ldt,
real(dp), dimension(ldvl,*), intent(inout)  vl,
integer(ilp), intent(in)  ldvl,
real(dp), dimension(ldvr,*), intent(inout)  vr,
integer(ilp), intent(in)  ldvr,
integer(ilp), intent(in)  mm,
integer(ilp), intent(out)  m,
real(dp), dimension(*), intent(out)  work,
integer(ilp), intent(in)  lwork,
integer(ilp), intent(out)  info 
)

◆ la_ctrevc3()

la_lapack::trevc3::la_ctrevc3

◆ la_dtrevc3()

la_lapack::trevc3::la_dtrevc3

◆ la_qtrevc3()

la_lapack::trevc3::la_qtrevc3

◆ la_strevc3()

la_lapack::trevc3::la_strevc3

◆ la_wtrevc3()

la_lapack::trevc3::la_wtrevc3

◆ la_ztrevc3()

la_lapack::trevc3::la_ztrevc3

◆ strevc3()

pure subroutine la_lapack::trevc3::strevc3 ( character, intent(in)  side,
character, intent(in)  howmny,
logical(lk), dimension(*), intent(inout)  select,
integer(ilp), intent(in)  n,
real(sp), dimension(ldt,*), intent(in)  t,
integer(ilp), intent(in)  ldt,
real(sp), dimension(ldvl,*), intent(inout)  vl,
integer(ilp), intent(in)  ldvl,
real(sp), dimension(ldvr,*), intent(inout)  vr,
integer(ilp), intent(in)  ldvr,
integer(ilp), intent(in)  mm,
integer(ilp), intent(out)  m,
real(sp), dimension(*), intent(out)  work,
integer(ilp), intent(in)  lwork,
integer(ilp), intent(out)  info 
)

◆ ztrevc3()

pure subroutine la_lapack::trevc3::ztrevc3 ( character, intent(in)  side,
character, intent(in)  howmny,
logical(lk), dimension(*), intent(in)  select,
integer(ilp), intent(in)  n,
complex(dp), dimension(ldt,*), intent(inout)  t,
integer(ilp), intent(in)  ldt,
complex(dp), dimension(ldvl,*), intent(inout)  vl,
integer(ilp), intent(in)  ldvl,
complex(dp), dimension(ldvr,*), intent(inout)  vr,
integer(ilp), intent(in)  ldvr,
integer(ilp), intent(in)  mm,
integer(ilp), intent(out)  m,
complex(dp), dimension(*), intent(out)  work,
integer(ilp), intent(in)  lwork,
real(dp), dimension(*), intent(out)  rwork,
integer(ilp), intent(in)  lrwork,
integer(ilp), intent(out)  info 
)

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