public interface tgsna
TGSNA estimates reciprocal condition numbers for specified
eigenvalues and/or eigenvectors of a matrix pair (A, B).
(A, B) must be in generalized Schur canonical form, that is, A and
B are both upper triangular.
Subroutines
Arguments
| Type |
Intent | Optional | Attributes |
|
Name |
|
|
character(len=1),
|
intent(in) |
|
|
:: |
job |
|
|
character(len=1),
|
intent(in) |
|
|
:: |
howmny |
|
|
logical(kind=lk),
|
intent(in) |
|
|
:: |
select(*) |
|
|
integer(kind=ilp),
|
intent(in) |
|
|
:: |
n |
|
|
complex(kind=sp),
|
intent(in) |
|
|
:: |
a(lda,*) |
|
|
integer(kind=ilp),
|
intent(in) |
|
|
:: |
lda |
|
|
complex(kind=sp),
|
intent(in) |
|
|
:: |
b(ldb,*) |
|
|
integer(kind=ilp),
|
intent(in) |
|
|
:: |
ldb |
|
|
complex(kind=sp),
|
intent(in) |
|
|
:: |
vl(ldvl,*) |
|
|
integer(kind=ilp),
|
intent(in) |
|
|
:: |
ldvl |
|
|
complex(kind=sp),
|
intent(in) |
|
|
:: |
vr(ldvr,*) |
|
|
integer(kind=ilp),
|
intent(in) |
|
|
:: |
ldvr |
|
|
real(kind=sp),
|
intent(out) |
|
|
:: |
s(*) |
|
|
real(kind=sp),
|
intent(out) |
|
|
:: |
dif(*) |
|
|
integer(kind=ilp),
|
intent(in) |
|
|
:: |
mm |
|
|
integer(kind=ilp),
|
intent(out) |
|
|
:: |
m |
|
|
complex(kind=sp),
|
intent(out) |
|
|
:: |
work(*) |
|
|
integer(kind=ilp),
|
intent(in) |
|
|
:: |
lwork |
|
|
integer(kind=ilp),
|
intent(out) |
|
|
:: |
iwork(*) |
|
|
integer(kind=ilp),
|
intent(out) |
|
|
:: |
info |
|
Arguments
| Type |
Intent | Optional | Attributes |
|
Name |
|
|
character(len=1),
|
intent(in) |
|
|
:: |
job |
|
|
character(len=1),
|
intent(in) |
|
|
:: |
howmny |
|
|
logical(kind=lk),
|
intent(in) |
|
|
:: |
select(*) |
|
|
integer(kind=ilp),
|
intent(in) |
|
|
:: |
n |
|
|
real(kind=dp),
|
intent(in) |
|
|
:: |
a(lda,*) |
|
|
integer(kind=ilp),
|
intent(in) |
|
|
:: |
lda |
|
|
real(kind=dp),
|
intent(in) |
|
|
:: |
b(ldb,*) |
|
|
integer(kind=ilp),
|
intent(in) |
|
|
:: |
ldb |
|
|
real(kind=dp),
|
intent(in) |
|
|
:: |
vl(ldvl,*) |
|
|
integer(kind=ilp),
|
intent(in) |
|
|
:: |
ldvl |
|
|
real(kind=dp),
|
intent(in) |
|
|
:: |
vr(ldvr,*) |
|
|
integer(kind=ilp),
|
intent(in) |
|
|
:: |
ldvr |
|
|
real(kind=dp),
|
intent(out) |
|
|
:: |
s(*) |
|
|
real(kind=dp),
|
intent(out) |
|
|
:: |
dif(*) |
|
|
integer(kind=ilp),
|
intent(in) |
|
|
:: |
mm |
|
|
integer(kind=ilp),
|
intent(out) |
|
|
:: |
m |
|
|
real(kind=dp),
|
intent(out) |
|
|
:: |
work(*) |
|
|
integer(kind=ilp),
|
intent(in) |
|
|
:: |
lwork |
|
|
integer(kind=ilp),
|
intent(out) |
|
|
:: |
iwork(*) |
|
|
integer(kind=ilp),
|
intent(out) |
|
|
:: |
info |
|
Arguments
| Type |
Intent | Optional | Attributes |
|
Name |
|
|
character(len=1),
|
intent(in) |
|
|
:: |
job |
|
|
character(len=1),
|
intent(in) |
|
|
:: |
howmny |
|
|
logical(kind=lk),
|
intent(in) |
|
|
:: |
select(*) |
|
|
integer(kind=ilp),
|
intent(in) |
|
|
:: |
n |
|
|
real(kind=sp),
|
intent(in) |
|
|
:: |
a(lda,*) |
|
|
integer(kind=ilp),
|
intent(in) |
|
|
:: |
lda |
|
|
real(kind=sp),
|
intent(in) |
|
|
:: |
b(ldb,*) |
|
|
integer(kind=ilp),
|
intent(in) |
|
|
:: |
ldb |
|
|
real(kind=sp),
|
intent(in) |
|
|
:: |
vl(ldvl,*) |
|
|
integer(kind=ilp),
|
intent(in) |
|
|
:: |
ldvl |
|
|
real(kind=sp),
|
intent(in) |
|
|
:: |
vr(ldvr,*) |
|
|
integer(kind=ilp),
|
intent(in) |
|
|
:: |
ldvr |
|
|
real(kind=sp),
|
intent(out) |
|
|
:: |
s(*) |
|
|
real(kind=sp),
|
intent(out) |
|
|
:: |
dif(*) |
|
|
integer(kind=ilp),
|
intent(in) |
|
|
:: |
mm |
|
|
integer(kind=ilp),
|
intent(out) |
|
|
:: |
m |
|
|
real(kind=sp),
|
intent(out) |
|
|
:: |
work(*) |
|
|
integer(kind=ilp),
|
intent(in) |
|
|
:: |
lwork |
|
|
integer(kind=ilp),
|
intent(out) |
|
|
:: |
iwork(*) |
|
|
integer(kind=ilp),
|
intent(out) |
|
|
:: |
info |
|
Arguments
| Type |
Intent | Optional | Attributes |
|
Name |
|
|
character(len=1),
|
intent(in) |
|
|
:: |
job |
|
|
character(len=1),
|
intent(in) |
|
|
:: |
howmny |
|
|
logical(kind=lk),
|
intent(in) |
|
|
:: |
select(*) |
|
|
integer(kind=ilp),
|
intent(in) |
|
|
:: |
n |
|
|
complex(kind=dp),
|
intent(in) |
|
|
:: |
a(lda,*) |
|
|
integer(kind=ilp),
|
intent(in) |
|
|
:: |
lda |
|
|
complex(kind=dp),
|
intent(in) |
|
|
:: |
b(ldb,*) |
|
|
integer(kind=ilp),
|
intent(in) |
|
|
:: |
ldb |
|
|
complex(kind=dp),
|
intent(in) |
|
|
:: |
vl(ldvl,*) |
|
|
integer(kind=ilp),
|
intent(in) |
|
|
:: |
ldvl |
|
|
complex(kind=dp),
|
intent(in) |
|
|
:: |
vr(ldvr,*) |
|
|
integer(kind=ilp),
|
intent(in) |
|
|
:: |
ldvr |
|
|
real(kind=dp),
|
intent(out) |
|
|
:: |
s(*) |
|
|
real(kind=dp),
|
intent(out) |
|
|
:: |
dif(*) |
|
|
integer(kind=ilp),
|
intent(in) |
|
|
:: |
mm |
|
|
integer(kind=ilp),
|
intent(out) |
|
|
:: |
m |
|
|
complex(kind=dp),
|
intent(out) |
|
|
:: |
work(*) |
|
|
integer(kind=ilp),
|
intent(in) |
|
|
:: |
lwork |
|
|
integer(kind=ilp),
|
intent(out) |
|
|
:: |
iwork(*) |
|
|
integer(kind=ilp),
|
intent(out) |
|
|
:: |
info |
|
Module Procedures