stdlib_lapack_eig_svd_lsq Module



Interfaces

interface

  • public pure module subroutine stdlib_cbbcsd(jobu1, jobu2, jobv1t, jobv2t, trans, m, p, q, theta, phi, u1, ldu1, u2, ldu2, v1t, ldv1t, v2t, ldv2t, b11d, b11e, b12d, b12e, b21d, b21e, b22d, b22e, rwork, lrwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: jobu1
    character(len=1), intent(in) :: jobu2
    character(len=1), intent(in) :: jobv1t
    character(len=1), intent(in) :: jobv2t
    character(len=1), intent(in) :: trans
    integer(kind=ilp), intent(in) :: m
    integer(kind=ilp), intent(in) :: p
    integer(kind=ilp), intent(in) :: q
    real(kind=sp), intent(inout) :: theta(*)
    real(kind=sp), intent(inout) :: phi(*)
    complex(kind=sp), intent(inout) :: u1(ldu1,*)
    integer(kind=ilp), intent(in) :: ldu1
    complex(kind=sp), intent(inout) :: u2(ldu2,*)
    integer(kind=ilp), intent(in) :: ldu2
    complex(kind=sp), intent(inout) :: v1t(ldv1t,*)
    integer(kind=ilp), intent(in) :: ldv1t
    complex(kind=sp), intent(inout) :: v2t(ldv2t,*)
    integer(kind=ilp), intent(in) :: ldv2t
    real(kind=sp), intent(out) :: b11d(*)
    real(kind=sp), intent(out) :: b11e(*)
    real(kind=sp), intent(out) :: b12d(*)
    real(kind=sp), intent(out) :: b12e(*)
    real(kind=sp), intent(out) :: b21d(*)
    real(kind=sp), intent(out) :: b21e(*)
    real(kind=sp), intent(out) :: b22d(*)
    real(kind=sp), intent(out) :: b22e(*)
    real(kind=sp), intent(out) :: rwork(*)
    integer(kind=ilp), intent(in) :: lrwork
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_cbdsqr(uplo, n, ncvt, nru, ncc, d, e, vt, ldvt, u, ldu, c, ldc, rwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: uplo
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: ncvt
    integer(kind=ilp), intent(in) :: nru
    integer(kind=ilp), intent(in) :: ncc
    real(kind=sp), intent(inout) :: d(*)
    real(kind=sp), intent(inout) :: e(*)
    complex(kind=sp), intent(inout) :: vt(ldvt,*)
    integer(kind=ilp), intent(in) :: ldvt
    complex(kind=sp), intent(inout) :: u(ldu,*)
    integer(kind=ilp), intent(in) :: ldu
    complex(kind=sp), intent(inout) :: c(ldc,*)
    integer(kind=ilp), intent(in) :: ldc
    real(kind=sp), intent(out) :: rwork(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_cgbbrd(vect, m, n, ncc, kl, ku, ab, ldab, d, e, q, ldq, pt, ldpt, c, ldc, work, rwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: vect
    integer(kind=ilp), intent(in) :: m
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: ncc
    integer(kind=ilp), intent(in) :: kl
    integer(kind=ilp), intent(in) :: ku
    complex(kind=sp), intent(inout) :: ab(ldab,*)
    integer(kind=ilp), intent(in) :: ldab
    real(kind=sp), intent(out) :: d(*)
    real(kind=sp), intent(out) :: e(*)
    complex(kind=sp), intent(out) :: q(ldq,*)
    integer(kind=ilp), intent(in) :: ldq
    complex(kind=sp), intent(out) :: pt(ldpt,*)
    integer(kind=ilp), intent(in) :: ldpt
    complex(kind=sp), intent(inout) :: c(ldc,*)
    integer(kind=ilp), intent(in) :: ldc
    complex(kind=sp), intent(out) :: work(*)
    real(kind=sp), intent(out) :: rwork(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_cgebak(job, side, n, ilo, ihi, scale, m, v, ldv, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: job
    character(len=1), intent(in) :: side
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: ilo
    integer(kind=ilp), intent(in) :: ihi
    real(kind=sp), intent(in) :: scale(*)
    integer(kind=ilp), intent(in) :: m
    complex(kind=sp), intent(inout) :: v(ldv,*)
    integer(kind=ilp), intent(in) :: ldv
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_cgebal(job, n, a, lda, ilo, ihi, scale, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: job
    integer(kind=ilp), intent(in) :: n
    complex(kind=sp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    integer(kind=ilp), intent(out) :: ilo
    integer(kind=ilp), intent(out) :: ihi
    real(kind=sp), intent(out) :: scale(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_cgebd2(m, n, a, lda, d, e, tauq, taup, work, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: m
    integer(kind=ilp), intent(in) :: n
    complex(kind=sp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    real(kind=sp), intent(out) :: d(*)
    real(kind=sp), intent(out) :: e(*)
    complex(kind=sp), intent(out) :: tauq(*)
    complex(kind=sp), intent(out) :: taup(*)
    complex(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_cgebrd(m, n, a, lda, d, e, tauq, taup, work, lwork, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: m
    integer(kind=ilp), intent(in) :: n
    complex(kind=sp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    real(kind=sp), intent(out) :: d(*)
    real(kind=sp), intent(out) :: e(*)
    complex(kind=sp), intent(out) :: tauq(*)
    complex(kind=sp), intent(out) :: taup(*)
    complex(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_cgees(jobvs, sort, select, n, a, lda, sdim, w, vs, ldvs, work, lwork, rwork, bwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: jobvs
    character(len=1), intent(in) :: sort
    procedure(stdlib_select_c) :: select
    integer(kind=ilp), intent(in) :: n
    complex(kind=sp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    integer(kind=ilp), intent(out) :: sdim
    complex(kind=sp), intent(out) :: w(*)
    complex(kind=sp), intent(out) :: vs(ldvs,*)
    integer(kind=ilp), intent(in) :: ldvs
    complex(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    real(kind=sp), intent(out) :: rwork(*)
    logical(kind=lk), intent(out) :: bwork(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_cgeesx(jobvs, sort, select, sense, n, a, lda, sdim, w, vs, ldvs, rconde, rcondv, work, lwork, rwork, bwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: jobvs
    character(len=1), intent(in) :: sort
    procedure(stdlib_select_c) :: select
    character(len=1), intent(in) :: sense
    integer(kind=ilp), intent(in) :: n
    complex(kind=sp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    integer(kind=ilp), intent(out) :: sdim
    complex(kind=sp), intent(out) :: w(*)
    complex(kind=sp), intent(out) :: vs(ldvs,*)
    integer(kind=ilp), intent(in) :: ldvs
    real(kind=sp), intent(out) :: rconde
    real(kind=sp), intent(out) :: rcondv
    complex(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    real(kind=sp), intent(out) :: rwork(*)
    logical(kind=lk), intent(out) :: bwork(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_cgeev(jobvl, jobvr, n, a, lda, w, vl, ldvl, vr, ldvr, work, lwork, rwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: jobvl
    character(len=1), intent(in) :: jobvr
    integer(kind=ilp), intent(in) :: n
    complex(kind=sp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    complex(kind=sp), intent(out) :: w(*)
    complex(kind=sp), intent(out) :: vl(ldvl,*)
    integer(kind=ilp), intent(in) :: ldvl
    complex(kind=sp), intent(out) :: vr(ldvr,*)
    integer(kind=ilp), intent(in) :: ldvr
    complex(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    real(kind=sp), intent(out) :: rwork(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_cgeevx(balanc, jobvl, jobvr, sense, n, a, lda, w, vl, ldvl, vr, ldvr, ilo, ihi, scale, abnrm, rconde, rcondv, work, lwork, rwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: balanc
    character(len=1), intent(in) :: jobvl
    character(len=1), intent(in) :: jobvr
    character(len=1), intent(in) :: sense
    integer(kind=ilp), intent(in) :: n
    complex(kind=sp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    complex(kind=sp), intent(out) :: w(*)
    complex(kind=sp), intent(out) :: vl(ldvl,*)
    integer(kind=ilp), intent(in) :: ldvl
    complex(kind=sp), intent(out) :: vr(ldvr,*)
    integer(kind=ilp), intent(in) :: ldvr
    integer(kind=ilp), intent(out) :: ilo
    integer(kind=ilp), intent(out) :: ihi
    real(kind=sp), intent(out) :: scale(*)
    real(kind=sp), intent(out) :: abnrm
    real(kind=sp), intent(out) :: rconde(*)
    real(kind=sp), intent(out) :: rcondv(*)
    complex(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    real(kind=sp), intent(out) :: rwork(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_cgehd2(n, ilo, ihi, a, lda, tau, work, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: ilo
    integer(kind=ilp), intent(in) :: ihi
    complex(kind=sp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    complex(kind=sp), intent(out) :: tau(*)
    complex(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_cgehrd(n, ilo, ihi, a, lda, tau, work, lwork, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: ilo
    integer(kind=ilp), intent(in) :: ihi
    complex(kind=sp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    complex(kind=sp), intent(out) :: tau(*)
    complex(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_cgejsv(joba, jobu, jobv, jobr, jobt, jobp, m, n, a, lda, sva, u, ldu, v, ldv, cwork, lwork, rwork, lrwork, iwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: joba
    character(len=1), intent(in) :: jobu
    character(len=1), intent(in) :: jobv
    character(len=1), intent(in) :: jobr
    character(len=1), intent(in) :: jobt
    character(len=1), intent(in) :: jobp
    integer(kind=ilp), intent(in) :: m
    integer(kind=ilp), intent(in) :: n
    complex(kind=sp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    real(kind=sp), intent(out) :: sva(n)
    complex(kind=sp), intent(out) :: u(ldu,*)
    integer(kind=ilp), intent(in) :: ldu
    complex(kind=sp), intent(out) :: v(ldv,*)
    integer(kind=ilp), intent(in) :: ldv
    complex(kind=sp), intent(out) :: cwork(lwork)
    integer(kind=ilp), intent(in) :: lwork
    real(kind=sp), intent(out) :: rwork(lrwork)
    integer(kind=ilp), intent(in) :: lrwork
    integer(kind=ilp), intent(out) :: iwork(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_cgels(trans, m, n, nrhs, a, lda, b, ldb, work, lwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: trans
    integer(kind=ilp), intent(in) :: m
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: nrhs
    complex(kind=sp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    complex(kind=sp), intent(inout) :: b(ldb,*)
    integer(kind=ilp), intent(in) :: ldb
    complex(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_cgelsd(m, n, nrhs, a, lda, b, ldb, s, rcond, rank, work, lwork, rwork, iwork, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: m
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: nrhs
    complex(kind=sp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    complex(kind=sp), intent(inout) :: b(ldb,*)
    integer(kind=ilp), intent(in) :: ldb
    real(kind=sp), intent(out) :: s(*)
    real(kind=sp), intent(in) :: rcond
    integer(kind=ilp), intent(out) :: rank
    complex(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    real(kind=sp), intent(out) :: rwork(*)
    integer(kind=ilp), intent(out) :: iwork(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_cgelss(m, n, nrhs, a, lda, b, ldb, s, rcond, rank, work, lwork, rwork, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: m
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: nrhs
    complex(kind=sp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    complex(kind=sp), intent(inout) :: b(ldb,*)
    integer(kind=ilp), intent(in) :: ldb
    real(kind=sp), intent(out) :: s(*)
    real(kind=sp), intent(in) :: rcond
    integer(kind=ilp), intent(out) :: rank
    complex(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    real(kind=sp), intent(out) :: rwork(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_cgelsy(m, n, nrhs, a, lda, b, ldb, jpvt, rcond, rank, work, lwork, rwork, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: m
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: nrhs
    complex(kind=sp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    complex(kind=sp), intent(inout) :: b(ldb,*)
    integer(kind=ilp), intent(in) :: ldb
    integer(kind=ilp), intent(inout) :: jpvt(*)
    real(kind=sp), intent(in) :: rcond
    integer(kind=ilp), intent(out) :: rank
    complex(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    real(kind=sp), intent(out) :: rwork(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_cgesdd(jobz, m, n, a, lda, s, u, ldu, vt, ldvt, work, lwork, rwork, iwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: jobz
    integer(kind=ilp), intent(in) :: m
    integer(kind=ilp), intent(in) :: n
    complex(kind=sp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    real(kind=sp), intent(out) :: s(*)
    complex(kind=sp), intent(out) :: u(ldu,*)
    integer(kind=ilp), intent(in) :: ldu
    complex(kind=sp), intent(out) :: vt(ldvt,*)
    integer(kind=ilp), intent(in) :: ldvt
    complex(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    real(kind=sp), intent(out) :: rwork(*)
    integer(kind=ilp), intent(out) :: iwork(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_cgesvd(jobu, jobvt, m, n, a, lda, s, u, ldu, vt, ldvt, work, lwork, rwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: jobu
    character(len=1), intent(in) :: jobvt
    integer(kind=ilp), intent(in) :: m
    integer(kind=ilp), intent(in) :: n
    complex(kind=sp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    real(kind=sp), intent(out) :: s(*)
    complex(kind=sp), intent(out) :: u(ldu,*)
    integer(kind=ilp), intent(in) :: ldu
    complex(kind=sp), intent(out) :: vt(ldvt,*)
    integer(kind=ilp), intent(in) :: ldvt
    complex(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    real(kind=sp), intent(out) :: rwork(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_cgesvdq(joba, jobp, jobr, jobu, jobv, m, n, a, lda, s, u, ldu, v, ldv, numrank, iwork, liwork, cwork, lcwork, rwork, lrwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: joba
    character(len=1), intent(in) :: jobp
    character(len=1), intent(in) :: jobr
    character(len=1), intent(in) :: jobu
    character(len=1), intent(in) :: jobv
    integer(kind=ilp), intent(in) :: m
    integer(kind=ilp), intent(in) :: n
    complex(kind=sp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    real(kind=sp), intent(out) :: s(*)
    complex(kind=sp), intent(out) :: u(ldu,*)
    integer(kind=ilp), intent(in) :: ldu
    complex(kind=sp), intent(out) :: v(ldv,*)
    integer(kind=ilp), intent(in) :: ldv
    integer(kind=ilp), intent(out) :: numrank
    integer(kind=ilp), intent(out) :: iwork(*)
    integer(kind=ilp), intent(in) :: liwork
    complex(kind=sp), intent(out) :: cwork(*)
    integer(kind=ilp), intent(inout) :: lcwork
    real(kind=sp), intent(out) :: rwork(*)
    integer(kind=ilp), intent(in) :: lrwork
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_cgesvj(joba, jobu, jobv, m, n, a, lda, sva, mv, v, ldv, cwork, lwork, rwork, lrwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: joba
    character(len=1), intent(in) :: jobu
    character(len=1), intent(in) :: jobv
    integer(kind=ilp), intent(in) :: m
    integer(kind=ilp), intent(in) :: n
    complex(kind=sp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    real(kind=sp), intent(out) :: sva(n)
    integer(kind=ilp), intent(in) :: mv
    complex(kind=sp), intent(inout) :: v(ldv,*)
    integer(kind=ilp), intent(in) :: ldv
    complex(kind=sp), intent(inout) :: cwork(lwork)
    integer(kind=ilp), intent(in) :: lwork
    real(kind=sp), intent(inout) :: rwork(lrwork)
    integer(kind=ilp), intent(in) :: lrwork
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_cgetsls(trans, m, n, nrhs, a, lda, b, ldb, work, lwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: trans
    integer(kind=ilp), intent(in) :: m
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: nrhs
    complex(kind=sp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    complex(kind=sp), intent(inout) :: b(ldb,*)
    integer(kind=ilp), intent(in) :: ldb
    complex(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_cggbak(job, side, n, ilo, ihi, lscale, rscale, m, v, ldv, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: job
    character(len=1), intent(in) :: side
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: ilo
    integer(kind=ilp), intent(in) :: ihi
    real(kind=sp), intent(in) :: lscale(*)
    real(kind=sp), intent(in) :: rscale(*)
    integer(kind=ilp), intent(in) :: m
    complex(kind=sp), intent(inout) :: v(ldv,*)
    integer(kind=ilp), intent(in) :: ldv
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_cggbal(job, n, a, lda, b, ldb, ilo, ihi, lscale, rscale, work, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: job
    integer(kind=ilp), intent(in) :: n
    complex(kind=sp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    complex(kind=sp), intent(inout) :: b(ldb,*)
    integer(kind=ilp), intent(in) :: ldb
    integer(kind=ilp), intent(out) :: ilo
    integer(kind=ilp), intent(out) :: ihi
    real(kind=sp), intent(out) :: lscale(*)
    real(kind=sp), intent(out) :: rscale(*)
    real(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_cgges(jobvsl, jobvsr, sort, selctg, n, a, lda, b, ldb, sdim, alpha, beta, vsl, ldvsl, vsr, ldvsr, work, lwork, rwork, bwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: jobvsl
    character(len=1), intent(in) :: jobvsr
    character(len=1), intent(in) :: sort
    procedure(stdlib_selctg_c) :: selctg
    integer(kind=ilp), intent(in) :: n
    complex(kind=sp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    complex(kind=sp), intent(inout) :: b(ldb,*)
    integer(kind=ilp), intent(in) :: ldb
    integer(kind=ilp), intent(out) :: sdim
    complex(kind=sp), intent(out) :: alpha(*)
    complex(kind=sp), intent(out) :: beta(*)
    complex(kind=sp), intent(out) :: vsl(ldvsl,*)
    integer(kind=ilp), intent(in) :: ldvsl
    complex(kind=sp), intent(out) :: vsr(ldvsr,*)
    integer(kind=ilp), intent(in) :: ldvsr
    complex(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    real(kind=sp), intent(out) :: rwork(*)
    logical(kind=lk), intent(out) :: bwork(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_cgges3(jobvsl, jobvsr, sort, selctg, n, a, lda, b, ldb, sdim, alpha, beta, vsl, ldvsl, vsr, ldvsr, work, lwork, rwork, bwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: jobvsl
    character(len=1), intent(in) :: jobvsr
    character(len=1), intent(in) :: sort
    procedure(stdlib_selctg_c) :: selctg
    integer(kind=ilp), intent(in) :: n
    complex(kind=sp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    complex(kind=sp), intent(inout) :: b(ldb,*)
    integer(kind=ilp), intent(in) :: ldb
    integer(kind=ilp), intent(out) :: sdim
    complex(kind=sp), intent(out) :: alpha(*)
    complex(kind=sp), intent(out) :: beta(*)
    complex(kind=sp), intent(out) :: vsl(ldvsl,*)
    integer(kind=ilp), intent(in) :: ldvsl
    complex(kind=sp), intent(out) :: vsr(ldvsr,*)
    integer(kind=ilp), intent(in) :: ldvsr
    complex(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    real(kind=sp), intent(out) :: rwork(*)
    logical(kind=lk), intent(out) :: bwork(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_cggesx(jobvsl, jobvsr, sort, selctg, sense, n, a, lda, b, ldb, sdim, alpha, beta, vsl, ldvsl, vsr, ldvsr, rconde, rcondv, work, lwork, rwork, iwork, liwork, bwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: jobvsl
    character(len=1), intent(in) :: jobvsr
    character(len=1), intent(in) :: sort
    procedure(stdlib_selctg_c) :: selctg
    character(len=1), intent(in) :: sense
    integer(kind=ilp), intent(in) :: n
    complex(kind=sp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    complex(kind=sp), intent(inout) :: b(ldb,*)
    integer(kind=ilp), intent(in) :: ldb
    integer(kind=ilp), intent(out) :: sdim
    complex(kind=sp), intent(out) :: alpha(*)
    complex(kind=sp), intent(out) :: beta(*)
    complex(kind=sp), intent(out) :: vsl(ldvsl,*)
    integer(kind=ilp), intent(in) :: ldvsl
    complex(kind=sp), intent(out) :: vsr(ldvsr,*)
    integer(kind=ilp), intent(in) :: ldvsr
    real(kind=sp), intent(out) :: rconde(2_ilp)
    real(kind=sp), intent(out) :: rcondv(2_ilp)
    complex(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    real(kind=sp), intent(out) :: rwork(*)
    integer(kind=ilp), intent(out) :: iwork(*)
    integer(kind=ilp), intent(in) :: liwork
    logical(kind=lk), intent(out) :: bwork(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_cggev(jobvl, jobvr, n, a, lda, b, ldb, alpha, beta, vl, ldvl, vr, ldvr, work, lwork, rwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: jobvl
    character(len=1), intent(in) :: jobvr
    integer(kind=ilp), intent(in) :: n
    complex(kind=sp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    complex(kind=sp), intent(inout) :: b(ldb,*)
    integer(kind=ilp), intent(in) :: ldb
    complex(kind=sp), intent(out) :: alpha(*)
    complex(kind=sp), intent(out) :: beta(*)
    complex(kind=sp), intent(out) :: vl(ldvl,*)
    integer(kind=ilp), intent(in) :: ldvl
    complex(kind=sp), intent(out) :: vr(ldvr,*)
    integer(kind=ilp), intent(in) :: ldvr
    complex(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    real(kind=sp), intent(out) :: rwork(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_cggev3(jobvl, jobvr, n, a, lda, b, ldb, alpha, beta, vl, ldvl, vr, ldvr, work, lwork, rwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: jobvl
    character(len=1), intent(in) :: jobvr
    integer(kind=ilp), intent(in) :: n
    complex(kind=sp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    complex(kind=sp), intent(inout) :: b(ldb,*)
    integer(kind=ilp), intent(in) :: ldb
    complex(kind=sp), intent(out) :: alpha(*)
    complex(kind=sp), intent(out) :: beta(*)
    complex(kind=sp), intent(out) :: vl(ldvl,*)
    integer(kind=ilp), intent(in) :: ldvl
    complex(kind=sp), intent(out) :: vr(ldvr,*)
    integer(kind=ilp), intent(in) :: ldvr
    complex(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    real(kind=sp), intent(out) :: rwork(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_cggevx(balanc, jobvl, jobvr, sense, n, a, lda, b, ldb, alpha, beta, vl, ldvl, vr, ldvr, ilo, ihi, lscale, rscale, abnrm, bbnrm, rconde, rcondv, work, lwork, rwork, iwork, bwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: balanc
    character(len=1), intent(in) :: jobvl
    character(len=1), intent(in) :: jobvr
    character(len=1), intent(in) :: sense
    integer(kind=ilp), intent(in) :: n
    complex(kind=sp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    complex(kind=sp), intent(inout) :: b(ldb,*)
    integer(kind=ilp), intent(in) :: ldb
    complex(kind=sp), intent(out) :: alpha(*)
    complex(kind=sp), intent(out) :: beta(*)
    complex(kind=sp), intent(out) :: vl(ldvl,*)
    integer(kind=ilp), intent(in) :: ldvl
    complex(kind=sp), intent(out) :: vr(ldvr,*)
    integer(kind=ilp), intent(in) :: ldvr
    integer(kind=ilp), intent(out) :: ilo
    integer(kind=ilp), intent(out) :: ihi
    real(kind=sp), intent(out) :: lscale(*)
    real(kind=sp), intent(out) :: rscale(*)
    real(kind=sp), intent(out) :: abnrm
    real(kind=sp), intent(out) :: bbnrm
    real(kind=sp), intent(out) :: rconde(*)
    real(kind=sp), intent(out) :: rcondv(*)
    complex(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    real(kind=sp), intent(out) :: rwork(*)
    integer(kind=ilp), intent(out) :: iwork(*)
    logical(kind=lk), intent(out) :: bwork(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_cggglm(n, m, p, a, lda, b, ldb, d, x, y, work, lwork, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: m
    integer(kind=ilp), intent(in) :: p
    complex(kind=sp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    complex(kind=sp), intent(inout) :: b(ldb,*)
    integer(kind=ilp), intent(in) :: ldb
    complex(kind=sp), intent(inout) :: d(*)
    complex(kind=sp), intent(out) :: x(*)
    complex(kind=sp), intent(out) :: y(*)
    complex(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_cgghd3(compq, compz, n, ilo, ihi, a, lda, b, ldb, q, ldq, z, ldz, work, lwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: compq
    character(len=1), intent(in) :: compz
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: ilo
    integer(kind=ilp), intent(in) :: ihi
    complex(kind=sp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    complex(kind=sp), intent(inout) :: b(ldb,*)
    integer(kind=ilp), intent(in) :: ldb
    complex(kind=sp), intent(inout) :: q(ldq,*)
    integer(kind=ilp), intent(in) :: ldq
    complex(kind=sp), intent(inout) :: z(ldz,*)
    integer(kind=ilp), intent(in) :: ldz
    complex(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_cgghrd(compq, compz, n, ilo, ihi, a, lda, b, ldb, q, ldq, z, ldz, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: compq
    character(len=1), intent(in) :: compz
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: ilo
    integer(kind=ilp), intent(in) :: ihi
    complex(kind=sp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    complex(kind=sp), intent(inout) :: b(ldb,*)
    integer(kind=ilp), intent(in) :: ldb
    complex(kind=sp), intent(inout) :: q(ldq,*)
    integer(kind=ilp), intent(in) :: ldq
    complex(kind=sp), intent(inout) :: z(ldz,*)
    integer(kind=ilp), intent(in) :: ldz
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_cgglse(m, n, p, a, lda, b, ldb, c, d, x, work, lwork, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: m
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: p
    complex(kind=sp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    complex(kind=sp), intent(inout) :: b(ldb,*)
    integer(kind=ilp), intent(in) :: ldb
    complex(kind=sp), intent(inout) :: c(*)
    complex(kind=sp), intent(inout) :: d(*)
    complex(kind=sp), intent(out) :: x(*)
    complex(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_cgsvj0(jobv, m, n, a, lda, d, sva, mv, v, ldv, eps, sfmin, tol, nsweep, work, lwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: jobv
    integer(kind=ilp), intent(in) :: m
    integer(kind=ilp), intent(in) :: n
    complex(kind=sp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    complex(kind=sp), intent(inout) :: d(n)
    real(kind=sp), intent(inout) :: sva(n)
    integer(kind=ilp), intent(in) :: mv
    complex(kind=sp), intent(inout) :: v(ldv,*)
    integer(kind=ilp), intent(in) :: ldv
    real(kind=sp), intent(in) :: eps
    real(kind=sp), intent(in) :: sfmin
    real(kind=sp), intent(in) :: tol
    integer(kind=ilp), intent(in) :: nsweep
    complex(kind=sp), intent(out) :: work(lwork)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_cgsvj1(jobv, m, n, n1, a, lda, d, sva, mv, v, ldv, eps, sfmin, tol, nsweep, work, lwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: jobv
    integer(kind=ilp), intent(in) :: m
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: n1
    complex(kind=sp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    complex(kind=sp), intent(inout) :: d(n)
    real(kind=sp), intent(inout) :: sva(n)
    integer(kind=ilp), intent(in) :: mv
    complex(kind=sp), intent(inout) :: v(ldv,*)
    integer(kind=ilp), intent(in) :: ldv
    real(kind=sp), intent(in) :: eps
    real(kind=sp), intent(in) :: sfmin
    real(kind=sp), intent(in) :: tol
    integer(kind=ilp), intent(in) :: nsweep
    complex(kind=sp), intent(out) :: work(lwork)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_chb2st_kernels(uplo, wantz, ttype, st, ed, sweep, n, nb, ib, a, lda, v, tau, ldvt, work)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: uplo
    logical(kind=lk), intent(in) :: wantz
    integer(kind=ilp), intent(in) :: ttype
    integer(kind=ilp), intent(in) :: st
    integer(kind=ilp), intent(in) :: ed
    integer(kind=ilp), intent(in) :: sweep
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: nb
    integer(kind=ilp), intent(in) :: ib
    complex(kind=sp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    complex(kind=sp), intent(out) :: v(*)
    complex(kind=sp), intent(out) :: tau(*)
    integer(kind=ilp), intent(in) :: ldvt
    complex(kind=sp), intent(out) :: work(*)

interface

  • public module subroutine stdlib_chbev(jobz, uplo, n, kd, ab, ldab, w, z, ldz, work, rwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: jobz
    character(len=1), intent(in) :: uplo
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: kd
    complex(kind=sp), intent(inout) :: ab(ldab,*)
    integer(kind=ilp), intent(in) :: ldab
    real(kind=sp), intent(out) :: w(*)
    complex(kind=sp), intent(out) :: z(ldz,*)
    integer(kind=ilp), intent(in) :: ldz
    complex(kind=sp), intent(out) :: work(*)
    real(kind=sp), intent(out) :: rwork(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_chbevd(jobz, uplo, n, kd, ab, ldab, w, z, ldz, work, lwork, rwork, lrwork, iwork, liwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: jobz
    character(len=1), intent(in) :: uplo
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: kd
    complex(kind=sp), intent(inout) :: ab(ldab,*)
    integer(kind=ilp), intent(in) :: ldab
    real(kind=sp), intent(out) :: w(*)
    complex(kind=sp), intent(out) :: z(ldz,*)
    integer(kind=ilp), intent(in) :: ldz
    complex(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    real(kind=sp), intent(out) :: rwork(*)
    integer(kind=ilp), intent(in) :: lrwork
    integer(kind=ilp), intent(out) :: iwork(*)
    integer(kind=ilp), intent(in) :: liwork
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_chbevx(jobz, range, uplo, n, kd, ab, ldab, q, ldq, vl, vu, il, iu, abstol, m, w, z, ldz, work, rwork, iwork, ifail, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: jobz
    character(len=1), intent(in) :: range
    character(len=1), intent(in) :: uplo
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: kd
    complex(kind=sp), intent(inout) :: ab(ldab,*)
    integer(kind=ilp), intent(in) :: ldab
    complex(kind=sp), intent(out) :: q(ldq,*)
    integer(kind=ilp), intent(in) :: ldq
    real(kind=sp), intent(in) :: vl
    real(kind=sp), intent(in) :: vu
    integer(kind=ilp), intent(in) :: il
    integer(kind=ilp), intent(in) :: iu
    real(kind=sp), intent(in) :: abstol
    integer(kind=ilp), intent(out) :: m
    real(kind=sp), intent(out) :: w(*)
    complex(kind=sp), intent(out) :: z(ldz,*)
    integer(kind=ilp), intent(in) :: ldz
    complex(kind=sp), intent(out) :: work(*)
    real(kind=sp), intent(out) :: rwork(*)
    integer(kind=ilp), intent(out) :: iwork(*)
    integer(kind=ilp), intent(out) :: ifail(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_chbgst(vect, uplo, n, ka, kb, ab, ldab, bb, ldbb, x, ldx, work, rwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: vect
    character(len=1), intent(in) :: uplo
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: ka
    integer(kind=ilp), intent(in) :: kb
    complex(kind=sp), intent(inout) :: ab(ldab,*)
    integer(kind=ilp), intent(in) :: ldab
    complex(kind=sp), intent(in) :: bb(ldbb,*)
    integer(kind=ilp), intent(in) :: ldbb
    complex(kind=sp), intent(out) :: x(ldx,*)
    integer(kind=ilp), intent(in) :: ldx
    complex(kind=sp), intent(out) :: work(*)
    real(kind=sp), intent(out) :: rwork(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_chbgv(jobz, uplo, n, ka, kb, ab, ldab, bb, ldbb, w, z, ldz, work, rwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: jobz
    character(len=1), intent(in) :: uplo
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: ka
    integer(kind=ilp), intent(in) :: kb
    complex(kind=sp), intent(inout) :: ab(ldab,*)
    integer(kind=ilp), intent(in) :: ldab
    complex(kind=sp), intent(inout) :: bb(ldbb,*)
    integer(kind=ilp), intent(in) :: ldbb
    real(kind=sp), intent(out) :: w(*)
    complex(kind=sp), intent(out) :: z(ldz,*)
    integer(kind=ilp), intent(in) :: ldz
    complex(kind=sp), intent(out) :: work(*)
    real(kind=sp), intent(out) :: rwork(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_chbgvd(jobz, uplo, n, ka, kb, ab, ldab, bb, ldbb, w, z, ldz, work, lwork, rwork, lrwork, iwork, liwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: jobz
    character(len=1), intent(in) :: uplo
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: ka
    integer(kind=ilp), intent(in) :: kb
    complex(kind=sp), intent(inout) :: ab(ldab,*)
    integer(kind=ilp), intent(in) :: ldab
    complex(kind=sp), intent(inout) :: bb(ldbb,*)
    integer(kind=ilp), intent(in) :: ldbb
    real(kind=sp), intent(out) :: w(*)
    complex(kind=sp), intent(out) :: z(ldz,*)
    integer(kind=ilp), intent(in) :: ldz
    complex(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    real(kind=sp), intent(out) :: rwork(*)
    integer(kind=ilp), intent(in) :: lrwork
    integer(kind=ilp), intent(out) :: iwork(*)
    integer(kind=ilp), intent(in) :: liwork
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_chbgvx(jobz, range, uplo, n, ka, kb, ab, ldab, bb, ldbb, q, ldq, vl, vu, il, iu, abstol, m, w, z, ldz, work, rwork, iwork, ifail, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: jobz
    character(len=1), intent(in) :: range
    character(len=1), intent(in) :: uplo
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: ka
    integer(kind=ilp), intent(in) :: kb
    complex(kind=sp), intent(inout) :: ab(ldab,*)
    integer(kind=ilp), intent(in) :: ldab
    complex(kind=sp), intent(inout) :: bb(ldbb,*)
    integer(kind=ilp), intent(in) :: ldbb
    complex(kind=sp), intent(out) :: q(ldq,*)
    integer(kind=ilp), intent(in) :: ldq
    real(kind=sp), intent(in) :: vl
    real(kind=sp), intent(in) :: vu
    integer(kind=ilp), intent(in) :: il
    integer(kind=ilp), intent(in) :: iu
    real(kind=sp), intent(in) :: abstol
    integer(kind=ilp), intent(out) :: m
    real(kind=sp), intent(out) :: w(*)
    complex(kind=sp), intent(out) :: z(ldz,*)
    integer(kind=ilp), intent(in) :: ldz
    complex(kind=sp), intent(out) :: work(*)
    real(kind=sp), intent(out) :: rwork(*)
    integer(kind=ilp), intent(out) :: iwork(*)
    integer(kind=ilp), intent(out) :: ifail(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_chbtrd(vect, uplo, n, kd, ab, ldab, d, e, q, ldq, work, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: vect
    character(len=1), intent(in) :: uplo
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: kd
    complex(kind=sp), intent(inout) :: ab(ldab,*)
    integer(kind=ilp), intent(in) :: ldab
    real(kind=sp), intent(out) :: d(*)
    real(kind=sp), intent(out) :: e(*)
    complex(kind=sp), intent(inout) :: q(ldq,*)
    integer(kind=ilp), intent(in) :: ldq
    complex(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_cheev(jobz, uplo, n, a, lda, w, work, lwork, rwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: jobz
    character(len=1), intent(in) :: uplo
    integer(kind=ilp), intent(in) :: n
    complex(kind=sp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    real(kind=sp), intent(out) :: w(*)
    complex(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    real(kind=sp), intent(out) :: rwork(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_cheevd(jobz, uplo, n, a, lda, w, work, lwork, rwork, lrwork, iwork, liwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: jobz
    character(len=1), intent(in) :: uplo
    integer(kind=ilp), intent(in) :: n
    complex(kind=sp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    real(kind=sp), intent(out) :: w(*)
    complex(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    real(kind=sp), intent(out) :: rwork(*)
    integer(kind=ilp), intent(in) :: lrwork
    integer(kind=ilp), intent(out) :: iwork(*)
    integer(kind=ilp), intent(in) :: liwork
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_cheevr(jobz, range, uplo, n, a, lda, vl, vu, il, iu, abstol, m, w, z, ldz, isuppz, work, lwork, rwork, lrwork, iwork, liwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: jobz
    character(len=1), intent(in) :: range
    character(len=1), intent(in) :: uplo
    integer(kind=ilp), intent(in) :: n
    complex(kind=sp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    real(kind=sp), intent(in) :: vl
    real(kind=sp), intent(in) :: vu
    integer(kind=ilp), intent(in) :: il
    integer(kind=ilp), intent(in) :: iu
    real(kind=sp), intent(in) :: abstol
    integer(kind=ilp), intent(out) :: m
    real(kind=sp), intent(out) :: w(*)
    complex(kind=sp), intent(out) :: z(ldz,*)
    integer(kind=ilp), intent(in) :: ldz
    integer(kind=ilp), intent(out) :: isuppz(*)
    complex(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    real(kind=sp), intent(out) :: rwork(*)
    integer(kind=ilp), intent(in) :: lrwork
    integer(kind=ilp), intent(out) :: iwork(*)
    integer(kind=ilp), intent(in) :: liwork
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_cheevx(jobz, range, uplo, n, a, lda, vl, vu, il, iu, abstol, m, w, z, ldz, work, lwork, rwork, iwork, ifail, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: jobz
    character(len=1), intent(in) :: range
    character(len=1), intent(in) :: uplo
    integer(kind=ilp), intent(in) :: n
    complex(kind=sp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    real(kind=sp), intent(in) :: vl
    real(kind=sp), intent(in) :: vu
    integer(kind=ilp), intent(in) :: il
    integer(kind=ilp), intent(in) :: iu
    real(kind=sp), intent(in) :: abstol
    integer(kind=ilp), intent(out) :: m
    real(kind=sp), intent(out) :: w(*)
    complex(kind=sp), intent(out) :: z(ldz,*)
    integer(kind=ilp), intent(in) :: ldz
    complex(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    real(kind=sp), intent(out) :: rwork(*)
    integer(kind=ilp), intent(out) :: iwork(*)
    integer(kind=ilp), intent(out) :: ifail(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_chegs2(itype, uplo, n, a, lda, b, ldb, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: itype
    character(len=1), intent(in) :: uplo
    integer(kind=ilp), intent(in) :: n
    complex(kind=sp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    complex(kind=sp), intent(inout) :: b(ldb,*)
    integer(kind=ilp), intent(in) :: ldb
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_chegst(itype, uplo, n, a, lda, b, ldb, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: itype
    character(len=1), intent(in) :: uplo
    integer(kind=ilp), intent(in) :: n
    complex(kind=sp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    complex(kind=sp), intent(inout) :: b(ldb,*)
    integer(kind=ilp), intent(in) :: ldb
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_chegv(itype, jobz, uplo, n, a, lda, b, ldb, w, work, lwork, rwork, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: itype
    character(len=1), intent(in) :: jobz
    character(len=1), intent(in) :: uplo
    integer(kind=ilp), intent(in) :: n
    complex(kind=sp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    complex(kind=sp), intent(inout) :: b(ldb,*)
    integer(kind=ilp), intent(in) :: ldb
    real(kind=sp), intent(out) :: w(*)
    complex(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    real(kind=sp), intent(out) :: rwork(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_chegvd(itype, jobz, uplo, n, a, lda, b, ldb, w, work, lwork, rwork, lrwork, iwork, liwork, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: itype
    character(len=1), intent(in) :: jobz
    character(len=1), intent(in) :: uplo
    integer(kind=ilp), intent(in) :: n
    complex(kind=sp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    complex(kind=sp), intent(inout) :: b(ldb,*)
    integer(kind=ilp), intent(in) :: ldb
    real(kind=sp), intent(out) :: w(*)
    complex(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    real(kind=sp), intent(out) :: rwork(*)
    integer(kind=ilp), intent(in) :: lrwork
    integer(kind=ilp), intent(out) :: iwork(*)
    integer(kind=ilp), intent(in) :: liwork
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_chegvx(itype, jobz, range, uplo, n, a, lda, b, ldb, vl, vu, il, iu, abstol, m, w, z, ldz, work, lwork, rwork, iwork, ifail, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: itype
    character(len=1), intent(in) :: jobz
    character(len=1), intent(in) :: range
    character(len=1), intent(in) :: uplo
    integer(kind=ilp), intent(in) :: n
    complex(kind=sp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    complex(kind=sp), intent(inout) :: b(ldb,*)
    integer(kind=ilp), intent(in) :: ldb
    real(kind=sp), intent(in) :: vl
    real(kind=sp), intent(in) :: vu
    integer(kind=ilp), intent(in) :: il
    integer(kind=ilp), intent(in) :: iu
    real(kind=sp), intent(in) :: abstol
    integer(kind=ilp), intent(out) :: m
    real(kind=sp), intent(out) :: w(*)
    complex(kind=sp), intent(out) :: z(ldz,*)
    integer(kind=ilp), intent(in) :: ldz
    complex(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    real(kind=sp), intent(out) :: rwork(*)
    integer(kind=ilp), intent(out) :: iwork(*)
    integer(kind=ilp), intent(out) :: ifail(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_chetd2(uplo, n, a, lda, d, e, tau, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: uplo
    integer(kind=ilp), intent(in) :: n
    complex(kind=sp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    real(kind=sp), intent(out) :: d(*)
    real(kind=sp), intent(out) :: e(*)
    complex(kind=sp), intent(out) :: tau(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_chetrd(uplo, n, a, lda, d, e, tau, work, lwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: uplo
    integer(kind=ilp), intent(in) :: n
    complex(kind=sp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    real(kind=sp), intent(out) :: d(*)
    real(kind=sp), intent(out) :: e(*)
    complex(kind=sp), intent(out) :: tau(*)
    complex(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_chetrd_hb2st(stage1, vect, uplo, n, kd, ab, ldab, d, e, hous, lhous, work, lwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: stage1
    character(len=1), intent(in) :: vect
    character(len=1), intent(in) :: uplo
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: kd
    complex(kind=sp), intent(inout) :: ab(ldab,*)
    integer(kind=ilp), intent(in) :: ldab
    real(kind=sp), intent(out) :: d(*)
    real(kind=sp), intent(out) :: e(*)
    complex(kind=sp), intent(out) :: hous(*)
    integer(kind=ilp), intent(in) :: lhous
    complex(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_chetrd_he2hb(uplo, n, kd, a, lda, ab, ldab, tau, work, lwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: uplo
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: kd
    complex(kind=sp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    complex(kind=sp), intent(out) :: ab(ldab,*)
    integer(kind=ilp), intent(in) :: ldab
    complex(kind=sp), intent(out) :: tau(*)
    complex(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_chgeqz(job, compq, compz, n, ilo, ihi, h, ldh, t, ldt, alpha, beta, q, ldq, z, ldz, work, lwork, rwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: job
    character(len=1), intent(in) :: compq
    character(len=1), intent(in) :: compz
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: ilo
    integer(kind=ilp), intent(in) :: ihi
    complex(kind=sp), intent(inout) :: h(ldh,*)
    integer(kind=ilp), intent(in) :: ldh
    complex(kind=sp), intent(inout) :: t(ldt,*)
    integer(kind=ilp), intent(in) :: ldt
    complex(kind=sp), intent(out) :: alpha(*)
    complex(kind=sp), intent(out) :: beta(*)
    complex(kind=sp), intent(inout) :: q(ldq,*)
    integer(kind=ilp), intent(in) :: ldq
    complex(kind=sp), intent(inout) :: z(ldz,*)
    integer(kind=ilp), intent(in) :: ldz
    complex(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    real(kind=sp), intent(out) :: rwork(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_chpev(jobz, uplo, n, ap, w, z, ldz, work, rwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: jobz
    character(len=1), intent(in) :: uplo
    integer(kind=ilp), intent(in) :: n
    complex(kind=sp), intent(inout) :: ap(*)
    real(kind=sp), intent(out) :: w(*)
    complex(kind=sp), intent(out) :: z(ldz,*)
    integer(kind=ilp), intent(in) :: ldz
    complex(kind=sp), intent(out) :: work(*)
    real(kind=sp), intent(out) :: rwork(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_chpevd(jobz, uplo, n, ap, w, z, ldz, work, lwork, rwork, lrwork, iwork, liwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: jobz
    character(len=1), intent(in) :: uplo
    integer(kind=ilp), intent(in) :: n
    complex(kind=sp), intent(inout) :: ap(*)
    real(kind=sp), intent(out) :: w(*)
    complex(kind=sp), intent(out) :: z(ldz,*)
    integer(kind=ilp), intent(in) :: ldz
    complex(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    real(kind=sp), intent(out) :: rwork(*)
    integer(kind=ilp), intent(in) :: lrwork
    integer(kind=ilp), intent(out) :: iwork(*)
    integer(kind=ilp), intent(in) :: liwork
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_chpevx(jobz, range, uplo, n, ap, vl, vu, il, iu, abstol, m, w, z, ldz, work, rwork, iwork, ifail, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: jobz
    character(len=1), intent(in) :: range
    character(len=1), intent(in) :: uplo
    integer(kind=ilp), intent(in) :: n
    complex(kind=sp), intent(inout) :: ap(*)
    real(kind=sp), intent(in) :: vl
    real(kind=sp), intent(in) :: vu
    integer(kind=ilp), intent(in) :: il
    integer(kind=ilp), intent(in) :: iu
    real(kind=sp), intent(in) :: abstol
    integer(kind=ilp), intent(out) :: m
    real(kind=sp), intent(out) :: w(*)
    complex(kind=sp), intent(out) :: z(ldz,*)
    integer(kind=ilp), intent(in) :: ldz
    complex(kind=sp), intent(out) :: work(*)
    real(kind=sp), intent(out) :: rwork(*)
    integer(kind=ilp), intent(out) :: iwork(*)
    integer(kind=ilp), intent(out) :: ifail(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_chpgst(itype, uplo, n, ap, bp, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: itype
    character(len=1), intent(in) :: uplo
    integer(kind=ilp), intent(in) :: n
    complex(kind=sp), intent(inout) :: ap(*)
    complex(kind=sp), intent(in) :: bp(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_chpgv(itype, jobz, uplo, n, ap, bp, w, z, ldz, work, rwork, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: itype
    character(len=1), intent(in) :: jobz
    character(len=1), intent(in) :: uplo
    integer(kind=ilp), intent(in) :: n
    complex(kind=sp), intent(inout) :: ap(*)
    complex(kind=sp), intent(inout) :: bp(*)
    real(kind=sp), intent(out) :: w(*)
    complex(kind=sp), intent(out) :: z(ldz,*)
    integer(kind=ilp), intent(in) :: ldz
    complex(kind=sp), intent(out) :: work(*)
    real(kind=sp), intent(out) :: rwork(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_chpgvd(itype, jobz, uplo, n, ap, bp, w, z, ldz, work, lwork, rwork, lrwork, iwork, liwork, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: itype
    character(len=1), intent(in) :: jobz
    character(len=1), intent(in) :: uplo
    integer(kind=ilp), intent(in) :: n
    complex(kind=sp), intent(inout) :: ap(*)
    complex(kind=sp), intent(inout) :: bp(*)
    real(kind=sp), intent(out) :: w(*)
    complex(kind=sp), intent(out) :: z(ldz,*)
    integer(kind=ilp), intent(in) :: ldz
    complex(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    real(kind=sp), intent(out) :: rwork(*)
    integer(kind=ilp), intent(in) :: lrwork
    integer(kind=ilp), intent(out) :: iwork(*)
    integer(kind=ilp), intent(in) :: liwork
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_chpgvx(itype, jobz, range, uplo, n, ap, bp, vl, vu, il, iu, abstol, m, w, z, ldz, work, rwork, iwork, ifail, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: itype
    character(len=1), intent(in) :: jobz
    character(len=1), intent(in) :: range
    character(len=1), intent(in) :: uplo
    integer(kind=ilp), intent(in) :: n
    complex(kind=sp), intent(inout) :: ap(*)
    complex(kind=sp), intent(inout) :: bp(*)
    real(kind=sp), intent(in) :: vl
    real(kind=sp), intent(in) :: vu
    integer(kind=ilp), intent(in) :: il
    integer(kind=ilp), intent(in) :: iu
    real(kind=sp), intent(in) :: abstol
    integer(kind=ilp), intent(out) :: m
    real(kind=sp), intent(out) :: w(*)
    complex(kind=sp), intent(out) :: z(ldz,*)
    integer(kind=ilp), intent(in) :: ldz
    complex(kind=sp), intent(out) :: work(*)
    real(kind=sp), intent(out) :: rwork(*)
    integer(kind=ilp), intent(out) :: iwork(*)
    integer(kind=ilp), intent(out) :: ifail(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_chptrd(uplo, n, ap, d, e, tau, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: uplo
    integer(kind=ilp), intent(in) :: n
    complex(kind=sp), intent(inout) :: ap(*)
    real(kind=sp), intent(out) :: d(*)
    real(kind=sp), intent(out) :: e(*)
    complex(kind=sp), intent(out) :: tau(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_chsein(side, eigsrc, initv, select, n, h, ldh, w, vl, ldvl, vr, ldvr, mm, m, work, rwork, ifaill, ifailr, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: side
    character(len=1), intent(in) :: eigsrc
    character(len=1), intent(in) :: initv
    logical(kind=lk), intent(in) :: select(*)
    integer(kind=ilp), intent(in) :: n
    complex(kind=sp), intent(in) :: h(ldh,*)
    integer(kind=ilp), intent(in) :: ldh
    complex(kind=sp), intent(inout) :: w(*)
    complex(kind=sp), intent(inout) :: vl(ldvl,*)
    integer(kind=ilp), intent(in) :: ldvl
    complex(kind=sp), intent(inout) :: vr(ldvr,*)
    integer(kind=ilp), intent(in) :: ldvr
    integer(kind=ilp), intent(in) :: mm
    integer(kind=ilp), intent(out) :: m
    complex(kind=sp), intent(out) :: work(*)
    real(kind=sp), intent(out) :: rwork(*)
    integer(kind=ilp), intent(out) :: ifaill(*)
    integer(kind=ilp), intent(out) :: ifailr(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_chseqr(job, compz, n, ilo, ihi, h, ldh, w, z, ldz, work, lwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: job
    character(len=1), intent(in) :: compz
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: ilo
    integer(kind=ilp), intent(in) :: ihi
    complex(kind=sp), intent(inout) :: h(ldh,*)
    integer(kind=ilp), intent(in) :: ldh
    complex(kind=sp), intent(out) :: w(*)
    complex(kind=sp), intent(inout) :: z(ldz,*)
    integer(kind=ilp), intent(in) :: ldz
    complex(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_clabrd(m, n, nb, a, lda, d, e, tauq, taup, x, ldx, y, ldy)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: m
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: nb
    complex(kind=sp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    real(kind=sp), intent(out) :: d(*)
    real(kind=sp), intent(out) :: e(*)
    complex(kind=sp), intent(out) :: tauq(*)
    complex(kind=sp), intent(out) :: taup(*)
    complex(kind=sp), intent(out) :: x(ldx,*)
    integer(kind=ilp), intent(in) :: ldx
    complex(kind=sp), intent(out) :: y(ldy,*)
    integer(kind=ilp), intent(in) :: ldy

interface

  • public pure module subroutine stdlib_claed0(qsiz, n, d, e, q, ldq, qstore, ldqs, rwork, iwork, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: qsiz
    integer(kind=ilp), intent(in) :: n
    real(kind=sp), intent(inout) :: d(*)
    real(kind=sp), intent(inout) :: e(*)
    complex(kind=sp), intent(inout) :: q(ldq,*)
    integer(kind=ilp), intent(in) :: ldq
    complex(kind=sp), intent(out) :: qstore(ldqs,*)
    integer(kind=ilp), intent(in) :: ldqs
    real(kind=sp), intent(out) :: rwork(*)
    integer(kind=ilp), intent(out) :: iwork(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_claed7(n, cutpnt, qsiz, tlvls, curlvl, curpbm, d, q, ldq, rho, indxq, qstore, qptr, prmptr, perm, givptr, givcol, givnum, work, rwork, iwork, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: cutpnt
    integer(kind=ilp), intent(in) :: qsiz
    integer(kind=ilp), intent(in) :: tlvls
    integer(kind=ilp), intent(in) :: curlvl
    integer(kind=ilp), intent(in) :: curpbm
    real(kind=sp), intent(inout) :: d(*)
    complex(kind=sp), intent(inout) :: q(ldq,*)
    integer(kind=ilp), intent(in) :: ldq
    real(kind=sp), intent(inout) :: rho
    integer(kind=ilp), intent(out) :: indxq(*)
    real(kind=sp), intent(inout) :: qstore(*)
    integer(kind=ilp), intent(inout) :: qptr(*)
    integer(kind=ilp), intent(inout) :: prmptr(*)
    integer(kind=ilp), intent(inout) :: perm(*)
    integer(kind=ilp), intent(inout) :: givptr(*)
    integer(kind=ilp), intent(inout) :: givcol(2_ilp,*)
    real(kind=sp), intent(inout) :: givnum(2_ilp,*)
    complex(kind=sp), intent(out) :: work(*)
    real(kind=sp), intent(out) :: rwork(*)
    integer(kind=ilp), intent(out) :: iwork(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_claed8(k, n, qsiz, q, ldq, d, rho, cutpnt, z, dlamda, q2, ldq2, w, indxp, indx, indxq, perm, givptr, givcol, givnum, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(out) :: k
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: qsiz
    complex(kind=sp), intent(inout) :: q(ldq,*)
    integer(kind=ilp), intent(in) :: ldq
    real(kind=sp), intent(inout) :: d(*)
    real(kind=sp), intent(inout) :: rho
    integer(kind=ilp), intent(in) :: cutpnt
    real(kind=sp), intent(inout) :: z(*)
    real(kind=sp), intent(out) :: dlamda(*)
    complex(kind=sp), intent(out) :: q2(ldq2,*)
    integer(kind=ilp), intent(in) :: ldq2
    real(kind=sp), intent(out) :: w(*)
    integer(kind=ilp), intent(out) :: indxp(*)
    integer(kind=ilp), intent(out) :: indx(*)
    integer(kind=ilp), intent(inout) :: indxq(*)
    integer(kind=ilp), intent(out) :: perm(*)
    integer(kind=ilp), intent(out) :: givptr
    integer(kind=ilp), intent(out) :: givcol(2_ilp,*)
    real(kind=sp), intent(out) :: givnum(2_ilp,*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_claein(rightv, noinit, n, h, ldh, w, v, b, ldb, rwork, eps3, smlnum, info)

    Arguments

    Type IntentOptional Attributes Name
    logical(kind=lk), intent(in) :: rightv
    logical(kind=lk), intent(in) :: noinit
    integer(kind=ilp), intent(in) :: n
    complex(kind=sp), intent(in) :: h(ldh,*)
    integer(kind=ilp), intent(in) :: ldh
    complex(kind=sp), intent(in) :: w
    complex(kind=sp), intent(inout) :: v(*)
    complex(kind=sp), intent(out) :: b(ldb,*)
    integer(kind=ilp), intent(in) :: ldb
    real(kind=sp), intent(out) :: rwork(*)
    real(kind=sp), intent(in) :: eps3
    real(kind=sp), intent(in) :: smlnum
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_claesy(a, b, c, rt1, rt2, evscal, cs1, sn1)

    Arguments

    Type IntentOptional Attributes Name
    complex(kind=sp), intent(in) :: a
    complex(kind=sp), intent(in) :: b
    complex(kind=sp), intent(in) :: c
    complex(kind=sp), intent(out) :: rt1
    complex(kind=sp), intent(out) :: rt2
    complex(kind=sp), intent(out) :: evscal
    complex(kind=sp), intent(out) :: cs1
    complex(kind=sp), intent(out) :: sn1

interface

  • public pure module subroutine stdlib_claev2(a, b, c, rt1, rt2, cs1, sn1)

    Arguments

    Type IntentOptional Attributes Name
    complex(kind=sp), intent(in) :: a
    complex(kind=sp), intent(in) :: b
    complex(kind=sp), intent(in) :: c
    real(kind=sp), intent(out) :: rt1
    real(kind=sp), intent(out) :: rt2
    real(kind=sp), intent(out) :: cs1
    complex(kind=sp), intent(out) :: sn1

interface

  • public pure module subroutine stdlib_clags2(upper, a1, a2, a3, b1, b2, b3, csu, snu, csv, snv, csq, snq)

    Arguments

    Type IntentOptional Attributes Name
    logical(kind=lk), intent(in) :: upper
    real(kind=sp), intent(in) :: a1
    complex(kind=sp), intent(in) :: a2
    real(kind=sp), intent(in) :: a3
    real(kind=sp), intent(in) :: b1
    complex(kind=sp), intent(in) :: b2
    real(kind=sp), intent(in) :: b3
    real(kind=sp), intent(out) :: csu
    complex(kind=sp), intent(out) :: snu
    real(kind=sp), intent(out) :: csv
    complex(kind=sp), intent(out) :: snv
    real(kind=sp), intent(out) :: csq
    complex(kind=sp), intent(out) :: snq

interface

  • public pure module subroutine stdlib_clahqr(wantt, wantz, n, ilo, ihi, h, ldh, w, iloz, ihiz, z, ldz, info)

    Arguments

    Type IntentOptional Attributes Name
    logical(kind=lk), intent(in) :: wantt
    logical(kind=lk), intent(in) :: wantz
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: ilo
    integer(kind=ilp), intent(in) :: ihi
    complex(kind=sp), intent(inout) :: h(ldh,*)
    integer(kind=ilp), intent(in) :: ldh
    complex(kind=sp), intent(out) :: w(*)
    integer(kind=ilp), intent(in) :: iloz
    integer(kind=ilp), intent(in) :: ihiz
    complex(kind=sp), intent(inout) :: z(ldz,*)
    integer(kind=ilp), intent(in) :: ldz
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_clahr2(n, k, nb, a, lda, tau, t, ldt, y, ldy)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: k
    integer(kind=ilp), intent(in) :: nb
    complex(kind=sp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    complex(kind=sp), intent(out) :: tau(nb)
    complex(kind=sp), intent(out) :: t(ldt,nb)
    integer(kind=ilp), intent(in) :: ldt
    complex(kind=sp), intent(out) :: y(ldy,nb)
    integer(kind=ilp), intent(in) :: ldy

interface

  • public pure module subroutine stdlib_claic1(job, j, x, sest, w, gamma, sestpr, s, c)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: job
    integer(kind=ilp), intent(in) :: j
    complex(kind=sp), intent(in) :: x(j)
    real(kind=sp), intent(in) :: sest
    complex(kind=sp), intent(in) :: w(j)
    complex(kind=sp), intent(in) :: gamma
    real(kind=sp), intent(out) :: sestpr
    complex(kind=sp), intent(out) :: s
    complex(kind=sp), intent(out) :: c

interface

  • public pure module subroutine stdlib_clals0(icompq, nl, nr, sqre, nrhs, b, ldb, bx, ldbx, perm, givptr, givcol, ldgcol, givnum, ldgnum, poles, difl, difr, z, k, c, s, rwork, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: icompq
    integer(kind=ilp), intent(in) :: nl
    integer(kind=ilp), intent(in) :: nr
    integer(kind=ilp), intent(in) :: sqre
    integer(kind=ilp), intent(in) :: nrhs
    complex(kind=sp), intent(inout) :: b(ldb,*)
    integer(kind=ilp), intent(in) :: ldb
    complex(kind=sp), intent(out) :: bx(ldbx,*)
    integer(kind=ilp), intent(in) :: ldbx
    integer(kind=ilp), intent(in) :: perm(*)
    integer(kind=ilp), intent(in) :: givptr
    integer(kind=ilp), intent(in) :: givcol(ldgcol,*)
    integer(kind=ilp), intent(in) :: ldgcol
    real(kind=sp), intent(in) :: givnum(ldgnum,*)
    integer(kind=ilp), intent(in) :: ldgnum
    real(kind=sp), intent(in) :: poles(ldgnum,*)
    real(kind=sp), intent(in) :: difl(*)
    real(kind=sp), intent(in) :: difr(ldgnum,*)
    real(kind=sp), intent(in) :: z(*)
    integer(kind=ilp), intent(in) :: k
    real(kind=sp), intent(in) :: c
    real(kind=sp), intent(in) :: s
    real(kind=sp), intent(out) :: rwork(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_clalsa(icompq, smlsiz, n, nrhs, b, ldb, bx, ldbx, u, ldu, vt, k, difl, difr, z, poles, givptr, givcol, ldgcol, perm, givnum, c, s, rwork, iwork, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: icompq
    integer(kind=ilp), intent(in) :: smlsiz
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: nrhs
    complex(kind=sp), intent(inout) :: b(ldb,*)
    integer(kind=ilp), intent(in) :: ldb
    complex(kind=sp), intent(out) :: bx(ldbx,*)
    integer(kind=ilp), intent(in) :: ldbx
    real(kind=sp), intent(in) :: u(ldu,*)
    integer(kind=ilp), intent(in) :: ldu
    real(kind=sp), intent(in) :: vt(ldu,*)
    integer(kind=ilp), intent(in) :: k(*)
    real(kind=sp), intent(in) :: difl(ldu,*)
    real(kind=sp), intent(in) :: difr(ldu,*)
    real(kind=sp), intent(in) :: z(ldu,*)
    real(kind=sp), intent(in) :: poles(ldu,*)
    integer(kind=ilp), intent(in) :: givptr(*)
    integer(kind=ilp), intent(in) :: givcol(ldgcol,*)
    integer(kind=ilp), intent(in) :: ldgcol
    integer(kind=ilp), intent(in) :: perm(ldgcol,*)
    real(kind=sp), intent(in) :: givnum(ldu,*)
    real(kind=sp), intent(in) :: c(*)
    real(kind=sp), intent(in) :: s(*)
    real(kind=sp), intent(out) :: rwork(*)
    integer(kind=ilp), intent(out) :: iwork(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_clalsd(uplo, smlsiz, n, nrhs, d, e, b, ldb, rcond, rank, work, rwork, iwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: uplo
    integer(kind=ilp), intent(in) :: smlsiz
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: nrhs
    real(kind=sp), intent(inout) :: d(*)
    real(kind=sp), intent(inout) :: e(*)
    complex(kind=sp), intent(inout) :: b(ldb,*)
    integer(kind=ilp), intent(in) :: ldb
    real(kind=sp), intent(in) :: rcond
    integer(kind=ilp), intent(out) :: rank
    complex(kind=sp), intent(out) :: work(*)
    real(kind=sp), intent(out) :: rwork(*)
    integer(kind=ilp), intent(out) :: iwork(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_clapll(n, x, incx, y, incy, ssmin)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: n
    complex(kind=sp), intent(inout) :: x(*)
    integer(kind=ilp), intent(in) :: incx
    complex(kind=sp), intent(inout) :: y(*)
    integer(kind=ilp), intent(in) :: incy
    real(kind=sp), intent(out) :: ssmin

interface

  • public pure module subroutine stdlib_clapmr(forwrd, m, n, x, ldx, k)

    Arguments

    Type IntentOptional Attributes Name
    logical(kind=lk), intent(in) :: forwrd
    integer(kind=ilp), intent(in) :: m
    integer(kind=ilp), intent(in) :: n
    complex(kind=sp), intent(inout) :: x(ldx,*)
    integer(kind=ilp), intent(in) :: ldx
    integer(kind=ilp), intent(inout) :: k(*)

interface

  • public pure module subroutine stdlib_clapmt(forwrd, m, n, x, ldx, k)

    Arguments

    Type IntentOptional Attributes Name
    logical(kind=lk), intent(in) :: forwrd
    integer(kind=ilp), intent(in) :: m
    integer(kind=ilp), intent(in) :: n
    complex(kind=sp), intent(inout) :: x(ldx,*)
    integer(kind=ilp), intent(in) :: ldx
    integer(kind=ilp), intent(inout) :: k(*)

interface

  • public pure module subroutine stdlib_claqr0(wantt, wantz, n, ilo, ihi, h, ldh, w, iloz, ihiz, z, ldz, work, lwork, info)

    Arguments

    Type IntentOptional Attributes Name
    logical(kind=lk), intent(in) :: wantt
    logical(kind=lk), intent(in) :: wantz
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: ilo
    integer(kind=ilp), intent(in) :: ihi
    complex(kind=sp), intent(inout) :: h(ldh,*)
    integer(kind=ilp), intent(in) :: ldh
    complex(kind=sp), intent(out) :: w(*)
    integer(kind=ilp), intent(in) :: iloz
    integer(kind=ilp), intent(in) :: ihiz
    complex(kind=sp), intent(inout) :: z(ldz,*)
    integer(kind=ilp), intent(in) :: ldz
    complex(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_claqr1(n, h, ldh, s1, s2, v)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: n
    complex(kind=sp), intent(in) :: h(ldh,*)
    integer(kind=ilp), intent(in) :: ldh
    complex(kind=sp), intent(in) :: s1
    complex(kind=sp), intent(in) :: s2
    complex(kind=sp), intent(out) :: v(*)

interface

  • public pure module subroutine stdlib_claqr2(wantt, wantz, n, ktop, kbot, nw, h, ldh, iloz, ihiz, z, ldz, ns, nd, sh, v, ldv, nh, t, ldt, nv, wv, ldwv, work, lwork)

    Arguments

    Type IntentOptional Attributes Name
    logical(kind=lk), intent(in) :: wantt
    logical(kind=lk), intent(in) :: wantz
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: ktop
    integer(kind=ilp), intent(in) :: kbot
    integer(kind=ilp), intent(in) :: nw
    complex(kind=sp), intent(inout) :: h(ldh,*)
    integer(kind=ilp), intent(in) :: ldh
    integer(kind=ilp), intent(in) :: iloz
    integer(kind=ilp), intent(in) :: ihiz
    complex(kind=sp), intent(inout) :: z(ldz,*)
    integer(kind=ilp), intent(in) :: ldz
    integer(kind=ilp), intent(out) :: ns
    integer(kind=ilp), intent(out) :: nd
    complex(kind=sp), intent(out) :: sh(*)
    complex(kind=sp), intent(out) :: v(ldv,*)
    integer(kind=ilp), intent(in) :: ldv
    integer(kind=ilp), intent(in) :: nh
    complex(kind=sp), intent(out) :: t(ldt,*)
    integer(kind=ilp), intent(in) :: ldt
    integer(kind=ilp), intent(in) :: nv
    complex(kind=sp), intent(out) :: wv(ldwv,*)
    integer(kind=ilp), intent(in) :: ldwv
    complex(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork

interface

  • public pure module subroutine stdlib_claqr3(wantt, wantz, n, ktop, kbot, nw, h, ldh, iloz, ihiz, z, ldz, ns, nd, sh, v, ldv, nh, t, ldt, nv, wv, ldwv, work, lwork)

    Arguments

    Type IntentOptional Attributes Name
    logical(kind=lk), intent(in) :: wantt
    logical(kind=lk), intent(in) :: wantz
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: ktop
    integer(kind=ilp), intent(in) :: kbot
    integer(kind=ilp), intent(in) :: nw
    complex(kind=sp), intent(inout) :: h(ldh,*)
    integer(kind=ilp), intent(in) :: ldh
    integer(kind=ilp), intent(in) :: iloz
    integer(kind=ilp), intent(in) :: ihiz
    complex(kind=sp), intent(inout) :: z(ldz,*)
    integer(kind=ilp), intent(in) :: ldz
    integer(kind=ilp), intent(out) :: ns
    integer(kind=ilp), intent(out) :: nd
    complex(kind=sp), intent(out) :: sh(*)
    complex(kind=sp), intent(out) :: v(ldv,*)
    integer(kind=ilp), intent(in) :: ldv
    integer(kind=ilp), intent(in) :: nh
    complex(kind=sp), intent(out) :: t(ldt,*)
    integer(kind=ilp), intent(in) :: ldt
    integer(kind=ilp), intent(in) :: nv
    complex(kind=sp), intent(out) :: wv(ldwv,*)
    integer(kind=ilp), intent(in) :: ldwv
    complex(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork

interface

  • public pure module subroutine stdlib_claqr4(wantt, wantz, n, ilo, ihi, h, ldh, w, iloz, ihiz, z, ldz, work, lwork, info)

    Arguments

    Type IntentOptional Attributes Name
    logical(kind=lk), intent(in) :: wantt
    logical(kind=lk), intent(in) :: wantz
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: ilo
    integer(kind=ilp), intent(in) :: ihi
    complex(kind=sp), intent(inout) :: h(ldh,*)
    integer(kind=ilp), intent(in) :: ldh
    complex(kind=sp), intent(out) :: w(*)
    integer(kind=ilp), intent(in) :: iloz
    integer(kind=ilp), intent(in) :: ihiz
    complex(kind=sp), intent(inout) :: z(ldz,*)
    integer(kind=ilp), intent(in) :: ldz
    complex(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_claqr5(wantt, wantz, kacc22, n, ktop, kbot, nshfts, s, h, ldh, iloz, ihiz, z, ldz, v, ldv, u, ldu, nv, wv, ldwv, nh, wh, ldwh)

    Arguments

    Type IntentOptional Attributes Name
    logical(kind=lk), intent(in) :: wantt
    logical(kind=lk), intent(in) :: wantz
    integer(kind=ilp), intent(in) :: kacc22
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: ktop
    integer(kind=ilp), intent(in) :: kbot
    integer(kind=ilp), intent(in) :: nshfts
    complex(kind=sp), intent(inout) :: s(*)
    complex(kind=sp), intent(inout) :: h(ldh,*)
    integer(kind=ilp), intent(in) :: ldh
    integer(kind=ilp), intent(in) :: iloz
    integer(kind=ilp), intent(in) :: ihiz
    complex(kind=sp), intent(inout) :: z(ldz,*)
    integer(kind=ilp), intent(in) :: ldz
    complex(kind=sp), intent(out) :: v(ldv,*)
    integer(kind=ilp), intent(in) :: ldv
    complex(kind=sp), intent(out) :: u(ldu,*)
    integer(kind=ilp), intent(in) :: ldu
    integer(kind=ilp), intent(in) :: nv
    complex(kind=sp), intent(out) :: wv(ldwv,*)
    integer(kind=ilp), intent(in) :: ldwv
    integer(kind=ilp), intent(in) :: nh
    complex(kind=sp), intent(out) :: wh(ldwh,*)
    integer(kind=ilp), intent(in) :: ldwh

interface

  • public recursive module subroutine stdlib_claqz0(wants, wantq, wantz, n, ilo, ihi, a, lda, b, ldb, alpha, beta, q, ldq, z, ldz, work, lwork, rwork, rec, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: wants
    character(len=1), intent(in) :: wantq
    character(len=1), intent(in) :: wantz
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: ilo
    integer(kind=ilp), intent(in) :: ihi
    complex(kind=sp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    complex(kind=sp), intent(inout) :: b(ldb,*)
    integer(kind=ilp), intent(in) :: ldb
    complex(kind=sp), intent(inout) :: alpha(*)
    complex(kind=sp), intent(inout) :: beta(*)
    complex(kind=sp), intent(inout) :: q(ldq,*)
    integer(kind=ilp), intent(in) :: ldq
    complex(kind=sp), intent(inout) :: z(ldz,*)
    integer(kind=ilp), intent(in) :: ldz
    complex(kind=sp), intent(inout) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    real(kind=sp), intent(out) :: rwork(*)
    integer(kind=ilp), intent(in) :: rec
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_claqz1(ilq, ilz, k, istartm, istopm, ihi, a, lda, b, ldb, nq, qstart, q, ldq, nz, zstart, z, ldz)

    Arguments

    Type IntentOptional Attributes Name
    logical(kind=lk), intent(in) :: ilq
    logical(kind=lk), intent(in) :: ilz
    integer(kind=ilp), intent(in) :: k
    integer(kind=ilp), intent(in) :: istartm
    integer(kind=ilp), intent(in) :: istopm
    integer(kind=ilp), intent(in) :: ihi
    complex(kind=sp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    complex(kind=sp), intent(inout) :: b(ldb,*)
    integer(kind=ilp), intent(in) :: ldb
    integer(kind=ilp), intent(in) :: nq
    integer(kind=ilp), intent(in) :: qstart
    complex(kind=sp), intent(inout) :: q(ldq,*)
    integer(kind=ilp), intent(in) :: ldq
    integer(kind=ilp), intent(in) :: nz
    integer(kind=ilp), intent(in) :: zstart
    complex(kind=sp), intent(inout) :: z(ldz,*)
    integer(kind=ilp), intent(in) :: ldz

interface

  • public recursive module subroutine stdlib_claqz2(ilschur, ilq, ilz, n, ilo, ihi, nw, a, lda, b, ldb, q, ldq, z, ldz, ns, nd, alpha, beta, qc, ldqc, zc, ldzc, work, lwork, rwork, rec, info)

    Arguments

    Type IntentOptional Attributes Name
    logical(kind=lk), intent(in) :: ilschur
    logical(kind=lk), intent(in) :: ilq
    logical(kind=lk), intent(in) :: ilz
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: ilo
    integer(kind=ilp), intent(in) :: ihi
    integer(kind=ilp), intent(in) :: nw
    complex(kind=sp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    complex(kind=sp), intent(inout) :: b(ldb,*)
    integer(kind=ilp), intent(in) :: ldb
    complex(kind=sp), intent(inout) :: q(ldq,*)
    integer(kind=ilp), intent(in) :: ldq
    complex(kind=sp), intent(inout) :: z(ldz,*)
    integer(kind=ilp), intent(in) :: ldz
    integer(kind=ilp), intent(out) :: ns
    integer(kind=ilp), intent(out) :: nd
    complex(kind=sp), intent(inout) :: alpha(*)
    complex(kind=sp), intent(inout) :: beta(*)
    complex(kind=sp), intent(inout) :: qc(ldqc,*)
    integer(kind=ilp), intent(in) :: ldqc
    complex(kind=sp), intent(inout) :: zc(ldzc,*)
    integer(kind=ilp), intent(in) :: ldzc
    complex(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    real(kind=sp), intent(out) :: rwork(*)
    integer(kind=ilp), intent(in) :: rec
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_claqz3(ilschur, ilq, ilz, n, ilo, ihi, nshifts, nblock_desired, alpha, beta, a, lda, b, ldb, q, ldq, z, ldz, qc, ldqc, zc, ldzc, work, lwork, info)

    Arguments

    Type IntentOptional Attributes Name
    logical(kind=lk), intent(in) :: ilschur
    logical(kind=lk), intent(in) :: ilq
    logical(kind=lk), intent(in) :: ilz
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: ilo
    integer(kind=ilp), intent(in) :: ihi
    integer(kind=ilp), intent(in) :: nshifts
    integer(kind=ilp), intent(in) :: nblock_desired
    complex(kind=sp), intent(inout) :: alpha(*)
    complex(kind=sp), intent(inout) :: beta(*)
    complex(kind=sp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    complex(kind=sp), intent(inout) :: b(ldb,*)
    integer(kind=ilp), intent(in) :: ldb
    complex(kind=sp), intent(inout) :: q(ldq,*)
    integer(kind=ilp), intent(in) :: ldq
    complex(kind=sp), intent(inout) :: z(ldz,*)
    integer(kind=ilp), intent(in) :: ldz
    complex(kind=sp), intent(inout) :: qc(ldqc,*)
    integer(kind=ilp), intent(in) :: ldqc
    complex(kind=sp), intent(inout) :: zc(ldzc,*)
    integer(kind=ilp), intent(in) :: ldzc
    complex(kind=sp), intent(inout) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_clar1v(n, b1, bn, lambda, d, l, ld, lld, pivmin, gaptol, z, wantnc, negcnt, ztz, mingma, r, isuppz, nrminv, resid, rqcorr, work)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: b1
    integer(kind=ilp), intent(in) :: bn
    real(kind=sp), intent(in) :: lambda
    real(kind=sp), intent(in) :: d(*)
    real(kind=sp), intent(in) :: l(*)
    real(kind=sp), intent(in) :: ld(*)
    real(kind=sp), intent(in) :: lld(*)
    real(kind=sp), intent(in) :: pivmin
    real(kind=sp), intent(in) :: gaptol
    complex(kind=sp), intent(inout) :: z(*)
    logical(kind=lk), intent(in) :: wantnc
    integer(kind=ilp), intent(out) :: negcnt
    real(kind=sp), intent(out) :: ztz
    real(kind=sp), intent(out) :: mingma
    integer(kind=ilp), intent(inout) :: r
    integer(kind=ilp), intent(out) :: isuppz(*)
    real(kind=sp), intent(out) :: nrminv
    real(kind=sp), intent(out) :: resid
    real(kind=sp), intent(out) :: rqcorr
    real(kind=sp), intent(out) :: work(*)

interface

  • public pure module subroutine stdlib_clarrv(n, vl, vu, d, l, pivmin, isplit, m, dol, dou, minrgp, rtol1, rtol2, w, werr, wgap, iblock, indexw, gers, z, ldz, isuppz, work, iwork, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: n
    real(kind=sp), intent(in) :: vl
    real(kind=sp), intent(in) :: vu
    real(kind=sp), intent(inout) :: d(*)
    real(kind=sp), intent(inout) :: l(*)
    real(kind=sp), intent(in) :: pivmin
    integer(kind=ilp), intent(in) :: isplit(*)
    integer(kind=ilp), intent(in) :: m
    integer(kind=ilp), intent(in) :: dol
    integer(kind=ilp), intent(in) :: dou
    real(kind=sp), intent(in) :: minrgp
    real(kind=sp), intent(inout) :: rtol1
    real(kind=sp), intent(inout) :: rtol2
    real(kind=sp), intent(inout) :: w(*)
    real(kind=sp), intent(inout) :: werr(*)
    real(kind=sp), intent(inout) :: wgap(*)
    integer(kind=ilp), intent(in) :: iblock(*)
    integer(kind=ilp), intent(in) :: indexw(*)
    real(kind=sp), intent(in) :: gers(*)
    complex(kind=sp), intent(out) :: z(ldz,*)
    integer(kind=ilp), intent(in) :: ldz
    integer(kind=ilp), intent(out) :: isuppz(*)
    real(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(out) :: iwork(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_clatrd(uplo, n, nb, a, lda, e, tau, w, ldw)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: uplo
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: nb
    complex(kind=sp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    real(kind=sp), intent(out) :: e(*)
    complex(kind=sp), intent(out) :: tau(*)
    complex(kind=sp), intent(out) :: w(ldw,*)
    integer(kind=ilp), intent(in) :: ldw

interface

  • public pure module subroutine stdlib_cpbstf(uplo, n, kd, ab, ldab, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: uplo
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: kd
    complex(kind=sp), intent(inout) :: ab(ldab,*)
    integer(kind=ilp), intent(in) :: ldab
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_cpteqr(compz, n, d, e, z, ldz, work, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: compz
    integer(kind=ilp), intent(in) :: n
    real(kind=sp), intent(inout) :: d(*)
    real(kind=sp), intent(inout) :: e(*)
    complex(kind=sp), intent(inout) :: z(ldz,*)
    integer(kind=ilp), intent(in) :: ldz
    real(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_cstedc(compz, n, d, e, z, ldz, work, lwork, rwork, lrwork, iwork, liwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: compz
    integer(kind=ilp), intent(in) :: n
    real(kind=sp), intent(inout) :: d(*)
    real(kind=sp), intent(inout) :: e(*)
    complex(kind=sp), intent(inout) :: z(ldz,*)
    integer(kind=ilp), intent(in) :: ldz
    complex(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    real(kind=sp), intent(out) :: rwork(*)
    integer(kind=ilp), intent(in) :: lrwork
    integer(kind=ilp), intent(out) :: iwork(*)
    integer(kind=ilp), intent(in) :: liwork
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_cstegr(jobz, range, n, d, e, vl, vu, il, iu, abstol, m, w, z, ldz, isuppz, work, lwork, iwork, liwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: jobz
    character(len=1), intent(in) :: range
    integer(kind=ilp), intent(in) :: n
    real(kind=sp), intent(inout) :: d(*)
    real(kind=sp), intent(inout) :: e(*)
    real(kind=sp), intent(in) :: vl
    real(kind=sp), intent(in) :: vu
    integer(kind=ilp), intent(in) :: il
    integer(kind=ilp), intent(in) :: iu
    real(kind=sp), intent(in) :: abstol
    integer(kind=ilp), intent(out) :: m
    real(kind=sp), intent(out) :: w(*)
    complex(kind=sp), intent(out) :: z(ldz,*)
    integer(kind=ilp), intent(in) :: ldz
    integer(kind=ilp), intent(out) :: isuppz(*)
    real(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: iwork(*)
    integer(kind=ilp), intent(in) :: liwork
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_cstein(n, d, e, m, w, iblock, isplit, z, ldz, work, iwork, ifail, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: n
    real(kind=sp), intent(in) :: d(*)
    real(kind=sp), intent(in) :: e(*)
    integer(kind=ilp), intent(in) :: m
    real(kind=sp), intent(in) :: w(*)
    integer(kind=ilp), intent(in) :: iblock(*)
    integer(kind=ilp), intent(in) :: isplit(*)
    complex(kind=sp), intent(out) :: z(ldz,*)
    integer(kind=ilp), intent(in) :: ldz
    real(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(out) :: iwork(*)
    integer(kind=ilp), intent(out) :: ifail(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_cstemr(jobz, range, n, d, e, vl, vu, il, iu, m, w, z, ldz, nzc, isuppz, tryrac, work, lwork, iwork, liwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: jobz
    character(len=1), intent(in) :: range
    integer(kind=ilp), intent(in) :: n
    real(kind=sp), intent(inout) :: d(*)
    real(kind=sp), intent(inout) :: e(*)
    real(kind=sp), intent(in) :: vl
    real(kind=sp), intent(in) :: vu
    integer(kind=ilp), intent(in) :: il
    integer(kind=ilp), intent(in) :: iu
    integer(kind=ilp), intent(out) :: m
    real(kind=sp), intent(out) :: w(*)
    complex(kind=sp), intent(out) :: z(ldz,*)
    integer(kind=ilp), intent(in) :: ldz
    integer(kind=ilp), intent(in) :: nzc
    integer(kind=ilp), intent(out) :: isuppz(*)
    logical(kind=lk), intent(inout) :: tryrac
    real(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: iwork(*)
    integer(kind=ilp), intent(in) :: liwork
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_csteqr(compz, n, d, e, z, ldz, work, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: compz
    integer(kind=ilp), intent(in) :: n
    real(kind=sp), intent(inout) :: d(*)
    real(kind=sp), intent(inout) :: e(*)
    complex(kind=sp), intent(inout) :: z(ldz,*)
    integer(kind=ilp), intent(in) :: ldz
    real(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_ctgevc(side, howmny, select, n, s, lds, p, ldp, vl, ldvl, vr, ldvr, mm, m, work, rwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: side
    character(len=1), intent(in) :: howmny
    logical(kind=lk), intent(in) :: select(*)
    integer(kind=ilp), intent(in) :: n
    complex(kind=sp), intent(in) :: s(lds,*)
    integer(kind=ilp), intent(in) :: lds
    complex(kind=sp), intent(in) :: p(ldp,*)
    integer(kind=ilp), intent(in) :: ldp
    complex(kind=sp), intent(inout) :: vl(ldvl,*)
    integer(kind=ilp), intent(in) :: ldvl
    complex(kind=sp), intent(inout) :: vr(ldvr,*)
    integer(kind=ilp), intent(in) :: ldvr
    integer(kind=ilp), intent(in) :: mm
    integer(kind=ilp), intent(out) :: m
    complex(kind=sp), intent(out) :: work(*)
    real(kind=sp), intent(out) :: rwork(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_ctgex2(wantq, wantz, n, a, lda, b, ldb, q, ldq, z, ldz, j1, info)

    Arguments

    Type IntentOptional Attributes Name
    logical(kind=lk), intent(in) :: wantq
    logical(kind=lk), intent(in) :: wantz
    integer(kind=ilp), intent(in) :: n
    complex(kind=sp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    complex(kind=sp), intent(inout) :: b(ldb,*)
    integer(kind=ilp), intent(in) :: ldb
    complex(kind=sp), intent(inout) :: q(ldq,*)
    integer(kind=ilp), intent(in) :: ldq
    complex(kind=sp), intent(inout) :: z(ldz,*)
    integer(kind=ilp), intent(in) :: ldz
    integer(kind=ilp), intent(in) :: j1
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_ctgexc(wantq, wantz, n, a, lda, b, ldb, q, ldq, z, ldz, ifst, ilst, info)

    Arguments

    Type IntentOptional Attributes Name
    logical(kind=lk), intent(in) :: wantq
    logical(kind=lk), intent(in) :: wantz
    integer(kind=ilp), intent(in) :: n
    complex(kind=sp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    complex(kind=sp), intent(inout) :: b(ldb,*)
    integer(kind=ilp), intent(in) :: ldb
    complex(kind=sp), intent(inout) :: q(ldq,*)
    integer(kind=ilp), intent(in) :: ldq
    complex(kind=sp), intent(inout) :: z(ldz,*)
    integer(kind=ilp), intent(in) :: ldz
    integer(kind=ilp), intent(in) :: ifst
    integer(kind=ilp), intent(inout) :: ilst
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_ctgsen(ijob, wantq, wantz, select, n, a, lda, b, ldb, alpha, beta, q, ldq, z, ldz, m, pl, pr, dif, work, lwork, iwork, liwork, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: ijob
    logical(kind=lk), intent(in) :: wantq
    logical(kind=lk), intent(in) :: wantz
    logical(kind=lk), intent(in) :: select(*)
    integer(kind=ilp), intent(in) :: n
    complex(kind=sp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    complex(kind=sp), intent(inout) :: b(ldb,*)
    integer(kind=ilp), intent(in) :: ldb
    complex(kind=sp), intent(out) :: alpha(*)
    complex(kind=sp), intent(out) :: beta(*)
    complex(kind=sp), intent(inout) :: q(ldq,*)
    integer(kind=ilp), intent(in) :: ldq
    complex(kind=sp), intent(inout) :: z(ldz,*)
    integer(kind=ilp), intent(in) :: ldz
    integer(kind=ilp), intent(out) :: m
    real(kind=sp), intent(out) :: pl
    real(kind=sp), intent(out) :: pr
    real(kind=sp), intent(out) :: dif(*)
    complex(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: iwork(*)
    integer(kind=ilp), intent(in) :: liwork
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_ctgsja(jobu, jobv, jobq, m, p, n, k, l, a, lda, b, ldb, tola, tolb, alpha, beta, u, ldu, v, ldv, q, ldq, work, ncycle, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: jobu
    character(len=1), intent(in) :: jobv
    character(len=1), intent(in) :: jobq
    integer(kind=ilp), intent(in) :: m
    integer(kind=ilp), intent(in) :: p
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: k
    integer(kind=ilp), intent(in) :: l
    complex(kind=sp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    complex(kind=sp), intent(inout) :: b(ldb,*)
    integer(kind=ilp), intent(in) :: ldb
    real(kind=sp), intent(in) :: tola
    real(kind=sp), intent(in) :: tolb
    real(kind=sp), intent(out) :: alpha(*)
    real(kind=sp), intent(out) :: beta(*)
    complex(kind=sp), intent(inout) :: u(ldu,*)
    integer(kind=ilp), intent(in) :: ldu
    complex(kind=sp), intent(inout) :: v(ldv,*)
    integer(kind=ilp), intent(in) :: ldv
    complex(kind=sp), intent(inout) :: q(ldq,*)
    integer(kind=ilp), intent(in) :: ldq
    complex(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(out) :: ncycle
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_ctgsna(job, howmny, select, n, a, lda, b, ldb, vl, ldvl, vr, ldvr, s, dif, mm, m, work, lwork, iwork, info)

    Arguments

    Type IntentOptional 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

interface

  • public pure module subroutine stdlib_ctgsy2(trans, ijob, m, n, a, lda, b, ldb, c, ldc, d, ldd, e, lde, f, ldf, scale, rdsum, rdscal, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: trans
    integer(kind=ilp), intent(in) :: ijob
    integer(kind=ilp), intent(in) :: m
    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(inout) :: c(ldc,*)
    integer(kind=ilp), intent(in) :: ldc
    complex(kind=sp), intent(in) :: d(ldd,*)
    integer(kind=ilp), intent(in) :: ldd
    complex(kind=sp), intent(in) :: e(lde,*)
    integer(kind=ilp), intent(in) :: lde
    complex(kind=sp), intent(inout) :: f(ldf,*)
    integer(kind=ilp), intent(in) :: ldf
    real(kind=sp), intent(out) :: scale
    real(kind=sp), intent(inout) :: rdsum
    real(kind=sp), intent(inout) :: rdscal
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_ctgsyl(trans, ijob, m, n, a, lda, b, ldb, c, ldc, d, ldd, e, lde, f, ldf, scale, dif, work, lwork, iwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: trans
    integer(kind=ilp), intent(in) :: ijob
    integer(kind=ilp), intent(in) :: m
    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(inout) :: c(ldc,*)
    integer(kind=ilp), intent(in) :: ldc
    complex(kind=sp), intent(in) :: d(ldd,*)
    integer(kind=ilp), intent(in) :: ldd
    complex(kind=sp), intent(in) :: e(lde,*)
    integer(kind=ilp), intent(in) :: lde
    complex(kind=sp), intent(inout) :: f(ldf,*)
    integer(kind=ilp), intent(in) :: ldf
    real(kind=sp), intent(out) :: scale
    real(kind=sp), intent(out) :: dif
    complex(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: iwork(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_ctrevc(side, howmny, select, n, t, ldt, vl, ldvl, vr, ldvr, mm, m, work, rwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: side
    character(len=1), intent(in) :: howmny
    logical(kind=lk), intent(in) :: select(*)
    integer(kind=ilp), intent(in) :: n
    complex(kind=sp), intent(inout) :: t(ldt,*)
    integer(kind=ilp), intent(in) :: ldt
    complex(kind=sp), intent(inout) :: vl(ldvl,*)
    integer(kind=ilp), intent(in) :: ldvl
    complex(kind=sp), intent(inout) :: vr(ldvr,*)
    integer(kind=ilp), intent(in) :: ldvr
    integer(kind=ilp), intent(in) :: mm
    integer(kind=ilp), intent(out) :: m
    complex(kind=sp), intent(out) :: work(*)
    real(kind=sp), intent(out) :: rwork(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_ctrevc3(side, howmny, select, n, t, ldt, vl, ldvl, vr, ldvr, mm, m, work, lwork, rwork, lrwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: side
    character(len=1), intent(in) :: howmny
    logical(kind=lk), intent(in) :: select(*)
    integer(kind=ilp), intent(in) :: n
    complex(kind=sp), intent(inout) :: t(ldt,*)
    integer(kind=ilp), intent(in) :: ldt
    complex(kind=sp), intent(inout) :: vl(ldvl,*)
    integer(kind=ilp), intent(in) :: ldvl
    complex(kind=sp), intent(inout) :: vr(ldvr,*)
    integer(kind=ilp), intent(in) :: ldvr
    integer(kind=ilp), intent(in) :: mm
    integer(kind=ilp), intent(out) :: m
    complex(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    real(kind=sp), intent(out) :: rwork(*)
    integer(kind=ilp), intent(in) :: lrwork
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_ctrexc(compq, n, t, ldt, q, ldq, ifst, ilst, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: compq
    integer(kind=ilp), intent(in) :: n
    complex(kind=sp), intent(inout) :: t(ldt,*)
    integer(kind=ilp), intent(in) :: ldt
    complex(kind=sp), intent(inout) :: q(ldq,*)
    integer(kind=ilp), intent(in) :: ldq
    integer(kind=ilp), intent(in) :: ifst
    integer(kind=ilp), intent(in) :: ilst
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_ctrsen(job, compq, select, n, t, ldt, q, ldq, w, m, s, sep, work, lwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: job
    character(len=1), intent(in) :: compq
    logical(kind=lk), intent(in) :: select(*)
    integer(kind=ilp), intent(in) :: n
    complex(kind=sp), intent(inout) :: t(ldt,*)
    integer(kind=ilp), intent(in) :: ldt
    complex(kind=sp), intent(inout) :: q(ldq,*)
    integer(kind=ilp), intent(in) :: ldq
    complex(kind=sp), intent(out) :: w(*)
    integer(kind=ilp), intent(out) :: m
    real(kind=sp), intent(out) :: s
    real(kind=sp), intent(out) :: sep
    complex(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_ctrsna(job, howmny, select, n, t, ldt, vl, ldvl, vr, ldvr, s, sep, mm, m, work, ldwork, rwork, info)

    Arguments

    Type IntentOptional 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) :: t(ldt,*)
    integer(kind=ilp), intent(in) :: ldt
    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) :: sep(*)
    integer(kind=ilp), intent(in) :: mm
    integer(kind=ilp), intent(out) :: m
    complex(kind=sp), intent(out) :: work(ldwork,*)
    integer(kind=ilp), intent(in) :: ldwork
    real(kind=sp), intent(out) :: rwork(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_ctrsyl(trana, tranb, isgn, m, n, a, lda, b, ldb, c, ldc, scale, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: trana
    character(len=1), intent(in) :: tranb
    integer(kind=ilp), intent(in) :: isgn
    integer(kind=ilp), intent(in) :: m
    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(inout) :: c(ldc,*)
    integer(kind=ilp), intent(in) :: ldc
    real(kind=sp), intent(out) :: scale
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_cunbdb(trans, signs, m, p, q, x11, ldx11, x12, ldx12, x21, ldx21, x22, ldx22, theta, phi, taup1, taup2, tauq1, tauq2, work, lwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: trans
    character(len=1), intent(in) :: signs
    integer(kind=ilp), intent(in) :: m
    integer(kind=ilp), intent(in) :: p
    integer(kind=ilp), intent(in) :: q
    complex(kind=sp), intent(inout) :: x11(ldx11,*)
    integer(kind=ilp), intent(in) :: ldx11
    complex(kind=sp), intent(inout) :: x12(ldx12,*)
    integer(kind=ilp), intent(in) :: ldx12
    complex(kind=sp), intent(inout) :: x21(ldx21,*)
    integer(kind=ilp), intent(in) :: ldx21
    complex(kind=sp), intent(inout) :: x22(ldx22,*)
    integer(kind=ilp), intent(in) :: ldx22
    real(kind=sp), intent(out) :: theta(*)
    real(kind=sp), intent(out) :: phi(*)
    complex(kind=sp), intent(out) :: taup1(*)
    complex(kind=sp), intent(out) :: taup2(*)
    complex(kind=sp), intent(out) :: tauq1(*)
    complex(kind=sp), intent(out) :: tauq2(*)
    complex(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_cunbdb1(m, p, q, x11, ldx11, x21, ldx21, theta, phi, taup1, taup2, tauq1, work, lwork, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: m
    integer(kind=ilp), intent(in) :: p
    integer(kind=ilp), intent(in) :: q
    complex(kind=sp), intent(inout) :: x11(ldx11,*)
    integer(kind=ilp), intent(in) :: ldx11
    complex(kind=sp), intent(inout) :: x21(ldx21,*)
    integer(kind=ilp), intent(in) :: ldx21
    real(kind=sp), intent(out) :: theta(*)
    real(kind=sp), intent(out) :: phi(*)
    complex(kind=sp), intent(out) :: taup1(*)
    complex(kind=sp), intent(out) :: taup2(*)
    complex(kind=sp), intent(out) :: tauq1(*)
    complex(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_cunbdb2(m, p, q, x11, ldx11, x21, ldx21, theta, phi, taup1, taup2, tauq1, work, lwork, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: m
    integer(kind=ilp), intent(in) :: p
    integer(kind=ilp), intent(in) :: q
    complex(kind=sp), intent(inout) :: x11(ldx11,*)
    integer(kind=ilp), intent(in) :: ldx11
    complex(kind=sp), intent(inout) :: x21(ldx21,*)
    integer(kind=ilp), intent(in) :: ldx21
    real(kind=sp), intent(out) :: theta(*)
    real(kind=sp), intent(out) :: phi(*)
    complex(kind=sp), intent(out) :: taup1(*)
    complex(kind=sp), intent(out) :: taup2(*)
    complex(kind=sp), intent(out) :: tauq1(*)
    complex(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_cunbdb3(m, p, q, x11, ldx11, x21, ldx21, theta, phi, taup1, taup2, tauq1, work, lwork, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: m
    integer(kind=ilp), intent(in) :: p
    integer(kind=ilp), intent(in) :: q
    complex(kind=sp), intent(inout) :: x11(ldx11,*)
    integer(kind=ilp), intent(in) :: ldx11
    complex(kind=sp), intent(inout) :: x21(ldx21,*)
    integer(kind=ilp), intent(in) :: ldx21
    real(kind=sp), intent(out) :: theta(*)
    real(kind=sp), intent(out) :: phi(*)
    complex(kind=sp), intent(out) :: taup1(*)
    complex(kind=sp), intent(out) :: taup2(*)
    complex(kind=sp), intent(out) :: tauq1(*)
    complex(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_cunbdb4(m, p, q, x11, ldx11, x21, ldx21, theta, phi, taup1, taup2, tauq1, phantom, work, lwork, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: m
    integer(kind=ilp), intent(in) :: p
    integer(kind=ilp), intent(in) :: q
    complex(kind=sp), intent(inout) :: x11(ldx11,*)
    integer(kind=ilp), intent(in) :: ldx11
    complex(kind=sp), intent(inout) :: x21(ldx21,*)
    integer(kind=ilp), intent(in) :: ldx21
    real(kind=sp), intent(out) :: theta(*)
    real(kind=sp), intent(out) :: phi(*)
    complex(kind=sp), intent(out) :: taup1(*)
    complex(kind=sp), intent(out) :: taup2(*)
    complex(kind=sp), intent(out) :: tauq1(*)
    complex(kind=sp), intent(out) :: phantom(*)
    complex(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_cunbdb5(m1, m2, n, x1, incx1, x2, incx2, q1, ldq1, q2, ldq2, work, lwork, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: m1
    integer(kind=ilp), intent(in) :: m2
    integer(kind=ilp), intent(in) :: n
    complex(kind=sp), intent(inout) :: x1(*)
    integer(kind=ilp), intent(in) :: incx1
    complex(kind=sp), intent(inout) :: x2(*)
    integer(kind=ilp), intent(in) :: incx2
    complex(kind=sp), intent(in) :: q1(ldq1,*)
    integer(kind=ilp), intent(in) :: ldq1
    complex(kind=sp), intent(in) :: q2(ldq2,*)
    integer(kind=ilp), intent(in) :: ldq2
    complex(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_cunbdb6(m1, m2, n, x1, incx1, x2, incx2, q1, ldq1, q2, ldq2, work, lwork, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: m1
    integer(kind=ilp), intent(in) :: m2
    integer(kind=ilp), intent(in) :: n
    complex(kind=sp), intent(inout) :: x1(*)
    integer(kind=ilp), intent(in) :: incx1
    complex(kind=sp), intent(inout) :: x2(*)
    integer(kind=ilp), intent(in) :: incx2
    complex(kind=sp), intent(in) :: q1(ldq1,*)
    integer(kind=ilp), intent(in) :: ldq1
    complex(kind=sp), intent(in) :: q2(ldq2,*)
    integer(kind=ilp), intent(in) :: ldq2
    complex(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: info

interface

  • public recursive module subroutine stdlib_cuncsd(jobu1, jobu2, jobv1t, jobv2t, trans, signs, m, p, q, x11, ldx11, x12, ldx12, x21, ldx21, x22, ldx22, theta, u1, ldu1, u2, ldu2, v1t, ldv1t, v2t, ldv2t, work, lwork, rwork, lrwork, iwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: jobu1
    character(len=1), intent(in) :: jobu2
    character(len=1), intent(in) :: jobv1t
    character(len=1), intent(in) :: jobv2t
    character(len=1), intent(in) :: trans
    character(len=1), intent(in) :: signs
    integer(kind=ilp), intent(in) :: m
    integer(kind=ilp), intent(in) :: p
    integer(kind=ilp), intent(in) :: q
    complex(kind=sp), intent(inout) :: x11(ldx11,*)
    integer(kind=ilp), intent(in) :: ldx11
    complex(kind=sp), intent(inout) :: x12(ldx12,*)
    integer(kind=ilp), intent(in) :: ldx12
    complex(kind=sp), intent(inout) :: x21(ldx21,*)
    integer(kind=ilp), intent(in) :: ldx21
    complex(kind=sp), intent(inout) :: x22(ldx22,*)
    integer(kind=ilp), intent(in) :: ldx22
    real(kind=sp), intent(out) :: theta(*)
    complex(kind=sp), intent(out) :: u1(ldu1,*)
    integer(kind=ilp), intent(in) :: ldu1
    complex(kind=sp), intent(out) :: u2(ldu2,*)
    integer(kind=ilp), intent(in) :: ldu2
    complex(kind=sp), intent(out) :: v1t(ldv1t,*)
    integer(kind=ilp), intent(in) :: ldv1t
    complex(kind=sp), intent(out) :: v2t(ldv2t,*)
    integer(kind=ilp), intent(in) :: ldv2t
    complex(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    real(kind=sp), intent(out) :: rwork(*)
    integer(kind=ilp), intent(in) :: lrwork
    integer(kind=ilp), intent(out) :: iwork(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_cuncsd2by1(jobu1, jobu2, jobv1t, m, p, q, x11, ldx11, x21, ldx21, theta, u1, ldu1, u2, ldu2, v1t, ldv1t, work, lwork, rwork, lrwork, iwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: jobu1
    character(len=1), intent(in) :: jobu2
    character(len=1), intent(in) :: jobv1t
    integer(kind=ilp), intent(in) :: m
    integer(kind=ilp), intent(in) :: p
    integer(kind=ilp), intent(in) :: q
    complex(kind=sp), intent(inout) :: x11(ldx11,*)
    integer(kind=ilp), intent(in) :: ldx11
    complex(kind=sp), intent(inout) :: x21(ldx21,*)
    integer(kind=ilp), intent(in) :: ldx21
    real(kind=sp), intent(out) :: theta(*)
    complex(kind=sp), intent(out) :: u1(ldu1,*)
    integer(kind=ilp), intent(in) :: ldu1
    complex(kind=sp), intent(out) :: u2(ldu2,*)
    integer(kind=ilp), intent(in) :: ldu2
    complex(kind=sp), intent(out) :: v1t(ldv1t,*)
    integer(kind=ilp), intent(in) :: ldv1t
    complex(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    real(kind=sp), intent(out) :: rwork(*)
    integer(kind=ilp), intent(in) :: lrwork
    integer(kind=ilp), intent(out) :: iwork(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_cungbr(vect, m, n, k, a, lda, tau, work, lwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: vect
    integer(kind=ilp), intent(in) :: m
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: k
    complex(kind=sp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    complex(kind=sp), intent(in) :: tau(*)
    complex(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_cunghr(n, ilo, ihi, a, lda, tau, work, lwork, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: ilo
    integer(kind=ilp), intent(in) :: ihi
    complex(kind=sp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    complex(kind=sp), intent(in) :: tau(*)
    complex(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_cungtr(uplo, n, a, lda, tau, work, lwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: uplo
    integer(kind=ilp), intent(in) :: n
    complex(kind=sp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    complex(kind=sp), intent(in) :: tau(*)
    complex(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_cunmbr(vect, side, trans, m, n, k, a, lda, tau, c, ldc, work, lwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: vect
    character(len=1), intent(in) :: side
    character(len=1), intent(in) :: trans
    integer(kind=ilp), intent(in) :: m
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: k
    complex(kind=sp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    complex(kind=sp), intent(in) :: tau(*)
    complex(kind=sp), intent(inout) :: c(ldc,*)
    integer(kind=ilp), intent(in) :: ldc
    complex(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_cunmhr(side, trans, m, n, ilo, ihi, a, lda, tau, c, ldc, work, lwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: side
    character(len=1), intent(in) :: trans
    integer(kind=ilp), intent(in) :: m
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: ilo
    integer(kind=ilp), intent(in) :: ihi
    complex(kind=sp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    complex(kind=sp), intent(in) :: tau(*)
    complex(kind=sp), intent(inout) :: c(ldc,*)
    integer(kind=ilp), intent(in) :: ldc
    complex(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_cunmtr(side, uplo, trans, m, n, a, lda, tau, c, ldc, work, lwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: side
    character(len=1), intent(in) :: uplo
    character(len=1), intent(in) :: trans
    integer(kind=ilp), intent(in) :: m
    integer(kind=ilp), intent(in) :: n
    complex(kind=sp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    complex(kind=sp), intent(in) :: tau(*)
    complex(kind=sp), intent(inout) :: c(ldc,*)
    integer(kind=ilp), intent(in) :: ldc
    complex(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_cupgtr(uplo, n, ap, tau, q, ldq, work, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: uplo
    integer(kind=ilp), intent(in) :: n
    complex(kind=sp), intent(in) :: ap(*)
    complex(kind=sp), intent(in) :: tau(*)
    complex(kind=sp), intent(out) :: q(ldq,*)
    integer(kind=ilp), intent(in) :: ldq
    complex(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_cupmtr(side, uplo, trans, m, n, ap, tau, c, ldc, work, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: side
    character(len=1), intent(in) :: uplo
    character(len=1), intent(in) :: trans
    integer(kind=ilp), intent(in) :: m
    integer(kind=ilp), intent(in) :: n
    complex(kind=sp), intent(inout) :: ap(*)
    complex(kind=sp), intent(in) :: tau(*)
    complex(kind=sp), intent(inout) :: c(ldc,*)
    integer(kind=ilp), intent(in) :: ldc
    complex(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_dbbcsd(jobu1, jobu2, jobv1t, jobv2t, trans, m, p, q, theta, phi, u1, ldu1, u2, ldu2, v1t, ldv1t, v2t, ldv2t, b11d, b11e, b12d, b12e, b21d, b21e, b22d, b22e, work, lwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: jobu1
    character(len=1), intent(in) :: jobu2
    character(len=1), intent(in) :: jobv1t
    character(len=1), intent(in) :: jobv2t
    character(len=1), intent(in) :: trans
    integer(kind=ilp), intent(in) :: m
    integer(kind=ilp), intent(in) :: p
    integer(kind=ilp), intent(in) :: q
    real(kind=dp), intent(inout) :: theta(*)
    real(kind=dp), intent(inout) :: phi(*)
    real(kind=dp), intent(inout) :: u1(ldu1,*)
    integer(kind=ilp), intent(in) :: ldu1
    real(kind=dp), intent(inout) :: u2(ldu2,*)
    integer(kind=ilp), intent(in) :: ldu2
    real(kind=dp), intent(inout) :: v1t(ldv1t,*)
    integer(kind=ilp), intent(in) :: ldv1t
    real(kind=dp), intent(inout) :: v2t(ldv2t,*)
    integer(kind=ilp), intent(in) :: ldv2t
    real(kind=dp), intent(out) :: b11d(*)
    real(kind=dp), intent(out) :: b11e(*)
    real(kind=dp), intent(out) :: b12d(*)
    real(kind=dp), intent(out) :: b12e(*)
    real(kind=dp), intent(out) :: b21d(*)
    real(kind=dp), intent(out) :: b21e(*)
    real(kind=dp), intent(out) :: b22d(*)
    real(kind=dp), intent(out) :: b22e(*)
    real(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_dbdsdc(uplo, compq, n, d, e, u, ldu, vt, ldvt, q, iq, work, iwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: uplo
    character(len=1), intent(in) :: compq
    integer(kind=ilp), intent(in) :: n
    real(kind=dp), intent(inout) :: d(*)
    real(kind=dp), intent(inout) :: e(*)
    real(kind=dp), intent(out) :: u(ldu,*)
    integer(kind=ilp), intent(in) :: ldu
    real(kind=dp), intent(out) :: vt(ldvt,*)
    integer(kind=ilp), intent(in) :: ldvt
    real(kind=dp), intent(out) :: q(*)
    integer(kind=ilp), intent(out) :: iq(*)
    real(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(out) :: iwork(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_dbdsqr(uplo, n, ncvt, nru, ncc, d, e, vt, ldvt, u, ldu, c, ldc, work, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: uplo
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: ncvt
    integer(kind=ilp), intent(in) :: nru
    integer(kind=ilp), intent(in) :: ncc
    real(kind=dp), intent(inout) :: d(*)
    real(kind=dp), intent(inout) :: e(*)
    real(kind=dp), intent(inout) :: vt(ldvt,*)
    integer(kind=ilp), intent(in) :: ldvt
    real(kind=dp), intent(inout) :: u(ldu,*)
    integer(kind=ilp), intent(in) :: ldu
    real(kind=dp), intent(inout) :: c(ldc,*)
    integer(kind=ilp), intent(in) :: ldc
    real(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_ddisna(job, m, n, d, sep, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: job
    integer(kind=ilp), intent(in) :: m
    integer(kind=ilp), intent(in) :: n
    real(kind=dp), intent(in) :: d(*)
    real(kind=dp), intent(out) :: sep(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_dgbbrd(vect, m, n, ncc, kl, ku, ab, ldab, d, e, q, ldq, pt, ldpt, c, ldc, work, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: vect
    integer(kind=ilp), intent(in) :: m
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: ncc
    integer(kind=ilp), intent(in) :: kl
    integer(kind=ilp), intent(in) :: ku
    real(kind=dp), intent(inout) :: ab(ldab,*)
    integer(kind=ilp), intent(in) :: ldab
    real(kind=dp), intent(out) :: d(*)
    real(kind=dp), intent(out) :: e(*)
    real(kind=dp), intent(out) :: q(ldq,*)
    integer(kind=ilp), intent(in) :: ldq
    real(kind=dp), intent(out) :: pt(ldpt,*)
    integer(kind=ilp), intent(in) :: ldpt
    real(kind=dp), intent(inout) :: c(ldc,*)
    integer(kind=ilp), intent(in) :: ldc
    real(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_dgebak(job, side, n, ilo, ihi, scale, m, v, ldv, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: job
    character(len=1), intent(in) :: side
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: ilo
    integer(kind=ilp), intent(in) :: ihi
    real(kind=dp), intent(in) :: scale(*)
    integer(kind=ilp), intent(in) :: m
    real(kind=dp), intent(inout) :: v(ldv,*)
    integer(kind=ilp), intent(in) :: ldv
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_dgebal(job, n, a, lda, ilo, ihi, scale, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: job
    integer(kind=ilp), intent(in) :: n
    real(kind=dp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    integer(kind=ilp), intent(out) :: ilo
    integer(kind=ilp), intent(out) :: ihi
    real(kind=dp), intent(out) :: scale(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_dgebd2(m, n, a, lda, d, e, tauq, taup, work, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: m
    integer(kind=ilp), intent(in) :: n
    real(kind=dp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    real(kind=dp), intent(out) :: d(*)
    real(kind=dp), intent(out) :: e(*)
    real(kind=dp), intent(out) :: tauq(*)
    real(kind=dp), intent(out) :: taup(*)
    real(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_dgebrd(m, n, a, lda, d, e, tauq, taup, work, lwork, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: m
    integer(kind=ilp), intent(in) :: n
    real(kind=dp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    real(kind=dp), intent(out) :: d(*)
    real(kind=dp), intent(out) :: e(*)
    real(kind=dp), intent(out) :: tauq(*)
    real(kind=dp), intent(out) :: taup(*)
    real(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_dgees(jobvs, sort, select, n, a, lda, sdim, wr, wi, vs, ldvs, work, lwork, bwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: jobvs
    character(len=1), intent(in) :: sort
    procedure(stdlib_select_d) :: select
    integer(kind=ilp), intent(in) :: n
    real(kind=dp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    integer(kind=ilp), intent(out) :: sdim
    real(kind=dp), intent(out) :: wr(*)
    real(kind=dp), intent(out) :: wi(*)
    real(kind=dp), intent(out) :: vs(ldvs,*)
    integer(kind=ilp), intent(in) :: ldvs
    real(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    logical(kind=lk), intent(out) :: bwork(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_dgeesx(jobvs, sort, select, sense, n, a, lda, sdim, wr, wi, vs, ldvs, rconde, rcondv, work, lwork, iwork, liwork, bwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: jobvs
    character(len=1), intent(in) :: sort
    procedure(stdlib_select_d) :: select
    character(len=1), intent(in) :: sense
    integer(kind=ilp), intent(in) :: n
    real(kind=dp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    integer(kind=ilp), intent(out) :: sdim
    real(kind=dp), intent(out) :: wr(*)
    real(kind=dp), intent(out) :: wi(*)
    real(kind=dp), intent(out) :: vs(ldvs,*)
    integer(kind=ilp), intent(in) :: ldvs
    real(kind=dp), intent(out) :: rconde
    real(kind=dp), intent(out) :: rcondv
    real(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: iwork(*)
    integer(kind=ilp), intent(in) :: liwork
    logical(kind=lk), intent(out) :: bwork(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_dgeev(jobvl, jobvr, n, a, lda, wr, wi, vl, ldvl, vr, ldvr, work, lwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: jobvl
    character(len=1), intent(in) :: jobvr
    integer(kind=ilp), intent(in) :: n
    real(kind=dp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    real(kind=dp), intent(out) :: wr(*)
    real(kind=dp), intent(out) :: wi(*)
    real(kind=dp), intent(out) :: vl(ldvl,*)
    integer(kind=ilp), intent(in) :: ldvl
    real(kind=dp), intent(out) :: vr(ldvr,*)
    integer(kind=ilp), intent(in) :: ldvr
    real(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_dgeevx(balanc, jobvl, jobvr, sense, n, a, lda, wr, wi, vl, ldvl, vr, ldvr, ilo, ihi, scale, abnrm, rconde, rcondv, work, lwork, iwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: balanc
    character(len=1), intent(in) :: jobvl
    character(len=1), intent(in) :: jobvr
    character(len=1), intent(in) :: sense
    integer(kind=ilp), intent(in) :: n
    real(kind=dp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    real(kind=dp), intent(out) :: wr(*)
    real(kind=dp), intent(out) :: wi(*)
    real(kind=dp), intent(out) :: vl(ldvl,*)
    integer(kind=ilp), intent(in) :: ldvl
    real(kind=dp), intent(out) :: vr(ldvr,*)
    integer(kind=ilp), intent(in) :: ldvr
    integer(kind=ilp), intent(out) :: ilo
    integer(kind=ilp), intent(out) :: ihi
    real(kind=dp), intent(out) :: scale(*)
    real(kind=dp), intent(out) :: abnrm
    real(kind=dp), intent(out) :: rconde(*)
    real(kind=dp), intent(out) :: rcondv(*)
    real(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: iwork(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_dgehd2(n, ilo, ihi, a, lda, tau, work, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: ilo
    integer(kind=ilp), intent(in) :: ihi
    real(kind=dp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    real(kind=dp), intent(out) :: tau(*)
    real(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_dgehrd(n, ilo, ihi, a, lda, tau, work, lwork, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: ilo
    integer(kind=ilp), intent(in) :: ihi
    real(kind=dp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    real(kind=dp), intent(out) :: tau(*)
    real(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_dgejsv(joba, jobu, jobv, jobr, jobt, jobp, m, n, a, lda, sva, u, ldu, v, ldv, work, lwork, iwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: joba
    character(len=1), intent(in) :: jobu
    character(len=1), intent(in) :: jobv
    character(len=1), intent(in) :: jobr
    character(len=1), intent(in) :: jobt
    character(len=1), intent(in) :: jobp
    integer(kind=ilp), intent(in) :: m
    integer(kind=ilp), intent(in) :: n
    real(kind=dp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    real(kind=dp), intent(out) :: sva(n)
    real(kind=dp), intent(out) :: u(ldu,*)
    integer(kind=ilp), intent(in) :: ldu
    real(kind=dp), intent(out) :: v(ldv,*)
    integer(kind=ilp), intent(in) :: ldv
    real(kind=dp), intent(out) :: work(lwork)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: iwork(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_dgels(trans, m, n, nrhs, a, lda, b, ldb, work, lwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: trans
    integer(kind=ilp), intent(in) :: m
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: nrhs
    real(kind=dp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    real(kind=dp), intent(inout) :: b(ldb,*)
    integer(kind=ilp), intent(in) :: ldb
    real(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_dgelsd(m, n, nrhs, a, lda, b, ldb, s, rcond, rank, work, lwork, iwork, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: m
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: nrhs
    real(kind=dp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    real(kind=dp), intent(inout) :: b(ldb,*)
    integer(kind=ilp), intent(in) :: ldb
    real(kind=dp), intent(out) :: s(*)
    real(kind=dp), intent(in) :: rcond
    integer(kind=ilp), intent(out) :: rank
    real(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: iwork(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_dgelss(m, n, nrhs, a, lda, b, ldb, s, rcond, rank, work, lwork, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: m
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: nrhs
    real(kind=dp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    real(kind=dp), intent(inout) :: b(ldb,*)
    integer(kind=ilp), intent(in) :: ldb
    real(kind=dp), intent(out) :: s(*)
    real(kind=dp), intent(in) :: rcond
    integer(kind=ilp), intent(out) :: rank
    real(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_dgelsy(m, n, nrhs, a, lda, b, ldb, jpvt, rcond, rank, work, lwork, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: m
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: nrhs
    real(kind=dp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    real(kind=dp), intent(inout) :: b(ldb,*)
    integer(kind=ilp), intent(in) :: ldb
    integer(kind=ilp), intent(inout) :: jpvt(*)
    real(kind=dp), intent(in) :: rcond
    integer(kind=ilp), intent(out) :: rank
    real(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_dgesdd(jobz, m, n, a, lda, s, u, ldu, vt, ldvt, work, lwork, iwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: jobz
    integer(kind=ilp), intent(in) :: m
    integer(kind=ilp), intent(in) :: n
    real(kind=dp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    real(kind=dp), intent(out) :: s(*)
    real(kind=dp), intent(out) :: u(ldu,*)
    integer(kind=ilp), intent(in) :: ldu
    real(kind=dp), intent(out) :: vt(ldvt,*)
    integer(kind=ilp), intent(in) :: ldvt
    real(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: iwork(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_dgesvd(jobu, jobvt, m, n, a, lda, s, u, ldu, vt, ldvt, work, lwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: jobu
    character(len=1), intent(in) :: jobvt
    integer(kind=ilp), intent(in) :: m
    integer(kind=ilp), intent(in) :: n
    real(kind=dp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    real(kind=dp), intent(out) :: s(*)
    real(kind=dp), intent(out) :: u(ldu,*)
    integer(kind=ilp), intent(in) :: ldu
    real(kind=dp), intent(out) :: vt(ldvt,*)
    integer(kind=ilp), intent(in) :: ldvt
    real(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_dgesvdq(joba, jobp, jobr, jobu, jobv, m, n, a, lda, s, u, ldu, v, ldv, numrank, iwork, liwork, work, lwork, rwork, lrwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: joba
    character(len=1), intent(in) :: jobp
    character(len=1), intent(in) :: jobr
    character(len=1), intent(in) :: jobu
    character(len=1), intent(in) :: jobv
    integer(kind=ilp), intent(in) :: m
    integer(kind=ilp), intent(in) :: n
    real(kind=dp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    real(kind=dp), intent(out) :: s(*)
    real(kind=dp), intent(out) :: u(ldu,*)
    integer(kind=ilp), intent(in) :: ldu
    real(kind=dp), intent(out) :: v(ldv,*)
    integer(kind=ilp), intent(in) :: ldv
    integer(kind=ilp), intent(out) :: numrank
    integer(kind=ilp), intent(out) :: iwork(*)
    integer(kind=ilp), intent(in) :: liwork
    real(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(inout) :: lwork
    real(kind=dp), intent(out) :: rwork(*)
    integer(kind=ilp), intent(in) :: lrwork
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_dgesvj(joba, jobu, jobv, m, n, a, lda, sva, mv, v, ldv, work, lwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: joba
    character(len=1), intent(in) :: jobu
    character(len=1), intent(in) :: jobv
    integer(kind=ilp), intent(in) :: m
    integer(kind=ilp), intent(in) :: n
    real(kind=dp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    real(kind=dp), intent(out) :: sva(n)
    integer(kind=ilp), intent(in) :: mv
    real(kind=dp), intent(inout) :: v(ldv,*)
    integer(kind=ilp), intent(in) :: ldv
    real(kind=dp), intent(inout) :: work(lwork)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_dgetsls(trans, m, n, nrhs, a, lda, b, ldb, work, lwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: trans
    integer(kind=ilp), intent(in) :: m
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: nrhs
    real(kind=dp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    real(kind=dp), intent(inout) :: b(ldb,*)
    integer(kind=ilp), intent(in) :: ldb
    real(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_dggbak(job, side, n, ilo, ihi, lscale, rscale, m, v, ldv, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: job
    character(len=1), intent(in) :: side
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: ilo
    integer(kind=ilp), intent(in) :: ihi
    real(kind=dp), intent(in) :: lscale(*)
    real(kind=dp), intent(in) :: rscale(*)
    integer(kind=ilp), intent(in) :: m
    real(kind=dp), intent(inout) :: v(ldv,*)
    integer(kind=ilp), intent(in) :: ldv
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_dggbal(job, n, a, lda, b, ldb, ilo, ihi, lscale, rscale, work, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: job
    integer(kind=ilp), intent(in) :: n
    real(kind=dp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    real(kind=dp), intent(inout) :: b(ldb,*)
    integer(kind=ilp), intent(in) :: ldb
    integer(kind=ilp), intent(out) :: ilo
    integer(kind=ilp), intent(out) :: ihi
    real(kind=dp), intent(out) :: lscale(*)
    real(kind=dp), intent(out) :: rscale(*)
    real(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_dgges(jobvsl, jobvsr, sort, selctg, n, a, lda, b, ldb, sdim, alphar, alphai, beta, vsl, ldvsl, vsr, ldvsr, work, lwork, bwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: jobvsl
    character(len=1), intent(in) :: jobvsr
    character(len=1), intent(in) :: sort
    procedure(stdlib_selctg_d) :: selctg
    integer(kind=ilp), intent(in) :: n
    real(kind=dp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    real(kind=dp), intent(inout) :: b(ldb,*)
    integer(kind=ilp), intent(in) :: ldb
    integer(kind=ilp), intent(out) :: sdim
    real(kind=dp), intent(out) :: alphar(*)
    real(kind=dp), intent(out) :: alphai(*)
    real(kind=dp), intent(out) :: beta(*)
    real(kind=dp), intent(out) :: vsl(ldvsl,*)
    integer(kind=ilp), intent(in) :: ldvsl
    real(kind=dp), intent(out) :: vsr(ldvsr,*)
    integer(kind=ilp), intent(in) :: ldvsr
    real(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    logical(kind=lk), intent(out) :: bwork(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_dgges3(jobvsl, jobvsr, sort, selctg, n, a, lda, b, ldb, sdim, alphar, alphai, beta, vsl, ldvsl, vsr, ldvsr, work, lwork, bwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: jobvsl
    character(len=1), intent(in) :: jobvsr
    character(len=1), intent(in) :: sort
    procedure(stdlib_selctg_d) :: selctg
    integer(kind=ilp), intent(in) :: n
    real(kind=dp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    real(kind=dp), intent(inout) :: b(ldb,*)
    integer(kind=ilp), intent(in) :: ldb
    integer(kind=ilp), intent(out) :: sdim
    real(kind=dp), intent(out) :: alphar(*)
    real(kind=dp), intent(out) :: alphai(*)
    real(kind=dp), intent(out) :: beta(*)
    real(kind=dp), intent(out) :: vsl(ldvsl,*)
    integer(kind=ilp), intent(in) :: ldvsl
    real(kind=dp), intent(out) :: vsr(ldvsr,*)
    integer(kind=ilp), intent(in) :: ldvsr
    real(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    logical(kind=lk), intent(out) :: bwork(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_dggesx(jobvsl, jobvsr, sort, selctg, sense, n, a, lda, b, ldb, sdim, alphar, alphai, beta, vsl, ldvsl, vsr, ldvsr, rconde, rcondv, work, lwork, iwork, liwork, bwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: jobvsl
    character(len=1), intent(in) :: jobvsr
    character(len=1), intent(in) :: sort
    procedure(stdlib_selctg_d) :: selctg
    character(len=1), intent(in) :: sense
    integer(kind=ilp), intent(in) :: n
    real(kind=dp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    real(kind=dp), intent(inout) :: b(ldb,*)
    integer(kind=ilp), intent(in) :: ldb
    integer(kind=ilp), intent(out) :: sdim
    real(kind=dp), intent(out) :: alphar(*)
    real(kind=dp), intent(out) :: alphai(*)
    real(kind=dp), intent(out) :: beta(*)
    real(kind=dp), intent(out) :: vsl(ldvsl,*)
    integer(kind=ilp), intent(in) :: ldvsl
    real(kind=dp), intent(out) :: vsr(ldvsr,*)
    integer(kind=ilp), intent(in) :: ldvsr
    real(kind=dp), intent(out) :: rconde(2_ilp)
    real(kind=dp), intent(out) :: rcondv(2_ilp)
    real(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: iwork(*)
    integer(kind=ilp), intent(in) :: liwork
    logical(kind=lk), intent(out) :: bwork(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_dggev(jobvl, jobvr, n, a, lda, b, ldb, alphar, alphai, beta, vl, ldvl, vr, ldvr, work, lwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: jobvl
    character(len=1), intent(in) :: jobvr
    integer(kind=ilp), intent(in) :: n
    real(kind=dp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    real(kind=dp), intent(inout) :: b(ldb,*)
    integer(kind=ilp), intent(in) :: ldb
    real(kind=dp), intent(out) :: alphar(*)
    real(kind=dp), intent(out) :: alphai(*)
    real(kind=dp), intent(out) :: beta(*)
    real(kind=dp), intent(out) :: vl(ldvl,*)
    integer(kind=ilp), intent(in) :: ldvl
    real(kind=dp), intent(out) :: vr(ldvr,*)
    integer(kind=ilp), intent(in) :: ldvr
    real(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_dggev3(jobvl, jobvr, n, a, lda, b, ldb, alphar, alphai, beta, vl, ldvl, vr, ldvr, work, lwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: jobvl
    character(len=1), intent(in) :: jobvr
    integer(kind=ilp), intent(in) :: n
    real(kind=dp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    real(kind=dp), intent(inout) :: b(ldb,*)
    integer(kind=ilp), intent(in) :: ldb
    real(kind=dp), intent(out) :: alphar(*)
    real(kind=dp), intent(out) :: alphai(*)
    real(kind=dp), intent(out) :: beta(*)
    real(kind=dp), intent(out) :: vl(ldvl,*)
    integer(kind=ilp), intent(in) :: ldvl
    real(kind=dp), intent(out) :: vr(ldvr,*)
    integer(kind=ilp), intent(in) :: ldvr
    real(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_dggevx(balanc, jobvl, jobvr, sense, n, a, lda, b, ldb, alphar, alphai, beta, vl, ldvl, vr, ldvr, ilo, ihi, lscale, rscale, abnrm, bbnrm, rconde, rcondv, work, lwork, iwork, bwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: balanc
    character(len=1), intent(in) :: jobvl
    character(len=1), intent(in) :: jobvr
    character(len=1), intent(in) :: sense
    integer(kind=ilp), intent(in) :: n
    real(kind=dp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    real(kind=dp), intent(inout) :: b(ldb,*)
    integer(kind=ilp), intent(in) :: ldb
    real(kind=dp), intent(out) :: alphar(*)
    real(kind=dp), intent(out) :: alphai(*)
    real(kind=dp), intent(out) :: beta(*)
    real(kind=dp), intent(out) :: vl(ldvl,*)
    integer(kind=ilp), intent(in) :: ldvl
    real(kind=dp), intent(out) :: vr(ldvr,*)
    integer(kind=ilp), intent(in) :: ldvr
    integer(kind=ilp), intent(out) :: ilo
    integer(kind=ilp), intent(out) :: ihi
    real(kind=dp), intent(out) :: lscale(*)
    real(kind=dp), intent(out) :: rscale(*)
    real(kind=dp), intent(out) :: abnrm
    real(kind=dp), intent(out) :: bbnrm
    real(kind=dp), intent(out) :: rconde(*)
    real(kind=dp), intent(out) :: rcondv(*)
    real(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: iwork(*)
    logical(kind=lk), intent(out) :: bwork(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_dggglm(n, m, p, a, lda, b, ldb, d, x, y, work, lwork, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: m
    integer(kind=ilp), intent(in) :: p
    real(kind=dp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    real(kind=dp), intent(inout) :: b(ldb,*)
    integer(kind=ilp), intent(in) :: ldb
    real(kind=dp), intent(inout) :: d(*)
    real(kind=dp), intent(out) :: x(*)
    real(kind=dp), intent(out) :: y(*)
    real(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_dgghd3(compq, compz, n, ilo, ihi, a, lda, b, ldb, q, ldq, z, ldz, work, lwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: compq
    character(len=1), intent(in) :: compz
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: ilo
    integer(kind=ilp), intent(in) :: ihi
    real(kind=dp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    real(kind=dp), intent(inout) :: b(ldb,*)
    integer(kind=ilp), intent(in) :: ldb
    real(kind=dp), intent(inout) :: q(ldq,*)
    integer(kind=ilp), intent(in) :: ldq
    real(kind=dp), intent(inout) :: z(ldz,*)
    integer(kind=ilp), intent(in) :: ldz
    real(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_dgghrd(compq, compz, n, ilo, ihi, a, lda, b, ldb, q, ldq, z, ldz, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: compq
    character(len=1), intent(in) :: compz
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: ilo
    integer(kind=ilp), intent(in) :: ihi
    real(kind=dp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    real(kind=dp), intent(inout) :: b(ldb,*)
    integer(kind=ilp), intent(in) :: ldb
    real(kind=dp), intent(inout) :: q(ldq,*)
    integer(kind=ilp), intent(in) :: ldq
    real(kind=dp), intent(inout) :: z(ldz,*)
    integer(kind=ilp), intent(in) :: ldz
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_dgglse(m, n, p, a, lda, b, ldb, c, d, x, work, lwork, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: m
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: p
    real(kind=dp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    real(kind=dp), intent(inout) :: b(ldb,*)
    integer(kind=ilp), intent(in) :: ldb
    real(kind=dp), intent(inout) :: c(*)
    real(kind=dp), intent(inout) :: d(*)
    real(kind=dp), intent(out) :: x(*)
    real(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_dgsvj0(jobv, m, n, a, lda, d, sva, mv, v, ldv, eps, sfmin, tol, nsweep, work, lwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: jobv
    integer(kind=ilp), intent(in) :: m
    integer(kind=ilp), intent(in) :: n
    real(kind=dp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    real(kind=dp), intent(inout) :: d(n)
    real(kind=dp), intent(inout) :: sva(n)
    integer(kind=ilp), intent(in) :: mv
    real(kind=dp), intent(inout) :: v(ldv,*)
    integer(kind=ilp), intent(in) :: ldv
    real(kind=dp), intent(in) :: eps
    real(kind=dp), intent(in) :: sfmin
    real(kind=dp), intent(in) :: tol
    integer(kind=ilp), intent(in) :: nsweep
    real(kind=dp), intent(out) :: work(lwork)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_dgsvj1(jobv, m, n, n1, a, lda, d, sva, mv, v, ldv, eps, sfmin, tol, nsweep, work, lwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: jobv
    integer(kind=ilp), intent(in) :: m
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: n1
    real(kind=dp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    real(kind=dp), intent(inout) :: d(n)
    real(kind=dp), intent(inout) :: sva(n)
    integer(kind=ilp), intent(in) :: mv
    real(kind=dp), intent(inout) :: v(ldv,*)
    integer(kind=ilp), intent(in) :: ldv
    real(kind=dp), intent(in) :: eps
    real(kind=dp), intent(in) :: sfmin
    real(kind=dp), intent(in) :: tol
    integer(kind=ilp), intent(in) :: nsweep
    real(kind=dp), intent(out) :: work(lwork)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_dhgeqz(job, compq, compz, n, ilo, ihi, h, ldh, t, ldt, alphar, alphai, beta, q, ldq, z, ldz, work, lwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: job
    character(len=1), intent(in) :: compq
    character(len=1), intent(in) :: compz
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: ilo
    integer(kind=ilp), intent(in) :: ihi
    real(kind=dp), intent(inout) :: h(ldh,*)
    integer(kind=ilp), intent(in) :: ldh
    real(kind=dp), intent(inout) :: t(ldt,*)
    integer(kind=ilp), intent(in) :: ldt
    real(kind=dp), intent(out) :: alphar(*)
    real(kind=dp), intent(out) :: alphai(*)
    real(kind=dp), intent(out) :: beta(*)
    real(kind=dp), intent(inout) :: q(ldq,*)
    integer(kind=ilp), intent(in) :: ldq
    real(kind=dp), intent(inout) :: z(ldz,*)
    integer(kind=ilp), intent(in) :: ldz
    real(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_dhsein(side, eigsrc, initv, select, n, h, ldh, wr, wi, vl, ldvl, vr, ldvr, mm, m, work, ifaill, ifailr, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: side
    character(len=1), intent(in) :: eigsrc
    character(len=1), intent(in) :: initv
    logical(kind=lk), intent(inout) :: select(*)
    integer(kind=ilp), intent(in) :: n
    real(kind=dp), intent(in) :: h(ldh,*)
    integer(kind=ilp), intent(in) :: ldh
    real(kind=dp), intent(inout) :: wr(*)
    real(kind=dp), intent(in) :: wi(*)
    real(kind=dp), intent(inout) :: vl(ldvl,*)
    integer(kind=ilp), intent(in) :: ldvl
    real(kind=dp), intent(inout) :: vr(ldvr,*)
    integer(kind=ilp), intent(in) :: ldvr
    integer(kind=ilp), intent(in) :: mm
    integer(kind=ilp), intent(out) :: m
    real(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(out) :: ifaill(*)
    integer(kind=ilp), intent(out) :: ifailr(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_dhseqr(job, compz, n, ilo, ihi, h, ldh, wr, wi, z, ldz, work, lwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: job
    character(len=1), intent(in) :: compz
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: ilo
    integer(kind=ilp), intent(in) :: ihi
    real(kind=dp), intent(inout) :: h(ldh,*)
    integer(kind=ilp), intent(in) :: ldh
    real(kind=dp), intent(out) :: wr(*)
    real(kind=dp), intent(out) :: wi(*)
    real(kind=dp), intent(inout) :: z(ldz,*)
    integer(kind=ilp), intent(in) :: ldz
    real(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_dlabrd(m, n, nb, a, lda, d, e, tauq, taup, x, ldx, y, ldy)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: m
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: nb
    real(kind=dp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    real(kind=dp), intent(out) :: d(*)
    real(kind=dp), intent(out) :: e(*)
    real(kind=dp), intent(out) :: tauq(*)
    real(kind=dp), intent(out) :: taup(*)
    real(kind=dp), intent(out) :: x(ldx,*)
    integer(kind=ilp), intent(in) :: ldx
    real(kind=dp), intent(out) :: y(ldy,*)
    integer(kind=ilp), intent(in) :: ldy

interface

  • public pure module subroutine stdlib_dlae2(a, b, c, rt1, rt2)

    Arguments

    Type IntentOptional Attributes Name
    real(kind=dp), intent(in) :: a
    real(kind=dp), intent(in) :: b
    real(kind=dp), intent(in) :: c
    real(kind=dp), intent(out) :: rt1
    real(kind=dp), intent(out) :: rt2

interface

  • public pure module subroutine stdlib_dlaebz(ijob, nitmax, n, mmax, minp, nbmin, abstol, reltol, pivmin, d, e, e2, nval, ab, c, mout, nab, work, iwork, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: ijob
    integer(kind=ilp), intent(in) :: nitmax
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: mmax
    integer(kind=ilp), intent(in) :: minp
    integer(kind=ilp), intent(in) :: nbmin
    real(kind=dp), intent(in) :: abstol
    real(kind=dp), intent(in) :: reltol
    real(kind=dp), intent(in) :: pivmin
    real(kind=dp), intent(in) :: d(*)
    real(kind=dp), intent(in) :: e(*)
    real(kind=dp), intent(in) :: e2(*)
    integer(kind=ilp), intent(inout) :: nval(*)
    real(kind=dp), intent(inout) :: ab(mmax,*)
    real(kind=dp), intent(inout) :: c(*)
    integer(kind=ilp), intent(out) :: mout
    integer(kind=ilp), intent(inout) :: nab(mmax,*)
    real(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(out) :: iwork(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_dlaed0(icompq, qsiz, n, d, e, q, ldq, qstore, ldqs, work, iwork, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: icompq
    integer(kind=ilp), intent(in) :: qsiz
    integer(kind=ilp), intent(in) :: n
    real(kind=dp), intent(inout) :: d(*)
    real(kind=dp), intent(inout) :: e(*)
    real(kind=dp), intent(inout) :: q(ldq,*)
    integer(kind=ilp), intent(in) :: ldq
    real(kind=dp), intent(out) :: qstore(ldqs,*)
    integer(kind=ilp), intent(in) :: ldqs
    real(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(out) :: iwork(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_dlaed1(n, d, q, ldq, indxq, rho, cutpnt, work, iwork, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: n
    real(kind=dp), intent(inout) :: d(*)
    real(kind=dp), intent(inout) :: q(ldq,*)
    integer(kind=ilp), intent(in) :: ldq
    integer(kind=ilp), intent(inout) :: indxq(*)
    real(kind=dp), intent(inout) :: rho
    integer(kind=ilp), intent(in) :: cutpnt
    real(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(out) :: iwork(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_dlaed2(k, n, n1, d, q, ldq, indxq, rho, z, dlamda, w, q2, indx, indxc, indxp, coltyp, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(out) :: k
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: n1
    real(kind=dp), intent(inout) :: d(*)
    real(kind=dp), intent(inout) :: q(ldq,*)
    integer(kind=ilp), intent(in) :: ldq
    integer(kind=ilp), intent(inout) :: indxq(*)
    real(kind=dp), intent(inout) :: rho
    real(kind=dp), intent(inout) :: z(*)
    real(kind=dp), intent(out) :: dlamda(*)
    real(kind=dp), intent(out) :: w(*)
    real(kind=dp), intent(out) :: q2(*)
    integer(kind=ilp), intent(out) :: indx(*)
    integer(kind=ilp), intent(out) :: indxc(*)
    integer(kind=ilp), intent(out) :: indxp(*)
    integer(kind=ilp), intent(out) :: coltyp(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_dlaed3(k, n, n1, d, q, ldq, rho, dlamda, q2, indx, ctot, w, s, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: k
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: n1
    real(kind=dp), intent(out) :: d(*)
    real(kind=dp), intent(out) :: q(ldq,*)
    integer(kind=ilp), intent(in) :: ldq
    real(kind=dp), intent(in) :: rho
    real(kind=dp), intent(inout) :: dlamda(*)
    real(kind=dp), intent(in) :: q2(*)
    integer(kind=ilp), intent(in) :: indx(*)
    integer(kind=ilp), intent(in) :: ctot(*)
    real(kind=dp), intent(inout) :: w(*)
    real(kind=dp), intent(out) :: s(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_dlaed4(n, i, d, z, delta, rho, dlam, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: i
    real(kind=dp), intent(in) :: d(*)
    real(kind=dp), intent(in) :: z(*)
    real(kind=dp), intent(out) :: delta(*)
    real(kind=dp), intent(in) :: rho
    real(kind=dp), intent(out) :: dlam
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_dlaed5(i, d, z, delta, rho, dlam)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: i
    real(kind=dp), intent(in) :: d(2_ilp)
    real(kind=dp), intent(in) :: z(2_ilp)
    real(kind=dp), intent(out) :: delta(2_ilp)
    real(kind=dp), intent(in) :: rho
    real(kind=dp), intent(out) :: dlam

interface

  • public pure module subroutine stdlib_dlaed6(kniter, orgati, rho, d, z, finit, tau, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: kniter
    logical(kind=lk), intent(in) :: orgati
    real(kind=dp), intent(in) :: rho
    real(kind=dp), intent(in) :: d(3_ilp)
    real(kind=dp), intent(in) :: z(3_ilp)
    real(kind=dp), intent(in) :: finit
    real(kind=dp), intent(out) :: tau
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_dlaed7(icompq, n, qsiz, tlvls, curlvl, curpbm, d, q, ldq, indxq, rho, cutpnt, qstore, qptr, prmptr, perm, givptr, givcol, givnum, work, iwork, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: icompq
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: qsiz
    integer(kind=ilp), intent(in) :: tlvls
    integer(kind=ilp), intent(in) :: curlvl
    integer(kind=ilp), intent(in) :: curpbm
    real(kind=dp), intent(inout) :: d(*)
    real(kind=dp), intent(inout) :: q(ldq,*)
    integer(kind=ilp), intent(in) :: ldq
    integer(kind=ilp), intent(out) :: indxq(*)
    real(kind=dp), intent(inout) :: rho
    integer(kind=ilp), intent(in) :: cutpnt
    real(kind=dp), intent(inout) :: qstore(*)
    integer(kind=ilp), intent(inout) :: qptr(*)
    integer(kind=ilp), intent(inout) :: prmptr(*)
    integer(kind=ilp), intent(inout) :: perm(*)
    integer(kind=ilp), intent(inout) :: givptr(*)
    integer(kind=ilp), intent(inout) :: givcol(2_ilp,*)
    real(kind=dp), intent(inout) :: givnum(2_ilp,*)
    real(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(out) :: iwork(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_dlaed8(icompq, k, n, qsiz, d, q, ldq, indxq, rho, cutpnt, z, dlamda, q2, ldq2, w, perm, givptr, givcol, givnum, indxp, indx, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: icompq
    integer(kind=ilp), intent(out) :: k
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: qsiz
    real(kind=dp), intent(inout) :: d(*)
    real(kind=dp), intent(inout) :: q(ldq,*)
    integer(kind=ilp), intent(in) :: ldq
    integer(kind=ilp), intent(inout) :: indxq(*)
    real(kind=dp), intent(inout) :: rho
    integer(kind=ilp), intent(in) :: cutpnt
    real(kind=dp), intent(inout) :: z(*)
    real(kind=dp), intent(out) :: dlamda(*)
    real(kind=dp), intent(out) :: q2(ldq2,*)
    integer(kind=ilp), intent(in) :: ldq2
    real(kind=dp), intent(out) :: w(*)
    integer(kind=ilp), intent(out) :: perm(*)
    integer(kind=ilp), intent(out) :: givptr
    integer(kind=ilp), intent(out) :: givcol(2_ilp,*)
    real(kind=dp), intent(out) :: givnum(2_ilp,*)
    integer(kind=ilp), intent(out) :: indxp(*)
    integer(kind=ilp), intent(out) :: indx(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_dlaed9(k, kstart, kstop, n, d, q, ldq, rho, dlamda, w, s, lds, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: k
    integer(kind=ilp), intent(in) :: kstart
    integer(kind=ilp), intent(in) :: kstop
    integer(kind=ilp), intent(in) :: n
    real(kind=dp), intent(out) :: d(*)
    real(kind=dp), intent(out) :: q(ldq,*)
    integer(kind=ilp), intent(in) :: ldq
    real(kind=dp), intent(in) :: rho
    real(kind=dp), intent(inout) :: dlamda(*)
    real(kind=dp), intent(inout) :: w(*)
    real(kind=dp), intent(out) :: s(lds,*)
    integer(kind=ilp), intent(in) :: lds
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_dlaeda(n, tlvls, curlvl, curpbm, prmptr, perm, givptr, givcol, givnum, q, qptr, z, ztemp, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: tlvls
    integer(kind=ilp), intent(in) :: curlvl
    integer(kind=ilp), intent(in) :: curpbm
    integer(kind=ilp), intent(in) :: prmptr(*)
    integer(kind=ilp), intent(in) :: perm(*)
    integer(kind=ilp), intent(in) :: givptr(*)
    integer(kind=ilp), intent(in) :: givcol(2_ilp,*)
    real(kind=dp), intent(in) :: givnum(2_ilp,*)
    real(kind=dp), intent(in) :: q(*)
    integer(kind=ilp), intent(in) :: qptr(*)
    real(kind=dp), intent(out) :: z(*)
    real(kind=dp), intent(out) :: ztemp(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_dlaein(rightv, noinit, n, h, ldh, wr, wi, vr, vi, b, ldb, work, eps3, smlnum, bignum, info)

    Arguments

    Type IntentOptional Attributes Name
    logical(kind=lk), intent(in) :: rightv
    logical(kind=lk), intent(in) :: noinit
    integer(kind=ilp), intent(in) :: n
    real(kind=dp), intent(in) :: h(ldh,*)
    integer(kind=ilp), intent(in) :: ldh
    real(kind=dp), intent(in) :: wr
    real(kind=dp), intent(in) :: wi
    real(kind=dp), intent(inout) :: vr(*)
    real(kind=dp), intent(inout) :: vi(*)
    real(kind=dp), intent(out) :: b(ldb,*)
    integer(kind=ilp), intent(in) :: ldb
    real(kind=dp), intent(out) :: work(*)
    real(kind=dp), intent(in) :: eps3
    real(kind=dp), intent(in) :: smlnum
    real(kind=dp), intent(in) :: bignum
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_dlaev2(a, b, c, rt1, rt2, cs1, sn1)

    Arguments

    Type IntentOptional Attributes Name
    real(kind=dp), intent(in) :: a
    real(kind=dp), intent(in) :: b
    real(kind=dp), intent(in) :: c
    real(kind=dp), intent(out) :: rt1
    real(kind=dp), intent(out) :: rt2
    real(kind=dp), intent(out) :: cs1
    real(kind=dp), intent(out) :: sn1

interface

  • public module subroutine stdlib_dlaexc(wantq, n, t, ldt, q, ldq, j1, n1, n2, work, info)

    Arguments

    Type IntentOptional Attributes Name
    logical(kind=lk), intent(in) :: wantq
    integer(kind=ilp), intent(in) :: n
    real(kind=dp), intent(inout) :: t(ldt,*)
    integer(kind=ilp), intent(in) :: ldt
    real(kind=dp), intent(inout) :: q(ldq,*)
    integer(kind=ilp), intent(in) :: ldq
    integer(kind=ilp), intent(in) :: j1
    integer(kind=ilp), intent(in) :: n1
    integer(kind=ilp), intent(in) :: n2
    real(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_dlag2(a, lda, b, ldb, safmin, scale1, scale2, wr1, wr2, wi)

    Arguments

    Type IntentOptional Attributes Name
    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) :: safmin
    real(kind=dp), intent(out) :: scale1
    real(kind=dp), intent(out) :: scale2
    real(kind=dp), intent(out) :: wr1
    real(kind=dp), intent(out) :: wr2
    real(kind=dp), intent(out) :: wi

interface

  • public pure module subroutine stdlib_dlags2(upper, a1, a2, a3, b1, b2, b3, csu, snu, csv, snv, csq, snq)

    Arguments

    Type IntentOptional Attributes Name
    logical(kind=lk), intent(in) :: upper
    real(kind=dp), intent(in) :: a1
    real(kind=dp), intent(in) :: a2
    real(kind=dp), intent(in) :: a3
    real(kind=dp), intent(in) :: b1
    real(kind=dp), intent(in) :: b2
    real(kind=dp), intent(in) :: b3
    real(kind=dp), intent(out) :: csu
    real(kind=dp), intent(out) :: snu
    real(kind=dp), intent(out) :: csv
    real(kind=dp), intent(out) :: snv
    real(kind=dp), intent(out) :: csq
    real(kind=dp), intent(out) :: snq

interface

  • public pure module subroutine stdlib_dlagtf(n, a, lambda, b, c, tol, d, in, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: n
    real(kind=dp), intent(inout) :: a(*)
    real(kind=dp), intent(in) :: lambda
    real(kind=dp), intent(inout) :: b(*)
    real(kind=dp), intent(inout) :: c(*)
    real(kind=dp), intent(in) :: tol
    real(kind=dp), intent(out) :: d(*)
    integer(kind=ilp), intent(out) :: in(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_dlagts(job, n, a, b, c, d, in, y, tol, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: job
    integer(kind=ilp), intent(in) :: n
    real(kind=dp), intent(in) :: a(*)
    real(kind=dp), intent(in) :: b(*)
    real(kind=dp), intent(in) :: c(*)
    real(kind=dp), intent(in) :: d(*)
    integer(kind=ilp), intent(in) :: in(*)
    real(kind=dp), intent(inout) :: y(*)
    real(kind=dp), intent(inout) :: tol
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_dlagv2(a, lda, b, ldb, alphar, alphai, beta, csl, snl, csr, snr)

    Arguments

    Type IntentOptional Attributes Name
    real(kind=dp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    real(kind=dp), intent(inout) :: b(ldb,*)
    integer(kind=ilp), intent(in) :: ldb
    real(kind=dp), intent(out) :: alphar(2_ilp)
    real(kind=dp), intent(out) :: alphai(2_ilp)
    real(kind=dp), intent(out) :: beta(2_ilp)
    real(kind=dp), intent(out) :: csl
    real(kind=dp), intent(out) :: snl
    real(kind=dp), intent(out) :: csr
    real(kind=dp), intent(out) :: snr

interface

  • public pure module subroutine stdlib_dlahqr(wantt, wantz, n, ilo, ihi, h, ldh, wr, wi, iloz, ihiz, z, ldz, info)

    Arguments

    Type IntentOptional Attributes Name
    logical(kind=lk), intent(in) :: wantt
    logical(kind=lk), intent(in) :: wantz
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: ilo
    integer(kind=ilp), intent(in) :: ihi
    real(kind=dp), intent(inout) :: h(ldh,*)
    integer(kind=ilp), intent(in) :: ldh
    real(kind=dp), intent(out) :: wr(*)
    real(kind=dp), intent(out) :: wi(*)
    integer(kind=ilp), intent(in) :: iloz
    integer(kind=ilp), intent(in) :: ihiz
    real(kind=dp), intent(inout) :: z(ldz,*)
    integer(kind=ilp), intent(in) :: ldz
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_dlahr2(n, k, nb, a, lda, tau, t, ldt, y, ldy)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: k
    integer(kind=ilp), intent(in) :: nb
    real(kind=dp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    real(kind=dp), intent(out) :: tau(nb)
    real(kind=dp), intent(out) :: t(ldt,nb)
    integer(kind=ilp), intent(in) :: ldt
    real(kind=dp), intent(out) :: y(ldy,nb)
    integer(kind=ilp), intent(in) :: ldy

interface

  • public pure module subroutine stdlib_dlaic1(job, j, x, sest, w, gamma, sestpr, s, c)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: job
    integer(kind=ilp), intent(in) :: j
    real(kind=dp), intent(in) :: x(j)
    real(kind=dp), intent(in) :: sest
    real(kind=dp), intent(in) :: w(j)
    real(kind=dp), intent(in) :: gamma
    real(kind=dp), intent(out) :: sestpr
    real(kind=dp), intent(out) :: s
    real(kind=dp), intent(out) :: c

interface

  • public pure module subroutine stdlib_dlaln2(ltrans, na, nw, smin, ca, a, lda, d1, d2, b, ldb, wr, wi, x, ldx, scale, xnorm, info)

    Arguments

    Type IntentOptional Attributes Name
    logical(kind=lk), intent(in) :: ltrans
    integer(kind=ilp), intent(in) :: na
    integer(kind=ilp), intent(in) :: nw
    real(kind=dp), intent(in) :: smin
    real(kind=dp), intent(in) :: ca
    real(kind=dp), intent(in) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    real(kind=dp), intent(in) :: d1
    real(kind=dp), intent(in) :: d2
    real(kind=dp), intent(in) :: b(ldb,*)
    integer(kind=ilp), intent(in) :: ldb
    real(kind=dp), intent(in) :: wr
    real(kind=dp), intent(in) :: wi
    real(kind=dp), intent(out) :: x(ldx,*)
    integer(kind=ilp), intent(in) :: ldx
    real(kind=dp), intent(out) :: scale
    real(kind=dp), intent(out) :: xnorm
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_dlals0(icompq, nl, nr, sqre, nrhs, b, ldb, bx, ldbx, perm, givptr, givcol, ldgcol, givnum, ldgnum, poles, difl, difr, z, k, c, s, work, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: icompq
    integer(kind=ilp), intent(in) :: nl
    integer(kind=ilp), intent(in) :: nr
    integer(kind=ilp), intent(in) :: sqre
    integer(kind=ilp), intent(in) :: nrhs
    real(kind=dp), intent(inout) :: b(ldb,*)
    integer(kind=ilp), intent(in) :: ldb
    real(kind=dp), intent(out) :: bx(ldbx,*)
    integer(kind=ilp), intent(in) :: ldbx
    integer(kind=ilp), intent(in) :: perm(*)
    integer(kind=ilp), intent(in) :: givptr
    integer(kind=ilp), intent(in) :: givcol(ldgcol,*)
    integer(kind=ilp), intent(in) :: ldgcol
    real(kind=dp), intent(in) :: givnum(ldgnum,*)
    integer(kind=ilp), intent(in) :: ldgnum
    real(kind=dp), intent(in) :: poles(ldgnum,*)
    real(kind=dp), intent(in) :: difl(*)
    real(kind=dp), intent(in) :: difr(ldgnum,*)
    real(kind=dp), intent(in) :: z(*)
    integer(kind=ilp), intent(in) :: k
    real(kind=dp), intent(in) :: c
    real(kind=dp), intent(in) :: s
    real(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_dlalsa(icompq, smlsiz, n, nrhs, b, ldb, bx, ldbx, u, ldu, vt, k, difl, difr, z, poles, givptr, givcol, ldgcol, perm, givnum, c, s, work, iwork, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: icompq
    integer(kind=ilp), intent(in) :: smlsiz
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: nrhs
    real(kind=dp), intent(inout) :: b(ldb,*)
    integer(kind=ilp), intent(in) :: ldb
    real(kind=dp), intent(out) :: bx(ldbx,*)
    integer(kind=ilp), intent(in) :: ldbx
    real(kind=dp), intent(in) :: u(ldu,*)
    integer(kind=ilp), intent(in) :: ldu
    real(kind=dp), intent(in) :: vt(ldu,*)
    integer(kind=ilp), intent(in) :: k(*)
    real(kind=dp), intent(in) :: difl(ldu,*)
    real(kind=dp), intent(in) :: difr(ldu,*)
    real(kind=dp), intent(in) :: z(ldu,*)
    real(kind=dp), intent(in) :: poles(ldu,*)
    integer(kind=ilp), intent(in) :: givptr(*)
    integer(kind=ilp), intent(in) :: givcol(ldgcol,*)
    integer(kind=ilp), intent(in) :: ldgcol
    integer(kind=ilp), intent(in) :: perm(ldgcol,*)
    real(kind=dp), intent(in) :: givnum(ldu,*)
    real(kind=dp), intent(in) :: c(*)
    real(kind=dp), intent(in) :: s(*)
    real(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(out) :: iwork(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_dlalsd(uplo, smlsiz, n, nrhs, d, e, b, ldb, rcond, rank, work, iwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: uplo
    integer(kind=ilp), intent(in) :: smlsiz
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: nrhs
    real(kind=dp), intent(inout) :: d(*)
    real(kind=dp), intent(inout) :: e(*)
    real(kind=dp), intent(inout) :: b(ldb,*)
    integer(kind=ilp), intent(in) :: ldb
    real(kind=dp), intent(in) :: rcond
    integer(kind=ilp), intent(out) :: rank
    real(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(out) :: iwork(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_dlamrg(n1, n2, a, dtrd1, dtrd2, index)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: n1
    integer(kind=ilp), intent(in) :: n2
    real(kind=dp), intent(in) :: a(*)
    integer(kind=ilp), intent(in) :: dtrd1
    integer(kind=ilp), intent(in) :: dtrd2
    integer(kind=ilp), intent(out) :: index(*)

interface

  • public pure module function stdlib_dlaneg(n, d, lld, sigma, pivmin, r)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: n
    real(kind=dp), intent(in) :: d(*)
    real(kind=dp), intent(in) :: lld(*)
    real(kind=dp), intent(in) :: sigma
    real(kind=dp), intent(in) :: pivmin
    integer(kind=ilp), intent(in) :: r

    Return Value integer(kind=ilp)

interface

  • public pure module subroutine stdlib_dlanv2(a, b, c, d, rt1r, rt1i, rt2r, rt2i, cs, sn)

    Arguments

    Type IntentOptional Attributes Name
    real(kind=dp), intent(inout) :: a
    real(kind=dp), intent(inout) :: b
    real(kind=dp), intent(inout) :: c
    real(kind=dp), intent(inout) :: d
    real(kind=dp), intent(out) :: rt1r
    real(kind=dp), intent(out) :: rt1i
    real(kind=dp), intent(out) :: rt2r
    real(kind=dp), intent(out) :: rt2i
    real(kind=dp), intent(out) :: cs
    real(kind=dp), intent(out) :: sn

interface

  • public pure module subroutine stdlib_dlapll(n, x, incx, y, incy, ssmin)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: n
    real(kind=dp), intent(inout) :: x(*)
    integer(kind=ilp), intent(in) :: incx
    real(kind=dp), intent(inout) :: y(*)
    integer(kind=ilp), intent(in) :: incy
    real(kind=dp), intent(out) :: ssmin

interface

  • public pure module subroutine stdlib_dlapmr(forwrd, m, n, x, ldx, k)

    Arguments

    Type IntentOptional Attributes Name
    logical(kind=lk), intent(in) :: forwrd
    integer(kind=ilp), intent(in) :: m
    integer(kind=ilp), intent(in) :: n
    real(kind=dp), intent(inout) :: x(ldx,*)
    integer(kind=ilp), intent(in) :: ldx
    integer(kind=ilp), intent(inout) :: k(*)

interface

  • public pure module subroutine stdlib_dlapmt(forwrd, m, n, x, ldx, k)

    Arguments

    Type IntentOptional Attributes Name
    logical(kind=lk), intent(in) :: forwrd
    integer(kind=ilp), intent(in) :: m
    integer(kind=ilp), intent(in) :: n
    real(kind=dp), intent(inout) :: x(ldx,*)
    integer(kind=ilp), intent(in) :: ldx
    integer(kind=ilp), intent(inout) :: k(*)

interface

  • public module subroutine stdlib_dlaqr0(wantt, wantz, n, ilo, ihi, h, ldh, wr, wi, iloz, ihiz, z, ldz, work, lwork, info)

    Arguments

    Type IntentOptional Attributes Name
    logical(kind=lk), intent(in) :: wantt
    logical(kind=lk), intent(in) :: wantz
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: ilo
    integer(kind=ilp), intent(in) :: ihi
    real(kind=dp), intent(inout) :: h(ldh,*)
    integer(kind=ilp), intent(in) :: ldh
    real(kind=dp), intent(out) :: wr(*)
    real(kind=dp), intent(out) :: wi(*)
    integer(kind=ilp), intent(in) :: iloz
    integer(kind=ilp), intent(in) :: ihiz
    real(kind=dp), intent(inout) :: z(ldz,*)
    integer(kind=ilp), intent(in) :: ldz
    real(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_dlaqr1(n, h, ldh, sr1, si1, sr2, si2, v)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: n
    real(kind=dp), intent(in) :: h(ldh,*)
    integer(kind=ilp), intent(in) :: ldh
    real(kind=dp), intent(in) :: sr1
    real(kind=dp), intent(in) :: si1
    real(kind=dp), intent(in) :: sr2
    real(kind=dp), intent(in) :: si2
    real(kind=dp), intent(out) :: v(*)

interface

  • public module subroutine stdlib_dlaqr2(wantt, wantz, n, ktop, kbot, nw, h, ldh, iloz, ihiz, z, ldz, ns, nd, sr, si, v, ldv, nh, t, ldt, nv, wv, ldwv, work, lwork)

    Arguments

    Type IntentOptional Attributes Name
    logical(kind=lk), intent(in) :: wantt
    logical(kind=lk), intent(in) :: wantz
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: ktop
    integer(kind=ilp), intent(in) :: kbot
    integer(kind=ilp), intent(in) :: nw
    real(kind=dp), intent(inout) :: h(ldh,*)
    integer(kind=ilp), intent(in) :: ldh
    integer(kind=ilp), intent(in) :: iloz
    integer(kind=ilp), intent(in) :: ihiz
    real(kind=dp), intent(inout) :: z(ldz,*)
    integer(kind=ilp), intent(in) :: ldz
    integer(kind=ilp), intent(out) :: ns
    integer(kind=ilp), intent(out) :: nd
    real(kind=dp), intent(out) :: sr(*)
    real(kind=dp), intent(out) :: si(*)
    real(kind=dp), intent(out) :: v(ldv,*)
    integer(kind=ilp), intent(in) :: ldv
    integer(kind=ilp), intent(in) :: nh
    real(kind=dp), intent(out) :: t(ldt,*)
    integer(kind=ilp), intent(in) :: ldt
    integer(kind=ilp), intent(in) :: nv
    real(kind=dp), intent(out) :: wv(ldwv,*)
    integer(kind=ilp), intent(in) :: ldwv
    real(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork

interface

  • public module subroutine stdlib_dlaqr3(wantt, wantz, n, ktop, kbot, nw, h, ldh, iloz, ihiz, z, ldz, ns, nd, sr, si, v, ldv, nh, t, ldt, nv, wv, ldwv, work, lwork)

    Arguments

    Type IntentOptional Attributes Name
    logical(kind=lk), intent(in) :: wantt
    logical(kind=lk), intent(in) :: wantz
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: ktop
    integer(kind=ilp), intent(in) :: kbot
    integer(kind=ilp), intent(in) :: nw
    real(kind=dp), intent(inout) :: h(ldh,*)
    integer(kind=ilp), intent(in) :: ldh
    integer(kind=ilp), intent(in) :: iloz
    integer(kind=ilp), intent(in) :: ihiz
    real(kind=dp), intent(inout) :: z(ldz,*)
    integer(kind=ilp), intent(in) :: ldz
    integer(kind=ilp), intent(out) :: ns
    integer(kind=ilp), intent(out) :: nd
    real(kind=dp), intent(out) :: sr(*)
    real(kind=dp), intent(out) :: si(*)
    real(kind=dp), intent(out) :: v(ldv,*)
    integer(kind=ilp), intent(in) :: ldv
    integer(kind=ilp), intent(in) :: nh
    real(kind=dp), intent(out) :: t(ldt,*)
    integer(kind=ilp), intent(in) :: ldt
    integer(kind=ilp), intent(in) :: nv
    real(kind=dp), intent(out) :: wv(ldwv,*)
    integer(kind=ilp), intent(in) :: ldwv
    real(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork

interface

  • public module subroutine stdlib_dlaqr4(wantt, wantz, n, ilo, ihi, h, ldh, wr, wi, iloz, ihiz, z, ldz, work, lwork, info)

    Arguments

    Type IntentOptional Attributes Name
    logical(kind=lk), intent(in) :: wantt
    logical(kind=lk), intent(in) :: wantz
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: ilo
    integer(kind=ilp), intent(in) :: ihi
    real(kind=dp), intent(inout) :: h(ldh,*)
    integer(kind=ilp), intent(in) :: ldh
    real(kind=dp), intent(out) :: wr(*)
    real(kind=dp), intent(out) :: wi(*)
    integer(kind=ilp), intent(in) :: iloz
    integer(kind=ilp), intent(in) :: ihiz
    real(kind=dp), intent(inout) :: z(ldz,*)
    integer(kind=ilp), intent(in) :: ldz
    real(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_dlaqr5(wantt, wantz, kacc22, n, ktop, kbot, nshfts, sr, si, h, ldh, iloz, ihiz, z, ldz, v, ldv, u, ldu, nv, wv, ldwv, nh, wh, ldwh)

    Arguments

    Type IntentOptional Attributes Name
    logical(kind=lk), intent(in) :: wantt
    logical(kind=lk), intent(in) :: wantz
    integer(kind=ilp), intent(in) :: kacc22
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: ktop
    integer(kind=ilp), intent(in) :: kbot
    integer(kind=ilp), intent(in) :: nshfts
    real(kind=dp), intent(inout) :: sr(*)
    real(kind=dp), intent(inout) :: si(*)
    real(kind=dp), intent(inout) :: h(ldh,*)
    integer(kind=ilp), intent(in) :: ldh
    integer(kind=ilp), intent(in) :: iloz
    integer(kind=ilp), intent(in) :: ihiz
    real(kind=dp), intent(inout) :: z(ldz,*)
    integer(kind=ilp), intent(in) :: ldz
    real(kind=dp), intent(out) :: v(ldv,*)
    integer(kind=ilp), intent(in) :: ldv
    real(kind=dp), intent(out) :: u(ldu,*)
    integer(kind=ilp), intent(in) :: ldu
    integer(kind=ilp), intent(in) :: nv
    real(kind=dp), intent(out) :: wv(ldwv,*)
    integer(kind=ilp), intent(in) :: ldwv
    integer(kind=ilp), intent(in) :: nh
    real(kind=dp), intent(out) :: wh(ldwh,*)
    integer(kind=ilp), intent(in) :: ldwh

interface

  • public module subroutine stdlib_dlaqtr(ltran, lreal, n, t, ldt, b, w, scale, x, work, info)

    Arguments

    Type IntentOptional Attributes Name
    logical(kind=lk), intent(in) :: ltran
    logical(kind=lk), intent(in) :: lreal
    integer(kind=ilp), intent(in) :: n
    real(kind=dp), intent(in) :: t(ldt,*)
    integer(kind=ilp), intent(in) :: ldt
    real(kind=dp), intent(in) :: b(*)
    real(kind=dp), intent(in) :: w
    real(kind=dp), intent(out) :: scale
    real(kind=dp), intent(inout) :: x(*)
    real(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public recursive module subroutine stdlib_dlaqz0(wants, wantq, wantz, n, ilo, ihi, a, lda, b, ldb, alphar, alphai, beta, q, ldq, z, ldz, work, lwork, rec, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: wants
    character(len=1), intent(in) :: wantq
    character(len=1), intent(in) :: wantz
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: ilo
    integer(kind=ilp), intent(in) :: ihi
    real(kind=dp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    real(kind=dp), intent(inout) :: b(ldb,*)
    integer(kind=ilp), intent(in) :: ldb
    real(kind=dp), intent(inout) :: alphar(*)
    real(kind=dp), intent(inout) :: alphai(*)
    real(kind=dp), intent(inout) :: beta(*)
    real(kind=dp), intent(inout) :: q(ldq,*)
    integer(kind=ilp), intent(in) :: ldq
    real(kind=dp), intent(inout) :: z(ldz,*)
    integer(kind=ilp), intent(in) :: ldz
    real(kind=dp), intent(inout) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(in) :: rec
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_dlaqz1(a, lda, b, ldb, sr1, sr2, si, beta1, beta2, v)

    Arguments

    Type IntentOptional Attributes Name
    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) :: sr1
    real(kind=dp), intent(in) :: sr2
    real(kind=dp), intent(in) :: si
    real(kind=dp), intent(in) :: beta1
    real(kind=dp), intent(in) :: beta2
    real(kind=dp), intent(out) :: v(*)

interface

  • public pure module subroutine stdlib_dlaqz2(ilq, ilz, k, istartm, istopm, ihi, a, lda, b, ldb, nq, qstart, q, ldq, nz, zstart, z, ldz)

    Arguments

    Type IntentOptional Attributes Name
    logical(kind=lk), intent(in) :: ilq
    logical(kind=lk), intent(in) :: ilz
    integer(kind=ilp), intent(in) :: k
    integer(kind=ilp), intent(in) :: istartm
    integer(kind=ilp), intent(in) :: istopm
    integer(kind=ilp), intent(in) :: ihi
    real(kind=dp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    real(kind=dp), intent(inout) :: b(ldb,*)
    integer(kind=ilp), intent(in) :: ldb
    integer(kind=ilp), intent(in) :: nq
    integer(kind=ilp), intent(in) :: qstart
    real(kind=dp), intent(inout) :: q(ldq,*)
    integer(kind=ilp), intent(in) :: ldq
    integer(kind=ilp), intent(in) :: nz
    integer(kind=ilp), intent(in) :: zstart
    real(kind=dp), intent(inout) :: z(ldz,*)
    integer(kind=ilp), intent(in) :: ldz

interface

  • public recursive module subroutine stdlib_dlaqz3(ilschur, ilq, ilz, n, ilo, ihi, nw, a, lda, b, ldb, q, ldq, z, ldz, ns, nd, alphar, alphai, beta, qc, ldqc, zc, ldzc, work, lwork, rec, info)

    Arguments

    Type IntentOptional Attributes Name
    logical(kind=lk), intent(in) :: ilschur
    logical(kind=lk), intent(in) :: ilq
    logical(kind=lk), intent(in) :: ilz
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: ilo
    integer(kind=ilp), intent(in) :: ihi
    integer(kind=ilp), intent(in) :: nw
    real(kind=dp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    real(kind=dp), intent(inout) :: b(ldb,*)
    integer(kind=ilp), intent(in) :: ldb
    real(kind=dp), intent(inout) :: q(ldq,*)
    integer(kind=ilp), intent(in) :: ldq
    real(kind=dp), intent(inout) :: z(ldz,*)
    integer(kind=ilp), intent(in) :: ldz
    integer(kind=ilp), intent(out) :: ns
    integer(kind=ilp), intent(out) :: nd
    real(kind=dp), intent(inout) :: alphar(*)
    real(kind=dp), intent(inout) :: alphai(*)
    real(kind=dp), intent(inout) :: beta(*)
    real(kind=dp), intent(inout) :: qc(ldqc,*)
    integer(kind=ilp), intent(in) :: ldqc
    real(kind=dp), intent(inout) :: zc(ldzc,*)
    integer(kind=ilp), intent(in) :: ldzc
    real(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(in) :: rec
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_dlaqz4(ilschur, ilq, ilz, n, ilo, ihi, nshifts, nblock_desired, sr, si, ss, a, lda, b, ldb, q, ldq, z, ldz, qc, ldqc, zc, ldzc, work, lwork, info)

    Arguments

    Type IntentOptional Attributes Name
    logical(kind=lk), intent(in) :: ilschur
    logical(kind=lk), intent(in) :: ilq
    logical(kind=lk), intent(in) :: ilz
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: ilo
    integer(kind=ilp), intent(in) :: ihi
    integer(kind=ilp), intent(in) :: nshifts
    integer(kind=ilp), intent(in) :: nblock_desired
    real(kind=dp), intent(inout) :: sr(*)
    real(kind=dp), intent(inout) :: si(*)
    real(kind=dp), intent(inout) :: ss(*)
    real(kind=dp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    real(kind=dp), intent(inout) :: b(ldb,*)
    integer(kind=ilp), intent(in) :: ldb
    real(kind=dp), intent(inout) :: q(ldq,*)
    integer(kind=ilp), intent(in) :: ldq
    real(kind=dp), intent(inout) :: z(ldz,*)
    integer(kind=ilp), intent(in) :: ldz
    real(kind=dp), intent(inout) :: qc(ldqc,*)
    integer(kind=ilp), intent(in) :: ldqc
    real(kind=dp), intent(inout) :: zc(ldzc,*)
    integer(kind=ilp), intent(in) :: ldzc
    real(kind=dp), intent(inout) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_dlar1v(n, b1, bn, lambda, d, l, ld, lld, pivmin, gaptol, z, wantnc, negcnt, ztz, mingma, r, isuppz, nrminv, resid, rqcorr, work)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: b1
    integer(kind=ilp), intent(in) :: bn
    real(kind=dp), intent(in) :: lambda
    real(kind=dp), intent(in) :: d(*)
    real(kind=dp), intent(in) :: l(*)
    real(kind=dp), intent(in) :: ld(*)
    real(kind=dp), intent(in) :: lld(*)
    real(kind=dp), intent(in) :: pivmin
    real(kind=dp), intent(in) :: gaptol
    real(kind=dp), intent(inout) :: z(*)
    logical(kind=lk), intent(in) :: wantnc
    integer(kind=ilp), intent(out) :: negcnt
    real(kind=dp), intent(out) :: ztz
    real(kind=dp), intent(out) :: mingma
    integer(kind=ilp), intent(inout) :: r
    integer(kind=ilp), intent(out) :: isuppz(*)
    real(kind=dp), intent(out) :: nrminv
    real(kind=dp), intent(out) :: resid
    real(kind=dp), intent(out) :: rqcorr
    real(kind=dp), intent(out) :: work(*)

interface

  • public pure module subroutine stdlib_dlarra(n, d, e, e2, spltol, tnrm, nsplit, isplit, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: n
    real(kind=dp), intent(in) :: d(*)
    real(kind=dp), intent(inout) :: e(*)
    real(kind=dp), intent(inout) :: e2(*)
    real(kind=dp), intent(in) :: spltol
    real(kind=dp), intent(in) :: tnrm
    integer(kind=ilp), intent(out) :: nsplit
    integer(kind=ilp), intent(out) :: isplit(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_dlarrb(n, d, lld, ifirst, ilast, rtol1, rtol2, offset, w, wgap, werr, work, iwork, pivmin, spdiam, twist, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: n
    real(kind=dp), intent(in) :: d(*)
    real(kind=dp), intent(in) :: lld(*)
    integer(kind=ilp), intent(in) :: ifirst
    integer(kind=ilp), intent(in) :: ilast
    real(kind=dp), intent(in) :: rtol1
    real(kind=dp), intent(in) :: rtol2
    integer(kind=ilp), intent(in) :: offset
    real(kind=dp), intent(inout) :: w(*)
    real(kind=dp), intent(inout) :: wgap(*)
    real(kind=dp), intent(inout) :: werr(*)
    real(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(out) :: iwork(*)
    real(kind=dp), intent(in) :: pivmin
    real(kind=dp), intent(in) :: spdiam
    integer(kind=ilp), intent(in) :: twist
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_dlarrc(jobt, n, vl, vu, d, e, pivmin, eigcnt, lcnt, rcnt, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: jobt
    integer(kind=ilp), intent(in) :: n
    real(kind=dp), intent(in) :: vl
    real(kind=dp), intent(in) :: vu
    real(kind=dp), intent(in) :: d(*)
    real(kind=dp), intent(in) :: e(*)
    real(kind=dp), intent(in) :: pivmin
    integer(kind=ilp), intent(out) :: eigcnt
    integer(kind=ilp), intent(out) :: lcnt
    integer(kind=ilp), intent(out) :: rcnt
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_dlarrd(range, order, n, vl, vu, il, iu, gers, reltol, d, e, e2, pivmin, nsplit, isplit, m, w, werr, wl, wu, iblock, indexw, work, iwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: range
    character(len=1), intent(in) :: order
    integer(kind=ilp), intent(in) :: n
    real(kind=dp), intent(in) :: vl
    real(kind=dp), intent(in) :: vu
    integer(kind=ilp), intent(in) :: il
    integer(kind=ilp), intent(in) :: iu
    real(kind=dp), intent(in) :: gers(*)
    real(kind=dp), intent(in) :: reltol
    real(kind=dp), intent(in) :: d(*)
    real(kind=dp), intent(in) :: e(*)
    real(kind=dp), intent(in) :: e2(*)
    real(kind=dp), intent(in) :: pivmin
    integer(kind=ilp), intent(in) :: nsplit
    integer(kind=ilp), intent(in) :: isplit(*)
    integer(kind=ilp), intent(out) :: m
    real(kind=dp), intent(out) :: w(*)
    real(kind=dp), intent(out) :: werr(*)
    real(kind=dp), intent(out) :: wl
    real(kind=dp), intent(out) :: wu
    integer(kind=ilp), intent(out) :: iblock(*)
    integer(kind=ilp), intent(out) :: indexw(*)
    real(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(out) :: iwork(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_dlarre(range, n, vl, vu, il, iu, d, e, e2, rtol1, rtol2, spltol, nsplit, isplit, m, w, werr, wgap, iblock, indexw, gers, pivmin, work, iwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: range
    integer(kind=ilp), intent(in) :: n
    real(kind=dp), intent(inout) :: vl
    real(kind=dp), intent(inout) :: vu
    integer(kind=ilp), intent(in) :: il
    integer(kind=ilp), intent(in) :: iu
    real(kind=dp), intent(inout) :: d(*)
    real(kind=dp), intent(inout) :: e(*)
    real(kind=dp), intent(inout) :: e2(*)
    real(kind=dp), intent(in) :: rtol1
    real(kind=dp), intent(in) :: rtol2
    real(kind=dp), intent(in) :: spltol
    integer(kind=ilp), intent(out) :: nsplit
    integer(kind=ilp), intent(out) :: isplit(*)
    integer(kind=ilp), intent(out) :: m
    real(kind=dp), intent(out) :: w(*)
    real(kind=dp), intent(out) :: werr(*)
    real(kind=dp), intent(out) :: wgap(*)
    integer(kind=ilp), intent(out) :: iblock(*)
    integer(kind=ilp), intent(out) :: indexw(*)
    real(kind=dp), intent(out) :: gers(*)
    real(kind=dp), intent(out) :: pivmin
    real(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(out) :: iwork(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_dlarrf(n, d, l, ld, clstrt, clend, w, wgap, werr, spdiam, clgapl, clgapr, pivmin, sigma, dplus, lplus, work, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: n
    real(kind=dp), intent(in) :: d(*)
    real(kind=dp), intent(in) :: l(*)
    real(kind=dp), intent(in) :: ld(*)
    integer(kind=ilp), intent(in) :: clstrt
    integer(kind=ilp), intent(in) :: clend
    real(kind=dp), intent(in) :: w(*)
    real(kind=dp), intent(inout) :: wgap(*)
    real(kind=dp), intent(in) :: werr(*)
    real(kind=dp), intent(in) :: spdiam
    real(kind=dp), intent(in) :: clgapl
    real(kind=dp), intent(in) :: clgapr
    real(kind=dp), intent(in) :: pivmin
    real(kind=dp), intent(out) :: sigma
    real(kind=dp), intent(out) :: dplus(*)
    real(kind=dp), intent(out) :: lplus(*)
    real(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_dlarrj(n, d, e2, ifirst, ilast, rtol, offset, w, werr, work, iwork, pivmin, spdiam, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: n
    real(kind=dp), intent(in) :: d(*)
    real(kind=dp), intent(in) :: e2(*)
    integer(kind=ilp), intent(in) :: ifirst
    integer(kind=ilp), intent(in) :: ilast
    real(kind=dp), intent(in) :: rtol
    integer(kind=ilp), intent(in) :: offset
    real(kind=dp), intent(inout) :: w(*)
    real(kind=dp), intent(inout) :: werr(*)
    real(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(out) :: iwork(*)
    real(kind=dp), intent(in) :: pivmin
    real(kind=dp), intent(in) :: spdiam
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_dlarrk(n, iw, gl, gu, d, e2, pivmin, reltol, w, werr, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: iw
    real(kind=dp), intent(in) :: gl
    real(kind=dp), intent(in) :: gu
    real(kind=dp), intent(in) :: d(*)
    real(kind=dp), intent(in) :: e2(*)
    real(kind=dp), intent(in) :: pivmin
    real(kind=dp), intent(in) :: reltol
    real(kind=dp), intent(out) :: w
    real(kind=dp), intent(out) :: werr
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_dlarrr(n, d, e, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: n
    real(kind=dp), intent(in) :: d(*)
    real(kind=dp), intent(inout) :: e(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_dlarrv(n, vl, vu, d, l, pivmin, isplit, m, dol, dou, minrgp, rtol1, rtol2, w, werr, wgap, iblock, indexw, gers, z, ldz, isuppz, work, iwork, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: n
    real(kind=dp), intent(in) :: vl
    real(kind=dp), intent(in) :: vu
    real(kind=dp), intent(inout) :: d(*)
    real(kind=dp), intent(inout) :: l(*)
    real(kind=dp), intent(in) :: pivmin
    integer(kind=ilp), intent(in) :: isplit(*)
    integer(kind=ilp), intent(in) :: m
    integer(kind=ilp), intent(in) :: dol
    integer(kind=ilp), intent(in) :: dou
    real(kind=dp), intent(in) :: minrgp
    real(kind=dp), intent(inout) :: rtol1
    real(kind=dp), intent(inout) :: rtol2
    real(kind=dp), intent(inout) :: w(*)
    real(kind=dp), intent(inout) :: werr(*)
    real(kind=dp), intent(inout) :: wgap(*)
    integer(kind=ilp), intent(in) :: iblock(*)
    integer(kind=ilp), intent(in) :: indexw(*)
    real(kind=dp), intent(in) :: gers(*)
    real(kind=dp), intent(out) :: z(ldz,*)
    integer(kind=ilp), intent(in) :: ldz
    integer(kind=ilp), intent(out) :: isuppz(*)
    real(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(out) :: iwork(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_dlartgs(x, y, sigma, cs, sn)

    Arguments

    Type IntentOptional Attributes Name
    real(kind=dp), intent(in) :: x
    real(kind=dp), intent(in) :: y
    real(kind=dp), intent(in) :: sigma
    real(kind=dp), intent(out) :: cs
    real(kind=dp), intent(out) :: sn

interface

  • public pure module subroutine stdlib_dlas2(f, g, h, ssmin, ssmax)

    Arguments

    Type IntentOptional Attributes Name
    real(kind=dp), intent(in) :: f
    real(kind=dp), intent(in) :: g
    real(kind=dp), intent(in) :: h
    real(kind=dp), intent(out) :: ssmin
    real(kind=dp), intent(out) :: ssmax

interface

  • public pure module subroutine stdlib_dlasd0(n, sqre, d, e, u, ldu, vt, ldvt, smlsiz, iwork, work, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: sqre
    real(kind=dp), intent(inout) :: d(*)
    real(kind=dp), intent(inout) :: e(*)
    real(kind=dp), intent(out) :: u(ldu,*)
    integer(kind=ilp), intent(in) :: ldu
    real(kind=dp), intent(out) :: vt(ldvt,*)
    integer(kind=ilp), intent(in) :: ldvt
    integer(kind=ilp), intent(in) :: smlsiz
    integer(kind=ilp), intent(out) :: iwork(*)
    real(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_dlasd1(nl, nr, sqre, d, alpha, beta, u, ldu, vt, ldvt, idxq, iwork, work, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: nl
    integer(kind=ilp), intent(in) :: nr
    integer(kind=ilp), intent(in) :: sqre
    real(kind=dp), intent(inout) :: d(*)
    real(kind=dp), intent(inout) :: alpha
    real(kind=dp), intent(inout) :: beta
    real(kind=dp), intent(inout) :: u(ldu,*)
    integer(kind=ilp), intent(in) :: ldu
    real(kind=dp), intent(inout) :: vt(ldvt,*)
    integer(kind=ilp), intent(in) :: ldvt
    integer(kind=ilp), intent(inout) :: idxq(*)
    integer(kind=ilp), intent(out) :: iwork(*)
    real(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_dlasd2(nl, nr, sqre, k, d, z, alpha, beta, u, ldu, vt, ldvt, dsigma, u2, ldu2, vt2, ldvt2, idxp, idx, idxc, idxq, coltyp, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: nl
    integer(kind=ilp), intent(in) :: nr
    integer(kind=ilp), intent(in) :: sqre
    integer(kind=ilp), intent(out) :: k
    real(kind=dp), intent(inout) :: d(*)
    real(kind=dp), intent(out) :: z(*)
    real(kind=dp), intent(in) :: alpha
    real(kind=dp), intent(in) :: beta
    real(kind=dp), intent(inout) :: u(ldu,*)
    integer(kind=ilp), intent(in) :: ldu
    real(kind=dp), intent(inout) :: vt(ldvt,*)
    integer(kind=ilp), intent(in) :: ldvt
    real(kind=dp), intent(out) :: dsigma(*)
    real(kind=dp), intent(out) :: u2(ldu2,*)
    integer(kind=ilp), intent(in) :: ldu2
    real(kind=dp), intent(out) :: vt2(ldvt2,*)
    integer(kind=ilp), intent(in) :: ldvt2
    integer(kind=ilp), intent(out) :: idxp(*)
    integer(kind=ilp), intent(out) :: idx(*)
    integer(kind=ilp), intent(out) :: idxc(*)
    integer(kind=ilp), intent(inout) :: idxq(*)
    integer(kind=ilp), intent(out) :: coltyp(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_dlasd3(nl, nr, sqre, k, d, q, ldq, dsigma, u, ldu, u2, ldu2, vt, ldvt, vt2, ldvt2, idxc, ctot, z, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: nl
    integer(kind=ilp), intent(in) :: nr
    integer(kind=ilp), intent(in) :: sqre
    integer(kind=ilp), intent(in) :: k
    real(kind=dp), intent(out) :: d(*)
    real(kind=dp), intent(out) :: q(ldq,*)
    integer(kind=ilp), intent(in) :: ldq
    real(kind=dp), intent(inout) :: dsigma(*)
    real(kind=dp), intent(out) :: u(ldu,*)
    integer(kind=ilp), intent(in) :: ldu
    real(kind=dp), intent(in) :: u2(ldu2,*)
    integer(kind=ilp), intent(in) :: ldu2
    real(kind=dp), intent(out) :: vt(ldvt,*)
    integer(kind=ilp), intent(in) :: ldvt
    real(kind=dp), intent(inout) :: vt2(ldvt2,*)
    integer(kind=ilp), intent(in) :: ldvt2
    integer(kind=ilp), intent(in) :: idxc(*)
    integer(kind=ilp), intent(in) :: ctot(*)
    real(kind=dp), intent(inout) :: z(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_dlasd4(n, i, d, z, delta, rho, sigma, work, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: i
    real(kind=dp), intent(in) :: d(*)
    real(kind=dp), intent(in) :: z(*)
    real(kind=dp), intent(out) :: delta(*)
    real(kind=dp), intent(in) :: rho
    real(kind=dp), intent(out) :: sigma
    real(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_dlasd5(i, d, z, delta, rho, dsigma, work)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: i
    real(kind=dp), intent(in) :: d(2_ilp)
    real(kind=dp), intent(in) :: z(2_ilp)
    real(kind=dp), intent(out) :: delta(2_ilp)
    real(kind=dp), intent(in) :: rho
    real(kind=dp), intent(out) :: dsigma
    real(kind=dp), intent(out) :: work(2_ilp)

interface

  • public pure module subroutine stdlib_dlasd6(icompq, nl, nr, sqre, d, vf, vl, alpha, beta, idxq, perm, givptr, givcol, ldgcol, givnum, ldgnum, poles, difl, difr, z, k, c, s, work, iwork, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: icompq
    integer(kind=ilp), intent(in) :: nl
    integer(kind=ilp), intent(in) :: nr
    integer(kind=ilp), intent(in) :: sqre
    real(kind=dp), intent(inout) :: d(*)
    real(kind=dp), intent(inout) :: vf(*)
    real(kind=dp), intent(inout) :: vl(*)
    real(kind=dp), intent(inout) :: alpha
    real(kind=dp), intent(inout) :: beta
    integer(kind=ilp), intent(inout) :: idxq(*)
    integer(kind=ilp), intent(out) :: perm(*)
    integer(kind=ilp), intent(out) :: givptr
    integer(kind=ilp), intent(out) :: givcol(ldgcol,*)
    integer(kind=ilp), intent(in) :: ldgcol
    real(kind=dp), intent(out) :: givnum(ldgnum,*)
    integer(kind=ilp), intent(in) :: ldgnum
    real(kind=dp), intent(out) :: poles(ldgnum,*)
    real(kind=dp), intent(out) :: difl(*)
    real(kind=dp), intent(out) :: difr(*)
    real(kind=dp), intent(out) :: z(*)
    integer(kind=ilp), intent(out) :: k
    real(kind=dp), intent(out) :: c
    real(kind=dp), intent(out) :: s
    real(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(out) :: iwork(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_dlasd7(icompq, nl, nr, sqre, k, d, z, zw, vf, vfw, vl, vlw, alpha, beta, dsigma, idx, idxp, idxq, perm, givptr, givcol, ldgcol, givnum, ldgnum, c, s, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: icompq
    integer(kind=ilp), intent(in) :: nl
    integer(kind=ilp), intent(in) :: nr
    integer(kind=ilp), intent(in) :: sqre
    integer(kind=ilp), intent(out) :: k
    real(kind=dp), intent(inout) :: d(*)
    real(kind=dp), intent(out) :: z(*)
    real(kind=dp), intent(out) :: zw(*)
    real(kind=dp), intent(inout) :: vf(*)
    real(kind=dp), intent(out) :: vfw(*)
    real(kind=dp), intent(inout) :: vl(*)
    real(kind=dp), intent(out) :: vlw(*)
    real(kind=dp), intent(in) :: alpha
    real(kind=dp), intent(in) :: beta
    real(kind=dp), intent(out) :: dsigma(*)
    integer(kind=ilp), intent(out) :: idx(*)
    integer(kind=ilp), intent(out) :: idxp(*)
    integer(kind=ilp), intent(inout) :: idxq(*)
    integer(kind=ilp), intent(out) :: perm(*)
    integer(kind=ilp), intent(out) :: givptr
    integer(kind=ilp), intent(out) :: givcol(ldgcol,*)
    integer(kind=ilp), intent(in) :: ldgcol
    real(kind=dp), intent(out) :: givnum(ldgnum,*)
    integer(kind=ilp), intent(in) :: ldgnum
    real(kind=dp), intent(out) :: c
    real(kind=dp), intent(out) :: s
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_dlasd8(icompq, k, d, z, vf, vl, difl, difr, lddifr, dsigma, work, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: icompq
    integer(kind=ilp), intent(in) :: k
    real(kind=dp), intent(out) :: d(*)
    real(kind=dp), intent(inout) :: z(*)
    real(kind=dp), intent(inout) :: vf(*)
    real(kind=dp), intent(inout) :: vl(*)
    real(kind=dp), intent(out) :: difl(*)
    real(kind=dp), intent(out) :: difr(lddifr,*)
    integer(kind=ilp), intent(in) :: lddifr
    real(kind=dp), intent(inout) :: dsigma(*)
    real(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_dlasda(icompq, smlsiz, n, sqre, d, e, u, ldu, vt, k, difl, difr, z, poles, givptr, givcol, ldgcol, perm, givnum, c, s, work, iwork, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: icompq
    integer(kind=ilp), intent(in) :: smlsiz
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: sqre
    real(kind=dp), intent(inout) :: d(*)
    real(kind=dp), intent(inout) :: e(*)
    real(kind=dp), intent(out) :: u(ldu,*)
    integer(kind=ilp), intent(in) :: ldu
    real(kind=dp), intent(out) :: vt(ldu,*)
    integer(kind=ilp), intent(out) :: k(*)
    real(kind=dp), intent(out) :: difl(ldu,*)
    real(kind=dp), intent(out) :: difr(ldu,*)
    real(kind=dp), intent(out) :: z(ldu,*)
    real(kind=dp), intent(out) :: poles(ldu,*)
    integer(kind=ilp), intent(out) :: givptr(*)
    integer(kind=ilp), intent(out) :: givcol(ldgcol,*)
    integer(kind=ilp), intent(in) :: ldgcol
    integer(kind=ilp), intent(out) :: perm(ldgcol,*)
    real(kind=dp), intent(out) :: givnum(ldu,*)
    real(kind=dp), intent(out) :: c(*)
    real(kind=dp), intent(out) :: s(*)
    real(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(out) :: iwork(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_dlasdq(uplo, sqre, n, ncvt, nru, ncc, d, e, vt, ldvt, u, ldu, c, ldc, work, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: uplo
    integer(kind=ilp), intent(in) :: sqre
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: ncvt
    integer(kind=ilp), intent(in) :: nru
    integer(kind=ilp), intent(in) :: ncc
    real(kind=dp), intent(inout) :: d(*)
    real(kind=dp), intent(inout) :: e(*)
    real(kind=dp), intent(inout) :: vt(ldvt,*)
    integer(kind=ilp), intent(in) :: ldvt
    real(kind=dp), intent(inout) :: u(ldu,*)
    integer(kind=ilp), intent(in) :: ldu
    real(kind=dp), intent(inout) :: c(ldc,*)
    integer(kind=ilp), intent(in) :: ldc
    real(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_dlasdt(n, lvl, nd, inode, ndiml, ndimr, msub)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(out) :: lvl
    integer(kind=ilp), intent(out) :: nd
    integer(kind=ilp), intent(out) :: inode(*)
    integer(kind=ilp), intent(out) :: ndiml(*)
    integer(kind=ilp), intent(out) :: ndimr(*)
    integer(kind=ilp), intent(in) :: msub

interface

  • public pure module subroutine stdlib_dlasq1(n, d, e, work, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: n
    real(kind=dp), intent(inout) :: d(*)
    real(kind=dp), intent(inout) :: e(*)
    real(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_dlasq2(n, z, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: n
    real(kind=dp), intent(inout) :: z(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_dlasq3(i0, n0, z, pp, dmin, sigma, desig, qmax, nfail, iter, ndiv, ieee, ttype, dmin1, dmin2, dn, dn1, dn2, g, tau)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: i0
    integer(kind=ilp), intent(inout) :: n0
    real(kind=dp), intent(inout) :: z(*)
    integer(kind=ilp), intent(inout) :: pp
    real(kind=dp), intent(out) :: dmin
    real(kind=dp), intent(out) :: sigma
    real(kind=dp), intent(inout) :: desig
    real(kind=dp), intent(inout) :: qmax
    integer(kind=ilp), intent(inout) :: nfail
    integer(kind=ilp), intent(inout) :: iter
    integer(kind=ilp), intent(inout) :: ndiv
    logical(kind=lk), intent(in) :: ieee
    integer(kind=ilp), intent(inout) :: ttype
    real(kind=dp), intent(inout) :: dmin1
    real(kind=dp), intent(inout) :: dmin2
    real(kind=dp), intent(inout) :: dn
    real(kind=dp), intent(inout) :: dn1
    real(kind=dp), intent(inout) :: dn2
    real(kind=dp), intent(inout) :: g
    real(kind=dp), intent(inout) :: tau

interface

  • public pure module subroutine stdlib_dlasq4(i0, n0, z, pp, n0in, dmin, dmin1, dmin2, dn, dn1, dn2, tau, ttype, g)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: i0
    integer(kind=ilp), intent(in) :: n0
    real(kind=dp), intent(in) :: z(*)
    integer(kind=ilp), intent(in) :: pp
    integer(kind=ilp), intent(in) :: n0in
    real(kind=dp), intent(in) :: dmin
    real(kind=dp), intent(in) :: dmin1
    real(kind=dp), intent(in) :: dmin2
    real(kind=dp), intent(in) :: dn
    real(kind=dp), intent(in) :: dn1
    real(kind=dp), intent(in) :: dn2
    real(kind=dp), intent(out) :: tau
    integer(kind=ilp), intent(out) :: ttype
    real(kind=dp), intent(inout) :: g

interface

  • public pure module subroutine stdlib_dlasq5(i0, n0, z, pp, tau, sigma, dmin, dmin1, dmin2, dn, dnm1, dnm2, ieee, eps)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: i0
    integer(kind=ilp), intent(in) :: n0
    real(kind=dp), intent(inout) :: z(*)
    integer(kind=ilp), intent(in) :: pp
    real(kind=dp), intent(inout) :: tau
    real(kind=dp), intent(in) :: sigma
    real(kind=dp), intent(out) :: dmin
    real(kind=dp), intent(out) :: dmin1
    real(kind=dp), intent(out) :: dmin2
    real(kind=dp), intent(out) :: dn
    real(kind=dp), intent(out) :: dnm1
    real(kind=dp), intent(out) :: dnm2
    logical(kind=lk), intent(in) :: ieee
    real(kind=dp), intent(in) :: eps

interface

  • public pure module subroutine stdlib_dlasq6(i0, n0, z, pp, dmin, dmin1, dmin2, dn, dnm1, dnm2)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: i0
    integer(kind=ilp), intent(in) :: n0
    real(kind=dp), intent(inout) :: z(*)
    integer(kind=ilp), intent(in) :: pp
    real(kind=dp), intent(out) :: dmin
    real(kind=dp), intent(out) :: dmin1
    real(kind=dp), intent(out) :: dmin2
    real(kind=dp), intent(out) :: dn
    real(kind=dp), intent(out) :: dnm1
    real(kind=dp), intent(out) :: dnm2

interface

  • public pure module subroutine stdlib_dlasv2(f, g, h, ssmin, ssmax, snr, csr, snl, csl)

    Arguments

    Type IntentOptional Attributes Name
    real(kind=dp), intent(in) :: f
    real(kind=dp), intent(in) :: g
    real(kind=dp), intent(in) :: h
    real(kind=dp), intent(out) :: ssmin
    real(kind=dp), intent(out) :: ssmax
    real(kind=dp), intent(out) :: snr
    real(kind=dp), intent(out) :: csr
    real(kind=dp), intent(out) :: snl
    real(kind=dp), intent(out) :: csl

interface

  • public pure module subroutine stdlib_dlasy2(ltranl, ltranr, isgn, n1, n2, tl, ldtl, tr, ldtr, b, ldb, scale, x, ldx, xnorm, info)

    Arguments

    Type IntentOptional Attributes Name
    logical(kind=lk), intent(in) :: ltranl
    logical(kind=lk), intent(in) :: ltranr
    integer(kind=ilp), intent(in) :: isgn
    integer(kind=ilp), intent(in) :: n1
    integer(kind=ilp), intent(in) :: n2
    real(kind=dp), intent(in) :: tl(ldtl,*)
    integer(kind=ilp), intent(in) :: ldtl
    real(kind=dp), intent(in) :: tr(ldtr,*)
    integer(kind=ilp), intent(in) :: ldtr
    real(kind=dp), intent(in) :: b(ldb,*)
    integer(kind=ilp), intent(in) :: ldb
    real(kind=dp), intent(out) :: scale
    real(kind=dp), intent(out) :: x(ldx,*)
    integer(kind=ilp), intent(in) :: ldx
    real(kind=dp), intent(out) :: xnorm
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_dlatrd(uplo, n, nb, a, lda, e, tau, w, ldw)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: uplo
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: nb
    real(kind=dp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    real(kind=dp), intent(out) :: e(*)
    real(kind=dp), intent(out) :: tau(*)
    real(kind=dp), intent(out) :: w(ldw,*)
    integer(kind=ilp), intent(in) :: ldw

interface

  • public pure module subroutine stdlib_dopgtr(uplo, n, ap, tau, q, ldq, work, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: uplo
    integer(kind=ilp), intent(in) :: n
    real(kind=dp), intent(in) :: ap(*)
    real(kind=dp), intent(in) :: tau(*)
    real(kind=dp), intent(out) :: q(ldq,*)
    integer(kind=ilp), intent(in) :: ldq
    real(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_dopmtr(side, uplo, trans, m, n, ap, tau, c, ldc, work, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: side
    character(len=1), intent(in) :: uplo
    character(len=1), intent(in) :: trans
    integer(kind=ilp), intent(in) :: m
    integer(kind=ilp), intent(in) :: n
    real(kind=dp), intent(inout) :: ap(*)
    real(kind=dp), intent(in) :: tau(*)
    real(kind=dp), intent(inout) :: c(ldc,*)
    integer(kind=ilp), intent(in) :: ldc
    real(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_dorbdb(trans, signs, m, p, q, x11, ldx11, x12, ldx12, x21, ldx21, x22, ldx22, theta, phi, taup1, taup2, tauq1, tauq2, work, lwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: trans
    character(len=1), intent(in) :: signs
    integer(kind=ilp), intent(in) :: m
    integer(kind=ilp), intent(in) :: p
    integer(kind=ilp), intent(in) :: q
    real(kind=dp), intent(inout) :: x11(ldx11,*)
    integer(kind=ilp), intent(in) :: ldx11
    real(kind=dp), intent(inout) :: x12(ldx12,*)
    integer(kind=ilp), intent(in) :: ldx12
    real(kind=dp), intent(inout) :: x21(ldx21,*)
    integer(kind=ilp), intent(in) :: ldx21
    real(kind=dp), intent(inout) :: x22(ldx22,*)
    integer(kind=ilp), intent(in) :: ldx22
    real(kind=dp), intent(out) :: theta(*)
    real(kind=dp), intent(out) :: phi(*)
    real(kind=dp), intent(out) :: taup1(*)
    real(kind=dp), intent(out) :: taup2(*)
    real(kind=dp), intent(out) :: tauq1(*)
    real(kind=dp), intent(out) :: tauq2(*)
    real(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_dorbdb1(m, p, q, x11, ldx11, x21, ldx21, theta, phi, taup1, taup2, tauq1, work, lwork, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: m
    integer(kind=ilp), intent(in) :: p
    integer(kind=ilp), intent(in) :: q
    real(kind=dp), intent(inout) :: x11(ldx11,*)
    integer(kind=ilp), intent(in) :: ldx11
    real(kind=dp), intent(inout) :: x21(ldx21,*)
    integer(kind=ilp), intent(in) :: ldx21
    real(kind=dp), intent(out) :: theta(*)
    real(kind=dp), intent(out) :: phi(*)
    real(kind=dp), intent(out) :: taup1(*)
    real(kind=dp), intent(out) :: taup2(*)
    real(kind=dp), intent(out) :: tauq1(*)
    real(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_dorbdb2(m, p, q, x11, ldx11, x21, ldx21, theta, phi, taup1, taup2, tauq1, work, lwork, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: m
    integer(kind=ilp), intent(in) :: p
    integer(kind=ilp), intent(in) :: q
    real(kind=dp), intent(inout) :: x11(ldx11,*)
    integer(kind=ilp), intent(in) :: ldx11
    real(kind=dp), intent(inout) :: x21(ldx21,*)
    integer(kind=ilp), intent(in) :: ldx21
    real(kind=dp), intent(out) :: theta(*)
    real(kind=dp), intent(out) :: phi(*)
    real(kind=dp), intent(out) :: taup1(*)
    real(kind=dp), intent(out) :: taup2(*)
    real(kind=dp), intent(out) :: tauq1(*)
    real(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_dorbdb3(m, p, q, x11, ldx11, x21, ldx21, theta, phi, taup1, taup2, tauq1, work, lwork, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: m
    integer(kind=ilp), intent(in) :: p
    integer(kind=ilp), intent(in) :: q
    real(kind=dp), intent(inout) :: x11(ldx11,*)
    integer(kind=ilp), intent(in) :: ldx11
    real(kind=dp), intent(inout) :: x21(ldx21,*)
    integer(kind=ilp), intent(in) :: ldx21
    real(kind=dp), intent(out) :: theta(*)
    real(kind=dp), intent(out) :: phi(*)
    real(kind=dp), intent(out) :: taup1(*)
    real(kind=dp), intent(out) :: taup2(*)
    real(kind=dp), intent(out) :: tauq1(*)
    real(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_dorbdb4(m, p, q, x11, ldx11, x21, ldx21, theta, phi, taup1, taup2, tauq1, phantom, work, lwork, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: m
    integer(kind=ilp), intent(in) :: p
    integer(kind=ilp), intent(in) :: q
    real(kind=dp), intent(inout) :: x11(ldx11,*)
    integer(kind=ilp), intent(in) :: ldx11
    real(kind=dp), intent(inout) :: x21(ldx21,*)
    integer(kind=ilp), intent(in) :: ldx21
    real(kind=dp), intent(out) :: theta(*)
    real(kind=dp), intent(out) :: phi(*)
    real(kind=dp), intent(out) :: taup1(*)
    real(kind=dp), intent(out) :: taup2(*)
    real(kind=dp), intent(out) :: tauq1(*)
    real(kind=dp), intent(out) :: phantom(*)
    real(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_dorbdb5(m1, m2, n, x1, incx1, x2, incx2, q1, ldq1, q2, ldq2, work, lwork, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: m1
    integer(kind=ilp), intent(in) :: m2
    integer(kind=ilp), intent(in) :: n
    real(kind=dp), intent(inout) :: x1(*)
    integer(kind=ilp), intent(in) :: incx1
    real(kind=dp), intent(inout) :: x2(*)
    integer(kind=ilp), intent(in) :: incx2
    real(kind=dp), intent(in) :: q1(ldq1,*)
    integer(kind=ilp), intent(in) :: ldq1
    real(kind=dp), intent(in) :: q2(ldq2,*)
    integer(kind=ilp), intent(in) :: ldq2
    real(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_dorbdb6(m1, m2, n, x1, incx1, x2, incx2, q1, ldq1, q2, ldq2, work, lwork, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: m1
    integer(kind=ilp), intent(in) :: m2
    integer(kind=ilp), intent(in) :: n
    real(kind=dp), intent(inout) :: x1(*)
    integer(kind=ilp), intent(in) :: incx1
    real(kind=dp), intent(inout) :: x2(*)
    integer(kind=ilp), intent(in) :: incx2
    real(kind=dp), intent(in) :: q1(ldq1,*)
    integer(kind=ilp), intent(in) :: ldq1
    real(kind=dp), intent(in) :: q2(ldq2,*)
    integer(kind=ilp), intent(in) :: ldq2
    real(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: info

interface

  • public recursive module subroutine stdlib_dorcsd(jobu1, jobu2, jobv1t, jobv2t, trans, signs, m, p, q, x11, ldx11, x12, ldx12, x21, ldx21, x22, ldx22, theta, u1, ldu1, u2, ldu2, v1t, ldv1t, v2t, ldv2t, work, lwork, iwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: jobu1
    character(len=1), intent(in) :: jobu2
    character(len=1), intent(in) :: jobv1t
    character(len=1), intent(in) :: jobv2t
    character(len=1), intent(in) :: trans
    character(len=1), intent(in) :: signs
    integer(kind=ilp), intent(in) :: m
    integer(kind=ilp), intent(in) :: p
    integer(kind=ilp), intent(in) :: q
    real(kind=dp), intent(inout) :: x11(ldx11,*)
    integer(kind=ilp), intent(in) :: ldx11
    real(kind=dp), intent(inout) :: x12(ldx12,*)
    integer(kind=ilp), intent(in) :: ldx12
    real(kind=dp), intent(inout) :: x21(ldx21,*)
    integer(kind=ilp), intent(in) :: ldx21
    real(kind=dp), intent(inout) :: x22(ldx22,*)
    integer(kind=ilp), intent(in) :: ldx22
    real(kind=dp), intent(out) :: theta(*)
    real(kind=dp), intent(out) :: u1(ldu1,*)
    integer(kind=ilp), intent(in) :: ldu1
    real(kind=dp), intent(out) :: u2(ldu2,*)
    integer(kind=ilp), intent(in) :: ldu2
    real(kind=dp), intent(out) :: v1t(ldv1t,*)
    integer(kind=ilp), intent(in) :: ldv1t
    real(kind=dp), intent(out) :: v2t(ldv2t,*)
    integer(kind=ilp), intent(in) :: ldv2t
    real(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: iwork(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_dorcsd2by1(jobu1, jobu2, jobv1t, m, p, q, x11, ldx11, x21, ldx21, theta, u1, ldu1, u2, ldu2, v1t, ldv1t, work, lwork, iwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: jobu1
    character(len=1), intent(in) :: jobu2
    character(len=1), intent(in) :: jobv1t
    integer(kind=ilp), intent(in) :: m
    integer(kind=ilp), intent(in) :: p
    integer(kind=ilp), intent(in) :: q
    real(kind=dp), intent(inout) :: x11(ldx11,*)
    integer(kind=ilp), intent(in) :: ldx11
    real(kind=dp), intent(inout) :: x21(ldx21,*)
    integer(kind=ilp), intent(in) :: ldx21
    real(kind=dp), intent(out) :: theta(*)
    real(kind=dp), intent(out) :: u1(ldu1,*)
    integer(kind=ilp), intent(in) :: ldu1
    real(kind=dp), intent(out) :: u2(ldu2,*)
    integer(kind=ilp), intent(in) :: ldu2
    real(kind=dp), intent(out) :: v1t(ldv1t,*)
    integer(kind=ilp), intent(in) :: ldv1t
    real(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: iwork(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_dorgbr(vect, m, n, k, a, lda, tau, work, lwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: vect
    integer(kind=ilp), intent(in) :: m
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: k
    real(kind=dp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    real(kind=dp), intent(in) :: tau(*)
    real(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_dorghr(n, ilo, ihi, a, lda, tau, work, lwork, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: ilo
    integer(kind=ilp), intent(in) :: ihi
    real(kind=dp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    real(kind=dp), intent(in) :: tau(*)
    real(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_dorgtr(uplo, n, a, lda, tau, work, lwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: uplo
    integer(kind=ilp), intent(in) :: n
    real(kind=dp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    real(kind=dp), intent(in) :: tau(*)
    real(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_dorm22(side, trans, m, n, n1, n2, q, ldq, c, ldc, work, lwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: side
    character(len=1), intent(in) :: trans
    integer(kind=ilp), intent(in) :: m
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: n1
    integer(kind=ilp), intent(in) :: n2
    real(kind=dp), intent(in) :: q(ldq,*)
    integer(kind=ilp), intent(in) :: ldq
    real(kind=dp), intent(inout) :: c(ldc,*)
    integer(kind=ilp), intent(in) :: ldc
    real(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_dormbr(vect, side, trans, m, n, k, a, lda, tau, c, ldc, work, lwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: vect
    character(len=1), intent(in) :: side
    character(len=1), intent(in) :: trans
    integer(kind=ilp), intent(in) :: m
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: k
    real(kind=dp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    real(kind=dp), intent(in) :: tau(*)
    real(kind=dp), intent(inout) :: c(ldc,*)
    integer(kind=ilp), intent(in) :: ldc
    real(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_dormhr(side, trans, m, n, ilo, ihi, a, lda, tau, c, ldc, work, lwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: side
    character(len=1), intent(in) :: trans
    integer(kind=ilp), intent(in) :: m
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: ilo
    integer(kind=ilp), intent(in) :: ihi
    real(kind=dp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    real(kind=dp), intent(in) :: tau(*)
    real(kind=dp), intent(inout) :: c(ldc,*)
    integer(kind=ilp), intent(in) :: ldc
    real(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_dormtr(side, uplo, trans, m, n, a, lda, tau, c, ldc, work, lwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: side
    character(len=1), intent(in) :: uplo
    character(len=1), intent(in) :: trans
    integer(kind=ilp), intent(in) :: m
    integer(kind=ilp), intent(in) :: n
    real(kind=dp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    real(kind=dp), intent(in) :: tau(*)
    real(kind=dp), intent(inout) :: c(ldc,*)
    integer(kind=ilp), intent(in) :: ldc
    real(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_dpbstf(uplo, n, kd, ab, ldab, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: uplo
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: kd
    real(kind=dp), intent(inout) :: ab(ldab,*)
    integer(kind=ilp), intent(in) :: ldab
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_dpteqr(compz, n, d, e, z, ldz, work, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: compz
    integer(kind=ilp), intent(in) :: n
    real(kind=dp), intent(inout) :: d(*)
    real(kind=dp), intent(inout) :: e(*)
    real(kind=dp), intent(inout) :: z(ldz,*)
    integer(kind=ilp), intent(in) :: ldz
    real(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_dsb2st_kernels(uplo, wantz, ttype, st, ed, sweep, n, nb, ib, a, lda, v, tau, ldvt, work)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: uplo
    logical(kind=lk), intent(in) :: wantz
    integer(kind=ilp), intent(in) :: ttype
    integer(kind=ilp), intent(in) :: st
    integer(kind=ilp), intent(in) :: ed
    integer(kind=ilp), intent(in) :: sweep
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: nb
    integer(kind=ilp), intent(in) :: ib
    real(kind=dp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    real(kind=dp), intent(out) :: v(*)
    real(kind=dp), intent(out) :: tau(*)
    integer(kind=ilp), intent(in) :: ldvt
    real(kind=dp), intent(out) :: work(*)

interface

  • public module subroutine stdlib_dsbev(jobz, uplo, n, kd, ab, ldab, w, z, ldz, work, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: jobz
    character(len=1), intent(in) :: uplo
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: kd
    real(kind=dp), intent(inout) :: ab(ldab,*)
    integer(kind=ilp), intent(in) :: ldab
    real(kind=dp), intent(out) :: w(*)
    real(kind=dp), intent(out) :: z(ldz,*)
    integer(kind=ilp), intent(in) :: ldz
    real(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_dsbevd(jobz, uplo, n, kd, ab, ldab, w, z, ldz, work, lwork, iwork, liwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: jobz
    character(len=1), intent(in) :: uplo
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: kd
    real(kind=dp), intent(inout) :: ab(ldab,*)
    integer(kind=ilp), intent(in) :: ldab
    real(kind=dp), intent(out) :: w(*)
    real(kind=dp), intent(out) :: z(ldz,*)
    integer(kind=ilp), intent(in) :: ldz
    real(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: iwork(*)
    integer(kind=ilp), intent(in) :: liwork
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_dsbevx(jobz, range, uplo, n, kd, ab, ldab, q, ldq, vl, vu, il, iu, abstol, m, w, z, ldz, work, iwork, ifail, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: jobz
    character(len=1), intent(in) :: range
    character(len=1), intent(in) :: uplo
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: kd
    real(kind=dp), intent(inout) :: ab(ldab,*)
    integer(kind=ilp), intent(in) :: ldab
    real(kind=dp), intent(out) :: q(ldq,*)
    integer(kind=ilp), intent(in) :: ldq
    real(kind=dp), intent(in) :: vl
    real(kind=dp), intent(in) :: vu
    integer(kind=ilp), intent(in) :: il
    integer(kind=ilp), intent(in) :: iu
    real(kind=dp), intent(in) :: abstol
    integer(kind=ilp), intent(out) :: m
    real(kind=dp), intent(out) :: w(*)
    real(kind=dp), intent(out) :: z(ldz,*)
    integer(kind=ilp), intent(in) :: ldz
    real(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(out) :: iwork(*)
    integer(kind=ilp), intent(out) :: ifail(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_dsbgst(vect, uplo, n, ka, kb, ab, ldab, bb, ldbb, x, ldx, work, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: vect
    character(len=1), intent(in) :: uplo
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: ka
    integer(kind=ilp), intent(in) :: kb
    real(kind=dp), intent(inout) :: ab(ldab,*)
    integer(kind=ilp), intent(in) :: ldab
    real(kind=dp), intent(in) :: bb(ldbb,*)
    integer(kind=ilp), intent(in) :: ldbb
    real(kind=dp), intent(out) :: x(ldx,*)
    integer(kind=ilp), intent(in) :: ldx
    real(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_dsbgv(jobz, uplo, n, ka, kb, ab, ldab, bb, ldbb, w, z, ldz, work, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: jobz
    character(len=1), intent(in) :: uplo
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: ka
    integer(kind=ilp), intent(in) :: kb
    real(kind=dp), intent(inout) :: ab(ldab,*)
    integer(kind=ilp), intent(in) :: ldab
    real(kind=dp), intent(inout) :: bb(ldbb,*)
    integer(kind=ilp), intent(in) :: ldbb
    real(kind=dp), intent(out) :: w(*)
    real(kind=dp), intent(out) :: z(ldz,*)
    integer(kind=ilp), intent(in) :: ldz
    real(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_dsbgvd(jobz, uplo, n, ka, kb, ab, ldab, bb, ldbb, w, z, ldz, work, lwork, iwork, liwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: jobz
    character(len=1), intent(in) :: uplo
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: ka
    integer(kind=ilp), intent(in) :: kb
    real(kind=dp), intent(inout) :: ab(ldab,*)
    integer(kind=ilp), intent(in) :: ldab
    real(kind=dp), intent(inout) :: bb(ldbb,*)
    integer(kind=ilp), intent(in) :: ldbb
    real(kind=dp), intent(out) :: w(*)
    real(kind=dp), intent(out) :: z(ldz,*)
    integer(kind=ilp), intent(in) :: ldz
    real(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: iwork(*)
    integer(kind=ilp), intent(in) :: liwork
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_dsbgvx(jobz, range, uplo, n, ka, kb, ab, ldab, bb, ldbb, q, ldq, vl, vu, il, iu, abstol, m, w, z, ldz, work, iwork, ifail, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: jobz
    character(len=1), intent(in) :: range
    character(len=1), intent(in) :: uplo
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: ka
    integer(kind=ilp), intent(in) :: kb
    real(kind=dp), intent(inout) :: ab(ldab,*)
    integer(kind=ilp), intent(in) :: ldab
    real(kind=dp), intent(inout) :: bb(ldbb,*)
    integer(kind=ilp), intent(in) :: ldbb
    real(kind=dp), intent(out) :: q(ldq,*)
    integer(kind=ilp), intent(in) :: ldq
    real(kind=dp), intent(in) :: vl
    real(kind=dp), intent(in) :: vu
    integer(kind=ilp), intent(in) :: il
    integer(kind=ilp), intent(in) :: iu
    real(kind=dp), intent(in) :: abstol
    integer(kind=ilp), intent(out) :: m
    real(kind=dp), intent(out) :: w(*)
    real(kind=dp), intent(out) :: z(ldz,*)
    integer(kind=ilp), intent(in) :: ldz
    real(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(out) :: iwork(*)
    integer(kind=ilp), intent(out) :: ifail(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_dsbtrd(vect, uplo, n, kd, ab, ldab, d, e, q, ldq, work, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: vect
    character(len=1), intent(in) :: uplo
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: kd
    real(kind=dp), intent(inout) :: ab(ldab,*)
    integer(kind=ilp), intent(in) :: ldab
    real(kind=dp), intent(out) :: d(*)
    real(kind=dp), intent(out) :: e(*)
    real(kind=dp), intent(inout) :: q(ldq,*)
    integer(kind=ilp), intent(in) :: ldq
    real(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_dspev(jobz, uplo, n, ap, w, z, ldz, work, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: jobz
    character(len=1), intent(in) :: uplo
    integer(kind=ilp), intent(in) :: n
    real(kind=dp), intent(inout) :: ap(*)
    real(kind=dp), intent(out) :: w(*)
    real(kind=dp), intent(out) :: z(ldz,*)
    integer(kind=ilp), intent(in) :: ldz
    real(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_dspevd(jobz, uplo, n, ap, w, z, ldz, work, lwork, iwork, liwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: jobz
    character(len=1), intent(in) :: uplo
    integer(kind=ilp), intent(in) :: n
    real(kind=dp), intent(inout) :: ap(*)
    real(kind=dp), intent(out) :: w(*)
    real(kind=dp), intent(out) :: z(ldz,*)
    integer(kind=ilp), intent(in) :: ldz
    real(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: iwork(*)
    integer(kind=ilp), intent(in) :: liwork
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_dspevx(jobz, range, uplo, n, ap, vl, vu, il, iu, abstol, m, w, z, ldz, work, iwork, ifail, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: jobz
    character(len=1), intent(in) :: range
    character(len=1), intent(in) :: uplo
    integer(kind=ilp), intent(in) :: n
    real(kind=dp), intent(inout) :: ap(*)
    real(kind=dp), intent(in) :: vl
    real(kind=dp), intent(in) :: vu
    integer(kind=ilp), intent(in) :: il
    integer(kind=ilp), intent(in) :: iu
    real(kind=dp), intent(in) :: abstol
    integer(kind=ilp), intent(out) :: m
    real(kind=dp), intent(out) :: w(*)
    real(kind=dp), intent(out) :: z(ldz,*)
    integer(kind=ilp), intent(in) :: ldz
    real(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(out) :: iwork(*)
    integer(kind=ilp), intent(out) :: ifail(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_dspgst(itype, uplo, n, ap, bp, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: itype
    character(len=1), intent(in) :: uplo
    integer(kind=ilp), intent(in) :: n
    real(kind=dp), intent(inout) :: ap(*)
    real(kind=dp), intent(in) :: bp(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_dspgv(itype, jobz, uplo, n, ap, bp, w, z, ldz, work, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: itype
    character(len=1), intent(in) :: jobz
    character(len=1), intent(in) :: uplo
    integer(kind=ilp), intent(in) :: n
    real(kind=dp), intent(inout) :: ap(*)
    real(kind=dp), intent(inout) :: bp(*)
    real(kind=dp), intent(out) :: w(*)
    real(kind=dp), intent(out) :: z(ldz,*)
    integer(kind=ilp), intent(in) :: ldz
    real(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_dspgvd(itype, jobz, uplo, n, ap, bp, w, z, ldz, work, lwork, iwork, liwork, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: itype
    character(len=1), intent(in) :: jobz
    character(len=1), intent(in) :: uplo
    integer(kind=ilp), intent(in) :: n
    real(kind=dp), intent(inout) :: ap(*)
    real(kind=dp), intent(inout) :: bp(*)
    real(kind=dp), intent(out) :: w(*)
    real(kind=dp), intent(out) :: z(ldz,*)
    integer(kind=ilp), intent(in) :: ldz
    real(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: iwork(*)
    integer(kind=ilp), intent(in) :: liwork
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_dspgvx(itype, jobz, range, uplo, n, ap, bp, vl, vu, il, iu, abstol, m, w, z, ldz, work, iwork, ifail, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: itype
    character(len=1), intent(in) :: jobz
    character(len=1), intent(in) :: range
    character(len=1), intent(in) :: uplo
    integer(kind=ilp), intent(in) :: n
    real(kind=dp), intent(inout) :: ap(*)
    real(kind=dp), intent(inout) :: bp(*)
    real(kind=dp), intent(in) :: vl
    real(kind=dp), intent(in) :: vu
    integer(kind=ilp), intent(in) :: il
    integer(kind=ilp), intent(in) :: iu
    real(kind=dp), intent(in) :: abstol
    integer(kind=ilp), intent(out) :: m
    real(kind=dp), intent(out) :: w(*)
    real(kind=dp), intent(out) :: z(ldz,*)
    integer(kind=ilp), intent(in) :: ldz
    real(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(out) :: iwork(*)
    integer(kind=ilp), intent(out) :: ifail(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_dsptrd(uplo, n, ap, d, e, tau, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: uplo
    integer(kind=ilp), intent(in) :: n
    real(kind=dp), intent(inout) :: ap(*)
    real(kind=dp), intent(out) :: d(*)
    real(kind=dp), intent(out) :: e(*)
    real(kind=dp), intent(out) :: tau(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_dstebz(range, order, n, vl, vu, il, iu, abstol, d, e, m, nsplit, w, iblock, isplit, work, iwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: range
    character(len=1), intent(in) :: order
    integer(kind=ilp), intent(in) :: n
    real(kind=dp), intent(in) :: vl
    real(kind=dp), intent(in) :: vu
    integer(kind=ilp), intent(in) :: il
    integer(kind=ilp), intent(in) :: iu
    real(kind=dp), intent(in) :: abstol
    real(kind=dp), intent(in) :: d(*)
    real(kind=dp), intent(in) :: e(*)
    integer(kind=ilp), intent(out) :: m
    integer(kind=ilp), intent(out) :: nsplit
    real(kind=dp), intent(out) :: w(*)
    integer(kind=ilp), intent(out) :: iblock(*)
    integer(kind=ilp), intent(out) :: isplit(*)
    real(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(out) :: iwork(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_dstedc(compz, n, d, e, z, ldz, work, lwork, iwork, liwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: compz
    integer(kind=ilp), intent(in) :: n
    real(kind=dp), intent(inout) :: d(*)
    real(kind=dp), intent(inout) :: e(*)
    real(kind=dp), intent(inout) :: z(ldz,*)
    integer(kind=ilp), intent(in) :: ldz
    real(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: iwork(*)
    integer(kind=ilp), intent(in) :: liwork
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_dstegr(jobz, range, n, d, e, vl, vu, il, iu, abstol, m, w, z, ldz, isuppz, work, lwork, iwork, liwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: jobz
    character(len=1), intent(in) :: range
    integer(kind=ilp), intent(in) :: n
    real(kind=dp), intent(inout) :: d(*)
    real(kind=dp), intent(inout) :: e(*)
    real(kind=dp), intent(in) :: vl
    real(kind=dp), intent(in) :: vu
    integer(kind=ilp), intent(in) :: il
    integer(kind=ilp), intent(in) :: iu
    real(kind=dp), intent(in) :: abstol
    integer(kind=ilp), intent(out) :: m
    real(kind=dp), intent(out) :: w(*)
    real(kind=dp), intent(out) :: z(ldz,*)
    integer(kind=ilp), intent(in) :: ldz
    integer(kind=ilp), intent(out) :: isuppz(*)
    real(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: iwork(*)
    integer(kind=ilp), intent(in) :: liwork
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_dstein(n, d, e, m, w, iblock, isplit, z, ldz, work, iwork, ifail, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: n
    real(kind=dp), intent(in) :: d(*)
    real(kind=dp), intent(in) :: e(*)
    integer(kind=ilp), intent(in) :: m
    real(kind=dp), intent(in) :: w(*)
    integer(kind=ilp), intent(in) :: iblock(*)
    integer(kind=ilp), intent(in) :: isplit(*)
    real(kind=dp), intent(out) :: z(ldz,*)
    integer(kind=ilp), intent(in) :: ldz
    real(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(out) :: iwork(*)
    integer(kind=ilp), intent(out) :: ifail(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_dstemr(jobz, range, n, d, e, vl, vu, il, iu, m, w, z, ldz, nzc, isuppz, tryrac, work, lwork, iwork, liwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: jobz
    character(len=1), intent(in) :: range
    integer(kind=ilp), intent(in) :: n
    real(kind=dp), intent(inout) :: d(*)
    real(kind=dp), intent(inout) :: e(*)
    real(kind=dp), intent(in) :: vl
    real(kind=dp), intent(in) :: vu
    integer(kind=ilp), intent(in) :: il
    integer(kind=ilp), intent(in) :: iu
    integer(kind=ilp), intent(out) :: m
    real(kind=dp), intent(out) :: w(*)
    real(kind=dp), intent(out) :: z(ldz,*)
    integer(kind=ilp), intent(in) :: ldz
    integer(kind=ilp), intent(in) :: nzc
    integer(kind=ilp), intent(out) :: isuppz(*)
    logical(kind=lk), intent(inout) :: tryrac
    real(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: iwork(*)
    integer(kind=ilp), intent(in) :: liwork
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_dsteqr(compz, n, d, e, z, ldz, work, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: compz
    integer(kind=ilp), intent(in) :: n
    real(kind=dp), intent(inout) :: d(*)
    real(kind=dp), intent(inout) :: e(*)
    real(kind=dp), intent(inout) :: z(ldz,*)
    integer(kind=ilp), intent(in) :: ldz
    real(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_dsterf(n, d, e, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: n
    real(kind=dp), intent(inout) :: d(*)
    real(kind=dp), intent(inout) :: e(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_dstev(jobz, n, d, e, z, ldz, work, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: jobz
    integer(kind=ilp), intent(in) :: n
    real(kind=dp), intent(inout) :: d(*)
    real(kind=dp), intent(inout) :: e(*)
    real(kind=dp), intent(out) :: z(ldz,*)
    integer(kind=ilp), intent(in) :: ldz
    real(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_dstevd(jobz, n, d, e, z, ldz, work, lwork, iwork, liwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: jobz
    integer(kind=ilp), intent(in) :: n
    real(kind=dp), intent(inout) :: d(*)
    real(kind=dp), intent(inout) :: e(*)
    real(kind=dp), intent(out) :: z(ldz,*)
    integer(kind=ilp), intent(in) :: ldz
    real(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: iwork(*)
    integer(kind=ilp), intent(in) :: liwork
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_dstevr(jobz, range, n, d, e, vl, vu, il, iu, abstol, m, w, z, ldz, isuppz, work, lwork, iwork, liwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: jobz
    character(len=1), intent(in) :: range
    integer(kind=ilp), intent(in) :: n
    real(kind=dp), intent(inout) :: d(*)
    real(kind=dp), intent(inout) :: e(*)
    real(kind=dp), intent(in) :: vl
    real(kind=dp), intent(in) :: vu
    integer(kind=ilp), intent(in) :: il
    integer(kind=ilp), intent(in) :: iu
    real(kind=dp), intent(in) :: abstol
    integer(kind=ilp), intent(out) :: m
    real(kind=dp), intent(out) :: w(*)
    real(kind=dp), intent(out) :: z(ldz,*)
    integer(kind=ilp), intent(in) :: ldz
    integer(kind=ilp), intent(out) :: isuppz(*)
    real(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: iwork(*)
    integer(kind=ilp), intent(in) :: liwork
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_dstevx(jobz, range, n, d, e, vl, vu, il, iu, abstol, m, w, z, ldz, work, iwork, ifail, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: jobz
    character(len=1), intent(in) :: range
    integer(kind=ilp), intent(in) :: n
    real(kind=dp), intent(inout) :: d(*)
    real(kind=dp), intent(inout) :: e(*)
    real(kind=dp), intent(in) :: vl
    real(kind=dp), intent(in) :: vu
    integer(kind=ilp), intent(in) :: il
    integer(kind=ilp), intent(in) :: iu
    real(kind=dp), intent(in) :: abstol
    integer(kind=ilp), intent(out) :: m
    real(kind=dp), intent(out) :: w(*)
    real(kind=dp), intent(out) :: z(ldz,*)
    integer(kind=ilp), intent(in) :: ldz
    real(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(out) :: iwork(*)
    integer(kind=ilp), intent(out) :: ifail(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_dsyev(jobz, uplo, n, a, lda, w, work, lwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: jobz
    character(len=1), intent(in) :: uplo
    integer(kind=ilp), intent(in) :: n
    real(kind=dp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    real(kind=dp), intent(out) :: w(*)
    real(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_dsyevd(jobz, uplo, n, a, lda, w, work, lwork, iwork, liwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: jobz
    character(len=1), intent(in) :: uplo
    integer(kind=ilp), intent(in) :: n
    real(kind=dp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    real(kind=dp), intent(out) :: w(*)
    real(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: iwork(*)
    integer(kind=ilp), intent(in) :: liwork
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_dsyevr(jobz, range, uplo, n, a, lda, vl, vu, il, iu, abstol, m, w, z, ldz, isuppz, work, lwork, iwork, liwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: jobz
    character(len=1), intent(in) :: range
    character(len=1), intent(in) :: uplo
    integer(kind=ilp), intent(in) :: n
    real(kind=dp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    real(kind=dp), intent(in) :: vl
    real(kind=dp), intent(in) :: vu
    integer(kind=ilp), intent(in) :: il
    integer(kind=ilp), intent(in) :: iu
    real(kind=dp), intent(in) :: abstol
    integer(kind=ilp), intent(out) :: m
    real(kind=dp), intent(out) :: w(*)
    real(kind=dp), intent(out) :: z(ldz,*)
    integer(kind=ilp), intent(in) :: ldz
    integer(kind=ilp), intent(out) :: isuppz(*)
    real(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: iwork(*)
    integer(kind=ilp), intent(in) :: liwork
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_dsyevx(jobz, range, uplo, n, a, lda, vl, vu, il, iu, abstol, m, w, z, ldz, work, lwork, iwork, ifail, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: jobz
    character(len=1), intent(in) :: range
    character(len=1), intent(in) :: uplo
    integer(kind=ilp), intent(in) :: n
    real(kind=dp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    real(kind=dp), intent(in) :: vl
    real(kind=dp), intent(in) :: vu
    integer(kind=ilp), intent(in) :: il
    integer(kind=ilp), intent(in) :: iu
    real(kind=dp), intent(in) :: abstol
    integer(kind=ilp), intent(out) :: m
    real(kind=dp), intent(out) :: w(*)
    real(kind=dp), intent(out) :: z(ldz,*)
    integer(kind=ilp), intent(in) :: ldz
    real(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: iwork(*)
    integer(kind=ilp), intent(out) :: ifail(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_dsygs2(itype, uplo, n, a, lda, b, ldb, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: itype
    character(len=1), intent(in) :: uplo
    integer(kind=ilp), intent(in) :: n
    real(kind=dp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    real(kind=dp), intent(in) :: b(ldb,*)
    integer(kind=ilp), intent(in) :: ldb
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_dsygst(itype, uplo, n, a, lda, b, ldb, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: itype
    character(len=1), intent(in) :: uplo
    integer(kind=ilp), intent(in) :: n
    real(kind=dp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    real(kind=dp), intent(in) :: b(ldb,*)
    integer(kind=ilp), intent(in) :: ldb
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_dsygv(itype, jobz, uplo, n, a, lda, b, ldb, w, work, lwork, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: itype
    character(len=1), intent(in) :: jobz
    character(len=1), intent(in) :: uplo
    integer(kind=ilp), intent(in) :: n
    real(kind=dp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    real(kind=dp), intent(inout) :: b(ldb,*)
    integer(kind=ilp), intent(in) :: ldb
    real(kind=dp), intent(out) :: w(*)
    real(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_dsygvd(itype, jobz, uplo, n, a, lda, b, ldb, w, work, lwork, iwork, liwork, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: itype
    character(len=1), intent(in) :: jobz
    character(len=1), intent(in) :: uplo
    integer(kind=ilp), intent(in) :: n
    real(kind=dp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    real(kind=dp), intent(inout) :: b(ldb,*)
    integer(kind=ilp), intent(in) :: ldb
    real(kind=dp), intent(out) :: w(*)
    real(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: iwork(*)
    integer(kind=ilp), intent(in) :: liwork
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_dsygvx(itype, jobz, range, uplo, n, a, lda, b, ldb, vl, vu, il, iu, abstol, m, w, z, ldz, work, lwork, iwork, ifail, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: itype
    character(len=1), intent(in) :: jobz
    character(len=1), intent(in) :: range
    character(len=1), intent(in) :: uplo
    integer(kind=ilp), intent(in) :: n
    real(kind=dp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    real(kind=dp), intent(inout) :: b(ldb,*)
    integer(kind=ilp), intent(in) :: ldb
    real(kind=dp), intent(in) :: vl
    real(kind=dp), intent(in) :: vu
    integer(kind=ilp), intent(in) :: il
    integer(kind=ilp), intent(in) :: iu
    real(kind=dp), intent(in) :: abstol
    integer(kind=ilp), intent(out) :: m
    real(kind=dp), intent(out) :: w(*)
    real(kind=dp), intent(out) :: z(ldz,*)
    integer(kind=ilp), intent(in) :: ldz
    real(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: iwork(*)
    integer(kind=ilp), intent(out) :: ifail(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_dsytd2(uplo, n, a, lda, d, e, tau, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: uplo
    integer(kind=ilp), intent(in) :: n
    real(kind=dp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    real(kind=dp), intent(out) :: d(*)
    real(kind=dp), intent(out) :: e(*)
    real(kind=dp), intent(out) :: tau(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_dsytrd(uplo, n, a, lda, d, e, tau, work, lwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: uplo
    integer(kind=ilp), intent(in) :: n
    real(kind=dp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    real(kind=dp), intent(out) :: d(*)
    real(kind=dp), intent(out) :: e(*)
    real(kind=dp), intent(out) :: tau(*)
    real(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_dsytrd_sb2st(stage1, vect, uplo, n, kd, ab, ldab, d, e, hous, lhous, work, lwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: stage1
    character(len=1), intent(in) :: vect
    character(len=1), intent(in) :: uplo
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: kd
    real(kind=dp), intent(inout) :: ab(ldab,*)
    integer(kind=ilp), intent(in) :: ldab
    real(kind=dp), intent(out) :: d(*)
    real(kind=dp), intent(out) :: e(*)
    real(kind=dp), intent(out) :: hous(*)
    integer(kind=ilp), intent(in) :: lhous
    real(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_dsytrd_sy2sb(uplo, n, kd, a, lda, ab, ldab, tau, work, lwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: uplo
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: kd
    real(kind=dp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    real(kind=dp), intent(out) :: ab(ldab,*)
    integer(kind=ilp), intent(in) :: ldab
    real(kind=dp), intent(out) :: tau(*)
    real(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_dtgevc(side, howmny, select, n, s, lds, p, ldp, vl, ldvl, vr, ldvr, mm, m, work, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: side
    character(len=1), intent(in) :: howmny
    logical(kind=lk), intent(in) :: select(*)
    integer(kind=ilp), intent(in) :: n
    real(kind=dp), intent(in) :: s(lds,*)
    integer(kind=ilp), intent(in) :: lds
    real(kind=dp), intent(in) :: p(ldp,*)
    integer(kind=ilp), intent(in) :: ldp
    real(kind=dp), intent(inout) :: vl(ldvl,*)
    integer(kind=ilp), intent(in) :: ldvl
    real(kind=dp), intent(inout) :: vr(ldvr,*)
    integer(kind=ilp), intent(in) :: ldvr
    integer(kind=ilp), intent(in) :: mm
    integer(kind=ilp), intent(out) :: m
    real(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_dtgex2(wantq, wantz, n, a, lda, b, ldb, q, ldq, z, ldz, j1, n1, n2, work, lwork, info)

    Arguments

    Type IntentOptional Attributes Name
    logical(kind=lk), intent(in) :: wantq
    logical(kind=lk), intent(in) :: wantz
    integer(kind=ilp), intent(in) :: n
    real(kind=dp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    real(kind=dp), intent(inout) :: b(ldb,*)
    integer(kind=ilp), intent(in) :: ldb
    real(kind=dp), intent(inout) :: q(ldq,*)
    integer(kind=ilp), intent(in) :: ldq
    real(kind=dp), intent(inout) :: z(ldz,*)
    integer(kind=ilp), intent(in) :: ldz
    integer(kind=ilp), intent(in) :: j1
    integer(kind=ilp), intent(in) :: n1
    integer(kind=ilp), intent(in) :: n2
    real(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_dtgexc(wantq, wantz, n, a, lda, b, ldb, q, ldq, z, ldz, ifst, ilst, work, lwork, info)

    Arguments

    Type IntentOptional Attributes Name
    logical(kind=lk), intent(in) :: wantq
    logical(kind=lk), intent(in) :: wantz
    integer(kind=ilp), intent(in) :: n
    real(kind=dp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    real(kind=dp), intent(inout) :: b(ldb,*)
    integer(kind=ilp), intent(in) :: ldb
    real(kind=dp), intent(inout) :: q(ldq,*)
    integer(kind=ilp), intent(in) :: ldq
    real(kind=dp), intent(inout) :: z(ldz,*)
    integer(kind=ilp), intent(in) :: ldz
    integer(kind=ilp), intent(inout) :: ifst
    integer(kind=ilp), intent(inout) :: ilst
    real(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_dtgsen(ijob, wantq, wantz, select, n, a, lda, b, ldb, alphar, alphai, beta, q, ldq, z, ldz, m, pl, pr, dif, work, lwork, iwork, liwork, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: ijob
    logical(kind=lk), intent(in) :: wantq
    logical(kind=lk), intent(in) :: wantz
    logical(kind=lk), intent(in) :: select(*)
    integer(kind=ilp), intent(in) :: n
    real(kind=dp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    real(kind=dp), intent(inout) :: b(ldb,*)
    integer(kind=ilp), intent(in) :: ldb
    real(kind=dp), intent(out) :: alphar(*)
    real(kind=dp), intent(out) :: alphai(*)
    real(kind=dp), intent(out) :: beta(*)
    real(kind=dp), intent(inout) :: q(ldq,*)
    integer(kind=ilp), intent(in) :: ldq
    real(kind=dp), intent(inout) :: z(ldz,*)
    integer(kind=ilp), intent(in) :: ldz
    integer(kind=ilp), intent(out) :: m
    real(kind=dp), intent(out) :: pl
    real(kind=dp), intent(out) :: pr
    real(kind=dp), intent(out) :: dif(*)
    real(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: iwork(*)
    integer(kind=ilp), intent(in) :: liwork
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_dtgsja(jobu, jobv, jobq, m, p, n, k, l, a, lda, b, ldb, tola, tolb, alpha, beta, u, ldu, v, ldv, q, ldq, work, ncycle, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: jobu
    character(len=1), intent(in) :: jobv
    character(len=1), intent(in) :: jobq
    integer(kind=ilp), intent(in) :: m
    integer(kind=ilp), intent(in) :: p
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: k
    integer(kind=ilp), intent(in) :: l
    real(kind=dp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    real(kind=dp), intent(inout) :: b(ldb,*)
    integer(kind=ilp), intent(in) :: ldb
    real(kind=dp), intent(in) :: tola
    real(kind=dp), intent(in) :: tolb
    real(kind=dp), intent(out) :: alpha(*)
    real(kind=dp), intent(out) :: beta(*)
    real(kind=dp), intent(inout) :: u(ldu,*)
    integer(kind=ilp), intent(in) :: ldu
    real(kind=dp), intent(inout) :: v(ldv,*)
    integer(kind=ilp), intent(in) :: ldv
    real(kind=dp), intent(inout) :: q(ldq,*)
    integer(kind=ilp), intent(in) :: ldq
    real(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(out) :: ncycle
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_dtgsna(job, howmny, select, n, a, lda, b, ldb, vl, ldvl, vr, ldvr, s, dif, mm, m, work, lwork, iwork, info)

    Arguments

    Type IntentOptional 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

interface

  • public pure module subroutine stdlib_dtgsy2(trans, ijob, m, n, a, lda, b, ldb, c, ldc, d, ldd, e, lde, f, ldf, scale, rdsum, rdscal, iwork, pq, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: trans
    integer(kind=ilp), intent(in) :: ijob
    integer(kind=ilp), intent(in) :: m
    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(inout) :: c(ldc,*)
    integer(kind=ilp), intent(in) :: ldc
    real(kind=dp), intent(in) :: d(ldd,*)
    integer(kind=ilp), intent(in) :: ldd
    real(kind=dp), intent(in) :: e(lde,*)
    integer(kind=ilp), intent(in) :: lde
    real(kind=dp), intent(inout) :: f(ldf,*)
    integer(kind=ilp), intent(in) :: ldf
    real(kind=dp), intent(out) :: scale
    real(kind=dp), intent(inout) :: rdsum
    real(kind=dp), intent(inout) :: rdscal
    integer(kind=ilp), intent(out) :: iwork(*)
    integer(kind=ilp), intent(out) :: pq
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_dtgsyl(trans, ijob, m, n, a, lda, b, ldb, c, ldc, d, ldd, e, lde, f, ldf, scale, dif, work, lwork, iwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: trans
    integer(kind=ilp), intent(in) :: ijob
    integer(kind=ilp), intent(in) :: m
    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(inout) :: c(ldc,*)
    integer(kind=ilp), intent(in) :: ldc
    real(kind=dp), intent(in) :: d(ldd,*)
    integer(kind=ilp), intent(in) :: ldd
    real(kind=dp), intent(in) :: e(lde,*)
    integer(kind=ilp), intent(in) :: lde
    real(kind=dp), intent(inout) :: f(ldf,*)
    integer(kind=ilp), intent(in) :: ldf
    real(kind=dp), intent(out) :: scale
    real(kind=dp), intent(out) :: dif
    real(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: iwork(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_dtrevc(side, howmny, select, n, t, ldt, vl, ldvl, vr, ldvr, mm, m, work, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: side
    character(len=1), intent(in) :: howmny
    logical(kind=lk), intent(inout) :: select(*)
    integer(kind=ilp), intent(in) :: n
    real(kind=dp), intent(in) :: t(ldt,*)
    integer(kind=ilp), intent(in) :: ldt
    real(kind=dp), intent(inout) :: vl(ldvl,*)
    integer(kind=ilp), intent(in) :: ldvl
    real(kind=dp), intent(inout) :: vr(ldvr,*)
    integer(kind=ilp), intent(in) :: ldvr
    integer(kind=ilp), intent(in) :: mm
    integer(kind=ilp), intent(out) :: m
    real(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_dtrevc3(side, howmny, select, n, t, ldt, vl, ldvl, vr, ldvr, mm, m, work, lwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: side
    character(len=1), intent(in) :: howmny
    logical(kind=lk), intent(inout) :: select(*)
    integer(kind=ilp), intent(in) :: n
    real(kind=dp), intent(in) :: t(ldt,*)
    integer(kind=ilp), intent(in) :: ldt
    real(kind=dp), intent(inout) :: vl(ldvl,*)
    integer(kind=ilp), intent(in) :: ldvl
    real(kind=dp), intent(inout) :: vr(ldvr,*)
    integer(kind=ilp), intent(in) :: ldvr
    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) :: info

interface

  • public module subroutine stdlib_dtrexc(compq, n, t, ldt, q, ldq, ifst, ilst, work, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: compq
    integer(kind=ilp), intent(in) :: n
    real(kind=dp), intent(inout) :: t(ldt,*)
    integer(kind=ilp), intent(in) :: ldt
    real(kind=dp), intent(inout) :: q(ldq,*)
    integer(kind=ilp), intent(in) :: ldq
    integer(kind=ilp), intent(inout) :: ifst
    integer(kind=ilp), intent(inout) :: ilst
    real(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_dtrsen(job, compq, select, n, t, ldt, q, ldq, wr, wi, m, s, sep, work, lwork, iwork, liwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: job
    character(len=1), intent(in) :: compq
    logical(kind=lk), intent(in) :: select(*)
    integer(kind=ilp), intent(in) :: n
    real(kind=dp), intent(inout) :: t(ldt,*)
    integer(kind=ilp), intent(in) :: ldt
    real(kind=dp), intent(inout) :: q(ldq,*)
    integer(kind=ilp), intent(in) :: ldq
    real(kind=dp), intent(out) :: wr(*)
    real(kind=dp), intent(out) :: wi(*)
    integer(kind=ilp), intent(out) :: m
    real(kind=dp), intent(out) :: s
    real(kind=dp), intent(out) :: sep
    real(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: iwork(*)
    integer(kind=ilp), intent(in) :: liwork
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_dtrsna(job, howmny, select, n, t, ldt, vl, ldvl, vr, ldvr, s, sep, mm, m, work, ldwork, iwork, info)

    Arguments

    Type IntentOptional 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) :: t(ldt,*)
    integer(kind=ilp), intent(in) :: ldt
    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) :: sep(*)
    integer(kind=ilp), intent(in) :: mm
    integer(kind=ilp), intent(out) :: m
    real(kind=dp), intent(out) :: work(ldwork,*)
    integer(kind=ilp), intent(in) :: ldwork
    integer(kind=ilp), intent(out) :: iwork(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_dtrsyl(trana, tranb, isgn, m, n, a, lda, b, ldb, c, ldc, scale, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: trana
    character(len=1), intent(in) :: tranb
    integer(kind=ilp), intent(in) :: isgn
    integer(kind=ilp), intent(in) :: m
    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(inout) :: c(ldc,*)
    integer(kind=ilp), intent(in) :: ldc
    real(kind=dp), intent(out) :: scale
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_sbbcsd(jobu1, jobu2, jobv1t, jobv2t, trans, m, p, q, theta, phi, u1, ldu1, u2, ldu2, v1t, ldv1t, v2t, ldv2t, b11d, b11e, b12d, b12e, b21d, b21e, b22d, b22e, work, lwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: jobu1
    character(len=1), intent(in) :: jobu2
    character(len=1), intent(in) :: jobv1t
    character(len=1), intent(in) :: jobv2t
    character(len=1), intent(in) :: trans
    integer(kind=ilp), intent(in) :: m
    integer(kind=ilp), intent(in) :: p
    integer(kind=ilp), intent(in) :: q
    real(kind=sp), intent(inout) :: theta(*)
    real(kind=sp), intent(inout) :: phi(*)
    real(kind=sp), intent(inout) :: u1(ldu1,*)
    integer(kind=ilp), intent(in) :: ldu1
    real(kind=sp), intent(inout) :: u2(ldu2,*)
    integer(kind=ilp), intent(in) :: ldu2
    real(kind=sp), intent(inout) :: v1t(ldv1t,*)
    integer(kind=ilp), intent(in) :: ldv1t
    real(kind=sp), intent(inout) :: v2t(ldv2t,*)
    integer(kind=ilp), intent(in) :: ldv2t
    real(kind=sp), intent(out) :: b11d(*)
    real(kind=sp), intent(out) :: b11e(*)
    real(kind=sp), intent(out) :: b12d(*)
    real(kind=sp), intent(out) :: b12e(*)
    real(kind=sp), intent(out) :: b21d(*)
    real(kind=sp), intent(out) :: b21e(*)
    real(kind=sp), intent(out) :: b22d(*)
    real(kind=sp), intent(out) :: b22e(*)
    real(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_sbdsdc(uplo, compq, n, d, e, u, ldu, vt, ldvt, q, iq, work, iwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: uplo
    character(len=1), intent(in) :: compq
    integer(kind=ilp), intent(in) :: n
    real(kind=sp), intent(inout) :: d(*)
    real(kind=sp), intent(inout) :: e(*)
    real(kind=sp), intent(out) :: u(ldu,*)
    integer(kind=ilp), intent(in) :: ldu
    real(kind=sp), intent(out) :: vt(ldvt,*)
    integer(kind=ilp), intent(in) :: ldvt
    real(kind=sp), intent(out) :: q(*)
    integer(kind=ilp), intent(out) :: iq(*)
    real(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(out) :: iwork(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_sbdsqr(uplo, n, ncvt, nru, ncc, d, e, vt, ldvt, u, ldu, c, ldc, work, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: uplo
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: ncvt
    integer(kind=ilp), intent(in) :: nru
    integer(kind=ilp), intent(in) :: ncc
    real(kind=sp), intent(inout) :: d(*)
    real(kind=sp), intent(inout) :: e(*)
    real(kind=sp), intent(inout) :: vt(ldvt,*)
    integer(kind=ilp), intent(in) :: ldvt
    real(kind=sp), intent(inout) :: u(ldu,*)
    integer(kind=ilp), intent(in) :: ldu
    real(kind=sp), intent(inout) :: c(ldc,*)
    integer(kind=ilp), intent(in) :: ldc
    real(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_sdisna(job, m, n, d, sep, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: job
    integer(kind=ilp), intent(in) :: m
    integer(kind=ilp), intent(in) :: n
    real(kind=sp), intent(in) :: d(*)
    real(kind=sp), intent(out) :: sep(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_sgbbrd(vect, m, n, ncc, kl, ku, ab, ldab, d, e, q, ldq, pt, ldpt, c, ldc, work, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: vect
    integer(kind=ilp), intent(in) :: m
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: ncc
    integer(kind=ilp), intent(in) :: kl
    integer(kind=ilp), intent(in) :: ku
    real(kind=sp), intent(inout) :: ab(ldab,*)
    integer(kind=ilp), intent(in) :: ldab
    real(kind=sp), intent(out) :: d(*)
    real(kind=sp), intent(out) :: e(*)
    real(kind=sp), intent(out) :: q(ldq,*)
    integer(kind=ilp), intent(in) :: ldq
    real(kind=sp), intent(out) :: pt(ldpt,*)
    integer(kind=ilp), intent(in) :: ldpt
    real(kind=sp), intent(inout) :: c(ldc,*)
    integer(kind=ilp), intent(in) :: ldc
    real(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_sgebak(job, side, n, ilo, ihi, scale, m, v, ldv, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: job
    character(len=1), intent(in) :: side
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: ilo
    integer(kind=ilp), intent(in) :: ihi
    real(kind=sp), intent(in) :: scale(*)
    integer(kind=ilp), intent(in) :: m
    real(kind=sp), intent(inout) :: v(ldv,*)
    integer(kind=ilp), intent(in) :: ldv
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_sgebal(job, n, a, lda, ilo, ihi, scale, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: job
    integer(kind=ilp), intent(in) :: n
    real(kind=sp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    integer(kind=ilp), intent(out) :: ilo
    integer(kind=ilp), intent(out) :: ihi
    real(kind=sp), intent(out) :: scale(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_sgebd2(m, n, a, lda, d, e, tauq, taup, work, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: m
    integer(kind=ilp), intent(in) :: n
    real(kind=sp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    real(kind=sp), intent(out) :: d(*)
    real(kind=sp), intent(out) :: e(*)
    real(kind=sp), intent(out) :: tauq(*)
    real(kind=sp), intent(out) :: taup(*)
    real(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_sgebrd(m, n, a, lda, d, e, tauq, taup, work, lwork, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: m
    integer(kind=ilp), intent(in) :: n
    real(kind=sp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    real(kind=sp), intent(out) :: d(*)
    real(kind=sp), intent(out) :: e(*)
    real(kind=sp), intent(out) :: tauq(*)
    real(kind=sp), intent(out) :: taup(*)
    real(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_sgees(jobvs, sort, select, n, a, lda, sdim, wr, wi, vs, ldvs, work, lwork, bwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: jobvs
    character(len=1), intent(in) :: sort
    procedure(stdlib_select_s) :: select
    integer(kind=ilp), intent(in) :: n
    real(kind=sp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    integer(kind=ilp), intent(out) :: sdim
    real(kind=sp), intent(out) :: wr(*)
    real(kind=sp), intent(out) :: wi(*)
    real(kind=sp), intent(out) :: vs(ldvs,*)
    integer(kind=ilp), intent(in) :: ldvs
    real(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    logical(kind=lk), intent(out) :: bwork(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_sgeesx(jobvs, sort, select, sense, n, a, lda, sdim, wr, wi, vs, ldvs, rconde, rcondv, work, lwork, iwork, liwork, bwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: jobvs
    character(len=1), intent(in) :: sort
    procedure(stdlib_select_s) :: select
    character(len=1), intent(in) :: sense
    integer(kind=ilp), intent(in) :: n
    real(kind=sp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    integer(kind=ilp), intent(out) :: sdim
    real(kind=sp), intent(out) :: wr(*)
    real(kind=sp), intent(out) :: wi(*)
    real(kind=sp), intent(out) :: vs(ldvs,*)
    integer(kind=ilp), intent(in) :: ldvs
    real(kind=sp), intent(out) :: rconde
    real(kind=sp), intent(out) :: rcondv
    real(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: iwork(*)
    integer(kind=ilp), intent(in) :: liwork
    logical(kind=lk), intent(out) :: bwork(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_sgeev(jobvl, jobvr, n, a, lda, wr, wi, vl, ldvl, vr, ldvr, work, lwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: jobvl
    character(len=1), intent(in) :: jobvr
    integer(kind=ilp), intent(in) :: n
    real(kind=sp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    real(kind=sp), intent(out) :: wr(*)
    real(kind=sp), intent(out) :: wi(*)
    real(kind=sp), intent(out) :: vl(ldvl,*)
    integer(kind=ilp), intent(in) :: ldvl
    real(kind=sp), intent(out) :: vr(ldvr,*)
    integer(kind=ilp), intent(in) :: ldvr
    real(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_sgeevx(balanc, jobvl, jobvr, sense, n, a, lda, wr, wi, vl, ldvl, vr, ldvr, ilo, ihi, scale, abnrm, rconde, rcondv, work, lwork, iwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: balanc
    character(len=1), intent(in) :: jobvl
    character(len=1), intent(in) :: jobvr
    character(len=1), intent(in) :: sense
    integer(kind=ilp), intent(in) :: n
    real(kind=sp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    real(kind=sp), intent(out) :: wr(*)
    real(kind=sp), intent(out) :: wi(*)
    real(kind=sp), intent(out) :: vl(ldvl,*)
    integer(kind=ilp), intent(in) :: ldvl
    real(kind=sp), intent(out) :: vr(ldvr,*)
    integer(kind=ilp), intent(in) :: ldvr
    integer(kind=ilp), intent(out) :: ilo
    integer(kind=ilp), intent(out) :: ihi
    real(kind=sp), intent(out) :: scale(*)
    real(kind=sp), intent(out) :: abnrm
    real(kind=sp), intent(out) :: rconde(*)
    real(kind=sp), intent(out) :: rcondv(*)
    real(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: iwork(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_sgehd2(n, ilo, ihi, a, lda, tau, work, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: ilo
    integer(kind=ilp), intent(in) :: ihi
    real(kind=sp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    real(kind=sp), intent(out) :: tau(*)
    real(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_sgehrd(n, ilo, ihi, a, lda, tau, work, lwork, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: ilo
    integer(kind=ilp), intent(in) :: ihi
    real(kind=sp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    real(kind=sp), intent(out) :: tau(*)
    real(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_sgejsv(joba, jobu, jobv, jobr, jobt, jobp, m, n, a, lda, sva, u, ldu, v, ldv, work, lwork, iwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: joba
    character(len=1), intent(in) :: jobu
    character(len=1), intent(in) :: jobv
    character(len=1), intent(in) :: jobr
    character(len=1), intent(in) :: jobt
    character(len=1), intent(in) :: jobp
    integer(kind=ilp), intent(in) :: m
    integer(kind=ilp), intent(in) :: n
    real(kind=sp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    real(kind=sp), intent(out) :: sva(n)
    real(kind=sp), intent(out) :: u(ldu,*)
    integer(kind=ilp), intent(in) :: ldu
    real(kind=sp), intent(out) :: v(ldv,*)
    integer(kind=ilp), intent(in) :: ldv
    real(kind=sp), intent(out) :: work(lwork)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: iwork(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_sgels(trans, m, n, nrhs, a, lda, b, ldb, work, lwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: trans
    integer(kind=ilp), intent(in) :: m
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: nrhs
    real(kind=sp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    real(kind=sp), intent(inout) :: b(ldb,*)
    integer(kind=ilp), intent(in) :: ldb
    real(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_sgelsd(m, n, nrhs, a, lda, b, ldb, s, rcond, rank, work, lwork, iwork, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: m
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: nrhs
    real(kind=sp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    real(kind=sp), intent(inout) :: b(ldb,*)
    integer(kind=ilp), intent(in) :: ldb
    real(kind=sp), intent(out) :: s(*)
    real(kind=sp), intent(in) :: rcond
    integer(kind=ilp), intent(out) :: rank
    real(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: iwork(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_sgelss(m, n, nrhs, a, lda, b, ldb, s, rcond, rank, work, lwork, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: m
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: nrhs
    real(kind=sp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    real(kind=sp), intent(inout) :: b(ldb,*)
    integer(kind=ilp), intent(in) :: ldb
    real(kind=sp), intent(out) :: s(*)
    real(kind=sp), intent(in) :: rcond
    integer(kind=ilp), intent(out) :: rank
    real(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_sgelsy(m, n, nrhs, a, lda, b, ldb, jpvt, rcond, rank, work, lwork, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: m
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: nrhs
    real(kind=sp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    real(kind=sp), intent(inout) :: b(ldb,*)
    integer(kind=ilp), intent(in) :: ldb
    integer(kind=ilp), intent(inout) :: jpvt(*)
    real(kind=sp), intent(in) :: rcond
    integer(kind=ilp), intent(out) :: rank
    real(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_sgesdd(jobz, m, n, a, lda, s, u, ldu, vt, ldvt, work, lwork, iwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: jobz
    integer(kind=ilp), intent(in) :: m
    integer(kind=ilp), intent(in) :: n
    real(kind=sp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    real(kind=sp), intent(out) :: s(*)
    real(kind=sp), intent(out) :: u(ldu,*)
    integer(kind=ilp), intent(in) :: ldu
    real(kind=sp), intent(out) :: vt(ldvt,*)
    integer(kind=ilp), intent(in) :: ldvt
    real(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: iwork(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_sgesvd(jobu, jobvt, m, n, a, lda, s, u, ldu, vt, ldvt, work, lwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: jobu
    character(len=1), intent(in) :: jobvt
    integer(kind=ilp), intent(in) :: m
    integer(kind=ilp), intent(in) :: n
    real(kind=sp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    real(kind=sp), intent(out) :: s(*)
    real(kind=sp), intent(out) :: u(ldu,*)
    integer(kind=ilp), intent(in) :: ldu
    real(kind=sp), intent(out) :: vt(ldvt,*)
    integer(kind=ilp), intent(in) :: ldvt
    real(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_sgesvdq(joba, jobp, jobr, jobu, jobv, m, n, a, lda, s, u, ldu, v, ldv, numrank, iwork, liwork, work, lwork, rwork, lrwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: joba
    character(len=1), intent(in) :: jobp
    character(len=1), intent(in) :: jobr
    character(len=1), intent(in) :: jobu
    character(len=1), intent(in) :: jobv
    integer(kind=ilp), intent(in) :: m
    integer(kind=ilp), intent(in) :: n
    real(kind=sp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    real(kind=sp), intent(out) :: s(*)
    real(kind=sp), intent(out) :: u(ldu,*)
    integer(kind=ilp), intent(in) :: ldu
    real(kind=sp), intent(out) :: v(ldv,*)
    integer(kind=ilp), intent(in) :: ldv
    integer(kind=ilp), intent(out) :: numrank
    integer(kind=ilp), intent(out) :: iwork(*)
    integer(kind=ilp), intent(in) :: liwork
    real(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(inout) :: lwork
    real(kind=sp), intent(out) :: rwork(*)
    integer(kind=ilp), intent(in) :: lrwork
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_sgesvj(joba, jobu, jobv, m, n, a, lda, sva, mv, v, ldv, work, lwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: joba
    character(len=1), intent(in) :: jobu
    character(len=1), intent(in) :: jobv
    integer(kind=ilp), intent(in) :: m
    integer(kind=ilp), intent(in) :: n
    real(kind=sp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    real(kind=sp), intent(out) :: sva(n)
    integer(kind=ilp), intent(in) :: mv
    real(kind=sp), intent(inout) :: v(ldv,*)
    integer(kind=ilp), intent(in) :: ldv
    real(kind=sp), intent(inout) :: work(lwork)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_sgetsls(trans, m, n, nrhs, a, lda, b, ldb, work, lwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: trans
    integer(kind=ilp), intent(in) :: m
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: nrhs
    real(kind=sp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    real(kind=sp), intent(inout) :: b(ldb,*)
    integer(kind=ilp), intent(in) :: ldb
    real(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_sggbak(job, side, n, ilo, ihi, lscale, rscale, m, v, ldv, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: job
    character(len=1), intent(in) :: side
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: ilo
    integer(kind=ilp), intent(in) :: ihi
    real(kind=sp), intent(in) :: lscale(*)
    real(kind=sp), intent(in) :: rscale(*)
    integer(kind=ilp), intent(in) :: m
    real(kind=sp), intent(inout) :: v(ldv,*)
    integer(kind=ilp), intent(in) :: ldv
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_sggbal(job, n, a, lda, b, ldb, ilo, ihi, lscale, rscale, work, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: job
    integer(kind=ilp), intent(in) :: n
    real(kind=sp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    real(kind=sp), intent(inout) :: b(ldb,*)
    integer(kind=ilp), intent(in) :: ldb
    integer(kind=ilp), intent(out) :: ilo
    integer(kind=ilp), intent(out) :: ihi
    real(kind=sp), intent(out) :: lscale(*)
    real(kind=sp), intent(out) :: rscale(*)
    real(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_sgges(jobvsl, jobvsr, sort, selctg, n, a, lda, b, ldb, sdim, alphar, alphai, beta, vsl, ldvsl, vsr, ldvsr, work, lwork, bwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: jobvsl
    character(len=1), intent(in) :: jobvsr
    character(len=1), intent(in) :: sort
    procedure(stdlib_selctg_s) :: selctg
    integer(kind=ilp), intent(in) :: n
    real(kind=sp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    real(kind=sp), intent(inout) :: b(ldb,*)
    integer(kind=ilp), intent(in) :: ldb
    integer(kind=ilp), intent(out) :: sdim
    real(kind=sp), intent(out) :: alphar(*)
    real(kind=sp), intent(out) :: alphai(*)
    real(kind=sp), intent(out) :: beta(*)
    real(kind=sp), intent(out) :: vsl(ldvsl,*)
    integer(kind=ilp), intent(in) :: ldvsl
    real(kind=sp), intent(out) :: vsr(ldvsr,*)
    integer(kind=ilp), intent(in) :: ldvsr
    real(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    logical(kind=lk), intent(out) :: bwork(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_sgges3(jobvsl, jobvsr, sort, selctg, n, a, lda, b, ldb, sdim, alphar, alphai, beta, vsl, ldvsl, vsr, ldvsr, work, lwork, bwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: jobvsl
    character(len=1), intent(in) :: jobvsr
    character(len=1), intent(in) :: sort
    procedure(stdlib_selctg_s) :: selctg
    integer(kind=ilp), intent(in) :: n
    real(kind=sp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    real(kind=sp), intent(inout) :: b(ldb,*)
    integer(kind=ilp), intent(in) :: ldb
    integer(kind=ilp), intent(out) :: sdim
    real(kind=sp), intent(out) :: alphar(*)
    real(kind=sp), intent(out) :: alphai(*)
    real(kind=sp), intent(out) :: beta(*)
    real(kind=sp), intent(out) :: vsl(ldvsl,*)
    integer(kind=ilp), intent(in) :: ldvsl
    real(kind=sp), intent(out) :: vsr(ldvsr,*)
    integer(kind=ilp), intent(in) :: ldvsr
    real(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    logical(kind=lk), intent(out) :: bwork(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_sggesx(jobvsl, jobvsr, sort, selctg, sense, n, a, lda, b, ldb, sdim, alphar, alphai, beta, vsl, ldvsl, vsr, ldvsr, rconde, rcondv, work, lwork, iwork, liwork, bwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: jobvsl
    character(len=1), intent(in) :: jobvsr
    character(len=1), intent(in) :: sort
    procedure(stdlib_selctg_s) :: selctg
    character(len=1), intent(in) :: sense
    integer(kind=ilp), intent(in) :: n
    real(kind=sp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    real(kind=sp), intent(inout) :: b(ldb,*)
    integer(kind=ilp), intent(in) :: ldb
    integer(kind=ilp), intent(out) :: sdim
    real(kind=sp), intent(out) :: alphar(*)
    real(kind=sp), intent(out) :: alphai(*)
    real(kind=sp), intent(out) :: beta(*)
    real(kind=sp), intent(out) :: vsl(ldvsl,*)
    integer(kind=ilp), intent(in) :: ldvsl
    real(kind=sp), intent(out) :: vsr(ldvsr,*)
    integer(kind=ilp), intent(in) :: ldvsr
    real(kind=sp), intent(out) :: rconde(2_ilp)
    real(kind=sp), intent(out) :: rcondv(2_ilp)
    real(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: iwork(*)
    integer(kind=ilp), intent(in) :: liwork
    logical(kind=lk), intent(out) :: bwork(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_sggev(jobvl, jobvr, n, a, lda, b, ldb, alphar, alphai, beta, vl, ldvl, vr, ldvr, work, lwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: jobvl
    character(len=1), intent(in) :: jobvr
    integer(kind=ilp), intent(in) :: n
    real(kind=sp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    real(kind=sp), intent(inout) :: b(ldb,*)
    integer(kind=ilp), intent(in) :: ldb
    real(kind=sp), intent(out) :: alphar(*)
    real(kind=sp), intent(out) :: alphai(*)
    real(kind=sp), intent(out) :: beta(*)
    real(kind=sp), intent(out) :: vl(ldvl,*)
    integer(kind=ilp), intent(in) :: ldvl
    real(kind=sp), intent(out) :: vr(ldvr,*)
    integer(kind=ilp), intent(in) :: ldvr
    real(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_sggev3(jobvl, jobvr, n, a, lda, b, ldb, alphar, alphai, beta, vl, ldvl, vr, ldvr, work, lwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: jobvl
    character(len=1), intent(in) :: jobvr
    integer(kind=ilp), intent(in) :: n
    real(kind=sp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    real(kind=sp), intent(inout) :: b(ldb,*)
    integer(kind=ilp), intent(in) :: ldb
    real(kind=sp), intent(out) :: alphar(*)
    real(kind=sp), intent(out) :: alphai(*)
    real(kind=sp), intent(out) :: beta(*)
    real(kind=sp), intent(out) :: vl(ldvl,*)
    integer(kind=ilp), intent(in) :: ldvl
    real(kind=sp), intent(out) :: vr(ldvr,*)
    integer(kind=ilp), intent(in) :: ldvr
    real(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_sggevx(balanc, jobvl, jobvr, sense, n, a, lda, b, ldb, alphar, alphai, beta, vl, ldvl, vr, ldvr, ilo, ihi, lscale, rscale, abnrm, bbnrm, rconde, rcondv, work, lwork, iwork, bwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: balanc
    character(len=1), intent(in) :: jobvl
    character(len=1), intent(in) :: jobvr
    character(len=1), intent(in) :: sense
    integer(kind=ilp), intent(in) :: n
    real(kind=sp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    real(kind=sp), intent(inout) :: b(ldb,*)
    integer(kind=ilp), intent(in) :: ldb
    real(kind=sp), intent(out) :: alphar(*)
    real(kind=sp), intent(out) :: alphai(*)
    real(kind=sp), intent(out) :: beta(*)
    real(kind=sp), intent(out) :: vl(ldvl,*)
    integer(kind=ilp), intent(in) :: ldvl
    real(kind=sp), intent(out) :: vr(ldvr,*)
    integer(kind=ilp), intent(in) :: ldvr
    integer(kind=ilp), intent(out) :: ilo
    integer(kind=ilp), intent(out) :: ihi
    real(kind=sp), intent(out) :: lscale(*)
    real(kind=sp), intent(out) :: rscale(*)
    real(kind=sp), intent(out) :: abnrm
    real(kind=sp), intent(out) :: bbnrm
    real(kind=sp), intent(out) :: rconde(*)
    real(kind=sp), intent(out) :: rcondv(*)
    real(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: iwork(*)
    logical(kind=lk), intent(out) :: bwork(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_sggglm(n, m, p, a, lda, b, ldb, d, x, y, work, lwork, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: m
    integer(kind=ilp), intent(in) :: p
    real(kind=sp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    real(kind=sp), intent(inout) :: b(ldb,*)
    integer(kind=ilp), intent(in) :: ldb
    real(kind=sp), intent(inout) :: d(*)
    real(kind=sp), intent(out) :: x(*)
    real(kind=sp), intent(out) :: y(*)
    real(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_sgghd3(compq, compz, n, ilo, ihi, a, lda, b, ldb, q, ldq, z, ldz, work, lwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: compq
    character(len=1), intent(in) :: compz
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: ilo
    integer(kind=ilp), intent(in) :: ihi
    real(kind=sp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    real(kind=sp), intent(inout) :: b(ldb,*)
    integer(kind=ilp), intent(in) :: ldb
    real(kind=sp), intent(inout) :: q(ldq,*)
    integer(kind=ilp), intent(in) :: ldq
    real(kind=sp), intent(inout) :: z(ldz,*)
    integer(kind=ilp), intent(in) :: ldz
    real(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_sgghrd(compq, compz, n, ilo, ihi, a, lda, b, ldb, q, ldq, z, ldz, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: compq
    character(len=1), intent(in) :: compz
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: ilo
    integer(kind=ilp), intent(in) :: ihi
    real(kind=sp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    real(kind=sp), intent(inout) :: b(ldb,*)
    integer(kind=ilp), intent(in) :: ldb
    real(kind=sp), intent(inout) :: q(ldq,*)
    integer(kind=ilp), intent(in) :: ldq
    real(kind=sp), intent(inout) :: z(ldz,*)
    integer(kind=ilp), intent(in) :: ldz
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_sgglse(m, n, p, a, lda, b, ldb, c, d, x, work, lwork, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: m
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: p
    real(kind=sp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    real(kind=sp), intent(inout) :: b(ldb,*)
    integer(kind=ilp), intent(in) :: ldb
    real(kind=sp), intent(inout) :: c(*)
    real(kind=sp), intent(inout) :: d(*)
    real(kind=sp), intent(out) :: x(*)
    real(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_sgsvj0(jobv, m, n, a, lda, d, sva, mv, v, ldv, eps, sfmin, tol, nsweep, work, lwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: jobv
    integer(kind=ilp), intent(in) :: m
    integer(kind=ilp), intent(in) :: n
    real(kind=sp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    real(kind=sp), intent(inout) :: d(n)
    real(kind=sp), intent(inout) :: sva(n)
    integer(kind=ilp), intent(in) :: mv
    real(kind=sp), intent(inout) :: v(ldv,*)
    integer(kind=ilp), intent(in) :: ldv
    real(kind=sp), intent(in) :: eps
    real(kind=sp), intent(in) :: sfmin
    real(kind=sp), intent(in) :: tol
    integer(kind=ilp), intent(in) :: nsweep
    real(kind=sp), intent(out) :: work(lwork)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_sgsvj1(jobv, m, n, n1, a, lda, d, sva, mv, v, ldv, eps, sfmin, tol, nsweep, work, lwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: jobv
    integer(kind=ilp), intent(in) :: m
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: n1
    real(kind=sp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    real(kind=sp), intent(inout) :: d(n)
    real(kind=sp), intent(inout) :: sva(n)
    integer(kind=ilp), intent(in) :: mv
    real(kind=sp), intent(inout) :: v(ldv,*)
    integer(kind=ilp), intent(in) :: ldv
    real(kind=sp), intent(in) :: eps
    real(kind=sp), intent(in) :: sfmin
    real(kind=sp), intent(in) :: tol
    integer(kind=ilp), intent(in) :: nsweep
    real(kind=sp), intent(out) :: work(lwork)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_shgeqz(job, compq, compz, n, ilo, ihi, h, ldh, t, ldt, alphar, alphai, beta, q, ldq, z, ldz, work, lwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: job
    character(len=1), intent(in) :: compq
    character(len=1), intent(in) :: compz
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: ilo
    integer(kind=ilp), intent(in) :: ihi
    real(kind=sp), intent(inout) :: h(ldh,*)
    integer(kind=ilp), intent(in) :: ldh
    real(kind=sp), intent(inout) :: t(ldt,*)
    integer(kind=ilp), intent(in) :: ldt
    real(kind=sp), intent(out) :: alphar(*)
    real(kind=sp), intent(out) :: alphai(*)
    real(kind=sp), intent(out) :: beta(*)
    real(kind=sp), intent(inout) :: q(ldq,*)
    integer(kind=ilp), intent(in) :: ldq
    real(kind=sp), intent(inout) :: z(ldz,*)
    integer(kind=ilp), intent(in) :: ldz
    real(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_shsein(side, eigsrc, initv, select, n, h, ldh, wr, wi, vl, ldvl, vr, ldvr, mm, m, work, ifaill, ifailr, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: side
    character(len=1), intent(in) :: eigsrc
    character(len=1), intent(in) :: initv
    logical(kind=lk), intent(inout) :: select(*)
    integer(kind=ilp), intent(in) :: n
    real(kind=sp), intent(in) :: h(ldh,*)
    integer(kind=ilp), intent(in) :: ldh
    real(kind=sp), intent(inout) :: wr(*)
    real(kind=sp), intent(in) :: wi(*)
    real(kind=sp), intent(inout) :: vl(ldvl,*)
    integer(kind=ilp), intent(in) :: ldvl
    real(kind=sp), intent(inout) :: vr(ldvr,*)
    integer(kind=ilp), intent(in) :: ldvr
    integer(kind=ilp), intent(in) :: mm
    integer(kind=ilp), intent(out) :: m
    real(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(out) :: ifaill(*)
    integer(kind=ilp), intent(out) :: ifailr(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_shseqr(job, compz, n, ilo, ihi, h, ldh, wr, wi, z, ldz, work, lwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: job
    character(len=1), intent(in) :: compz
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: ilo
    integer(kind=ilp), intent(in) :: ihi
    real(kind=sp), intent(inout) :: h(ldh,*)
    integer(kind=ilp), intent(in) :: ldh
    real(kind=sp), intent(out) :: wr(*)
    real(kind=sp), intent(out) :: wi(*)
    real(kind=sp), intent(inout) :: z(ldz,*)
    integer(kind=ilp), intent(in) :: ldz
    real(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_slabrd(m, n, nb, a, lda, d, e, tauq, taup, x, ldx, y, ldy)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: m
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: nb
    real(kind=sp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    real(kind=sp), intent(out) :: d(*)
    real(kind=sp), intent(out) :: e(*)
    real(kind=sp), intent(out) :: tauq(*)
    real(kind=sp), intent(out) :: taup(*)
    real(kind=sp), intent(out) :: x(ldx,*)
    integer(kind=ilp), intent(in) :: ldx
    real(kind=sp), intent(out) :: y(ldy,*)
    integer(kind=ilp), intent(in) :: ldy

interface

  • public pure module subroutine stdlib_slae2(a, b, c, rt1, rt2)

    Arguments

    Type IntentOptional Attributes Name
    real(kind=sp), intent(in) :: a
    real(kind=sp), intent(in) :: b
    real(kind=sp), intent(in) :: c
    real(kind=sp), intent(out) :: rt1
    real(kind=sp), intent(out) :: rt2

interface

  • public pure module subroutine stdlib_slaebz(ijob, nitmax, n, mmax, minp, nbmin, abstol, reltol, pivmin, d, e, e2, nval, ab, c, mout, nab, work, iwork, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: ijob
    integer(kind=ilp), intent(in) :: nitmax
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: mmax
    integer(kind=ilp), intent(in) :: minp
    integer(kind=ilp), intent(in) :: nbmin
    real(kind=sp), intent(in) :: abstol
    real(kind=sp), intent(in) :: reltol
    real(kind=sp), intent(in) :: pivmin
    real(kind=sp), intent(in) :: d(*)
    real(kind=sp), intent(in) :: e(*)
    real(kind=sp), intent(in) :: e2(*)
    integer(kind=ilp), intent(inout) :: nval(*)
    real(kind=sp), intent(inout) :: ab(mmax,*)
    real(kind=sp), intent(inout) :: c(*)
    integer(kind=ilp), intent(out) :: mout
    integer(kind=ilp), intent(inout) :: nab(mmax,*)
    real(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(out) :: iwork(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_slaed0(icompq, qsiz, n, d, e, q, ldq, qstore, ldqs, work, iwork, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: icompq
    integer(kind=ilp), intent(in) :: qsiz
    integer(kind=ilp), intent(in) :: n
    real(kind=sp), intent(inout) :: d(*)
    real(kind=sp), intent(inout) :: e(*)
    real(kind=sp), intent(inout) :: q(ldq,*)
    integer(kind=ilp), intent(in) :: ldq
    real(kind=sp), intent(out) :: qstore(ldqs,*)
    integer(kind=ilp), intent(in) :: ldqs
    real(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(out) :: iwork(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_slaed1(n, d, q, ldq, indxq, rho, cutpnt, work, iwork, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: n
    real(kind=sp), intent(inout) :: d(*)
    real(kind=sp), intent(inout) :: q(ldq,*)
    integer(kind=ilp), intent(in) :: ldq
    integer(kind=ilp), intent(inout) :: indxq(*)
    real(kind=sp), intent(inout) :: rho
    integer(kind=ilp), intent(in) :: cutpnt
    real(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(out) :: iwork(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_slaed2(k, n, n1, d, q, ldq, indxq, rho, z, dlamda, w, q2, indx, indxc, indxp, coltyp, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(out) :: k
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: n1
    real(kind=sp), intent(inout) :: d(*)
    real(kind=sp), intent(inout) :: q(ldq,*)
    integer(kind=ilp), intent(in) :: ldq
    integer(kind=ilp), intent(inout) :: indxq(*)
    real(kind=sp), intent(inout) :: rho
    real(kind=sp), intent(inout) :: z(*)
    real(kind=sp), intent(out) :: dlamda(*)
    real(kind=sp), intent(out) :: w(*)
    real(kind=sp), intent(out) :: q2(*)
    integer(kind=ilp), intent(out) :: indx(*)
    integer(kind=ilp), intent(out) :: indxc(*)
    integer(kind=ilp), intent(out) :: indxp(*)
    integer(kind=ilp), intent(out) :: coltyp(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_slaed3(k, n, n1, d, q, ldq, rho, dlamda, q2, indx, ctot, w, s, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: k
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: n1
    real(kind=sp), intent(out) :: d(*)
    real(kind=sp), intent(out) :: q(ldq,*)
    integer(kind=ilp), intent(in) :: ldq
    real(kind=sp), intent(in) :: rho
    real(kind=sp), intent(inout) :: dlamda(*)
    real(kind=sp), intent(in) :: q2(*)
    integer(kind=ilp), intent(in) :: indx(*)
    integer(kind=ilp), intent(in) :: ctot(*)
    real(kind=sp), intent(inout) :: w(*)
    real(kind=sp), intent(out) :: s(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_slaed4(n, i, d, z, delta, rho, dlam, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: i
    real(kind=sp), intent(in) :: d(*)
    real(kind=sp), intent(in) :: z(*)
    real(kind=sp), intent(out) :: delta(*)
    real(kind=sp), intent(in) :: rho
    real(kind=sp), intent(out) :: dlam
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_slaed5(i, d, z, delta, rho, dlam)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: i
    real(kind=sp), intent(in) :: d(2_ilp)
    real(kind=sp), intent(in) :: z(2_ilp)
    real(kind=sp), intent(out) :: delta(2_ilp)
    real(kind=sp), intent(in) :: rho
    real(kind=sp), intent(out) :: dlam

interface

  • public pure module subroutine stdlib_slaed6(kniter, orgati, rho, d, z, finit, tau, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: kniter
    logical(kind=lk), intent(in) :: orgati
    real(kind=sp), intent(in) :: rho
    real(kind=sp), intent(in) :: d(3_ilp)
    real(kind=sp), intent(in) :: z(3_ilp)
    real(kind=sp), intent(in) :: finit
    real(kind=sp), intent(out) :: tau
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_slaed7(icompq, n, qsiz, tlvls, curlvl, curpbm, d, q, ldq, indxq, rho, cutpnt, qstore, qptr, prmptr, perm, givptr, givcol, givnum, work, iwork, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: icompq
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: qsiz
    integer(kind=ilp), intent(in) :: tlvls
    integer(kind=ilp), intent(in) :: curlvl
    integer(kind=ilp), intent(in) :: curpbm
    real(kind=sp), intent(inout) :: d(*)
    real(kind=sp), intent(inout) :: q(ldq,*)
    integer(kind=ilp), intent(in) :: ldq
    integer(kind=ilp), intent(out) :: indxq(*)
    real(kind=sp), intent(inout) :: rho
    integer(kind=ilp), intent(in) :: cutpnt
    real(kind=sp), intent(inout) :: qstore(*)
    integer(kind=ilp), intent(inout) :: qptr(*)
    integer(kind=ilp), intent(inout) :: prmptr(*)
    integer(kind=ilp), intent(inout) :: perm(*)
    integer(kind=ilp), intent(inout) :: givptr(*)
    integer(kind=ilp), intent(inout) :: givcol(2_ilp,*)
    real(kind=sp), intent(inout) :: givnum(2_ilp,*)
    real(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(out) :: iwork(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_slaed8(icompq, k, n, qsiz, d, q, ldq, indxq, rho, cutpnt, z, dlamda, q2, ldq2, w, perm, givptr, givcol, givnum, indxp, indx, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: icompq
    integer(kind=ilp), intent(out) :: k
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: qsiz
    real(kind=sp), intent(inout) :: d(*)
    real(kind=sp), intent(inout) :: q(ldq,*)
    integer(kind=ilp), intent(in) :: ldq
    integer(kind=ilp), intent(inout) :: indxq(*)
    real(kind=sp), intent(inout) :: rho
    integer(kind=ilp), intent(in) :: cutpnt
    real(kind=sp), intent(inout) :: z(*)
    real(kind=sp), intent(out) :: dlamda(*)
    real(kind=sp), intent(out) :: q2(ldq2,*)
    integer(kind=ilp), intent(in) :: ldq2
    real(kind=sp), intent(out) :: w(*)
    integer(kind=ilp), intent(out) :: perm(*)
    integer(kind=ilp), intent(out) :: givptr
    integer(kind=ilp), intent(out) :: givcol(2_ilp,*)
    real(kind=sp), intent(out) :: givnum(2_ilp,*)
    integer(kind=ilp), intent(out) :: indxp(*)
    integer(kind=ilp), intent(out) :: indx(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_slaed9(k, kstart, kstop, n, d, q, ldq, rho, dlamda, w, s, lds, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: k
    integer(kind=ilp), intent(in) :: kstart
    integer(kind=ilp), intent(in) :: kstop
    integer(kind=ilp), intent(in) :: n
    real(kind=sp), intent(out) :: d(*)
    real(kind=sp), intent(out) :: q(ldq,*)
    integer(kind=ilp), intent(in) :: ldq
    real(kind=sp), intent(in) :: rho
    real(kind=sp), intent(inout) :: dlamda(*)
    real(kind=sp), intent(inout) :: w(*)
    real(kind=sp), intent(out) :: s(lds,*)
    integer(kind=ilp), intent(in) :: lds
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_slaeda(n, tlvls, curlvl, curpbm, prmptr, perm, givptr, givcol, givnum, q, qptr, z, ztemp, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: tlvls
    integer(kind=ilp), intent(in) :: curlvl
    integer(kind=ilp), intent(in) :: curpbm
    integer(kind=ilp), intent(in) :: prmptr(*)
    integer(kind=ilp), intent(in) :: perm(*)
    integer(kind=ilp), intent(in) :: givptr(*)
    integer(kind=ilp), intent(in) :: givcol(2_ilp,*)
    real(kind=sp), intent(in) :: givnum(2_ilp,*)
    real(kind=sp), intent(in) :: q(*)
    integer(kind=ilp), intent(in) :: qptr(*)
    real(kind=sp), intent(out) :: z(*)
    real(kind=sp), intent(out) :: ztemp(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_slaein(rightv, noinit, n, h, ldh, wr, wi, vr, vi, b, ldb, work, eps3, smlnum, bignum, info)

    Arguments

    Type IntentOptional Attributes Name
    logical(kind=lk), intent(in) :: rightv
    logical(kind=lk), intent(in) :: noinit
    integer(kind=ilp), intent(in) :: n
    real(kind=sp), intent(in) :: h(ldh,*)
    integer(kind=ilp), intent(in) :: ldh
    real(kind=sp), intent(in) :: wr
    real(kind=sp), intent(in) :: wi
    real(kind=sp), intent(inout) :: vr(*)
    real(kind=sp), intent(inout) :: vi(*)
    real(kind=sp), intent(out) :: b(ldb,*)
    integer(kind=ilp), intent(in) :: ldb
    real(kind=sp), intent(out) :: work(*)
    real(kind=sp), intent(in) :: eps3
    real(kind=sp), intent(in) :: smlnum
    real(kind=sp), intent(in) :: bignum
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_slaev2(a, b, c, rt1, rt2, cs1, sn1)

    Arguments

    Type IntentOptional Attributes Name
    real(kind=sp), intent(in) :: a
    real(kind=sp), intent(in) :: b
    real(kind=sp), intent(in) :: c
    real(kind=sp), intent(out) :: rt1
    real(kind=sp), intent(out) :: rt2
    real(kind=sp), intent(out) :: cs1
    real(kind=sp), intent(out) :: sn1

interface

  • public module subroutine stdlib_slaexc(wantq, n, t, ldt, q, ldq, j1, n1, n2, work, info)

    Arguments

    Type IntentOptional Attributes Name
    logical(kind=lk), intent(in) :: wantq
    integer(kind=ilp), intent(in) :: n
    real(kind=sp), intent(inout) :: t(ldt,*)
    integer(kind=ilp), intent(in) :: ldt
    real(kind=sp), intent(inout) :: q(ldq,*)
    integer(kind=ilp), intent(in) :: ldq
    integer(kind=ilp), intent(in) :: j1
    integer(kind=ilp), intent(in) :: n1
    integer(kind=ilp), intent(in) :: n2
    real(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_slag2(a, lda, b, ldb, safmin, scale1, scale2, wr1, wr2, wi)

    Arguments

    Type IntentOptional Attributes Name
    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) :: safmin
    real(kind=sp), intent(out) :: scale1
    real(kind=sp), intent(out) :: scale2
    real(kind=sp), intent(out) :: wr1
    real(kind=sp), intent(out) :: wr2
    real(kind=sp), intent(out) :: wi

interface

  • public pure module subroutine stdlib_slags2(upper, a1, a2, a3, b1, b2, b3, csu, snu, csv, snv, csq, snq)

    Arguments

    Type IntentOptional Attributes Name
    logical(kind=lk), intent(in) :: upper
    real(kind=sp), intent(in) :: a1
    real(kind=sp), intent(in) :: a2
    real(kind=sp), intent(in) :: a3
    real(kind=sp), intent(in) :: b1
    real(kind=sp), intent(in) :: b2
    real(kind=sp), intent(in) :: b3
    real(kind=sp), intent(out) :: csu
    real(kind=sp), intent(out) :: snu
    real(kind=sp), intent(out) :: csv
    real(kind=sp), intent(out) :: snv
    real(kind=sp), intent(out) :: csq
    real(kind=sp), intent(out) :: snq

interface

  • public pure module subroutine stdlib_slagtf(n, a, lambda, b, c, tol, d, in, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: n
    real(kind=sp), intent(inout) :: a(*)
    real(kind=sp), intent(in) :: lambda
    real(kind=sp), intent(inout) :: b(*)
    real(kind=sp), intent(inout) :: c(*)
    real(kind=sp), intent(in) :: tol
    real(kind=sp), intent(out) :: d(*)
    integer(kind=ilp), intent(out) :: in(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_slagts(job, n, a, b, c, d, in, y, tol, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: job
    integer(kind=ilp), intent(in) :: n
    real(kind=sp), intent(in) :: a(*)
    real(kind=sp), intent(in) :: b(*)
    real(kind=sp), intent(in) :: c(*)
    real(kind=sp), intent(in) :: d(*)
    integer(kind=ilp), intent(in) :: in(*)
    real(kind=sp), intent(inout) :: y(*)
    real(kind=sp), intent(inout) :: tol
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_slagv2(a, lda, b, ldb, alphar, alphai, beta, csl, snl, csr, snr)

    Arguments

    Type IntentOptional Attributes Name
    real(kind=sp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    real(kind=sp), intent(inout) :: b(ldb,*)
    integer(kind=ilp), intent(in) :: ldb
    real(kind=sp), intent(out) :: alphar(2_ilp)
    real(kind=sp), intent(out) :: alphai(2_ilp)
    real(kind=sp), intent(out) :: beta(2_ilp)
    real(kind=sp), intent(out) :: csl
    real(kind=sp), intent(out) :: snl
    real(kind=sp), intent(out) :: csr
    real(kind=sp), intent(out) :: snr

interface

  • public pure module subroutine stdlib_slahqr(wantt, wantz, n, ilo, ihi, h, ldh, wr, wi, iloz, ihiz, z, ldz, info)

    Arguments

    Type IntentOptional Attributes Name
    logical(kind=lk), intent(in) :: wantt
    logical(kind=lk), intent(in) :: wantz
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: ilo
    integer(kind=ilp), intent(in) :: ihi
    real(kind=sp), intent(inout) :: h(ldh,*)
    integer(kind=ilp), intent(in) :: ldh
    real(kind=sp), intent(out) :: wr(*)
    real(kind=sp), intent(out) :: wi(*)
    integer(kind=ilp), intent(in) :: iloz
    integer(kind=ilp), intent(in) :: ihiz
    real(kind=sp), intent(inout) :: z(ldz,*)
    integer(kind=ilp), intent(in) :: ldz
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_slahr2(n, k, nb, a, lda, tau, t, ldt, y, ldy)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: k
    integer(kind=ilp), intent(in) :: nb
    real(kind=sp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    real(kind=sp), intent(out) :: tau(nb)
    real(kind=sp), intent(out) :: t(ldt,nb)
    integer(kind=ilp), intent(in) :: ldt
    real(kind=sp), intent(out) :: y(ldy,nb)
    integer(kind=ilp), intent(in) :: ldy

interface

  • public pure module subroutine stdlib_slaic1(job, j, x, sest, w, gamma, sestpr, s, c)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: job
    integer(kind=ilp), intent(in) :: j
    real(kind=sp), intent(in) :: x(j)
    real(kind=sp), intent(in) :: sest
    real(kind=sp), intent(in) :: w(j)
    real(kind=sp), intent(in) :: gamma
    real(kind=sp), intent(out) :: sestpr
    real(kind=sp), intent(out) :: s
    real(kind=sp), intent(out) :: c

interface

  • public pure module subroutine stdlib_slaln2(ltrans, na, nw, smin, ca, a, lda, d1, d2, b, ldb, wr, wi, x, ldx, scale, xnorm, info)

    Arguments

    Type IntentOptional Attributes Name
    logical(kind=lk), intent(in) :: ltrans
    integer(kind=ilp), intent(in) :: na
    integer(kind=ilp), intent(in) :: nw
    real(kind=sp), intent(in) :: smin
    real(kind=sp), intent(in) :: ca
    real(kind=sp), intent(in) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    real(kind=sp), intent(in) :: d1
    real(kind=sp), intent(in) :: d2
    real(kind=sp), intent(in) :: b(ldb,*)
    integer(kind=ilp), intent(in) :: ldb
    real(kind=sp), intent(in) :: wr
    real(kind=sp), intent(in) :: wi
    real(kind=sp), intent(out) :: x(ldx,*)
    integer(kind=ilp), intent(in) :: ldx
    real(kind=sp), intent(out) :: scale
    real(kind=sp), intent(out) :: xnorm
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_slals0(icompq, nl, nr, sqre, nrhs, b, ldb, bx, ldbx, perm, givptr, givcol, ldgcol, givnum, ldgnum, poles, difl, difr, z, k, c, s, work, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: icompq
    integer(kind=ilp), intent(in) :: nl
    integer(kind=ilp), intent(in) :: nr
    integer(kind=ilp), intent(in) :: sqre
    integer(kind=ilp), intent(in) :: nrhs
    real(kind=sp), intent(inout) :: b(ldb,*)
    integer(kind=ilp), intent(in) :: ldb
    real(kind=sp), intent(out) :: bx(ldbx,*)
    integer(kind=ilp), intent(in) :: ldbx
    integer(kind=ilp), intent(in) :: perm(*)
    integer(kind=ilp), intent(in) :: givptr
    integer(kind=ilp), intent(in) :: givcol(ldgcol,*)
    integer(kind=ilp), intent(in) :: ldgcol
    real(kind=sp), intent(in) :: givnum(ldgnum,*)
    integer(kind=ilp), intent(in) :: ldgnum
    real(kind=sp), intent(in) :: poles(ldgnum,*)
    real(kind=sp), intent(in) :: difl(*)
    real(kind=sp), intent(in) :: difr(ldgnum,*)
    real(kind=sp), intent(in) :: z(*)
    integer(kind=ilp), intent(in) :: k
    real(kind=sp), intent(in) :: c
    real(kind=sp), intent(in) :: s
    real(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_slalsa(icompq, smlsiz, n, nrhs, b, ldb, bx, ldbx, u, ldu, vt, k, difl, difr, z, poles, givptr, givcol, ldgcol, perm, givnum, c, s, work, iwork, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: icompq
    integer(kind=ilp), intent(in) :: smlsiz
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: nrhs
    real(kind=sp), intent(inout) :: b(ldb,*)
    integer(kind=ilp), intent(in) :: ldb
    real(kind=sp), intent(out) :: bx(ldbx,*)
    integer(kind=ilp), intent(in) :: ldbx
    real(kind=sp), intent(in) :: u(ldu,*)
    integer(kind=ilp), intent(in) :: ldu
    real(kind=sp), intent(in) :: vt(ldu,*)
    integer(kind=ilp), intent(in) :: k(*)
    real(kind=sp), intent(in) :: difl(ldu,*)
    real(kind=sp), intent(in) :: difr(ldu,*)
    real(kind=sp), intent(in) :: z(ldu,*)
    real(kind=sp), intent(in) :: poles(ldu,*)
    integer(kind=ilp), intent(in) :: givptr(*)
    integer(kind=ilp), intent(in) :: givcol(ldgcol,*)
    integer(kind=ilp), intent(in) :: ldgcol
    integer(kind=ilp), intent(in) :: perm(ldgcol,*)
    real(kind=sp), intent(in) :: givnum(ldu,*)
    real(kind=sp), intent(in) :: c(*)
    real(kind=sp), intent(in) :: s(*)
    real(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(out) :: iwork(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_slalsd(uplo, smlsiz, n, nrhs, d, e, b, ldb, rcond, rank, work, iwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: uplo
    integer(kind=ilp), intent(in) :: smlsiz
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: nrhs
    real(kind=sp), intent(inout) :: d(*)
    real(kind=sp), intent(inout) :: e(*)
    real(kind=sp), intent(inout) :: b(ldb,*)
    integer(kind=ilp), intent(in) :: ldb
    real(kind=sp), intent(in) :: rcond
    integer(kind=ilp), intent(out) :: rank
    real(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(out) :: iwork(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_slamrg(n1, n2, a, strd1, strd2, index)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: n1
    integer(kind=ilp), intent(in) :: n2
    real(kind=sp), intent(in) :: a(*)
    integer(kind=ilp), intent(in) :: strd1
    integer(kind=ilp), intent(in) :: strd2
    integer(kind=ilp), intent(out) :: index(*)

interface

  • public pure module function stdlib_slaneg(n, d, lld, sigma, pivmin, r)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: n
    real(kind=sp), intent(in) :: d(*)
    real(kind=sp), intent(in) :: lld(*)
    real(kind=sp), intent(in) :: sigma
    real(kind=sp), intent(in) :: pivmin
    integer(kind=ilp), intent(in) :: r

    Return Value integer(kind=ilp)

interface

  • public pure module subroutine stdlib_slanv2(a, b, c, d, rt1r, rt1i, rt2r, rt2i, cs, sn)

    Arguments

    Type IntentOptional Attributes Name
    real(kind=sp), intent(inout) :: a
    real(kind=sp), intent(inout) :: b
    real(kind=sp), intent(inout) :: c
    real(kind=sp), intent(inout) :: d
    real(kind=sp), intent(out) :: rt1r
    real(kind=sp), intent(out) :: rt1i
    real(kind=sp), intent(out) :: rt2r
    real(kind=sp), intent(out) :: rt2i
    real(kind=sp), intent(out) :: cs
    real(kind=sp), intent(out) :: sn

interface

  • public pure module subroutine stdlib_slapll(n, x, incx, y, incy, ssmin)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: n
    real(kind=sp), intent(inout) :: x(*)
    integer(kind=ilp), intent(in) :: incx
    real(kind=sp), intent(inout) :: y(*)
    integer(kind=ilp), intent(in) :: incy
    real(kind=sp), intent(out) :: ssmin

interface

  • public pure module subroutine stdlib_slapmr(forwrd, m, n, x, ldx, k)

    Arguments

    Type IntentOptional Attributes Name
    logical(kind=lk), intent(in) :: forwrd
    integer(kind=ilp), intent(in) :: m
    integer(kind=ilp), intent(in) :: n
    real(kind=sp), intent(inout) :: x(ldx,*)
    integer(kind=ilp), intent(in) :: ldx
    integer(kind=ilp), intent(inout) :: k(*)

interface

  • public pure module subroutine stdlib_slapmt(forwrd, m, n, x, ldx, k)

    Arguments

    Type IntentOptional Attributes Name
    logical(kind=lk), intent(in) :: forwrd
    integer(kind=ilp), intent(in) :: m
    integer(kind=ilp), intent(in) :: n
    real(kind=sp), intent(inout) :: x(ldx,*)
    integer(kind=ilp), intent(in) :: ldx
    integer(kind=ilp), intent(inout) :: k(*)

interface

  • public module subroutine stdlib_slaqr0(wantt, wantz, n, ilo, ihi, h, ldh, wr, wi, iloz, ihiz, z, ldz, work, lwork, info)

    Arguments

    Type IntentOptional Attributes Name
    logical(kind=lk), intent(in) :: wantt
    logical(kind=lk), intent(in) :: wantz
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: ilo
    integer(kind=ilp), intent(in) :: ihi
    real(kind=sp), intent(inout) :: h(ldh,*)
    integer(kind=ilp), intent(in) :: ldh
    real(kind=sp), intent(out) :: wr(*)
    real(kind=sp), intent(out) :: wi(*)
    integer(kind=ilp), intent(in) :: iloz
    integer(kind=ilp), intent(in) :: ihiz
    real(kind=sp), intent(inout) :: z(ldz,*)
    integer(kind=ilp), intent(in) :: ldz
    real(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_slaqr1(n, h, ldh, sr1, si1, sr2, si2, v)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: n
    real(kind=sp), intent(in) :: h(ldh,*)
    integer(kind=ilp), intent(in) :: ldh
    real(kind=sp), intent(in) :: sr1
    real(kind=sp), intent(in) :: si1
    real(kind=sp), intent(in) :: sr2
    real(kind=sp), intent(in) :: si2
    real(kind=sp), intent(out) :: v(*)

interface

  • public module subroutine stdlib_slaqr2(wantt, wantz, n, ktop, kbot, nw, h, ldh, iloz, ihiz, z, ldz, ns, nd, sr, si, v, ldv, nh, t, ldt, nv, wv, ldwv, work, lwork)

    Arguments

    Type IntentOptional Attributes Name
    logical(kind=lk), intent(in) :: wantt
    logical(kind=lk), intent(in) :: wantz
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: ktop
    integer(kind=ilp), intent(in) :: kbot
    integer(kind=ilp), intent(in) :: nw
    real(kind=sp), intent(inout) :: h(ldh,*)
    integer(kind=ilp), intent(in) :: ldh
    integer(kind=ilp), intent(in) :: iloz
    integer(kind=ilp), intent(in) :: ihiz
    real(kind=sp), intent(inout) :: z(ldz,*)
    integer(kind=ilp), intent(in) :: ldz
    integer(kind=ilp), intent(out) :: ns
    integer(kind=ilp), intent(out) :: nd
    real(kind=sp), intent(out) :: sr(*)
    real(kind=sp), intent(out) :: si(*)
    real(kind=sp), intent(out) :: v(ldv,*)
    integer(kind=ilp), intent(in) :: ldv
    integer(kind=ilp), intent(in) :: nh
    real(kind=sp), intent(out) :: t(ldt,*)
    integer(kind=ilp), intent(in) :: ldt
    integer(kind=ilp), intent(in) :: nv
    real(kind=sp), intent(out) :: wv(ldwv,*)
    integer(kind=ilp), intent(in) :: ldwv
    real(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork

interface

  • public module subroutine stdlib_slaqr3(wantt, wantz, n, ktop, kbot, nw, h, ldh, iloz, ihiz, z, ldz, ns, nd, sr, si, v, ldv, nh, t, ldt, nv, wv, ldwv, work, lwork)

    Arguments

    Type IntentOptional Attributes Name
    logical(kind=lk), intent(in) :: wantt
    logical(kind=lk), intent(in) :: wantz
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: ktop
    integer(kind=ilp), intent(in) :: kbot
    integer(kind=ilp), intent(in) :: nw
    real(kind=sp), intent(inout) :: h(ldh,*)
    integer(kind=ilp), intent(in) :: ldh
    integer(kind=ilp), intent(in) :: iloz
    integer(kind=ilp), intent(in) :: ihiz
    real(kind=sp), intent(inout) :: z(ldz,*)
    integer(kind=ilp), intent(in) :: ldz
    integer(kind=ilp), intent(out) :: ns
    integer(kind=ilp), intent(out) :: nd
    real(kind=sp), intent(out) :: sr(*)
    real(kind=sp), intent(out) :: si(*)
    real(kind=sp), intent(out) :: v(ldv,*)
    integer(kind=ilp), intent(in) :: ldv
    integer(kind=ilp), intent(in) :: nh
    real(kind=sp), intent(out) :: t(ldt,*)
    integer(kind=ilp), intent(in) :: ldt
    integer(kind=ilp), intent(in) :: nv
    real(kind=sp), intent(out) :: wv(ldwv,*)
    integer(kind=ilp), intent(in) :: ldwv
    real(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork

interface

  • public module subroutine stdlib_slaqr4(wantt, wantz, n, ilo, ihi, h, ldh, wr, wi, iloz, ihiz, z, ldz, work, lwork, info)

    Arguments

    Type IntentOptional Attributes Name
    logical(kind=lk), intent(in) :: wantt
    logical(kind=lk), intent(in) :: wantz
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: ilo
    integer(kind=ilp), intent(in) :: ihi
    real(kind=sp), intent(inout) :: h(ldh,*)
    integer(kind=ilp), intent(in) :: ldh
    real(kind=sp), intent(out) :: wr(*)
    real(kind=sp), intent(out) :: wi(*)
    integer(kind=ilp), intent(in) :: iloz
    integer(kind=ilp), intent(in) :: ihiz
    real(kind=sp), intent(inout) :: z(ldz,*)
    integer(kind=ilp), intent(in) :: ldz
    real(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_slaqr5(wantt, wantz, kacc22, n, ktop, kbot, nshfts, sr, si, h, ldh, iloz, ihiz, z, ldz, v, ldv, u, ldu, nv, wv, ldwv, nh, wh, ldwh)

    Arguments

    Type IntentOptional Attributes Name
    logical(kind=lk), intent(in) :: wantt
    logical(kind=lk), intent(in) :: wantz
    integer(kind=ilp), intent(in) :: kacc22
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: ktop
    integer(kind=ilp), intent(in) :: kbot
    integer(kind=ilp), intent(in) :: nshfts
    real(kind=sp), intent(inout) :: sr(*)
    real(kind=sp), intent(inout) :: si(*)
    real(kind=sp), intent(inout) :: h(ldh,*)
    integer(kind=ilp), intent(in) :: ldh
    integer(kind=ilp), intent(in) :: iloz
    integer(kind=ilp), intent(in) :: ihiz
    real(kind=sp), intent(inout) :: z(ldz,*)
    integer(kind=ilp), intent(in) :: ldz
    real(kind=sp), intent(out) :: v(ldv,*)
    integer(kind=ilp), intent(in) :: ldv
    real(kind=sp), intent(out) :: u(ldu,*)
    integer(kind=ilp), intent(in) :: ldu
    integer(kind=ilp), intent(in) :: nv
    real(kind=sp), intent(out) :: wv(ldwv,*)
    integer(kind=ilp), intent(in) :: ldwv
    integer(kind=ilp), intent(in) :: nh
    real(kind=sp), intent(out) :: wh(ldwh,*)
    integer(kind=ilp), intent(in) :: ldwh

interface

  • public module subroutine stdlib_slaqtr(ltran, lreal, n, t, ldt, b, w, scale, x, work, info)

    Arguments

    Type IntentOptional Attributes Name
    logical(kind=lk), intent(in) :: ltran
    logical(kind=lk), intent(in) :: lreal
    integer(kind=ilp), intent(in) :: n
    real(kind=sp), intent(in) :: t(ldt,*)
    integer(kind=ilp), intent(in) :: ldt
    real(kind=sp), intent(in) :: b(*)
    real(kind=sp), intent(in) :: w
    real(kind=sp), intent(out) :: scale
    real(kind=sp), intent(inout) :: x(*)
    real(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public recursive module subroutine stdlib_slaqz0(wants, wantq, wantz, n, ilo, ihi, a, lda, b, ldb, alphar, alphai, beta, q, ldq, z, ldz, work, lwork, rec, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: wants
    character(len=1), intent(in) :: wantq
    character(len=1), intent(in) :: wantz
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: ilo
    integer(kind=ilp), intent(in) :: ihi
    real(kind=sp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    real(kind=sp), intent(inout) :: b(ldb,*)
    integer(kind=ilp), intent(in) :: ldb
    real(kind=sp), intent(inout) :: alphar(*)
    real(kind=sp), intent(inout) :: alphai(*)
    real(kind=sp), intent(inout) :: beta(*)
    real(kind=sp), intent(inout) :: q(ldq,*)
    integer(kind=ilp), intent(in) :: ldq
    real(kind=sp), intent(inout) :: z(ldz,*)
    integer(kind=ilp), intent(in) :: ldz
    real(kind=sp), intent(inout) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(in) :: rec
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_slaqz1(a, lda, b, ldb, sr1, sr2, si, beta1, beta2, v)

    Arguments

    Type IntentOptional Attributes Name
    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) :: sr1
    real(kind=sp), intent(in) :: sr2
    real(kind=sp), intent(in) :: si
    real(kind=sp), intent(in) :: beta1
    real(kind=sp), intent(in) :: beta2
    real(kind=sp), intent(out) :: v(*)

interface

  • public pure module subroutine stdlib_slaqz2(ilq, ilz, k, istartm, istopm, ihi, a, lda, b, ldb, nq, qstart, q, ldq, nz, zstart, z, ldz)

    Arguments

    Type IntentOptional Attributes Name
    logical(kind=lk), intent(in) :: ilq
    logical(kind=lk), intent(in) :: ilz
    integer(kind=ilp), intent(in) :: k
    integer(kind=ilp), intent(in) :: istartm
    integer(kind=ilp), intent(in) :: istopm
    integer(kind=ilp), intent(in) :: ihi
    real(kind=sp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    real(kind=sp), intent(inout) :: b(ldb,*)
    integer(kind=ilp), intent(in) :: ldb
    integer(kind=ilp), intent(in) :: nq
    integer(kind=ilp), intent(in) :: qstart
    real(kind=sp), intent(inout) :: q(ldq,*)
    integer(kind=ilp), intent(in) :: ldq
    integer(kind=ilp), intent(in) :: nz
    integer(kind=ilp), intent(in) :: zstart
    real(kind=sp), intent(inout) :: z(ldz,*)
    integer(kind=ilp), intent(in) :: ldz

interface

  • public recursive module subroutine stdlib_slaqz3(ilschur, ilq, ilz, n, ilo, ihi, nw, a, lda, b, ldb, q, ldq, z, ldz, ns, nd, alphar, alphai, beta, qc, ldqc, zc, ldzc, work, lwork, rec, info)

    Arguments

    Type IntentOptional Attributes Name
    logical(kind=lk), intent(in) :: ilschur
    logical(kind=lk), intent(in) :: ilq
    logical(kind=lk), intent(in) :: ilz
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: ilo
    integer(kind=ilp), intent(in) :: ihi
    integer(kind=ilp), intent(in) :: nw
    real(kind=sp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    real(kind=sp), intent(inout) :: b(ldb,*)
    integer(kind=ilp), intent(in) :: ldb
    real(kind=sp), intent(inout) :: q(ldq,*)
    integer(kind=ilp), intent(in) :: ldq
    real(kind=sp), intent(inout) :: z(ldz,*)
    integer(kind=ilp), intent(in) :: ldz
    integer(kind=ilp), intent(out) :: ns
    integer(kind=ilp), intent(out) :: nd
    real(kind=sp), intent(inout) :: alphar(*)
    real(kind=sp), intent(inout) :: alphai(*)
    real(kind=sp), intent(inout) :: beta(*)
    real(kind=sp), intent(inout) :: qc(ldqc,*)
    integer(kind=ilp), intent(in) :: ldqc
    real(kind=sp), intent(inout) :: zc(ldzc,*)
    integer(kind=ilp), intent(in) :: ldzc
    real(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(in) :: rec
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_slaqz4(ilschur, ilq, ilz, n, ilo, ihi, nshifts, nblock_desired, sr, si, ss, a, lda, b, ldb, q, ldq, z, ldz, qc, ldqc, zc, ldzc, work, lwork, info)

    Arguments

    Type IntentOptional Attributes Name
    logical(kind=lk), intent(in) :: ilschur
    logical(kind=lk), intent(in) :: ilq
    logical(kind=lk), intent(in) :: ilz
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: ilo
    integer(kind=ilp), intent(in) :: ihi
    integer(kind=ilp), intent(in) :: nshifts
    integer(kind=ilp), intent(in) :: nblock_desired
    real(kind=sp), intent(inout) :: sr(*)
    real(kind=sp), intent(inout) :: si(*)
    real(kind=sp), intent(inout) :: ss(*)
    real(kind=sp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    real(kind=sp), intent(inout) :: b(ldb,*)
    integer(kind=ilp), intent(in) :: ldb
    real(kind=sp), intent(inout) :: q(ldq,*)
    integer(kind=ilp), intent(in) :: ldq
    real(kind=sp), intent(inout) :: z(ldz,*)
    integer(kind=ilp), intent(in) :: ldz
    real(kind=sp), intent(inout) :: qc(ldqc,*)
    integer(kind=ilp), intent(in) :: ldqc
    real(kind=sp), intent(inout) :: zc(ldzc,*)
    integer(kind=ilp), intent(in) :: ldzc
    real(kind=sp), intent(inout) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_slar1v(n, b1, bn, lambda, d, l, ld, lld, pivmin, gaptol, z, wantnc, negcnt, ztz, mingma, r, isuppz, nrminv, resid, rqcorr, work)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: b1
    integer(kind=ilp), intent(in) :: bn
    real(kind=sp), intent(in) :: lambda
    real(kind=sp), intent(in) :: d(*)
    real(kind=sp), intent(in) :: l(*)
    real(kind=sp), intent(in) :: ld(*)
    real(kind=sp), intent(in) :: lld(*)
    real(kind=sp), intent(in) :: pivmin
    real(kind=sp), intent(in) :: gaptol
    real(kind=sp), intent(inout) :: z(*)
    logical(kind=lk), intent(in) :: wantnc
    integer(kind=ilp), intent(out) :: negcnt
    real(kind=sp), intent(out) :: ztz
    real(kind=sp), intent(out) :: mingma
    integer(kind=ilp), intent(inout) :: r
    integer(kind=ilp), intent(out) :: isuppz(*)
    real(kind=sp), intent(out) :: nrminv
    real(kind=sp), intent(out) :: resid
    real(kind=sp), intent(out) :: rqcorr
    real(kind=sp), intent(out) :: work(*)

interface

  • public pure module subroutine stdlib_slarra(n, d, e, e2, spltol, tnrm, nsplit, isplit, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: n
    real(kind=sp), intent(in) :: d(*)
    real(kind=sp), intent(inout) :: e(*)
    real(kind=sp), intent(inout) :: e2(*)
    real(kind=sp), intent(in) :: spltol
    real(kind=sp), intent(in) :: tnrm
    integer(kind=ilp), intent(out) :: nsplit
    integer(kind=ilp), intent(out) :: isplit(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_slarrb(n, d, lld, ifirst, ilast, rtol1, rtol2, offset, w, wgap, werr, work, iwork, pivmin, spdiam, twist, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: n
    real(kind=sp), intent(in) :: d(*)
    real(kind=sp), intent(in) :: lld(*)
    integer(kind=ilp), intent(in) :: ifirst
    integer(kind=ilp), intent(in) :: ilast
    real(kind=sp), intent(in) :: rtol1
    real(kind=sp), intent(in) :: rtol2
    integer(kind=ilp), intent(in) :: offset
    real(kind=sp), intent(inout) :: w(*)
    real(kind=sp), intent(inout) :: wgap(*)
    real(kind=sp), intent(inout) :: werr(*)
    real(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(out) :: iwork(*)
    real(kind=sp), intent(in) :: pivmin
    real(kind=sp), intent(in) :: spdiam
    integer(kind=ilp), intent(in) :: twist
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_slarrc(jobt, n, vl, vu, d, e, pivmin, eigcnt, lcnt, rcnt, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: jobt
    integer(kind=ilp), intent(in) :: n
    real(kind=sp), intent(in) :: vl
    real(kind=sp), intent(in) :: vu
    real(kind=sp), intent(in) :: d(*)
    real(kind=sp), intent(in) :: e(*)
    real(kind=sp), intent(in) :: pivmin
    integer(kind=ilp), intent(out) :: eigcnt
    integer(kind=ilp), intent(out) :: lcnt
    integer(kind=ilp), intent(out) :: rcnt
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_slarrd(range, order, n, vl, vu, il, iu, gers, reltol, d, e, e2, pivmin, nsplit, isplit, m, w, werr, wl, wu, iblock, indexw, work, iwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: range
    character(len=1), intent(in) :: order
    integer(kind=ilp), intent(in) :: n
    real(kind=sp), intent(in) :: vl
    real(kind=sp), intent(in) :: vu
    integer(kind=ilp), intent(in) :: il
    integer(kind=ilp), intent(in) :: iu
    real(kind=sp), intent(in) :: gers(*)
    real(kind=sp), intent(in) :: reltol
    real(kind=sp), intent(in) :: d(*)
    real(kind=sp), intent(in) :: e(*)
    real(kind=sp), intent(in) :: e2(*)
    real(kind=sp), intent(in) :: pivmin
    integer(kind=ilp), intent(in) :: nsplit
    integer(kind=ilp), intent(in) :: isplit(*)
    integer(kind=ilp), intent(out) :: m
    real(kind=sp), intent(out) :: w(*)
    real(kind=sp), intent(out) :: werr(*)
    real(kind=sp), intent(out) :: wl
    real(kind=sp), intent(out) :: wu
    integer(kind=ilp), intent(out) :: iblock(*)
    integer(kind=ilp), intent(out) :: indexw(*)
    real(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(out) :: iwork(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_slarre(range, n, vl, vu, il, iu, d, e, e2, rtol1, rtol2, spltol, nsplit, isplit, m, w, werr, wgap, iblock, indexw, gers, pivmin, work, iwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: range
    integer(kind=ilp), intent(in) :: n
    real(kind=sp), intent(inout) :: vl
    real(kind=sp), intent(inout) :: vu
    integer(kind=ilp), intent(in) :: il
    integer(kind=ilp), intent(in) :: iu
    real(kind=sp), intent(inout) :: d(*)
    real(kind=sp), intent(inout) :: e(*)
    real(kind=sp), intent(inout) :: e2(*)
    real(kind=sp), intent(in) :: rtol1
    real(kind=sp), intent(in) :: rtol2
    real(kind=sp), intent(in) :: spltol
    integer(kind=ilp), intent(out) :: nsplit
    integer(kind=ilp), intent(out) :: isplit(*)
    integer(kind=ilp), intent(out) :: m
    real(kind=sp), intent(out) :: w(*)
    real(kind=sp), intent(out) :: werr(*)
    real(kind=sp), intent(out) :: wgap(*)
    integer(kind=ilp), intent(out) :: iblock(*)
    integer(kind=ilp), intent(out) :: indexw(*)
    real(kind=sp), intent(out) :: gers(*)
    real(kind=sp), intent(out) :: pivmin
    real(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(out) :: iwork(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_slarrf(n, d, l, ld, clstrt, clend, w, wgap, werr, spdiam, clgapl, clgapr, pivmin, sigma, dplus, lplus, work, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: n
    real(kind=sp), intent(in) :: d(*)
    real(kind=sp), intent(in) :: l(*)
    real(kind=sp), intent(in) :: ld(*)
    integer(kind=ilp), intent(in) :: clstrt
    integer(kind=ilp), intent(in) :: clend
    real(kind=sp), intent(in) :: w(*)
    real(kind=sp), intent(inout) :: wgap(*)
    real(kind=sp), intent(in) :: werr(*)
    real(kind=sp), intent(in) :: spdiam
    real(kind=sp), intent(in) :: clgapl
    real(kind=sp), intent(in) :: clgapr
    real(kind=sp), intent(in) :: pivmin
    real(kind=sp), intent(out) :: sigma
    real(kind=sp), intent(out) :: dplus(*)
    real(kind=sp), intent(out) :: lplus(*)
    real(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_slarrj(n, d, e2, ifirst, ilast, rtol, offset, w, werr, work, iwork, pivmin, spdiam, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: n
    real(kind=sp), intent(in) :: d(*)
    real(kind=sp), intent(in) :: e2(*)
    integer(kind=ilp), intent(in) :: ifirst
    integer(kind=ilp), intent(in) :: ilast
    real(kind=sp), intent(in) :: rtol
    integer(kind=ilp), intent(in) :: offset
    real(kind=sp), intent(inout) :: w(*)
    real(kind=sp), intent(inout) :: werr(*)
    real(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(out) :: iwork(*)
    real(kind=sp), intent(in) :: pivmin
    real(kind=sp), intent(in) :: spdiam
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_slarrk(n, iw, gl, gu, d, e2, pivmin, reltol, w, werr, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: iw
    real(kind=sp), intent(in) :: gl
    real(kind=sp), intent(in) :: gu
    real(kind=sp), intent(in) :: d(*)
    real(kind=sp), intent(in) :: e2(*)
    real(kind=sp), intent(in) :: pivmin
    real(kind=sp), intent(in) :: reltol
    real(kind=sp), intent(out) :: w
    real(kind=sp), intent(out) :: werr
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_slarrr(n, d, e, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: n
    real(kind=sp), intent(in) :: d(*)
    real(kind=sp), intent(inout) :: e(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_slarrv(n, vl, vu, d, l, pivmin, isplit, m, dol, dou, minrgp, rtol1, rtol2, w, werr, wgap, iblock, indexw, gers, z, ldz, isuppz, work, iwork, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: n
    real(kind=sp), intent(in) :: vl
    real(kind=sp), intent(in) :: vu
    real(kind=sp), intent(inout) :: d(*)
    real(kind=sp), intent(inout) :: l(*)
    real(kind=sp), intent(in) :: pivmin
    integer(kind=ilp), intent(in) :: isplit(*)
    integer(kind=ilp), intent(in) :: m
    integer(kind=ilp), intent(in) :: dol
    integer(kind=ilp), intent(in) :: dou
    real(kind=sp), intent(in) :: minrgp
    real(kind=sp), intent(inout) :: rtol1
    real(kind=sp), intent(inout) :: rtol2
    real(kind=sp), intent(inout) :: w(*)
    real(kind=sp), intent(inout) :: werr(*)
    real(kind=sp), intent(inout) :: wgap(*)
    integer(kind=ilp), intent(in) :: iblock(*)
    integer(kind=ilp), intent(in) :: indexw(*)
    real(kind=sp), intent(in) :: gers(*)
    real(kind=sp), intent(out) :: z(ldz,*)
    integer(kind=ilp), intent(in) :: ldz
    integer(kind=ilp), intent(out) :: isuppz(*)
    real(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(out) :: iwork(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_slartgs(x, y, sigma, cs, sn)

    Arguments

    Type IntentOptional Attributes Name
    real(kind=sp), intent(in) :: x
    real(kind=sp), intent(in) :: y
    real(kind=sp), intent(in) :: sigma
    real(kind=sp), intent(out) :: cs
    real(kind=sp), intent(out) :: sn

interface

  • public pure module subroutine stdlib_slas2(f, g, h, ssmin, ssmax)

    Arguments

    Type IntentOptional Attributes Name
    real(kind=sp), intent(in) :: f
    real(kind=sp), intent(in) :: g
    real(kind=sp), intent(in) :: h
    real(kind=sp), intent(out) :: ssmin
    real(kind=sp), intent(out) :: ssmax

interface

  • public pure module subroutine stdlib_slasd0(n, sqre, d, e, u, ldu, vt, ldvt, smlsiz, iwork, work, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: sqre
    real(kind=sp), intent(inout) :: d(*)
    real(kind=sp), intent(inout) :: e(*)
    real(kind=sp), intent(out) :: u(ldu,*)
    integer(kind=ilp), intent(in) :: ldu
    real(kind=sp), intent(out) :: vt(ldvt,*)
    integer(kind=ilp), intent(in) :: ldvt
    integer(kind=ilp), intent(in) :: smlsiz
    integer(kind=ilp), intent(out) :: iwork(*)
    real(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_slasd1(nl, nr, sqre, d, alpha, beta, u, ldu, vt, ldvt, idxq, iwork, work, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: nl
    integer(kind=ilp), intent(in) :: nr
    integer(kind=ilp), intent(in) :: sqre
    real(kind=sp), intent(inout) :: d(*)
    real(kind=sp), intent(inout) :: alpha
    real(kind=sp), intent(inout) :: beta
    real(kind=sp), intent(inout) :: u(ldu,*)
    integer(kind=ilp), intent(in) :: ldu
    real(kind=sp), intent(inout) :: vt(ldvt,*)
    integer(kind=ilp), intent(in) :: ldvt
    integer(kind=ilp), intent(inout) :: idxq(*)
    integer(kind=ilp), intent(out) :: iwork(*)
    real(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_slasd2(nl, nr, sqre, k, d, z, alpha, beta, u, ldu, vt, ldvt, dsigma, u2, ldu2, vt2, ldvt2, idxp, idx, idxc, idxq, coltyp, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: nl
    integer(kind=ilp), intent(in) :: nr
    integer(kind=ilp), intent(in) :: sqre
    integer(kind=ilp), intent(out) :: k
    real(kind=sp), intent(inout) :: d(*)
    real(kind=sp), intent(out) :: z(*)
    real(kind=sp), intent(in) :: alpha
    real(kind=sp), intent(in) :: beta
    real(kind=sp), intent(inout) :: u(ldu,*)
    integer(kind=ilp), intent(in) :: ldu
    real(kind=sp), intent(inout) :: vt(ldvt,*)
    integer(kind=ilp), intent(in) :: ldvt
    real(kind=sp), intent(out) :: dsigma(*)
    real(kind=sp), intent(out) :: u2(ldu2,*)
    integer(kind=ilp), intent(in) :: ldu2
    real(kind=sp), intent(out) :: vt2(ldvt2,*)
    integer(kind=ilp), intent(in) :: ldvt2
    integer(kind=ilp), intent(out) :: idxp(*)
    integer(kind=ilp), intent(out) :: idx(*)
    integer(kind=ilp), intent(out) :: idxc(*)
    integer(kind=ilp), intent(inout) :: idxq(*)
    integer(kind=ilp), intent(out) :: coltyp(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_slasd3(nl, nr, sqre, k, d, q, ldq, dsigma, u, ldu, u2, ldu2, vt, ldvt, vt2, ldvt2, idxc, ctot, z, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: nl
    integer(kind=ilp), intent(in) :: nr
    integer(kind=ilp), intent(in) :: sqre
    integer(kind=ilp), intent(in) :: k
    real(kind=sp), intent(out) :: d(*)
    real(kind=sp), intent(out) :: q(ldq,*)
    integer(kind=ilp), intent(in) :: ldq
    real(kind=sp), intent(inout) :: dsigma(*)
    real(kind=sp), intent(out) :: u(ldu,*)
    integer(kind=ilp), intent(in) :: ldu
    real(kind=sp), intent(in) :: u2(ldu2,*)
    integer(kind=ilp), intent(in) :: ldu2
    real(kind=sp), intent(out) :: vt(ldvt,*)
    integer(kind=ilp), intent(in) :: ldvt
    real(kind=sp), intent(inout) :: vt2(ldvt2,*)
    integer(kind=ilp), intent(in) :: ldvt2
    integer(kind=ilp), intent(in) :: idxc(*)
    integer(kind=ilp), intent(in) :: ctot(*)
    real(kind=sp), intent(inout) :: z(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_slasd4(n, i, d, z, delta, rho, sigma, work, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: i
    real(kind=sp), intent(in) :: d(*)
    real(kind=sp), intent(in) :: z(*)
    real(kind=sp), intent(out) :: delta(*)
    real(kind=sp), intent(in) :: rho
    real(kind=sp), intent(out) :: sigma
    real(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_slasd5(i, d, z, delta, rho, dsigma, work)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: i
    real(kind=sp), intent(in) :: d(2_ilp)
    real(kind=sp), intent(in) :: z(2_ilp)
    real(kind=sp), intent(out) :: delta(2_ilp)
    real(kind=sp), intent(in) :: rho
    real(kind=sp), intent(out) :: dsigma
    real(kind=sp), intent(out) :: work(2_ilp)

interface

  • public pure module subroutine stdlib_slasd6(icompq, nl, nr, sqre, d, vf, vl, alpha, beta, idxq, perm, givptr, givcol, ldgcol, givnum, ldgnum, poles, difl, difr, z, k, c, s, work, iwork, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: icompq
    integer(kind=ilp), intent(in) :: nl
    integer(kind=ilp), intent(in) :: nr
    integer(kind=ilp), intent(in) :: sqre
    real(kind=sp), intent(inout) :: d(*)
    real(kind=sp), intent(inout) :: vf(*)
    real(kind=sp), intent(inout) :: vl(*)
    real(kind=sp), intent(inout) :: alpha
    real(kind=sp), intent(inout) :: beta
    integer(kind=ilp), intent(inout) :: idxq(*)
    integer(kind=ilp), intent(out) :: perm(*)
    integer(kind=ilp), intent(out) :: givptr
    integer(kind=ilp), intent(out) :: givcol(ldgcol,*)
    integer(kind=ilp), intent(in) :: ldgcol
    real(kind=sp), intent(out) :: givnum(ldgnum,*)
    integer(kind=ilp), intent(in) :: ldgnum
    real(kind=sp), intent(out) :: poles(ldgnum,*)
    real(kind=sp), intent(out) :: difl(*)
    real(kind=sp), intent(out) :: difr(*)
    real(kind=sp), intent(out) :: z(*)
    integer(kind=ilp), intent(out) :: k
    real(kind=sp), intent(out) :: c
    real(kind=sp), intent(out) :: s
    real(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(out) :: iwork(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_slasd7(icompq, nl, nr, sqre, k, d, z, zw, vf, vfw, vl, vlw, alpha, beta, dsigma, idx, idxp, idxq, perm, givptr, givcol, ldgcol, givnum, ldgnum, c, s, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: icompq
    integer(kind=ilp), intent(in) :: nl
    integer(kind=ilp), intent(in) :: nr
    integer(kind=ilp), intent(in) :: sqre
    integer(kind=ilp), intent(out) :: k
    real(kind=sp), intent(inout) :: d(*)
    real(kind=sp), intent(out) :: z(*)
    real(kind=sp), intent(out) :: zw(*)
    real(kind=sp), intent(inout) :: vf(*)
    real(kind=sp), intent(out) :: vfw(*)
    real(kind=sp), intent(inout) :: vl(*)
    real(kind=sp), intent(out) :: vlw(*)
    real(kind=sp), intent(in) :: alpha
    real(kind=sp), intent(in) :: beta
    real(kind=sp), intent(out) :: dsigma(*)
    integer(kind=ilp), intent(out) :: idx(*)
    integer(kind=ilp), intent(out) :: idxp(*)
    integer(kind=ilp), intent(inout) :: idxq(*)
    integer(kind=ilp), intent(out) :: perm(*)
    integer(kind=ilp), intent(out) :: givptr
    integer(kind=ilp), intent(out) :: givcol(ldgcol,*)
    integer(kind=ilp), intent(in) :: ldgcol
    real(kind=sp), intent(out) :: givnum(ldgnum,*)
    integer(kind=ilp), intent(in) :: ldgnum
    real(kind=sp), intent(out) :: c
    real(kind=sp), intent(out) :: s
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_slasd8(icompq, k, d, z, vf, vl, difl, difr, lddifr, dsigma, work, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: icompq
    integer(kind=ilp), intent(in) :: k
    real(kind=sp), intent(out) :: d(*)
    real(kind=sp), intent(inout) :: z(*)
    real(kind=sp), intent(inout) :: vf(*)
    real(kind=sp), intent(inout) :: vl(*)
    real(kind=sp), intent(out) :: difl(*)
    real(kind=sp), intent(out) :: difr(lddifr,*)
    integer(kind=ilp), intent(in) :: lddifr
    real(kind=sp), intent(inout) :: dsigma(*)
    real(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_slasda(icompq, smlsiz, n, sqre, d, e, u, ldu, vt, k, difl, difr, z, poles, givptr, givcol, ldgcol, perm, givnum, c, s, work, iwork, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: icompq
    integer(kind=ilp), intent(in) :: smlsiz
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: sqre
    real(kind=sp), intent(inout) :: d(*)
    real(kind=sp), intent(inout) :: e(*)
    real(kind=sp), intent(out) :: u(ldu,*)
    integer(kind=ilp), intent(in) :: ldu
    real(kind=sp), intent(out) :: vt(ldu,*)
    integer(kind=ilp), intent(out) :: k(*)
    real(kind=sp), intent(out) :: difl(ldu,*)
    real(kind=sp), intent(out) :: difr(ldu,*)
    real(kind=sp), intent(out) :: z(ldu,*)
    real(kind=sp), intent(out) :: poles(ldu,*)
    integer(kind=ilp), intent(out) :: givptr(*)
    integer(kind=ilp), intent(out) :: givcol(ldgcol,*)
    integer(kind=ilp), intent(in) :: ldgcol
    integer(kind=ilp), intent(out) :: perm(ldgcol,*)
    real(kind=sp), intent(out) :: givnum(ldu,*)
    real(kind=sp), intent(out) :: c(*)
    real(kind=sp), intent(out) :: s(*)
    real(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(out) :: iwork(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_slasdq(uplo, sqre, n, ncvt, nru, ncc, d, e, vt, ldvt, u, ldu, c, ldc, work, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: uplo
    integer(kind=ilp), intent(in) :: sqre
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: ncvt
    integer(kind=ilp), intent(in) :: nru
    integer(kind=ilp), intent(in) :: ncc
    real(kind=sp), intent(inout) :: d(*)
    real(kind=sp), intent(inout) :: e(*)
    real(kind=sp), intent(inout) :: vt(ldvt,*)
    integer(kind=ilp), intent(in) :: ldvt
    real(kind=sp), intent(inout) :: u(ldu,*)
    integer(kind=ilp), intent(in) :: ldu
    real(kind=sp), intent(inout) :: c(ldc,*)
    integer(kind=ilp), intent(in) :: ldc
    real(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_slasdt(n, lvl, nd, inode, ndiml, ndimr, msub)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(out) :: lvl
    integer(kind=ilp), intent(out) :: nd
    integer(kind=ilp), intent(out) :: inode(*)
    integer(kind=ilp), intent(out) :: ndiml(*)
    integer(kind=ilp), intent(out) :: ndimr(*)
    integer(kind=ilp), intent(in) :: msub

interface

  • public pure module subroutine stdlib_slasq1(n, d, e, work, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: n
    real(kind=sp), intent(inout) :: d(*)
    real(kind=sp), intent(inout) :: e(*)
    real(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_slasq2(n, z, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: n
    real(kind=sp), intent(inout) :: z(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_slasq3(i0, n0, z, pp, dmin, sigma, desig, qmax, nfail, iter, ndiv, ieee, ttype, dmin1, dmin2, dn, dn1, dn2, g, tau)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: i0
    integer(kind=ilp), intent(inout) :: n0
    real(kind=sp), intent(inout) :: z(*)
    integer(kind=ilp), intent(inout) :: pp
    real(kind=sp), intent(out) :: dmin
    real(kind=sp), intent(out) :: sigma
    real(kind=sp), intent(inout) :: desig
    real(kind=sp), intent(inout) :: qmax
    integer(kind=ilp), intent(inout) :: nfail
    integer(kind=ilp), intent(inout) :: iter
    integer(kind=ilp), intent(inout) :: ndiv
    logical(kind=lk), intent(in) :: ieee
    integer(kind=ilp), intent(inout) :: ttype
    real(kind=sp), intent(inout) :: dmin1
    real(kind=sp), intent(inout) :: dmin2
    real(kind=sp), intent(inout) :: dn
    real(kind=sp), intent(inout) :: dn1
    real(kind=sp), intent(inout) :: dn2
    real(kind=sp), intent(inout) :: g
    real(kind=sp), intent(inout) :: tau

interface

  • public pure module subroutine stdlib_slasq4(i0, n0, z, pp, n0in, dmin, dmin1, dmin2, dn, dn1, dn2, tau, ttype, g)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: i0
    integer(kind=ilp), intent(in) :: n0
    real(kind=sp), intent(in) :: z(*)
    integer(kind=ilp), intent(in) :: pp
    integer(kind=ilp), intent(in) :: n0in
    real(kind=sp), intent(in) :: dmin
    real(kind=sp), intent(in) :: dmin1
    real(kind=sp), intent(in) :: dmin2
    real(kind=sp), intent(in) :: dn
    real(kind=sp), intent(in) :: dn1
    real(kind=sp), intent(in) :: dn2
    real(kind=sp), intent(out) :: tau
    integer(kind=ilp), intent(out) :: ttype
    real(kind=sp), intent(inout) :: g

interface

  • public pure module subroutine stdlib_slasq5(i0, n0, z, pp, tau, sigma, dmin, dmin1, dmin2, dn, dnm1, dnm2, ieee, eps)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: i0
    integer(kind=ilp), intent(in) :: n0
    real(kind=sp), intent(inout) :: z(*)
    integer(kind=ilp), intent(in) :: pp
    real(kind=sp), intent(inout) :: tau
    real(kind=sp), intent(in) :: sigma
    real(kind=sp), intent(out) :: dmin
    real(kind=sp), intent(out) :: dmin1
    real(kind=sp), intent(out) :: dmin2
    real(kind=sp), intent(out) :: dn
    real(kind=sp), intent(out) :: dnm1
    real(kind=sp), intent(out) :: dnm2
    logical(kind=lk), intent(in) :: ieee
    real(kind=sp), intent(in) :: eps

interface

  • public pure module subroutine stdlib_slasq6(i0, n0, z, pp, dmin, dmin1, dmin2, dn, dnm1, dnm2)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: i0
    integer(kind=ilp), intent(in) :: n0
    real(kind=sp), intent(inout) :: z(*)
    integer(kind=ilp), intent(in) :: pp
    real(kind=sp), intent(out) :: dmin
    real(kind=sp), intent(out) :: dmin1
    real(kind=sp), intent(out) :: dmin2
    real(kind=sp), intent(out) :: dn
    real(kind=sp), intent(out) :: dnm1
    real(kind=sp), intent(out) :: dnm2

interface

  • public pure module subroutine stdlib_slasv2(f, g, h, ssmin, ssmax, snr, csr, snl, csl)

    Arguments

    Type IntentOptional Attributes Name
    real(kind=sp), intent(in) :: f
    real(kind=sp), intent(in) :: g
    real(kind=sp), intent(in) :: h
    real(kind=sp), intent(out) :: ssmin
    real(kind=sp), intent(out) :: ssmax
    real(kind=sp), intent(out) :: snr
    real(kind=sp), intent(out) :: csr
    real(kind=sp), intent(out) :: snl
    real(kind=sp), intent(out) :: csl

interface

  • public pure module subroutine stdlib_slasy2(ltranl, ltranr, isgn, n1, n2, tl, ldtl, tr, ldtr, b, ldb, scale, x, ldx, xnorm, info)

    Arguments

    Type IntentOptional Attributes Name
    logical(kind=lk), intent(in) :: ltranl
    logical(kind=lk), intent(in) :: ltranr
    integer(kind=ilp), intent(in) :: isgn
    integer(kind=ilp), intent(in) :: n1
    integer(kind=ilp), intent(in) :: n2
    real(kind=sp), intent(in) :: tl(ldtl,*)
    integer(kind=ilp), intent(in) :: ldtl
    real(kind=sp), intent(in) :: tr(ldtr,*)
    integer(kind=ilp), intent(in) :: ldtr
    real(kind=sp), intent(in) :: b(ldb,*)
    integer(kind=ilp), intent(in) :: ldb
    real(kind=sp), intent(out) :: scale
    real(kind=sp), intent(out) :: x(ldx,*)
    integer(kind=ilp), intent(in) :: ldx
    real(kind=sp), intent(out) :: xnorm
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_slatrd(uplo, n, nb, a, lda, e, tau, w, ldw)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: uplo
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: nb
    real(kind=sp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    real(kind=sp), intent(out) :: e(*)
    real(kind=sp), intent(out) :: tau(*)
    real(kind=sp), intent(out) :: w(ldw,*)
    integer(kind=ilp), intent(in) :: ldw

interface

  • public pure module subroutine stdlib_sopgtr(uplo, n, ap, tau, q, ldq, work, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: uplo
    integer(kind=ilp), intent(in) :: n
    real(kind=sp), intent(in) :: ap(*)
    real(kind=sp), intent(in) :: tau(*)
    real(kind=sp), intent(out) :: q(ldq,*)
    integer(kind=ilp), intent(in) :: ldq
    real(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_sopmtr(side, uplo, trans, m, n, ap, tau, c, ldc, work, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: side
    character(len=1), intent(in) :: uplo
    character(len=1), intent(in) :: trans
    integer(kind=ilp), intent(in) :: m
    integer(kind=ilp), intent(in) :: n
    real(kind=sp), intent(inout) :: ap(*)
    real(kind=sp), intent(in) :: tau(*)
    real(kind=sp), intent(inout) :: c(ldc,*)
    integer(kind=ilp), intent(in) :: ldc
    real(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_sorbdb(trans, signs, m, p, q, x11, ldx11, x12, ldx12, x21, ldx21, x22, ldx22, theta, phi, taup1, taup2, tauq1, tauq2, work, lwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: trans
    character(len=1), intent(in) :: signs
    integer(kind=ilp), intent(in) :: m
    integer(kind=ilp), intent(in) :: p
    integer(kind=ilp), intent(in) :: q
    real(kind=sp), intent(inout) :: x11(ldx11,*)
    integer(kind=ilp), intent(in) :: ldx11
    real(kind=sp), intent(inout) :: x12(ldx12,*)
    integer(kind=ilp), intent(in) :: ldx12
    real(kind=sp), intent(inout) :: x21(ldx21,*)
    integer(kind=ilp), intent(in) :: ldx21
    real(kind=sp), intent(inout) :: x22(ldx22,*)
    integer(kind=ilp), intent(in) :: ldx22
    real(kind=sp), intent(out) :: theta(*)
    real(kind=sp), intent(out) :: phi(*)
    real(kind=sp), intent(out) :: taup1(*)
    real(kind=sp), intent(out) :: taup2(*)
    real(kind=sp), intent(out) :: tauq1(*)
    real(kind=sp), intent(out) :: tauq2(*)
    real(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_sorbdb1(m, p, q, x11, ldx11, x21, ldx21, theta, phi, taup1, taup2, tauq1, work, lwork, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: m
    integer(kind=ilp), intent(in) :: p
    integer(kind=ilp), intent(in) :: q
    real(kind=sp), intent(inout) :: x11(ldx11,*)
    integer(kind=ilp), intent(in) :: ldx11
    real(kind=sp), intent(inout) :: x21(ldx21,*)
    integer(kind=ilp), intent(in) :: ldx21
    real(kind=sp), intent(out) :: theta(*)
    real(kind=sp), intent(out) :: phi(*)
    real(kind=sp), intent(out) :: taup1(*)
    real(kind=sp), intent(out) :: taup2(*)
    real(kind=sp), intent(out) :: tauq1(*)
    real(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_sorbdb2(m, p, q, x11, ldx11, x21, ldx21, theta, phi, taup1, taup2, tauq1, work, lwork, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: m
    integer(kind=ilp), intent(in) :: p
    integer(kind=ilp), intent(in) :: q
    real(kind=sp), intent(inout) :: x11(ldx11,*)
    integer(kind=ilp), intent(in) :: ldx11
    real(kind=sp), intent(inout) :: x21(ldx21,*)
    integer(kind=ilp), intent(in) :: ldx21
    real(kind=sp), intent(out) :: theta(*)
    real(kind=sp), intent(out) :: phi(*)
    real(kind=sp), intent(out) :: taup1(*)
    real(kind=sp), intent(out) :: taup2(*)
    real(kind=sp), intent(out) :: tauq1(*)
    real(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_sorbdb3(m, p, q, x11, ldx11, x21, ldx21, theta, phi, taup1, taup2, tauq1, work, lwork, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: m
    integer(kind=ilp), intent(in) :: p
    integer(kind=ilp), intent(in) :: q
    real(kind=sp), intent(inout) :: x11(ldx11,*)
    integer(kind=ilp), intent(in) :: ldx11
    real(kind=sp), intent(inout) :: x21(ldx21,*)
    integer(kind=ilp), intent(in) :: ldx21
    real(kind=sp), intent(out) :: theta(*)
    real(kind=sp), intent(out) :: phi(*)
    real(kind=sp), intent(out) :: taup1(*)
    real(kind=sp), intent(out) :: taup2(*)
    real(kind=sp), intent(out) :: tauq1(*)
    real(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_sorbdb4(m, p, q, x11, ldx11, x21, ldx21, theta, phi, taup1, taup2, tauq1, phantom, work, lwork, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: m
    integer(kind=ilp), intent(in) :: p
    integer(kind=ilp), intent(in) :: q
    real(kind=sp), intent(inout) :: x11(ldx11,*)
    integer(kind=ilp), intent(in) :: ldx11
    real(kind=sp), intent(inout) :: x21(ldx21,*)
    integer(kind=ilp), intent(in) :: ldx21
    real(kind=sp), intent(out) :: theta(*)
    real(kind=sp), intent(out) :: phi(*)
    real(kind=sp), intent(out) :: taup1(*)
    real(kind=sp), intent(out) :: taup2(*)
    real(kind=sp), intent(out) :: tauq1(*)
    real(kind=sp), intent(out) :: phantom(*)
    real(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_sorbdb5(m1, m2, n, x1, incx1, x2, incx2, q1, ldq1, q2, ldq2, work, lwork, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: m1
    integer(kind=ilp), intent(in) :: m2
    integer(kind=ilp), intent(in) :: n
    real(kind=sp), intent(inout) :: x1(*)
    integer(kind=ilp), intent(in) :: incx1
    real(kind=sp), intent(inout) :: x2(*)
    integer(kind=ilp), intent(in) :: incx2
    real(kind=sp), intent(in) :: q1(ldq1,*)
    integer(kind=ilp), intent(in) :: ldq1
    real(kind=sp), intent(in) :: q2(ldq2,*)
    integer(kind=ilp), intent(in) :: ldq2
    real(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_sorbdb6(m1, m2, n, x1, incx1, x2, incx2, q1, ldq1, q2, ldq2, work, lwork, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: m1
    integer(kind=ilp), intent(in) :: m2
    integer(kind=ilp), intent(in) :: n
    real(kind=sp), intent(inout) :: x1(*)
    integer(kind=ilp), intent(in) :: incx1
    real(kind=sp), intent(inout) :: x2(*)
    integer(kind=ilp), intent(in) :: incx2
    real(kind=sp), intent(in) :: q1(ldq1,*)
    integer(kind=ilp), intent(in) :: ldq1
    real(kind=sp), intent(in) :: q2(ldq2,*)
    integer(kind=ilp), intent(in) :: ldq2
    real(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: info

interface

  • public recursive module subroutine stdlib_sorcsd(jobu1, jobu2, jobv1t, jobv2t, trans, signs, m, p, q, x11, ldx11, x12, ldx12, x21, ldx21, x22, ldx22, theta, u1, ldu1, u2, ldu2, v1t, ldv1t, v2t, ldv2t, work, lwork, iwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: jobu1
    character(len=1), intent(in) :: jobu2
    character(len=1), intent(in) :: jobv1t
    character(len=1), intent(in) :: jobv2t
    character(len=1), intent(in) :: trans
    character(len=1), intent(in) :: signs
    integer(kind=ilp), intent(in) :: m
    integer(kind=ilp), intent(in) :: p
    integer(kind=ilp), intent(in) :: q
    real(kind=sp), intent(inout) :: x11(ldx11,*)
    integer(kind=ilp), intent(in) :: ldx11
    real(kind=sp), intent(inout) :: x12(ldx12,*)
    integer(kind=ilp), intent(in) :: ldx12
    real(kind=sp), intent(inout) :: x21(ldx21,*)
    integer(kind=ilp), intent(in) :: ldx21
    real(kind=sp), intent(inout) :: x22(ldx22,*)
    integer(kind=ilp), intent(in) :: ldx22
    real(kind=sp), intent(out) :: theta(*)
    real(kind=sp), intent(out) :: u1(ldu1,*)
    integer(kind=ilp), intent(in) :: ldu1
    real(kind=sp), intent(out) :: u2(ldu2,*)
    integer(kind=ilp), intent(in) :: ldu2
    real(kind=sp), intent(out) :: v1t(ldv1t,*)
    integer(kind=ilp), intent(in) :: ldv1t
    real(kind=sp), intent(out) :: v2t(ldv2t,*)
    integer(kind=ilp), intent(in) :: ldv2t
    real(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: iwork(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_sorcsd2by1(jobu1, jobu2, jobv1t, m, p, q, x11, ldx11, x21, ldx21, theta, u1, ldu1, u2, ldu2, v1t, ldv1t, work, lwork, iwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: jobu1
    character(len=1), intent(in) :: jobu2
    character(len=1), intent(in) :: jobv1t
    integer(kind=ilp), intent(in) :: m
    integer(kind=ilp), intent(in) :: p
    integer(kind=ilp), intent(in) :: q
    real(kind=sp), intent(inout) :: x11(ldx11,*)
    integer(kind=ilp), intent(in) :: ldx11
    real(kind=sp), intent(inout) :: x21(ldx21,*)
    integer(kind=ilp), intent(in) :: ldx21
    real(kind=sp), intent(out) :: theta(*)
    real(kind=sp), intent(out) :: u1(ldu1,*)
    integer(kind=ilp), intent(in) :: ldu1
    real(kind=sp), intent(out) :: u2(ldu2,*)
    integer(kind=ilp), intent(in) :: ldu2
    real(kind=sp), intent(out) :: v1t(ldv1t,*)
    integer(kind=ilp), intent(in) :: ldv1t
    real(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: iwork(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_sorgbr(vect, m, n, k, a, lda, tau, work, lwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: vect
    integer(kind=ilp), intent(in) :: m
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: k
    real(kind=sp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    real(kind=sp), intent(in) :: tau(*)
    real(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_sorghr(n, ilo, ihi, a, lda, tau, work, lwork, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: ilo
    integer(kind=ilp), intent(in) :: ihi
    real(kind=sp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    real(kind=sp), intent(in) :: tau(*)
    real(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_sorgtr(uplo, n, a, lda, tau, work, lwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: uplo
    integer(kind=ilp), intent(in) :: n
    real(kind=sp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    real(kind=sp), intent(in) :: tau(*)
    real(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_sorm22(side, trans, m, n, n1, n2, q, ldq, c, ldc, work, lwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: side
    character(len=1), intent(in) :: trans
    integer(kind=ilp), intent(in) :: m
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: n1
    integer(kind=ilp), intent(in) :: n2
    real(kind=sp), intent(in) :: q(ldq,*)
    integer(kind=ilp), intent(in) :: ldq
    real(kind=sp), intent(inout) :: c(ldc,*)
    integer(kind=ilp), intent(in) :: ldc
    real(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_sormbr(vect, side, trans, m, n, k, a, lda, tau, c, ldc, work, lwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: vect
    character(len=1), intent(in) :: side
    character(len=1), intent(in) :: trans
    integer(kind=ilp), intent(in) :: m
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: k
    real(kind=sp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    real(kind=sp), intent(in) :: tau(*)
    real(kind=sp), intent(inout) :: c(ldc,*)
    integer(kind=ilp), intent(in) :: ldc
    real(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_sormhr(side, trans, m, n, ilo, ihi, a, lda, tau, c, ldc, work, lwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: side
    character(len=1), intent(in) :: trans
    integer(kind=ilp), intent(in) :: m
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: ilo
    integer(kind=ilp), intent(in) :: ihi
    real(kind=sp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    real(kind=sp), intent(in) :: tau(*)
    real(kind=sp), intent(inout) :: c(ldc,*)
    integer(kind=ilp), intent(in) :: ldc
    real(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_sormtr(side, uplo, trans, m, n, a, lda, tau, c, ldc, work, lwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: side
    character(len=1), intent(in) :: uplo
    character(len=1), intent(in) :: trans
    integer(kind=ilp), intent(in) :: m
    integer(kind=ilp), intent(in) :: n
    real(kind=sp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    real(kind=sp), intent(in) :: tau(*)
    real(kind=sp), intent(inout) :: c(ldc,*)
    integer(kind=ilp), intent(in) :: ldc
    real(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_spbstf(uplo, n, kd, ab, ldab, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: uplo
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: kd
    real(kind=sp), intent(inout) :: ab(ldab,*)
    integer(kind=ilp), intent(in) :: ldab
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_spteqr(compz, n, d, e, z, ldz, work, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: compz
    integer(kind=ilp), intent(in) :: n
    real(kind=sp), intent(inout) :: d(*)
    real(kind=sp), intent(inout) :: e(*)
    real(kind=sp), intent(inout) :: z(ldz,*)
    integer(kind=ilp), intent(in) :: ldz
    real(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_ssb2st_kernels(uplo, wantz, ttype, st, ed, sweep, n, nb, ib, a, lda, v, tau, ldvt, work)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: uplo
    logical(kind=lk), intent(in) :: wantz
    integer(kind=ilp), intent(in) :: ttype
    integer(kind=ilp), intent(in) :: st
    integer(kind=ilp), intent(in) :: ed
    integer(kind=ilp), intent(in) :: sweep
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: nb
    integer(kind=ilp), intent(in) :: ib
    real(kind=sp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    real(kind=sp), intent(out) :: v(*)
    real(kind=sp), intent(out) :: tau(*)
    integer(kind=ilp), intent(in) :: ldvt
    real(kind=sp), intent(out) :: work(*)

interface

  • public module subroutine stdlib_ssbev(jobz, uplo, n, kd, ab, ldab, w, z, ldz, work, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: jobz
    character(len=1), intent(in) :: uplo
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: kd
    real(kind=sp), intent(inout) :: ab(ldab,*)
    integer(kind=ilp), intent(in) :: ldab
    real(kind=sp), intent(out) :: w(*)
    real(kind=sp), intent(out) :: z(ldz,*)
    integer(kind=ilp), intent(in) :: ldz
    real(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_ssbevd(jobz, uplo, n, kd, ab, ldab, w, z, ldz, work, lwork, iwork, liwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: jobz
    character(len=1), intent(in) :: uplo
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: kd
    real(kind=sp), intent(inout) :: ab(ldab,*)
    integer(kind=ilp), intent(in) :: ldab
    real(kind=sp), intent(out) :: w(*)
    real(kind=sp), intent(out) :: z(ldz,*)
    integer(kind=ilp), intent(in) :: ldz
    real(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: iwork(*)
    integer(kind=ilp), intent(in) :: liwork
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_ssbevx(jobz, range, uplo, n, kd, ab, ldab, q, ldq, vl, vu, il, iu, abstol, m, w, z, ldz, work, iwork, ifail, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: jobz
    character(len=1), intent(in) :: range
    character(len=1), intent(in) :: uplo
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: kd
    real(kind=sp), intent(inout) :: ab(ldab,*)
    integer(kind=ilp), intent(in) :: ldab
    real(kind=sp), intent(out) :: q(ldq,*)
    integer(kind=ilp), intent(in) :: ldq
    real(kind=sp), intent(in) :: vl
    real(kind=sp), intent(in) :: vu
    integer(kind=ilp), intent(in) :: il
    integer(kind=ilp), intent(in) :: iu
    real(kind=sp), intent(in) :: abstol
    integer(kind=ilp), intent(out) :: m
    real(kind=sp), intent(out) :: w(*)
    real(kind=sp), intent(out) :: z(ldz,*)
    integer(kind=ilp), intent(in) :: ldz
    real(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(out) :: iwork(*)
    integer(kind=ilp), intent(out) :: ifail(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_ssbgst(vect, uplo, n, ka, kb, ab, ldab, bb, ldbb, x, ldx, work, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: vect
    character(len=1), intent(in) :: uplo
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: ka
    integer(kind=ilp), intent(in) :: kb
    real(kind=sp), intent(inout) :: ab(ldab,*)
    integer(kind=ilp), intent(in) :: ldab
    real(kind=sp), intent(in) :: bb(ldbb,*)
    integer(kind=ilp), intent(in) :: ldbb
    real(kind=sp), intent(out) :: x(ldx,*)
    integer(kind=ilp), intent(in) :: ldx
    real(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_ssbgv(jobz, uplo, n, ka, kb, ab, ldab, bb, ldbb, w, z, ldz, work, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: jobz
    character(len=1), intent(in) :: uplo
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: ka
    integer(kind=ilp), intent(in) :: kb
    real(kind=sp), intent(inout) :: ab(ldab,*)
    integer(kind=ilp), intent(in) :: ldab
    real(kind=sp), intent(inout) :: bb(ldbb,*)
    integer(kind=ilp), intent(in) :: ldbb
    real(kind=sp), intent(out) :: w(*)
    real(kind=sp), intent(out) :: z(ldz,*)
    integer(kind=ilp), intent(in) :: ldz
    real(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_ssbgvd(jobz, uplo, n, ka, kb, ab, ldab, bb, ldbb, w, z, ldz, work, lwork, iwork, liwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: jobz
    character(len=1), intent(in) :: uplo
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: ka
    integer(kind=ilp), intent(in) :: kb
    real(kind=sp), intent(inout) :: ab(ldab,*)
    integer(kind=ilp), intent(in) :: ldab
    real(kind=sp), intent(inout) :: bb(ldbb,*)
    integer(kind=ilp), intent(in) :: ldbb
    real(kind=sp), intent(out) :: w(*)
    real(kind=sp), intent(out) :: z(ldz,*)
    integer(kind=ilp), intent(in) :: ldz
    real(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: iwork(*)
    integer(kind=ilp), intent(in) :: liwork
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_ssbgvx(jobz, range, uplo, n, ka, kb, ab, ldab, bb, ldbb, q, ldq, vl, vu, il, iu, abstol, m, w, z, ldz, work, iwork, ifail, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: jobz
    character(len=1), intent(in) :: range
    character(len=1), intent(in) :: uplo
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: ka
    integer(kind=ilp), intent(in) :: kb
    real(kind=sp), intent(inout) :: ab(ldab,*)
    integer(kind=ilp), intent(in) :: ldab
    real(kind=sp), intent(inout) :: bb(ldbb,*)
    integer(kind=ilp), intent(in) :: ldbb
    real(kind=sp), intent(out) :: q(ldq,*)
    integer(kind=ilp), intent(in) :: ldq
    real(kind=sp), intent(in) :: vl
    real(kind=sp), intent(in) :: vu
    integer(kind=ilp), intent(in) :: il
    integer(kind=ilp), intent(in) :: iu
    real(kind=sp), intent(in) :: abstol
    integer(kind=ilp), intent(out) :: m
    real(kind=sp), intent(out) :: w(*)
    real(kind=sp), intent(out) :: z(ldz,*)
    integer(kind=ilp), intent(in) :: ldz
    real(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(out) :: iwork(*)
    integer(kind=ilp), intent(out) :: ifail(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_ssbtrd(vect, uplo, n, kd, ab, ldab, d, e, q, ldq, work, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: vect
    character(len=1), intent(in) :: uplo
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: kd
    real(kind=sp), intent(inout) :: ab(ldab,*)
    integer(kind=ilp), intent(in) :: ldab
    real(kind=sp), intent(out) :: d(*)
    real(kind=sp), intent(out) :: e(*)
    real(kind=sp), intent(inout) :: q(ldq,*)
    integer(kind=ilp), intent(in) :: ldq
    real(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_sspev(jobz, uplo, n, ap, w, z, ldz, work, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: jobz
    character(len=1), intent(in) :: uplo
    integer(kind=ilp), intent(in) :: n
    real(kind=sp), intent(inout) :: ap(*)
    real(kind=sp), intent(out) :: w(*)
    real(kind=sp), intent(out) :: z(ldz,*)
    integer(kind=ilp), intent(in) :: ldz
    real(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_sspevd(jobz, uplo, n, ap, w, z, ldz, work, lwork, iwork, liwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: jobz
    character(len=1), intent(in) :: uplo
    integer(kind=ilp), intent(in) :: n
    real(kind=sp), intent(inout) :: ap(*)
    real(kind=sp), intent(out) :: w(*)
    real(kind=sp), intent(out) :: z(ldz,*)
    integer(kind=ilp), intent(in) :: ldz
    real(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: iwork(*)
    integer(kind=ilp), intent(in) :: liwork
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_sspevx(jobz, range, uplo, n, ap, vl, vu, il, iu, abstol, m, w, z, ldz, work, iwork, ifail, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: jobz
    character(len=1), intent(in) :: range
    character(len=1), intent(in) :: uplo
    integer(kind=ilp), intent(in) :: n
    real(kind=sp), intent(inout) :: ap(*)
    real(kind=sp), intent(in) :: vl
    real(kind=sp), intent(in) :: vu
    integer(kind=ilp), intent(in) :: il
    integer(kind=ilp), intent(in) :: iu
    real(kind=sp), intent(in) :: abstol
    integer(kind=ilp), intent(out) :: m
    real(kind=sp), intent(out) :: w(*)
    real(kind=sp), intent(out) :: z(ldz,*)
    integer(kind=ilp), intent(in) :: ldz
    real(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(out) :: iwork(*)
    integer(kind=ilp), intent(out) :: ifail(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_sspgst(itype, uplo, n, ap, bp, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: itype
    character(len=1), intent(in) :: uplo
    integer(kind=ilp), intent(in) :: n
    real(kind=sp), intent(inout) :: ap(*)
    real(kind=sp), intent(in) :: bp(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_sspgv(itype, jobz, uplo, n, ap, bp, w, z, ldz, work, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: itype
    character(len=1), intent(in) :: jobz
    character(len=1), intent(in) :: uplo
    integer(kind=ilp), intent(in) :: n
    real(kind=sp), intent(inout) :: ap(*)
    real(kind=sp), intent(inout) :: bp(*)
    real(kind=sp), intent(out) :: w(*)
    real(kind=sp), intent(out) :: z(ldz,*)
    integer(kind=ilp), intent(in) :: ldz
    real(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_sspgvd(itype, jobz, uplo, n, ap, bp, w, z, ldz, work, lwork, iwork, liwork, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: itype
    character(len=1), intent(in) :: jobz
    character(len=1), intent(in) :: uplo
    integer(kind=ilp), intent(in) :: n
    real(kind=sp), intent(inout) :: ap(*)
    real(kind=sp), intent(inout) :: bp(*)
    real(kind=sp), intent(out) :: w(*)
    real(kind=sp), intent(out) :: z(ldz,*)
    integer(kind=ilp), intent(in) :: ldz
    real(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: iwork(*)
    integer(kind=ilp), intent(in) :: liwork
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_sspgvx(itype, jobz, range, uplo, n, ap, bp, vl, vu, il, iu, abstol, m, w, z, ldz, work, iwork, ifail, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: itype
    character(len=1), intent(in) :: jobz
    character(len=1), intent(in) :: range
    character(len=1), intent(in) :: uplo
    integer(kind=ilp), intent(in) :: n
    real(kind=sp), intent(inout) :: ap(*)
    real(kind=sp), intent(inout) :: bp(*)
    real(kind=sp), intent(in) :: vl
    real(kind=sp), intent(in) :: vu
    integer(kind=ilp), intent(in) :: il
    integer(kind=ilp), intent(in) :: iu
    real(kind=sp), intent(in) :: abstol
    integer(kind=ilp), intent(out) :: m
    real(kind=sp), intent(out) :: w(*)
    real(kind=sp), intent(out) :: z(ldz,*)
    integer(kind=ilp), intent(in) :: ldz
    real(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(out) :: iwork(*)
    integer(kind=ilp), intent(out) :: ifail(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_ssptrd(uplo, n, ap, d, e, tau, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: uplo
    integer(kind=ilp), intent(in) :: n
    real(kind=sp), intent(inout) :: ap(*)
    real(kind=sp), intent(out) :: d(*)
    real(kind=sp), intent(out) :: e(*)
    real(kind=sp), intent(out) :: tau(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_sstebz(range, order, n, vl, vu, il, iu, abstol, d, e, m, nsplit, w, iblock, isplit, work, iwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: range
    character(len=1), intent(in) :: order
    integer(kind=ilp), intent(in) :: n
    real(kind=sp), intent(in) :: vl
    real(kind=sp), intent(in) :: vu
    integer(kind=ilp), intent(in) :: il
    integer(kind=ilp), intent(in) :: iu
    real(kind=sp), intent(in) :: abstol
    real(kind=sp), intent(in) :: d(*)
    real(kind=sp), intent(in) :: e(*)
    integer(kind=ilp), intent(out) :: m
    integer(kind=ilp), intent(out) :: nsplit
    real(kind=sp), intent(out) :: w(*)
    integer(kind=ilp), intent(out) :: iblock(*)
    integer(kind=ilp), intent(out) :: isplit(*)
    real(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(out) :: iwork(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_sstedc(compz, n, d, e, z, ldz, work, lwork, iwork, liwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: compz
    integer(kind=ilp), intent(in) :: n
    real(kind=sp), intent(inout) :: d(*)
    real(kind=sp), intent(inout) :: e(*)
    real(kind=sp), intent(inout) :: z(ldz,*)
    integer(kind=ilp), intent(in) :: ldz
    real(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: iwork(*)
    integer(kind=ilp), intent(in) :: liwork
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_sstegr(jobz, range, n, d, e, vl, vu, il, iu, abstol, m, w, z, ldz, isuppz, work, lwork, iwork, liwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: jobz
    character(len=1), intent(in) :: range
    integer(kind=ilp), intent(in) :: n
    real(kind=sp), intent(inout) :: d(*)
    real(kind=sp), intent(inout) :: e(*)
    real(kind=sp), intent(in) :: vl
    real(kind=sp), intent(in) :: vu
    integer(kind=ilp), intent(in) :: il
    integer(kind=ilp), intent(in) :: iu
    real(kind=sp), intent(in) :: abstol
    integer(kind=ilp), intent(out) :: m
    real(kind=sp), intent(out) :: w(*)
    real(kind=sp), intent(out) :: z(ldz,*)
    integer(kind=ilp), intent(in) :: ldz
    integer(kind=ilp), intent(out) :: isuppz(*)
    real(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: iwork(*)
    integer(kind=ilp), intent(in) :: liwork
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_sstein(n, d, e, m, w, iblock, isplit, z, ldz, work, iwork, ifail, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: n
    real(kind=sp), intent(in) :: d(*)
    real(kind=sp), intent(in) :: e(*)
    integer(kind=ilp), intent(in) :: m
    real(kind=sp), intent(in) :: w(*)
    integer(kind=ilp), intent(in) :: iblock(*)
    integer(kind=ilp), intent(in) :: isplit(*)
    real(kind=sp), intent(out) :: z(ldz,*)
    integer(kind=ilp), intent(in) :: ldz
    real(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(out) :: iwork(*)
    integer(kind=ilp), intent(out) :: ifail(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_sstemr(jobz, range, n, d, e, vl, vu, il, iu, m, w, z, ldz, nzc, isuppz, tryrac, work, lwork, iwork, liwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: jobz
    character(len=1), intent(in) :: range
    integer(kind=ilp), intent(in) :: n
    real(kind=sp), intent(inout) :: d(*)
    real(kind=sp), intent(inout) :: e(*)
    real(kind=sp), intent(in) :: vl
    real(kind=sp), intent(in) :: vu
    integer(kind=ilp), intent(in) :: il
    integer(kind=ilp), intent(in) :: iu
    integer(kind=ilp), intent(out) :: m
    real(kind=sp), intent(out) :: w(*)
    real(kind=sp), intent(out) :: z(ldz,*)
    integer(kind=ilp), intent(in) :: ldz
    integer(kind=ilp), intent(in) :: nzc
    integer(kind=ilp), intent(out) :: isuppz(*)
    logical(kind=lk), intent(inout) :: tryrac
    real(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: iwork(*)
    integer(kind=ilp), intent(in) :: liwork
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_ssteqr(compz, n, d, e, z, ldz, work, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: compz
    integer(kind=ilp), intent(in) :: n
    real(kind=sp), intent(inout) :: d(*)
    real(kind=sp), intent(inout) :: e(*)
    real(kind=sp), intent(inout) :: z(ldz,*)
    integer(kind=ilp), intent(in) :: ldz
    real(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_ssterf(n, d, e, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: n
    real(kind=sp), intent(inout) :: d(*)
    real(kind=sp), intent(inout) :: e(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_sstev(jobz, n, d, e, z, ldz, work, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: jobz
    integer(kind=ilp), intent(in) :: n
    real(kind=sp), intent(inout) :: d(*)
    real(kind=sp), intent(inout) :: e(*)
    real(kind=sp), intent(out) :: z(ldz,*)
    integer(kind=ilp), intent(in) :: ldz
    real(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_sstevd(jobz, n, d, e, z, ldz, work, lwork, iwork, liwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: jobz
    integer(kind=ilp), intent(in) :: n
    real(kind=sp), intent(inout) :: d(*)
    real(kind=sp), intent(inout) :: e(*)
    real(kind=sp), intent(out) :: z(ldz,*)
    integer(kind=ilp), intent(in) :: ldz
    real(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: iwork(*)
    integer(kind=ilp), intent(in) :: liwork
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_sstevr(jobz, range, n, d, e, vl, vu, il, iu, abstol, m, w, z, ldz, isuppz, work, lwork, iwork, liwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: jobz
    character(len=1), intent(in) :: range
    integer(kind=ilp), intent(in) :: n
    real(kind=sp), intent(inout) :: d(*)
    real(kind=sp), intent(inout) :: e(*)
    real(kind=sp), intent(in) :: vl
    real(kind=sp), intent(in) :: vu
    integer(kind=ilp), intent(in) :: il
    integer(kind=ilp), intent(in) :: iu
    real(kind=sp), intent(in) :: abstol
    integer(kind=ilp), intent(out) :: m
    real(kind=sp), intent(out) :: w(*)
    real(kind=sp), intent(out) :: z(ldz,*)
    integer(kind=ilp), intent(in) :: ldz
    integer(kind=ilp), intent(out) :: isuppz(*)
    real(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: iwork(*)
    integer(kind=ilp), intent(in) :: liwork
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_sstevx(jobz, range, n, d, e, vl, vu, il, iu, abstol, m, w, z, ldz, work, iwork, ifail, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: jobz
    character(len=1), intent(in) :: range
    integer(kind=ilp), intent(in) :: n
    real(kind=sp), intent(inout) :: d(*)
    real(kind=sp), intent(inout) :: e(*)
    real(kind=sp), intent(in) :: vl
    real(kind=sp), intent(in) :: vu
    integer(kind=ilp), intent(in) :: il
    integer(kind=ilp), intent(in) :: iu
    real(kind=sp), intent(in) :: abstol
    integer(kind=ilp), intent(out) :: m
    real(kind=sp), intent(out) :: w(*)
    real(kind=sp), intent(out) :: z(ldz,*)
    integer(kind=ilp), intent(in) :: ldz
    real(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(out) :: iwork(*)
    integer(kind=ilp), intent(out) :: ifail(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_ssyev(jobz, uplo, n, a, lda, w, work, lwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: jobz
    character(len=1), intent(in) :: uplo
    integer(kind=ilp), intent(in) :: n
    real(kind=sp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    real(kind=sp), intent(out) :: w(*)
    real(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_ssyevd(jobz, uplo, n, a, lda, w, work, lwork, iwork, liwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: jobz
    character(len=1), intent(in) :: uplo
    integer(kind=ilp), intent(in) :: n
    real(kind=sp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    real(kind=sp), intent(out) :: w(*)
    real(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: iwork(*)
    integer(kind=ilp), intent(in) :: liwork
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_ssyevr(jobz, range, uplo, n, a, lda, vl, vu, il, iu, abstol, m, w, z, ldz, isuppz, work, lwork, iwork, liwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: jobz
    character(len=1), intent(in) :: range
    character(len=1), intent(in) :: uplo
    integer(kind=ilp), intent(in) :: n
    real(kind=sp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    real(kind=sp), intent(in) :: vl
    real(kind=sp), intent(in) :: vu
    integer(kind=ilp), intent(in) :: il
    integer(kind=ilp), intent(in) :: iu
    real(kind=sp), intent(in) :: abstol
    integer(kind=ilp), intent(out) :: m
    real(kind=sp), intent(out) :: w(*)
    real(kind=sp), intent(out) :: z(ldz,*)
    integer(kind=ilp), intent(in) :: ldz
    integer(kind=ilp), intent(out) :: isuppz(*)
    real(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: iwork(*)
    integer(kind=ilp), intent(in) :: liwork
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_ssyevx(jobz, range, uplo, n, a, lda, vl, vu, il, iu, abstol, m, w, z, ldz, work, lwork, iwork, ifail, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: jobz
    character(len=1), intent(in) :: range
    character(len=1), intent(in) :: uplo
    integer(kind=ilp), intent(in) :: n
    real(kind=sp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    real(kind=sp), intent(in) :: vl
    real(kind=sp), intent(in) :: vu
    integer(kind=ilp), intent(in) :: il
    integer(kind=ilp), intent(in) :: iu
    real(kind=sp), intent(in) :: abstol
    integer(kind=ilp), intent(out) :: m
    real(kind=sp), intent(out) :: w(*)
    real(kind=sp), intent(out) :: z(ldz,*)
    integer(kind=ilp), intent(in) :: ldz
    real(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: iwork(*)
    integer(kind=ilp), intent(out) :: ifail(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_ssygs2(itype, uplo, n, a, lda, b, ldb, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: itype
    character(len=1), intent(in) :: uplo
    integer(kind=ilp), intent(in) :: n
    real(kind=sp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    real(kind=sp), intent(in) :: b(ldb,*)
    integer(kind=ilp), intent(in) :: ldb
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_ssygst(itype, uplo, n, a, lda, b, ldb, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: itype
    character(len=1), intent(in) :: uplo
    integer(kind=ilp), intent(in) :: n
    real(kind=sp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    real(kind=sp), intent(in) :: b(ldb,*)
    integer(kind=ilp), intent(in) :: ldb
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_ssygv(itype, jobz, uplo, n, a, lda, b, ldb, w, work, lwork, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: itype
    character(len=1), intent(in) :: jobz
    character(len=1), intent(in) :: uplo
    integer(kind=ilp), intent(in) :: n
    real(kind=sp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    real(kind=sp), intent(inout) :: b(ldb,*)
    integer(kind=ilp), intent(in) :: ldb
    real(kind=sp), intent(out) :: w(*)
    real(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_ssygvd(itype, jobz, uplo, n, a, lda, b, ldb, w, work, lwork, iwork, liwork, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: itype
    character(len=1), intent(in) :: jobz
    character(len=1), intent(in) :: uplo
    integer(kind=ilp), intent(in) :: n
    real(kind=sp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    real(kind=sp), intent(inout) :: b(ldb,*)
    integer(kind=ilp), intent(in) :: ldb
    real(kind=sp), intent(out) :: w(*)
    real(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: iwork(*)
    integer(kind=ilp), intent(in) :: liwork
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_ssygvx(itype, jobz, range, uplo, n, a, lda, b, ldb, vl, vu, il, iu, abstol, m, w, z, ldz, work, lwork, iwork, ifail, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: itype
    character(len=1), intent(in) :: jobz
    character(len=1), intent(in) :: range
    character(len=1), intent(in) :: uplo
    integer(kind=ilp), intent(in) :: n
    real(kind=sp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    real(kind=sp), intent(inout) :: b(ldb,*)
    integer(kind=ilp), intent(in) :: ldb
    real(kind=sp), intent(in) :: vl
    real(kind=sp), intent(in) :: vu
    integer(kind=ilp), intent(in) :: il
    integer(kind=ilp), intent(in) :: iu
    real(kind=sp), intent(in) :: abstol
    integer(kind=ilp), intent(out) :: m
    real(kind=sp), intent(out) :: w(*)
    real(kind=sp), intent(out) :: z(ldz,*)
    integer(kind=ilp), intent(in) :: ldz
    real(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: iwork(*)
    integer(kind=ilp), intent(out) :: ifail(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_ssytd2(uplo, n, a, lda, d, e, tau, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: uplo
    integer(kind=ilp), intent(in) :: n
    real(kind=sp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    real(kind=sp), intent(out) :: d(*)
    real(kind=sp), intent(out) :: e(*)
    real(kind=sp), intent(out) :: tau(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_ssytrd(uplo, n, a, lda, d, e, tau, work, lwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: uplo
    integer(kind=ilp), intent(in) :: n
    real(kind=sp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    real(kind=sp), intent(out) :: d(*)
    real(kind=sp), intent(out) :: e(*)
    real(kind=sp), intent(out) :: tau(*)
    real(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_ssytrd_sb2st(stage1, vect, uplo, n, kd, ab, ldab, d, e, hous, lhous, work, lwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: stage1
    character(len=1), intent(in) :: vect
    character(len=1), intent(in) :: uplo
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: kd
    real(kind=sp), intent(inout) :: ab(ldab,*)
    integer(kind=ilp), intent(in) :: ldab
    real(kind=sp), intent(out) :: d(*)
    real(kind=sp), intent(out) :: e(*)
    real(kind=sp), intent(out) :: hous(*)
    integer(kind=ilp), intent(in) :: lhous
    real(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_ssytrd_sy2sb(uplo, n, kd, a, lda, ab, ldab, tau, work, lwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: uplo
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: kd
    real(kind=sp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    real(kind=sp), intent(out) :: ab(ldab,*)
    integer(kind=ilp), intent(in) :: ldab
    real(kind=sp), intent(out) :: tau(*)
    real(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_stgevc(side, howmny, select, n, s, lds, p, ldp, vl, ldvl, vr, ldvr, mm, m, work, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: side
    character(len=1), intent(in) :: howmny
    logical(kind=lk), intent(in) :: select(*)
    integer(kind=ilp), intent(in) :: n
    real(kind=sp), intent(in) :: s(lds,*)
    integer(kind=ilp), intent(in) :: lds
    real(kind=sp), intent(in) :: p(ldp,*)
    integer(kind=ilp), intent(in) :: ldp
    real(kind=sp), intent(inout) :: vl(ldvl,*)
    integer(kind=ilp), intent(in) :: ldvl
    real(kind=sp), intent(inout) :: vr(ldvr,*)
    integer(kind=ilp), intent(in) :: ldvr
    integer(kind=ilp), intent(in) :: mm
    integer(kind=ilp), intent(out) :: m
    real(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_stgex2(wantq, wantz, n, a, lda, b, ldb, q, ldq, z, ldz, j1, n1, n2, work, lwork, info)

    Arguments

    Type IntentOptional Attributes Name
    logical(kind=lk), intent(in) :: wantq
    logical(kind=lk), intent(in) :: wantz
    integer(kind=ilp), intent(in) :: n
    real(kind=sp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    real(kind=sp), intent(inout) :: b(ldb,*)
    integer(kind=ilp), intent(in) :: ldb
    real(kind=sp), intent(inout) :: q(ldq,*)
    integer(kind=ilp), intent(in) :: ldq
    real(kind=sp), intent(inout) :: z(ldz,*)
    integer(kind=ilp), intent(in) :: ldz
    integer(kind=ilp), intent(in) :: j1
    integer(kind=ilp), intent(in) :: n1
    integer(kind=ilp), intent(in) :: n2
    real(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_stgexc(wantq, wantz, n, a, lda, b, ldb, q, ldq, z, ldz, ifst, ilst, work, lwork, info)

    Arguments

    Type IntentOptional Attributes Name
    logical(kind=lk), intent(in) :: wantq
    logical(kind=lk), intent(in) :: wantz
    integer(kind=ilp), intent(in) :: n
    real(kind=sp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    real(kind=sp), intent(inout) :: b(ldb,*)
    integer(kind=ilp), intent(in) :: ldb
    real(kind=sp), intent(inout) :: q(ldq,*)
    integer(kind=ilp), intent(in) :: ldq
    real(kind=sp), intent(inout) :: z(ldz,*)
    integer(kind=ilp), intent(in) :: ldz
    integer(kind=ilp), intent(inout) :: ifst
    integer(kind=ilp), intent(inout) :: ilst
    real(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_stgsen(ijob, wantq, wantz, select, n, a, lda, b, ldb, alphar, alphai, beta, q, ldq, z, ldz, m, pl, pr, dif, work, lwork, iwork, liwork, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: ijob
    logical(kind=lk), intent(in) :: wantq
    logical(kind=lk), intent(in) :: wantz
    logical(kind=lk), intent(in) :: select(*)
    integer(kind=ilp), intent(in) :: n
    real(kind=sp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    real(kind=sp), intent(inout) :: b(ldb,*)
    integer(kind=ilp), intent(in) :: ldb
    real(kind=sp), intent(out) :: alphar(*)
    real(kind=sp), intent(out) :: alphai(*)
    real(kind=sp), intent(out) :: beta(*)
    real(kind=sp), intent(inout) :: q(ldq,*)
    integer(kind=ilp), intent(in) :: ldq
    real(kind=sp), intent(inout) :: z(ldz,*)
    integer(kind=ilp), intent(in) :: ldz
    integer(kind=ilp), intent(out) :: m
    real(kind=sp), intent(out) :: pl
    real(kind=sp), intent(out) :: pr
    real(kind=sp), intent(out) :: dif(*)
    real(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: iwork(*)
    integer(kind=ilp), intent(in) :: liwork
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_stgsja(jobu, jobv, jobq, m, p, n, k, l, a, lda, b, ldb, tola, tolb, alpha, beta, u, ldu, v, ldv, q, ldq, work, ncycle, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: jobu
    character(len=1), intent(in) :: jobv
    character(len=1), intent(in) :: jobq
    integer(kind=ilp), intent(in) :: m
    integer(kind=ilp), intent(in) :: p
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: k
    integer(kind=ilp), intent(in) :: l
    real(kind=sp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    real(kind=sp), intent(inout) :: b(ldb,*)
    integer(kind=ilp), intent(in) :: ldb
    real(kind=sp), intent(in) :: tola
    real(kind=sp), intent(in) :: tolb
    real(kind=sp), intent(out) :: alpha(*)
    real(kind=sp), intent(out) :: beta(*)
    real(kind=sp), intent(inout) :: u(ldu,*)
    integer(kind=ilp), intent(in) :: ldu
    real(kind=sp), intent(inout) :: v(ldv,*)
    integer(kind=ilp), intent(in) :: ldv
    real(kind=sp), intent(inout) :: q(ldq,*)
    integer(kind=ilp), intent(in) :: ldq
    real(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(out) :: ncycle
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_stgsna(job, howmny, select, n, a, lda, b, ldb, vl, ldvl, vr, ldvr, s, dif, mm, m, work, lwork, iwork, info)

    Arguments

    Type IntentOptional 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

interface

  • public pure module subroutine stdlib_stgsy2(trans, ijob, m, n, a, lda, b, ldb, c, ldc, d, ldd, e, lde, f, ldf, scale, rdsum, rdscal, iwork, pq, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: trans
    integer(kind=ilp), intent(in) :: ijob
    integer(kind=ilp), intent(in) :: m
    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(inout) :: c(ldc,*)
    integer(kind=ilp), intent(in) :: ldc
    real(kind=sp), intent(in) :: d(ldd,*)
    integer(kind=ilp), intent(in) :: ldd
    real(kind=sp), intent(in) :: e(lde,*)
    integer(kind=ilp), intent(in) :: lde
    real(kind=sp), intent(inout) :: f(ldf,*)
    integer(kind=ilp), intent(in) :: ldf
    real(kind=sp), intent(out) :: scale
    real(kind=sp), intent(inout) :: rdsum
    real(kind=sp), intent(inout) :: rdscal
    integer(kind=ilp), intent(out) :: iwork(*)
    integer(kind=ilp), intent(out) :: pq
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_stgsyl(trans, ijob, m, n, a, lda, b, ldb, c, ldc, d, ldd, e, lde, f, ldf, scale, dif, work, lwork, iwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: trans
    integer(kind=ilp), intent(in) :: ijob
    integer(kind=ilp), intent(in) :: m
    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(inout) :: c(ldc,*)
    integer(kind=ilp), intent(in) :: ldc
    real(kind=sp), intent(in) :: d(ldd,*)
    integer(kind=ilp), intent(in) :: ldd
    real(kind=sp), intent(in) :: e(lde,*)
    integer(kind=ilp), intent(in) :: lde
    real(kind=sp), intent(inout) :: f(ldf,*)
    integer(kind=ilp), intent(in) :: ldf
    real(kind=sp), intent(out) :: scale
    real(kind=sp), intent(out) :: dif
    real(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: iwork(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_strevc(side, howmny, select, n, t, ldt, vl, ldvl, vr, ldvr, mm, m, work, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: side
    character(len=1), intent(in) :: howmny
    logical(kind=lk), intent(inout) :: select(*)
    integer(kind=ilp), intent(in) :: n
    real(kind=sp), intent(in) :: t(ldt,*)
    integer(kind=ilp), intent(in) :: ldt
    real(kind=sp), intent(inout) :: vl(ldvl,*)
    integer(kind=ilp), intent(in) :: ldvl
    real(kind=sp), intent(inout) :: vr(ldvr,*)
    integer(kind=ilp), intent(in) :: ldvr
    integer(kind=ilp), intent(in) :: mm
    integer(kind=ilp), intent(out) :: m
    real(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_strevc3(side, howmny, select, n, t, ldt, vl, ldvl, vr, ldvr, mm, m, work, lwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: side
    character(len=1), intent(in) :: howmny
    logical(kind=lk), intent(inout) :: select(*)
    integer(kind=ilp), intent(in) :: n
    real(kind=sp), intent(in) :: t(ldt,*)
    integer(kind=ilp), intent(in) :: ldt
    real(kind=sp), intent(inout) :: vl(ldvl,*)
    integer(kind=ilp), intent(in) :: ldvl
    real(kind=sp), intent(inout) :: vr(ldvr,*)
    integer(kind=ilp), intent(in) :: ldvr
    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) :: info

interface

  • public module subroutine stdlib_strexc(compq, n, t, ldt, q, ldq, ifst, ilst, work, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: compq
    integer(kind=ilp), intent(in) :: n
    real(kind=sp), intent(inout) :: t(ldt,*)
    integer(kind=ilp), intent(in) :: ldt
    real(kind=sp), intent(inout) :: q(ldq,*)
    integer(kind=ilp), intent(in) :: ldq
    integer(kind=ilp), intent(inout) :: ifst
    integer(kind=ilp), intent(inout) :: ilst
    real(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_strsen(job, compq, select, n, t, ldt, q, ldq, wr, wi, m, s, sep, work, lwork, iwork, liwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: job
    character(len=1), intent(in) :: compq
    logical(kind=lk), intent(in) :: select(*)
    integer(kind=ilp), intent(in) :: n
    real(kind=sp), intent(inout) :: t(ldt,*)
    integer(kind=ilp), intent(in) :: ldt
    real(kind=sp), intent(inout) :: q(ldq,*)
    integer(kind=ilp), intent(in) :: ldq
    real(kind=sp), intent(out) :: wr(*)
    real(kind=sp), intent(out) :: wi(*)
    integer(kind=ilp), intent(out) :: m
    real(kind=sp), intent(out) :: s
    real(kind=sp), intent(out) :: sep
    real(kind=sp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: iwork(*)
    integer(kind=ilp), intent(in) :: liwork
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_strsna(job, howmny, select, n, t, ldt, vl, ldvl, vr, ldvr, s, sep, mm, m, work, ldwork, iwork, info)

    Arguments

    Type IntentOptional 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) :: t(ldt,*)
    integer(kind=ilp), intent(in) :: ldt
    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) :: sep(*)
    integer(kind=ilp), intent(in) :: mm
    integer(kind=ilp), intent(out) :: m
    real(kind=sp), intent(out) :: work(ldwork,*)
    integer(kind=ilp), intent(in) :: ldwork
    integer(kind=ilp), intent(out) :: iwork(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_strsyl(trana, tranb, isgn, m, n, a, lda, b, ldb, c, ldc, scale, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: trana
    character(len=1), intent(in) :: tranb
    integer(kind=ilp), intent(in) :: isgn
    integer(kind=ilp), intent(in) :: m
    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(inout) :: c(ldc,*)
    integer(kind=ilp), intent(in) :: ldc
    real(kind=sp), intent(out) :: scale
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_zbbcsd(jobu1, jobu2, jobv1t, jobv2t, trans, m, p, q, theta, phi, u1, ldu1, u2, ldu2, v1t, ldv1t, v2t, ldv2t, b11d, b11e, b12d, b12e, b21d, b21e, b22d, b22e, rwork, lrwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: jobu1
    character(len=1), intent(in) :: jobu2
    character(len=1), intent(in) :: jobv1t
    character(len=1), intent(in) :: jobv2t
    character(len=1), intent(in) :: trans
    integer(kind=ilp), intent(in) :: m
    integer(kind=ilp), intent(in) :: p
    integer(kind=ilp), intent(in) :: q
    real(kind=dp), intent(inout) :: theta(*)
    real(kind=dp), intent(inout) :: phi(*)
    complex(kind=dp), intent(inout) :: u1(ldu1,*)
    integer(kind=ilp), intent(in) :: ldu1
    complex(kind=dp), intent(inout) :: u2(ldu2,*)
    integer(kind=ilp), intent(in) :: ldu2
    complex(kind=dp), intent(inout) :: v1t(ldv1t,*)
    integer(kind=ilp), intent(in) :: ldv1t
    complex(kind=dp), intent(inout) :: v2t(ldv2t,*)
    integer(kind=ilp), intent(in) :: ldv2t
    real(kind=dp), intent(out) :: b11d(*)
    real(kind=dp), intent(out) :: b11e(*)
    real(kind=dp), intent(out) :: b12d(*)
    real(kind=dp), intent(out) :: b12e(*)
    real(kind=dp), intent(out) :: b21d(*)
    real(kind=dp), intent(out) :: b21e(*)
    real(kind=dp), intent(out) :: b22d(*)
    real(kind=dp), intent(out) :: b22e(*)
    real(kind=dp), intent(out) :: rwork(*)
    integer(kind=ilp), intent(in) :: lrwork
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_zbdsqr(uplo, n, ncvt, nru, ncc, d, e, vt, ldvt, u, ldu, c, ldc, rwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: uplo
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: ncvt
    integer(kind=ilp), intent(in) :: nru
    integer(kind=ilp), intent(in) :: ncc
    real(kind=dp), intent(inout) :: d(*)
    real(kind=dp), intent(inout) :: e(*)
    complex(kind=dp), intent(inout) :: vt(ldvt,*)
    integer(kind=ilp), intent(in) :: ldvt
    complex(kind=dp), intent(inout) :: u(ldu,*)
    integer(kind=ilp), intent(in) :: ldu
    complex(kind=dp), intent(inout) :: c(ldc,*)
    integer(kind=ilp), intent(in) :: ldc
    real(kind=dp), intent(out) :: rwork(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_zgbbrd(vect, m, n, ncc, kl, ku, ab, ldab, d, e, q, ldq, pt, ldpt, c, ldc, work, rwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: vect
    integer(kind=ilp), intent(in) :: m
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: ncc
    integer(kind=ilp), intent(in) :: kl
    integer(kind=ilp), intent(in) :: ku
    complex(kind=dp), intent(inout) :: ab(ldab,*)
    integer(kind=ilp), intent(in) :: ldab
    real(kind=dp), intent(out) :: d(*)
    real(kind=dp), intent(out) :: e(*)
    complex(kind=dp), intent(out) :: q(ldq,*)
    integer(kind=ilp), intent(in) :: ldq
    complex(kind=dp), intent(out) :: pt(ldpt,*)
    integer(kind=ilp), intent(in) :: ldpt
    complex(kind=dp), intent(inout) :: c(ldc,*)
    integer(kind=ilp), intent(in) :: ldc
    complex(kind=dp), intent(out) :: work(*)
    real(kind=dp), intent(out) :: rwork(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_zgebak(job, side, n, ilo, ihi, scale, m, v, ldv, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: job
    character(len=1), intent(in) :: side
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: ilo
    integer(kind=ilp), intent(in) :: ihi
    real(kind=dp), intent(in) :: scale(*)
    integer(kind=ilp), intent(in) :: m
    complex(kind=dp), intent(inout) :: v(ldv,*)
    integer(kind=ilp), intent(in) :: ldv
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_zgebal(job, n, a, lda, ilo, ihi, scale, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: job
    integer(kind=ilp), intent(in) :: n
    complex(kind=dp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    integer(kind=ilp), intent(out) :: ilo
    integer(kind=ilp), intent(out) :: ihi
    real(kind=dp), intent(out) :: scale(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_zgebd2(m, n, a, lda, d, e, tauq, taup, work, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: m
    integer(kind=ilp), intent(in) :: n
    complex(kind=dp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    real(kind=dp), intent(out) :: d(*)
    real(kind=dp), intent(out) :: e(*)
    complex(kind=dp), intent(out) :: tauq(*)
    complex(kind=dp), intent(out) :: taup(*)
    complex(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_zgebrd(m, n, a, lda, d, e, tauq, taup, work, lwork, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: m
    integer(kind=ilp), intent(in) :: n
    complex(kind=dp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    real(kind=dp), intent(out) :: d(*)
    real(kind=dp), intent(out) :: e(*)
    complex(kind=dp), intent(out) :: tauq(*)
    complex(kind=dp), intent(out) :: taup(*)
    complex(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_zgees(jobvs, sort, select, n, a, lda, sdim, w, vs, ldvs, work, lwork, rwork, bwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: jobvs
    character(len=1), intent(in) :: sort
    procedure(stdlib_select_z) :: select
    integer(kind=ilp), intent(in) :: n
    complex(kind=dp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    integer(kind=ilp), intent(out) :: sdim
    complex(kind=dp), intent(out) :: w(*)
    complex(kind=dp), intent(out) :: vs(ldvs,*)
    integer(kind=ilp), intent(in) :: ldvs
    complex(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    real(kind=dp), intent(out) :: rwork(*)
    logical(kind=lk), intent(out) :: bwork(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_zgeesx(jobvs, sort, select, sense, n, a, lda, sdim, w, vs, ldvs, rconde, rcondv, work, lwork, rwork, bwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: jobvs
    character(len=1), intent(in) :: sort
    procedure(stdlib_select_z) :: select
    character(len=1), intent(in) :: sense
    integer(kind=ilp), intent(in) :: n
    complex(kind=dp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    integer(kind=ilp), intent(out) :: sdim
    complex(kind=dp), intent(out) :: w(*)
    complex(kind=dp), intent(out) :: vs(ldvs,*)
    integer(kind=ilp), intent(in) :: ldvs
    real(kind=dp), intent(out) :: rconde
    real(kind=dp), intent(out) :: rcondv
    complex(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    real(kind=dp), intent(out) :: rwork(*)
    logical(kind=lk), intent(out) :: bwork(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_zgeev(jobvl, jobvr, n, a, lda, w, vl, ldvl, vr, ldvr, work, lwork, rwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: jobvl
    character(len=1), intent(in) :: jobvr
    integer(kind=ilp), intent(in) :: n
    complex(kind=dp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    complex(kind=dp), intent(out) :: w(*)
    complex(kind=dp), intent(out) :: vl(ldvl,*)
    integer(kind=ilp), intent(in) :: ldvl
    complex(kind=dp), intent(out) :: vr(ldvr,*)
    integer(kind=ilp), intent(in) :: ldvr
    complex(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    real(kind=dp), intent(out) :: rwork(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_zgeevx(balanc, jobvl, jobvr, sense, n, a, lda, w, vl, ldvl, vr, ldvr, ilo, ihi, scale, abnrm, rconde, rcondv, work, lwork, rwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: balanc
    character(len=1), intent(in) :: jobvl
    character(len=1), intent(in) :: jobvr
    character(len=1), intent(in) :: sense
    integer(kind=ilp), intent(in) :: n
    complex(kind=dp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    complex(kind=dp), intent(out) :: w(*)
    complex(kind=dp), intent(out) :: vl(ldvl,*)
    integer(kind=ilp), intent(in) :: ldvl
    complex(kind=dp), intent(out) :: vr(ldvr,*)
    integer(kind=ilp), intent(in) :: ldvr
    integer(kind=ilp), intent(out) :: ilo
    integer(kind=ilp), intent(out) :: ihi
    real(kind=dp), intent(out) :: scale(*)
    real(kind=dp), intent(out) :: abnrm
    real(kind=dp), intent(out) :: rconde(*)
    real(kind=dp), intent(out) :: rcondv(*)
    complex(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    real(kind=dp), intent(out) :: rwork(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_zgehd2(n, ilo, ihi, a, lda, tau, work, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: ilo
    integer(kind=ilp), intent(in) :: ihi
    complex(kind=dp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    complex(kind=dp), intent(out) :: tau(*)
    complex(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_zgehrd(n, ilo, ihi, a, lda, tau, work, lwork, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: ilo
    integer(kind=ilp), intent(in) :: ihi
    complex(kind=dp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    complex(kind=dp), intent(out) :: tau(*)
    complex(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_zgejsv(joba, jobu, jobv, jobr, jobt, jobp, m, n, a, lda, sva, u, ldu, v, ldv, cwork, lwork, rwork, lrwork, iwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: joba
    character(len=1), intent(in) :: jobu
    character(len=1), intent(in) :: jobv
    character(len=1), intent(in) :: jobr
    character(len=1), intent(in) :: jobt
    character(len=1), intent(in) :: jobp
    integer(kind=ilp), intent(in) :: m
    integer(kind=ilp), intent(in) :: n
    complex(kind=dp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    real(kind=dp), intent(out) :: sva(n)
    complex(kind=dp), intent(out) :: u(ldu,*)
    integer(kind=ilp), intent(in) :: ldu
    complex(kind=dp), intent(out) :: v(ldv,*)
    integer(kind=ilp), intent(in) :: ldv
    complex(kind=dp), intent(out) :: cwork(lwork)
    integer(kind=ilp), intent(in) :: lwork
    real(kind=dp), intent(out) :: rwork(lrwork)
    integer(kind=ilp), intent(in) :: lrwork
    integer(kind=ilp), intent(out) :: iwork(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_zgels(trans, m, n, nrhs, a, lda, b, ldb, work, lwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: trans
    integer(kind=ilp), intent(in) :: m
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: nrhs
    complex(kind=dp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    complex(kind=dp), intent(inout) :: b(ldb,*)
    integer(kind=ilp), intent(in) :: ldb
    complex(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_zgelsd(m, n, nrhs, a, lda, b, ldb, s, rcond, rank, work, lwork, rwork, iwork, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: m
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: nrhs
    complex(kind=dp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    complex(kind=dp), intent(inout) :: b(ldb,*)
    integer(kind=ilp), intent(in) :: ldb
    real(kind=dp), intent(out) :: s(*)
    real(kind=dp), intent(in) :: rcond
    integer(kind=ilp), intent(out) :: rank
    complex(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    real(kind=dp), intent(out) :: rwork(*)
    integer(kind=ilp), intent(out) :: iwork(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_zgelss(m, n, nrhs, a, lda, b, ldb, s, rcond, rank, work, lwork, rwork, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: m
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: nrhs
    complex(kind=dp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    complex(kind=dp), intent(inout) :: b(ldb,*)
    integer(kind=ilp), intent(in) :: ldb
    real(kind=dp), intent(out) :: s(*)
    real(kind=dp), intent(in) :: rcond
    integer(kind=ilp), intent(out) :: rank
    complex(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    real(kind=dp), intent(out) :: rwork(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_zgelsy(m, n, nrhs, a, lda, b, ldb, jpvt, rcond, rank, work, lwork, rwork, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: m
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: nrhs
    complex(kind=dp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    complex(kind=dp), intent(inout) :: b(ldb,*)
    integer(kind=ilp), intent(in) :: ldb
    integer(kind=ilp), intent(inout) :: jpvt(*)
    real(kind=dp), intent(in) :: rcond
    integer(kind=ilp), intent(out) :: rank
    complex(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    real(kind=dp), intent(out) :: rwork(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_zgesdd(jobz, m, n, a, lda, s, u, ldu, vt, ldvt, work, lwork, rwork, iwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: jobz
    integer(kind=ilp), intent(in) :: m
    integer(kind=ilp), intent(in) :: n
    complex(kind=dp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    real(kind=dp), intent(out) :: s(*)
    complex(kind=dp), intent(out) :: u(ldu,*)
    integer(kind=ilp), intent(in) :: ldu
    complex(kind=dp), intent(out) :: vt(ldvt,*)
    integer(kind=ilp), intent(in) :: ldvt
    complex(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    real(kind=dp), intent(out) :: rwork(*)
    integer(kind=ilp), intent(out) :: iwork(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_zgesvd(jobu, jobvt, m, n, a, lda, s, u, ldu, vt, ldvt, work, lwork, rwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: jobu
    character(len=1), intent(in) :: jobvt
    integer(kind=ilp), intent(in) :: m
    integer(kind=ilp), intent(in) :: n
    complex(kind=dp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    real(kind=dp), intent(out) :: s(*)
    complex(kind=dp), intent(out) :: u(ldu,*)
    integer(kind=ilp), intent(in) :: ldu
    complex(kind=dp), intent(out) :: vt(ldvt,*)
    integer(kind=ilp), intent(in) :: ldvt
    complex(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    real(kind=dp), intent(out) :: rwork(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_zgesvdq(joba, jobp, jobr, jobu, jobv, m, n, a, lda, s, u, ldu, v, ldv, numrank, iwork, liwork, cwork, lcwork, rwork, lrwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: joba
    character(len=1), intent(in) :: jobp
    character(len=1), intent(in) :: jobr
    character(len=1), intent(in) :: jobu
    character(len=1), intent(in) :: jobv
    integer(kind=ilp), intent(in) :: m
    integer(kind=ilp), intent(in) :: n
    complex(kind=dp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    real(kind=dp), intent(out) :: s(*)
    complex(kind=dp), intent(out) :: u(ldu,*)
    integer(kind=ilp), intent(in) :: ldu
    complex(kind=dp), intent(out) :: v(ldv,*)
    integer(kind=ilp), intent(in) :: ldv
    integer(kind=ilp), intent(out) :: numrank
    integer(kind=ilp), intent(out) :: iwork(*)
    integer(kind=ilp), intent(in) :: liwork
    complex(kind=dp), intent(out) :: cwork(*)
    integer(kind=ilp), intent(inout) :: lcwork
    real(kind=dp), intent(out) :: rwork(*)
    integer(kind=ilp), intent(in) :: lrwork
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_zgesvj(joba, jobu, jobv, m, n, a, lda, sva, mv, v, ldv, cwork, lwork, rwork, lrwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: joba
    character(len=1), intent(in) :: jobu
    character(len=1), intent(in) :: jobv
    integer(kind=ilp), intent(in) :: m
    integer(kind=ilp), intent(in) :: n
    complex(kind=dp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    real(kind=dp), intent(out) :: sva(n)
    integer(kind=ilp), intent(in) :: mv
    complex(kind=dp), intent(inout) :: v(ldv,*)
    integer(kind=ilp), intent(in) :: ldv
    complex(kind=dp), intent(inout) :: cwork(lwork)
    integer(kind=ilp), intent(in) :: lwork
    real(kind=dp), intent(inout) :: rwork(lrwork)
    integer(kind=ilp), intent(in) :: lrwork
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_zgetsls(trans, m, n, nrhs, a, lda, b, ldb, work, lwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: trans
    integer(kind=ilp), intent(in) :: m
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: nrhs
    complex(kind=dp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    complex(kind=dp), intent(inout) :: b(ldb,*)
    integer(kind=ilp), intent(in) :: ldb
    complex(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_zggbak(job, side, n, ilo, ihi, lscale, rscale, m, v, ldv, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: job
    character(len=1), intent(in) :: side
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: ilo
    integer(kind=ilp), intent(in) :: ihi
    real(kind=dp), intent(in) :: lscale(*)
    real(kind=dp), intent(in) :: rscale(*)
    integer(kind=ilp), intent(in) :: m
    complex(kind=dp), intent(inout) :: v(ldv,*)
    integer(kind=ilp), intent(in) :: ldv
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_zggbal(job, n, a, lda, b, ldb, ilo, ihi, lscale, rscale, work, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: job
    integer(kind=ilp), intent(in) :: n
    complex(kind=dp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    complex(kind=dp), intent(inout) :: b(ldb,*)
    integer(kind=ilp), intent(in) :: ldb
    integer(kind=ilp), intent(out) :: ilo
    integer(kind=ilp), intent(out) :: ihi
    real(kind=dp), intent(out) :: lscale(*)
    real(kind=dp), intent(out) :: rscale(*)
    real(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_zgges(jobvsl, jobvsr, sort, selctg, n, a, lda, b, ldb, sdim, alpha, beta, vsl, ldvsl, vsr, ldvsr, work, lwork, rwork, bwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: jobvsl
    character(len=1), intent(in) :: jobvsr
    character(len=1), intent(in) :: sort
    procedure(stdlib_selctg_z) :: selctg
    integer(kind=ilp), intent(in) :: n
    complex(kind=dp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    complex(kind=dp), intent(inout) :: b(ldb,*)
    integer(kind=ilp), intent(in) :: ldb
    integer(kind=ilp), intent(out) :: sdim
    complex(kind=dp), intent(out) :: alpha(*)
    complex(kind=dp), intent(out) :: beta(*)
    complex(kind=dp), intent(out) :: vsl(ldvsl,*)
    integer(kind=ilp), intent(in) :: ldvsl
    complex(kind=dp), intent(out) :: vsr(ldvsr,*)
    integer(kind=ilp), intent(in) :: ldvsr
    complex(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    real(kind=dp), intent(out) :: rwork(*)
    logical(kind=lk), intent(out) :: bwork(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_zgges3(jobvsl, jobvsr, sort, selctg, n, a, lda, b, ldb, sdim, alpha, beta, vsl, ldvsl, vsr, ldvsr, work, lwork, rwork, bwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: jobvsl
    character(len=1), intent(in) :: jobvsr
    character(len=1), intent(in) :: sort
    procedure(stdlib_selctg_z) :: selctg
    integer(kind=ilp), intent(in) :: n
    complex(kind=dp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    complex(kind=dp), intent(inout) :: b(ldb,*)
    integer(kind=ilp), intent(in) :: ldb
    integer(kind=ilp), intent(out) :: sdim
    complex(kind=dp), intent(out) :: alpha(*)
    complex(kind=dp), intent(out) :: beta(*)
    complex(kind=dp), intent(out) :: vsl(ldvsl,*)
    integer(kind=ilp), intent(in) :: ldvsl
    complex(kind=dp), intent(out) :: vsr(ldvsr,*)
    integer(kind=ilp), intent(in) :: ldvsr
    complex(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    real(kind=dp), intent(out) :: rwork(*)
    logical(kind=lk), intent(out) :: bwork(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_zggesx(jobvsl, jobvsr, sort, selctg, sense, n, a, lda, b, ldb, sdim, alpha, beta, vsl, ldvsl, vsr, ldvsr, rconde, rcondv, work, lwork, rwork, iwork, liwork, bwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: jobvsl
    character(len=1), intent(in) :: jobvsr
    character(len=1), intent(in) :: sort
    procedure(stdlib_selctg_z) :: selctg
    character(len=1), intent(in) :: sense
    integer(kind=ilp), intent(in) :: n
    complex(kind=dp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    complex(kind=dp), intent(inout) :: b(ldb,*)
    integer(kind=ilp), intent(in) :: ldb
    integer(kind=ilp), intent(out) :: sdim
    complex(kind=dp), intent(out) :: alpha(*)
    complex(kind=dp), intent(out) :: beta(*)
    complex(kind=dp), intent(out) :: vsl(ldvsl,*)
    integer(kind=ilp), intent(in) :: ldvsl
    complex(kind=dp), intent(out) :: vsr(ldvsr,*)
    integer(kind=ilp), intent(in) :: ldvsr
    real(kind=dp), intent(out) :: rconde(2_ilp)
    real(kind=dp), intent(out) :: rcondv(2_ilp)
    complex(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    real(kind=dp), intent(out) :: rwork(*)
    integer(kind=ilp), intent(out) :: iwork(*)
    integer(kind=ilp), intent(in) :: liwork
    logical(kind=lk), intent(out) :: bwork(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_zggev(jobvl, jobvr, n, a, lda, b, ldb, alpha, beta, vl, ldvl, vr, ldvr, work, lwork, rwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: jobvl
    character(len=1), intent(in) :: jobvr
    integer(kind=ilp), intent(in) :: n
    complex(kind=dp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    complex(kind=dp), intent(inout) :: b(ldb,*)
    integer(kind=ilp), intent(in) :: ldb
    complex(kind=dp), intent(out) :: alpha(*)
    complex(kind=dp), intent(out) :: beta(*)
    complex(kind=dp), intent(out) :: vl(ldvl,*)
    integer(kind=ilp), intent(in) :: ldvl
    complex(kind=dp), intent(out) :: vr(ldvr,*)
    integer(kind=ilp), intent(in) :: ldvr
    complex(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    real(kind=dp), intent(out) :: rwork(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_zggev3(jobvl, jobvr, n, a, lda, b, ldb, alpha, beta, vl, ldvl, vr, ldvr, work, lwork, rwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: jobvl
    character(len=1), intent(in) :: jobvr
    integer(kind=ilp), intent(in) :: n
    complex(kind=dp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    complex(kind=dp), intent(inout) :: b(ldb,*)
    integer(kind=ilp), intent(in) :: ldb
    complex(kind=dp), intent(out) :: alpha(*)
    complex(kind=dp), intent(out) :: beta(*)
    complex(kind=dp), intent(out) :: vl(ldvl,*)
    integer(kind=ilp), intent(in) :: ldvl
    complex(kind=dp), intent(out) :: vr(ldvr,*)
    integer(kind=ilp), intent(in) :: ldvr
    complex(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    real(kind=dp), intent(out) :: rwork(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_zggevx(balanc, jobvl, jobvr, sense, n, a, lda, b, ldb, alpha, beta, vl, ldvl, vr, ldvr, ilo, ihi, lscale, rscale, abnrm, bbnrm, rconde, rcondv, work, lwork, rwork, iwork, bwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: balanc
    character(len=1), intent(in) :: jobvl
    character(len=1), intent(in) :: jobvr
    character(len=1), intent(in) :: sense
    integer(kind=ilp), intent(in) :: n
    complex(kind=dp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    complex(kind=dp), intent(inout) :: b(ldb,*)
    integer(kind=ilp), intent(in) :: ldb
    complex(kind=dp), intent(out) :: alpha(*)
    complex(kind=dp), intent(out) :: beta(*)
    complex(kind=dp), intent(out) :: vl(ldvl,*)
    integer(kind=ilp), intent(in) :: ldvl
    complex(kind=dp), intent(out) :: vr(ldvr,*)
    integer(kind=ilp), intent(in) :: ldvr
    integer(kind=ilp), intent(out) :: ilo
    integer(kind=ilp), intent(out) :: ihi
    real(kind=dp), intent(out) :: lscale(*)
    real(kind=dp), intent(out) :: rscale(*)
    real(kind=dp), intent(out) :: abnrm
    real(kind=dp), intent(out) :: bbnrm
    real(kind=dp), intent(out) :: rconde(*)
    real(kind=dp), intent(out) :: rcondv(*)
    complex(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    real(kind=dp), intent(out) :: rwork(*)
    integer(kind=ilp), intent(out) :: iwork(*)
    logical(kind=lk), intent(out) :: bwork(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_zggglm(n, m, p, a, lda, b, ldb, d, x, y, work, lwork, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: m
    integer(kind=ilp), intent(in) :: p
    complex(kind=dp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    complex(kind=dp), intent(inout) :: b(ldb,*)
    integer(kind=ilp), intent(in) :: ldb
    complex(kind=dp), intent(inout) :: d(*)
    complex(kind=dp), intent(out) :: x(*)
    complex(kind=dp), intent(out) :: y(*)
    complex(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_zgghd3(compq, compz, n, ilo, ihi, a, lda, b, ldb, q, ldq, z, ldz, work, lwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: compq
    character(len=1), intent(in) :: compz
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: ilo
    integer(kind=ilp), intent(in) :: ihi
    complex(kind=dp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    complex(kind=dp), intent(inout) :: b(ldb,*)
    integer(kind=ilp), intent(in) :: ldb
    complex(kind=dp), intent(inout) :: q(ldq,*)
    integer(kind=ilp), intent(in) :: ldq
    complex(kind=dp), intent(inout) :: z(ldz,*)
    integer(kind=ilp), intent(in) :: ldz
    complex(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_zgghrd(compq, compz, n, ilo, ihi, a, lda, b, ldb, q, ldq, z, ldz, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: compq
    character(len=1), intent(in) :: compz
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: ilo
    integer(kind=ilp), intent(in) :: ihi
    complex(kind=dp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    complex(kind=dp), intent(inout) :: b(ldb,*)
    integer(kind=ilp), intent(in) :: ldb
    complex(kind=dp), intent(inout) :: q(ldq,*)
    integer(kind=ilp), intent(in) :: ldq
    complex(kind=dp), intent(inout) :: z(ldz,*)
    integer(kind=ilp), intent(in) :: ldz
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_zgglse(m, n, p, a, lda, b, ldb, c, d, x, work, lwork, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: m
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: p
    complex(kind=dp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    complex(kind=dp), intent(inout) :: b(ldb,*)
    integer(kind=ilp), intent(in) :: ldb
    complex(kind=dp), intent(inout) :: c(*)
    complex(kind=dp), intent(inout) :: d(*)
    complex(kind=dp), intent(out) :: x(*)
    complex(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_zgsvj0(jobv, m, n, a, lda, d, sva, mv, v, ldv, eps, sfmin, tol, nsweep, work, lwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: jobv
    integer(kind=ilp), intent(in) :: m
    integer(kind=ilp), intent(in) :: n
    complex(kind=dp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    complex(kind=dp), intent(inout) :: d(n)
    real(kind=dp), intent(inout) :: sva(n)
    integer(kind=ilp), intent(in) :: mv
    complex(kind=dp), intent(inout) :: v(ldv,*)
    integer(kind=ilp), intent(in) :: ldv
    real(kind=dp), intent(in) :: eps
    real(kind=dp), intent(in) :: sfmin
    real(kind=dp), intent(in) :: tol
    integer(kind=ilp), intent(in) :: nsweep
    complex(kind=dp), intent(out) :: work(lwork)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_zgsvj1(jobv, m, n, n1, a, lda, d, sva, mv, v, ldv, eps, sfmin, tol, nsweep, work, lwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: jobv
    integer(kind=ilp), intent(in) :: m
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: n1
    complex(kind=dp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    complex(kind=dp), intent(inout) :: d(n)
    real(kind=dp), intent(inout) :: sva(n)
    integer(kind=ilp), intent(in) :: mv
    complex(kind=dp), intent(inout) :: v(ldv,*)
    integer(kind=ilp), intent(in) :: ldv
    real(kind=dp), intent(in) :: eps
    real(kind=dp), intent(in) :: sfmin
    real(kind=dp), intent(in) :: tol
    integer(kind=ilp), intent(in) :: nsweep
    complex(kind=dp), intent(out) :: work(lwork)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_zhb2st_kernels(uplo, wantz, ttype, st, ed, sweep, n, nb, ib, a, lda, v, tau, ldvt, work)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: uplo
    logical(kind=lk), intent(in) :: wantz
    integer(kind=ilp), intent(in) :: ttype
    integer(kind=ilp), intent(in) :: st
    integer(kind=ilp), intent(in) :: ed
    integer(kind=ilp), intent(in) :: sweep
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: nb
    integer(kind=ilp), intent(in) :: ib
    complex(kind=dp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    complex(kind=dp), intent(out) :: v(*)
    complex(kind=dp), intent(out) :: tau(*)
    integer(kind=ilp), intent(in) :: ldvt
    complex(kind=dp), intent(out) :: work(*)

interface

  • public module subroutine stdlib_zhbev(jobz, uplo, n, kd, ab, ldab, w, z, ldz, work, rwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: jobz
    character(len=1), intent(in) :: uplo
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: kd
    complex(kind=dp), intent(inout) :: ab(ldab,*)
    integer(kind=ilp), intent(in) :: ldab
    real(kind=dp), intent(out) :: w(*)
    complex(kind=dp), intent(out) :: z(ldz,*)
    integer(kind=ilp), intent(in) :: ldz
    complex(kind=dp), intent(out) :: work(*)
    real(kind=dp), intent(out) :: rwork(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_zhbevd(jobz, uplo, n, kd, ab, ldab, w, z, ldz, work, lwork, rwork, lrwork, iwork, liwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: jobz
    character(len=1), intent(in) :: uplo
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: kd
    complex(kind=dp), intent(inout) :: ab(ldab,*)
    integer(kind=ilp), intent(in) :: ldab
    real(kind=dp), intent(out) :: w(*)
    complex(kind=dp), intent(out) :: z(ldz,*)
    integer(kind=ilp), intent(in) :: ldz
    complex(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    real(kind=dp), intent(out) :: rwork(*)
    integer(kind=ilp), intent(in) :: lrwork
    integer(kind=ilp), intent(out) :: iwork(*)
    integer(kind=ilp), intent(in) :: liwork
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_zhbevx(jobz, range, uplo, n, kd, ab, ldab, q, ldq, vl, vu, il, iu, abstol, m, w, z, ldz, work, rwork, iwork, ifail, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: jobz
    character(len=1), intent(in) :: range
    character(len=1), intent(in) :: uplo
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: kd
    complex(kind=dp), intent(inout) :: ab(ldab,*)
    integer(kind=ilp), intent(in) :: ldab
    complex(kind=dp), intent(out) :: q(ldq,*)
    integer(kind=ilp), intent(in) :: ldq
    real(kind=dp), intent(in) :: vl
    real(kind=dp), intent(in) :: vu
    integer(kind=ilp), intent(in) :: il
    integer(kind=ilp), intent(in) :: iu
    real(kind=dp), intent(in) :: abstol
    integer(kind=ilp), intent(out) :: m
    real(kind=dp), intent(out) :: w(*)
    complex(kind=dp), intent(out) :: z(ldz,*)
    integer(kind=ilp), intent(in) :: ldz
    complex(kind=dp), intent(out) :: work(*)
    real(kind=dp), intent(out) :: rwork(*)
    integer(kind=ilp), intent(out) :: iwork(*)
    integer(kind=ilp), intent(out) :: ifail(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_zhbgst(vect, uplo, n, ka, kb, ab, ldab, bb, ldbb, x, ldx, work, rwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: vect
    character(len=1), intent(in) :: uplo
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: ka
    integer(kind=ilp), intent(in) :: kb
    complex(kind=dp), intent(inout) :: ab(ldab,*)
    integer(kind=ilp), intent(in) :: ldab
    complex(kind=dp), intent(in) :: bb(ldbb,*)
    integer(kind=ilp), intent(in) :: ldbb
    complex(kind=dp), intent(out) :: x(ldx,*)
    integer(kind=ilp), intent(in) :: ldx
    complex(kind=dp), intent(out) :: work(*)
    real(kind=dp), intent(out) :: rwork(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_zhbgv(jobz, uplo, n, ka, kb, ab, ldab, bb, ldbb, w, z, ldz, work, rwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: jobz
    character(len=1), intent(in) :: uplo
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: ka
    integer(kind=ilp), intent(in) :: kb
    complex(kind=dp), intent(inout) :: ab(ldab,*)
    integer(kind=ilp), intent(in) :: ldab
    complex(kind=dp), intent(inout) :: bb(ldbb,*)
    integer(kind=ilp), intent(in) :: ldbb
    real(kind=dp), intent(out) :: w(*)
    complex(kind=dp), intent(out) :: z(ldz,*)
    integer(kind=ilp), intent(in) :: ldz
    complex(kind=dp), intent(out) :: work(*)
    real(kind=dp), intent(out) :: rwork(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_zhbgvd(jobz, uplo, n, ka, kb, ab, ldab, bb, ldbb, w, z, ldz, work, lwork, rwork, lrwork, iwork, liwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: jobz
    character(len=1), intent(in) :: uplo
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: ka
    integer(kind=ilp), intent(in) :: kb
    complex(kind=dp), intent(inout) :: ab(ldab,*)
    integer(kind=ilp), intent(in) :: ldab
    complex(kind=dp), intent(inout) :: bb(ldbb,*)
    integer(kind=ilp), intent(in) :: ldbb
    real(kind=dp), intent(out) :: w(*)
    complex(kind=dp), intent(out) :: z(ldz,*)
    integer(kind=ilp), intent(in) :: ldz
    complex(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    real(kind=dp), intent(out) :: rwork(*)
    integer(kind=ilp), intent(in) :: lrwork
    integer(kind=ilp), intent(out) :: iwork(*)
    integer(kind=ilp), intent(in) :: liwork
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_zhbgvx(jobz, range, uplo, n, ka, kb, ab, ldab, bb, ldbb, q, ldq, vl, vu, il, iu, abstol, m, w, z, ldz, work, rwork, iwork, ifail, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: jobz
    character(len=1), intent(in) :: range
    character(len=1), intent(in) :: uplo
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: ka
    integer(kind=ilp), intent(in) :: kb
    complex(kind=dp), intent(inout) :: ab(ldab,*)
    integer(kind=ilp), intent(in) :: ldab
    complex(kind=dp), intent(inout) :: bb(ldbb,*)
    integer(kind=ilp), intent(in) :: ldbb
    complex(kind=dp), intent(out) :: q(ldq,*)
    integer(kind=ilp), intent(in) :: ldq
    real(kind=dp), intent(in) :: vl
    real(kind=dp), intent(in) :: vu
    integer(kind=ilp), intent(in) :: il
    integer(kind=ilp), intent(in) :: iu
    real(kind=dp), intent(in) :: abstol
    integer(kind=ilp), intent(out) :: m
    real(kind=dp), intent(out) :: w(*)
    complex(kind=dp), intent(out) :: z(ldz,*)
    integer(kind=ilp), intent(in) :: ldz
    complex(kind=dp), intent(out) :: work(*)
    real(kind=dp), intent(out) :: rwork(*)
    integer(kind=ilp), intent(out) :: iwork(*)
    integer(kind=ilp), intent(out) :: ifail(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_zhbtrd(vect, uplo, n, kd, ab, ldab, d, e, q, ldq, work, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: vect
    character(len=1), intent(in) :: uplo
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: kd
    complex(kind=dp), intent(inout) :: ab(ldab,*)
    integer(kind=ilp), intent(in) :: ldab
    real(kind=dp), intent(out) :: d(*)
    real(kind=dp), intent(out) :: e(*)
    complex(kind=dp), intent(inout) :: q(ldq,*)
    integer(kind=ilp), intent(in) :: ldq
    complex(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_zheev(jobz, uplo, n, a, lda, w, work, lwork, rwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: jobz
    character(len=1), intent(in) :: uplo
    integer(kind=ilp), intent(in) :: n
    complex(kind=dp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    real(kind=dp), intent(out) :: w(*)
    complex(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    real(kind=dp), intent(out) :: rwork(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_zheevd(jobz, uplo, n, a, lda, w, work, lwork, rwork, lrwork, iwork, liwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: jobz
    character(len=1), intent(in) :: uplo
    integer(kind=ilp), intent(in) :: n
    complex(kind=dp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    real(kind=dp), intent(out) :: w(*)
    complex(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    real(kind=dp), intent(out) :: rwork(*)
    integer(kind=ilp), intent(in) :: lrwork
    integer(kind=ilp), intent(out) :: iwork(*)
    integer(kind=ilp), intent(in) :: liwork
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_zheevr(jobz, range, uplo, n, a, lda, vl, vu, il, iu, abstol, m, w, z, ldz, isuppz, work, lwork, rwork, lrwork, iwork, liwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: jobz
    character(len=1), intent(in) :: range
    character(len=1), intent(in) :: uplo
    integer(kind=ilp), intent(in) :: n
    complex(kind=dp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    real(kind=dp), intent(in) :: vl
    real(kind=dp), intent(in) :: vu
    integer(kind=ilp), intent(in) :: il
    integer(kind=ilp), intent(in) :: iu
    real(kind=dp), intent(in) :: abstol
    integer(kind=ilp), intent(out) :: m
    real(kind=dp), intent(out) :: w(*)
    complex(kind=dp), intent(out) :: z(ldz,*)
    integer(kind=ilp), intent(in) :: ldz
    integer(kind=ilp), intent(out) :: isuppz(*)
    complex(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    real(kind=dp), intent(out) :: rwork(*)
    integer(kind=ilp), intent(in) :: lrwork
    integer(kind=ilp), intent(out) :: iwork(*)
    integer(kind=ilp), intent(in) :: liwork
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_zheevx(jobz, range, uplo, n, a, lda, vl, vu, il, iu, abstol, m, w, z, ldz, work, lwork, rwork, iwork, ifail, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: jobz
    character(len=1), intent(in) :: range
    character(len=1), intent(in) :: uplo
    integer(kind=ilp), intent(in) :: n
    complex(kind=dp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    real(kind=dp), intent(in) :: vl
    real(kind=dp), intent(in) :: vu
    integer(kind=ilp), intent(in) :: il
    integer(kind=ilp), intent(in) :: iu
    real(kind=dp), intent(in) :: abstol
    integer(kind=ilp), intent(out) :: m
    real(kind=dp), intent(out) :: w(*)
    complex(kind=dp), intent(out) :: z(ldz,*)
    integer(kind=ilp), intent(in) :: ldz
    complex(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    real(kind=dp), intent(out) :: rwork(*)
    integer(kind=ilp), intent(out) :: iwork(*)
    integer(kind=ilp), intent(out) :: ifail(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_zhegs2(itype, uplo, n, a, lda, b, ldb, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: itype
    character(len=1), intent(in) :: uplo
    integer(kind=ilp), intent(in) :: n
    complex(kind=dp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    complex(kind=dp), intent(inout) :: b(ldb,*)
    integer(kind=ilp), intent(in) :: ldb
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_zhegst(itype, uplo, n, a, lda, b, ldb, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: itype
    character(len=1), intent(in) :: uplo
    integer(kind=ilp), intent(in) :: n
    complex(kind=dp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    complex(kind=dp), intent(inout) :: b(ldb,*)
    integer(kind=ilp), intent(in) :: ldb
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_zhegv(itype, jobz, uplo, n, a, lda, b, ldb, w, work, lwork, rwork, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: itype
    character(len=1), intent(in) :: jobz
    character(len=1), intent(in) :: uplo
    integer(kind=ilp), intent(in) :: n
    complex(kind=dp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    complex(kind=dp), intent(inout) :: b(ldb,*)
    integer(kind=ilp), intent(in) :: ldb
    real(kind=dp), intent(out) :: w(*)
    complex(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    real(kind=dp), intent(out) :: rwork(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_zhegvd(itype, jobz, uplo, n, a, lda, b, ldb, w, work, lwork, rwork, lrwork, iwork, liwork, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: itype
    character(len=1), intent(in) :: jobz
    character(len=1), intent(in) :: uplo
    integer(kind=ilp), intent(in) :: n
    complex(kind=dp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    complex(kind=dp), intent(inout) :: b(ldb,*)
    integer(kind=ilp), intent(in) :: ldb
    real(kind=dp), intent(out) :: w(*)
    complex(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    real(kind=dp), intent(out) :: rwork(*)
    integer(kind=ilp), intent(in) :: lrwork
    integer(kind=ilp), intent(out) :: iwork(*)
    integer(kind=ilp), intent(in) :: liwork
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_zhegvx(itype, jobz, range, uplo, n, a, lda, b, ldb, vl, vu, il, iu, abstol, m, w, z, ldz, work, lwork, rwork, iwork, ifail, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: itype
    character(len=1), intent(in) :: jobz
    character(len=1), intent(in) :: range
    character(len=1), intent(in) :: uplo
    integer(kind=ilp), intent(in) :: n
    complex(kind=dp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    complex(kind=dp), intent(inout) :: b(ldb,*)
    integer(kind=ilp), intent(in) :: ldb
    real(kind=dp), intent(in) :: vl
    real(kind=dp), intent(in) :: vu
    integer(kind=ilp), intent(in) :: il
    integer(kind=ilp), intent(in) :: iu
    real(kind=dp), intent(in) :: abstol
    integer(kind=ilp), intent(out) :: m
    real(kind=dp), intent(out) :: w(*)
    complex(kind=dp), intent(out) :: z(ldz,*)
    integer(kind=ilp), intent(in) :: ldz
    complex(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    real(kind=dp), intent(out) :: rwork(*)
    integer(kind=ilp), intent(out) :: iwork(*)
    integer(kind=ilp), intent(out) :: ifail(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_zhetd2(uplo, n, a, lda, d, e, tau, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: uplo
    integer(kind=ilp), intent(in) :: n
    complex(kind=dp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    real(kind=dp), intent(out) :: d(*)
    real(kind=dp), intent(out) :: e(*)
    complex(kind=dp), intent(out) :: tau(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_zhetrd(uplo, n, a, lda, d, e, tau, work, lwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: uplo
    integer(kind=ilp), intent(in) :: n
    complex(kind=dp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    real(kind=dp), intent(out) :: d(*)
    real(kind=dp), intent(out) :: e(*)
    complex(kind=dp), intent(out) :: tau(*)
    complex(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_zhetrd_hb2st(stage1, vect, uplo, n, kd, ab, ldab, d, e, hous, lhous, work, lwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: stage1
    character(len=1), intent(in) :: vect
    character(len=1), intent(in) :: uplo
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: kd
    complex(kind=dp), intent(inout) :: ab(ldab,*)
    integer(kind=ilp), intent(in) :: ldab
    real(kind=dp), intent(out) :: d(*)
    real(kind=dp), intent(out) :: e(*)
    complex(kind=dp), intent(out) :: hous(*)
    integer(kind=ilp), intent(in) :: lhous
    complex(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_zhetrd_he2hb(uplo, n, kd, a, lda, ab, ldab, tau, work, lwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: uplo
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: kd
    complex(kind=dp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    complex(kind=dp), intent(out) :: ab(ldab,*)
    integer(kind=ilp), intent(in) :: ldab
    complex(kind=dp), intent(out) :: tau(*)
    complex(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_zhgeqz(job, compq, compz, n, ilo, ihi, h, ldh, t, ldt, alpha, beta, q, ldq, z, ldz, work, lwork, rwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: job
    character(len=1), intent(in) :: compq
    character(len=1), intent(in) :: compz
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: ilo
    integer(kind=ilp), intent(in) :: ihi
    complex(kind=dp), intent(inout) :: h(ldh,*)
    integer(kind=ilp), intent(in) :: ldh
    complex(kind=dp), intent(inout) :: t(ldt,*)
    integer(kind=ilp), intent(in) :: ldt
    complex(kind=dp), intent(out) :: alpha(*)
    complex(kind=dp), intent(out) :: beta(*)
    complex(kind=dp), intent(inout) :: q(ldq,*)
    integer(kind=ilp), intent(in) :: ldq
    complex(kind=dp), intent(inout) :: z(ldz,*)
    integer(kind=ilp), intent(in) :: ldz
    complex(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    real(kind=dp), intent(out) :: rwork(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_zhpev(jobz, uplo, n, ap, w, z, ldz, work, rwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: jobz
    character(len=1), intent(in) :: uplo
    integer(kind=ilp), intent(in) :: n
    complex(kind=dp), intent(inout) :: ap(*)
    real(kind=dp), intent(out) :: w(*)
    complex(kind=dp), intent(out) :: z(ldz,*)
    integer(kind=ilp), intent(in) :: ldz
    complex(kind=dp), intent(out) :: work(*)
    real(kind=dp), intent(out) :: rwork(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_zhpevd(jobz, uplo, n, ap, w, z, ldz, work, lwork, rwork, lrwork, iwork, liwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: jobz
    character(len=1), intent(in) :: uplo
    integer(kind=ilp), intent(in) :: n
    complex(kind=dp), intent(inout) :: ap(*)
    real(kind=dp), intent(out) :: w(*)
    complex(kind=dp), intent(out) :: z(ldz,*)
    integer(kind=ilp), intent(in) :: ldz
    complex(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    real(kind=dp), intent(out) :: rwork(*)
    integer(kind=ilp), intent(in) :: lrwork
    integer(kind=ilp), intent(out) :: iwork(*)
    integer(kind=ilp), intent(in) :: liwork
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_zhpevx(jobz, range, uplo, n, ap, vl, vu, il, iu, abstol, m, w, z, ldz, work, rwork, iwork, ifail, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: jobz
    character(len=1), intent(in) :: range
    character(len=1), intent(in) :: uplo
    integer(kind=ilp), intent(in) :: n
    complex(kind=dp), intent(inout) :: ap(*)
    real(kind=dp), intent(in) :: vl
    real(kind=dp), intent(in) :: vu
    integer(kind=ilp), intent(in) :: il
    integer(kind=ilp), intent(in) :: iu
    real(kind=dp), intent(in) :: abstol
    integer(kind=ilp), intent(out) :: m
    real(kind=dp), intent(out) :: w(*)
    complex(kind=dp), intent(out) :: z(ldz,*)
    integer(kind=ilp), intent(in) :: ldz
    complex(kind=dp), intent(out) :: work(*)
    real(kind=dp), intent(out) :: rwork(*)
    integer(kind=ilp), intent(out) :: iwork(*)
    integer(kind=ilp), intent(out) :: ifail(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_zhpgst(itype, uplo, n, ap, bp, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: itype
    character(len=1), intent(in) :: uplo
    integer(kind=ilp), intent(in) :: n
    complex(kind=dp), intent(inout) :: ap(*)
    complex(kind=dp), intent(in) :: bp(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_zhpgv(itype, jobz, uplo, n, ap, bp, w, z, ldz, work, rwork, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: itype
    character(len=1), intent(in) :: jobz
    character(len=1), intent(in) :: uplo
    integer(kind=ilp), intent(in) :: n
    complex(kind=dp), intent(inout) :: ap(*)
    complex(kind=dp), intent(inout) :: bp(*)
    real(kind=dp), intent(out) :: w(*)
    complex(kind=dp), intent(out) :: z(ldz,*)
    integer(kind=ilp), intent(in) :: ldz
    complex(kind=dp), intent(out) :: work(*)
    real(kind=dp), intent(out) :: rwork(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_zhpgvd(itype, jobz, uplo, n, ap, bp, w, z, ldz, work, lwork, rwork, lrwork, iwork, liwork, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: itype
    character(len=1), intent(in) :: jobz
    character(len=1), intent(in) :: uplo
    integer(kind=ilp), intent(in) :: n
    complex(kind=dp), intent(inout) :: ap(*)
    complex(kind=dp), intent(inout) :: bp(*)
    real(kind=dp), intent(out) :: w(*)
    complex(kind=dp), intent(out) :: z(ldz,*)
    integer(kind=ilp), intent(in) :: ldz
    complex(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    real(kind=dp), intent(out) :: rwork(*)
    integer(kind=ilp), intent(in) :: lrwork
    integer(kind=ilp), intent(out) :: iwork(*)
    integer(kind=ilp), intent(in) :: liwork
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_zhpgvx(itype, jobz, range, uplo, n, ap, bp, vl, vu, il, iu, abstol, m, w, z, ldz, work, rwork, iwork, ifail, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: itype
    character(len=1), intent(in) :: jobz
    character(len=1), intent(in) :: range
    character(len=1), intent(in) :: uplo
    integer(kind=ilp), intent(in) :: n
    complex(kind=dp), intent(inout) :: ap(*)
    complex(kind=dp), intent(inout) :: bp(*)
    real(kind=dp), intent(in) :: vl
    real(kind=dp), intent(in) :: vu
    integer(kind=ilp), intent(in) :: il
    integer(kind=ilp), intent(in) :: iu
    real(kind=dp), intent(in) :: abstol
    integer(kind=ilp), intent(out) :: m
    real(kind=dp), intent(out) :: w(*)
    complex(kind=dp), intent(out) :: z(ldz,*)
    integer(kind=ilp), intent(in) :: ldz
    complex(kind=dp), intent(out) :: work(*)
    real(kind=dp), intent(out) :: rwork(*)
    integer(kind=ilp), intent(out) :: iwork(*)
    integer(kind=ilp), intent(out) :: ifail(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_zhptrd(uplo, n, ap, d, e, tau, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: uplo
    integer(kind=ilp), intent(in) :: n
    complex(kind=dp), intent(inout) :: ap(*)
    real(kind=dp), intent(out) :: d(*)
    real(kind=dp), intent(out) :: e(*)
    complex(kind=dp), intent(out) :: tau(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_zhsein(side, eigsrc, initv, select, n, h, ldh, w, vl, ldvl, vr, ldvr, mm, m, work, rwork, ifaill, ifailr, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: side
    character(len=1), intent(in) :: eigsrc
    character(len=1), intent(in) :: initv
    logical(kind=lk), intent(in) :: select(*)
    integer(kind=ilp), intent(in) :: n
    complex(kind=dp), intent(in) :: h(ldh,*)
    integer(kind=ilp), intent(in) :: ldh
    complex(kind=dp), intent(inout) :: w(*)
    complex(kind=dp), intent(inout) :: vl(ldvl,*)
    integer(kind=ilp), intent(in) :: ldvl
    complex(kind=dp), intent(inout) :: vr(ldvr,*)
    integer(kind=ilp), intent(in) :: ldvr
    integer(kind=ilp), intent(in) :: mm
    integer(kind=ilp), intent(out) :: m
    complex(kind=dp), intent(out) :: work(*)
    real(kind=dp), intent(out) :: rwork(*)
    integer(kind=ilp), intent(out) :: ifaill(*)
    integer(kind=ilp), intent(out) :: ifailr(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_zhseqr(job, compz, n, ilo, ihi, h, ldh, w, z, ldz, work, lwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: job
    character(len=1), intent(in) :: compz
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: ilo
    integer(kind=ilp), intent(in) :: ihi
    complex(kind=dp), intent(inout) :: h(ldh,*)
    integer(kind=ilp), intent(in) :: ldh
    complex(kind=dp), intent(out) :: w(*)
    complex(kind=dp), intent(inout) :: z(ldz,*)
    integer(kind=ilp), intent(in) :: ldz
    complex(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_zlabrd(m, n, nb, a, lda, d, e, tauq, taup, x, ldx, y, ldy)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: m
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: nb
    complex(kind=dp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    real(kind=dp), intent(out) :: d(*)
    real(kind=dp), intent(out) :: e(*)
    complex(kind=dp), intent(out) :: tauq(*)
    complex(kind=dp), intent(out) :: taup(*)
    complex(kind=dp), intent(out) :: x(ldx,*)
    integer(kind=ilp), intent(in) :: ldx
    complex(kind=dp), intent(out) :: y(ldy,*)
    integer(kind=ilp), intent(in) :: ldy

interface

  • public pure module subroutine stdlib_zlaed0(qsiz, n, d, e, q, ldq, qstore, ldqs, rwork, iwork, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: qsiz
    integer(kind=ilp), intent(in) :: n
    real(kind=dp), intent(inout) :: d(*)
    real(kind=dp), intent(inout) :: e(*)
    complex(kind=dp), intent(inout) :: q(ldq,*)
    integer(kind=ilp), intent(in) :: ldq
    complex(kind=dp), intent(out) :: qstore(ldqs,*)
    integer(kind=ilp), intent(in) :: ldqs
    real(kind=dp), intent(out) :: rwork(*)
    integer(kind=ilp), intent(out) :: iwork(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_zlaed7(n, cutpnt, qsiz, tlvls, curlvl, curpbm, d, q, ldq, rho, indxq, qstore, qptr, prmptr, perm, givptr, givcol, givnum, work, rwork, iwork, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: cutpnt
    integer(kind=ilp), intent(in) :: qsiz
    integer(kind=ilp), intent(in) :: tlvls
    integer(kind=ilp), intent(in) :: curlvl
    integer(kind=ilp), intent(in) :: curpbm
    real(kind=dp), intent(inout) :: d(*)
    complex(kind=dp), intent(inout) :: q(ldq,*)
    integer(kind=ilp), intent(in) :: ldq
    real(kind=dp), intent(inout) :: rho
    integer(kind=ilp), intent(out) :: indxq(*)
    real(kind=dp), intent(inout) :: qstore(*)
    integer(kind=ilp), intent(inout) :: qptr(*)
    integer(kind=ilp), intent(inout) :: prmptr(*)
    integer(kind=ilp), intent(inout) :: perm(*)
    integer(kind=ilp), intent(inout) :: givptr(*)
    integer(kind=ilp), intent(inout) :: givcol(2_ilp,*)
    real(kind=dp), intent(inout) :: givnum(2_ilp,*)
    complex(kind=dp), intent(out) :: work(*)
    real(kind=dp), intent(out) :: rwork(*)
    integer(kind=ilp), intent(out) :: iwork(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_zlaed8(k, n, qsiz, q, ldq, d, rho, cutpnt, z, dlamda, q2, ldq2, w, indxp, indx, indxq, perm, givptr, givcol, givnum, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(out) :: k
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: qsiz
    complex(kind=dp), intent(inout) :: q(ldq,*)
    integer(kind=ilp), intent(in) :: ldq
    real(kind=dp), intent(inout) :: d(*)
    real(kind=dp), intent(inout) :: rho
    integer(kind=ilp), intent(in) :: cutpnt
    real(kind=dp), intent(inout) :: z(*)
    real(kind=dp), intent(out) :: dlamda(*)
    complex(kind=dp), intent(out) :: q2(ldq2,*)
    integer(kind=ilp), intent(in) :: ldq2
    real(kind=dp), intent(out) :: w(*)
    integer(kind=ilp), intent(out) :: indxp(*)
    integer(kind=ilp), intent(out) :: indx(*)
    integer(kind=ilp), intent(inout) :: indxq(*)
    integer(kind=ilp), intent(out) :: perm(*)
    integer(kind=ilp), intent(out) :: givptr
    integer(kind=ilp), intent(out) :: givcol(2_ilp,*)
    real(kind=dp), intent(out) :: givnum(2_ilp,*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_zlaein(rightv, noinit, n, h, ldh, w, v, b, ldb, rwork, eps3, smlnum, info)

    Arguments

    Type IntentOptional Attributes Name
    logical(kind=lk), intent(in) :: rightv
    logical(kind=lk), intent(in) :: noinit
    integer(kind=ilp), intent(in) :: n
    complex(kind=dp), intent(in) :: h(ldh,*)
    integer(kind=ilp), intent(in) :: ldh
    complex(kind=dp), intent(in) :: w
    complex(kind=dp), intent(inout) :: v(*)
    complex(kind=dp), intent(out) :: b(ldb,*)
    integer(kind=ilp), intent(in) :: ldb
    real(kind=dp), intent(out) :: rwork(*)
    real(kind=dp), intent(in) :: eps3
    real(kind=dp), intent(in) :: smlnum
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_zlaesy(a, b, c, rt1, rt2, evscal, cs1, sn1)

    Arguments

    Type IntentOptional Attributes Name
    complex(kind=dp), intent(in) :: a
    complex(kind=dp), intent(in) :: b
    complex(kind=dp), intent(in) :: c
    complex(kind=dp), intent(out) :: rt1
    complex(kind=dp), intent(out) :: rt2
    complex(kind=dp), intent(out) :: evscal
    complex(kind=dp), intent(out) :: cs1
    complex(kind=dp), intent(out) :: sn1

interface

  • public pure module subroutine stdlib_zlaev2(a, b, c, rt1, rt2, cs1, sn1)

    Arguments

    Type IntentOptional Attributes Name
    complex(kind=dp), intent(in) :: a
    complex(kind=dp), intent(in) :: b
    complex(kind=dp), intent(in) :: c
    real(kind=dp), intent(out) :: rt1
    real(kind=dp), intent(out) :: rt2
    real(kind=dp), intent(out) :: cs1
    complex(kind=dp), intent(out) :: sn1

interface

  • public pure module subroutine stdlib_zlags2(upper, a1, a2, a3, b1, b2, b3, csu, snu, csv, snv, csq, snq)

    Arguments

    Type IntentOptional Attributes Name
    logical(kind=lk), intent(in) :: upper
    real(kind=dp), intent(in) :: a1
    complex(kind=dp), intent(in) :: a2
    real(kind=dp), intent(in) :: a3
    real(kind=dp), intent(in) :: b1
    complex(kind=dp), intent(in) :: b2
    real(kind=dp), intent(in) :: b3
    real(kind=dp), intent(out) :: csu
    complex(kind=dp), intent(out) :: snu
    real(kind=dp), intent(out) :: csv
    complex(kind=dp), intent(out) :: snv
    real(kind=dp), intent(out) :: csq
    complex(kind=dp), intent(out) :: snq

interface

  • public pure module subroutine stdlib_zlahqr(wantt, wantz, n, ilo, ihi, h, ldh, w, iloz, ihiz, z, ldz, info)

    Arguments

    Type IntentOptional Attributes Name
    logical(kind=lk), intent(in) :: wantt
    logical(kind=lk), intent(in) :: wantz
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: ilo
    integer(kind=ilp), intent(in) :: ihi
    complex(kind=dp), intent(inout) :: h(ldh,*)
    integer(kind=ilp), intent(in) :: ldh
    complex(kind=dp), intent(out) :: w(*)
    integer(kind=ilp), intent(in) :: iloz
    integer(kind=ilp), intent(in) :: ihiz
    complex(kind=dp), intent(inout) :: z(ldz,*)
    integer(kind=ilp), intent(in) :: ldz
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_zlahr2(n, k, nb, a, lda, tau, t, ldt, y, ldy)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: k
    integer(kind=ilp), intent(in) :: nb
    complex(kind=dp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    complex(kind=dp), intent(out) :: tau(nb)
    complex(kind=dp), intent(out) :: t(ldt,nb)
    integer(kind=ilp), intent(in) :: ldt
    complex(kind=dp), intent(out) :: y(ldy,nb)
    integer(kind=ilp), intent(in) :: ldy

interface

  • public pure module subroutine stdlib_zlaic1(job, j, x, sest, w, gamma, sestpr, s, c)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: job
    integer(kind=ilp), intent(in) :: j
    complex(kind=dp), intent(in) :: x(j)
    real(kind=dp), intent(in) :: sest
    complex(kind=dp), intent(in) :: w(j)
    complex(kind=dp), intent(in) :: gamma
    real(kind=dp), intent(out) :: sestpr
    complex(kind=dp), intent(out) :: s
    complex(kind=dp), intent(out) :: c

interface

  • public pure module subroutine stdlib_zlals0(icompq, nl, nr, sqre, nrhs, b, ldb, bx, ldbx, perm, givptr, givcol, ldgcol, givnum, ldgnum, poles, difl, difr, z, k, c, s, rwork, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: icompq
    integer(kind=ilp), intent(in) :: nl
    integer(kind=ilp), intent(in) :: nr
    integer(kind=ilp), intent(in) :: sqre
    integer(kind=ilp), intent(in) :: nrhs
    complex(kind=dp), intent(inout) :: b(ldb,*)
    integer(kind=ilp), intent(in) :: ldb
    complex(kind=dp), intent(out) :: bx(ldbx,*)
    integer(kind=ilp), intent(in) :: ldbx
    integer(kind=ilp), intent(in) :: perm(*)
    integer(kind=ilp), intent(in) :: givptr
    integer(kind=ilp), intent(in) :: givcol(ldgcol,*)
    integer(kind=ilp), intent(in) :: ldgcol
    real(kind=dp), intent(in) :: givnum(ldgnum,*)
    integer(kind=ilp), intent(in) :: ldgnum
    real(kind=dp), intent(in) :: poles(ldgnum,*)
    real(kind=dp), intent(in) :: difl(*)
    real(kind=dp), intent(in) :: difr(ldgnum,*)
    real(kind=dp), intent(in) :: z(*)
    integer(kind=ilp), intent(in) :: k
    real(kind=dp), intent(in) :: c
    real(kind=dp), intent(in) :: s
    real(kind=dp), intent(out) :: rwork(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_zlalsa(icompq, smlsiz, n, nrhs, b, ldb, bx, ldbx, u, ldu, vt, k, difl, difr, z, poles, givptr, givcol, ldgcol, perm, givnum, c, s, rwork, iwork, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: icompq
    integer(kind=ilp), intent(in) :: smlsiz
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: nrhs
    complex(kind=dp), intent(inout) :: b(ldb,*)
    integer(kind=ilp), intent(in) :: ldb
    complex(kind=dp), intent(out) :: bx(ldbx,*)
    integer(kind=ilp), intent(in) :: ldbx
    real(kind=dp), intent(in) :: u(ldu,*)
    integer(kind=ilp), intent(in) :: ldu
    real(kind=dp), intent(in) :: vt(ldu,*)
    integer(kind=ilp), intent(in) :: k(*)
    real(kind=dp), intent(in) :: difl(ldu,*)
    real(kind=dp), intent(in) :: difr(ldu,*)
    real(kind=dp), intent(in) :: z(ldu,*)
    real(kind=dp), intent(in) :: poles(ldu,*)
    integer(kind=ilp), intent(in) :: givptr(*)
    integer(kind=ilp), intent(in) :: givcol(ldgcol,*)
    integer(kind=ilp), intent(in) :: ldgcol
    integer(kind=ilp), intent(in) :: perm(ldgcol,*)
    real(kind=dp), intent(in) :: givnum(ldu,*)
    real(kind=dp), intent(in) :: c(*)
    real(kind=dp), intent(in) :: s(*)
    real(kind=dp), intent(out) :: rwork(*)
    integer(kind=ilp), intent(out) :: iwork(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_zlalsd(uplo, smlsiz, n, nrhs, d, e, b, ldb, rcond, rank, work, rwork, iwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: uplo
    integer(kind=ilp), intent(in) :: smlsiz
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: nrhs
    real(kind=dp), intent(inout) :: d(*)
    real(kind=dp), intent(inout) :: e(*)
    complex(kind=dp), intent(inout) :: b(ldb,*)
    integer(kind=ilp), intent(in) :: ldb
    real(kind=dp), intent(in) :: rcond
    integer(kind=ilp), intent(out) :: rank
    complex(kind=dp), intent(out) :: work(*)
    real(kind=dp), intent(out) :: rwork(*)
    integer(kind=ilp), intent(out) :: iwork(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_zlapll(n, x, incx, y, incy, ssmin)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: n
    complex(kind=dp), intent(inout) :: x(*)
    integer(kind=ilp), intent(in) :: incx
    complex(kind=dp), intent(inout) :: y(*)
    integer(kind=ilp), intent(in) :: incy
    real(kind=dp), intent(out) :: ssmin

interface

  • public pure module subroutine stdlib_zlapmr(forwrd, m, n, x, ldx, k)

    Arguments

    Type IntentOptional Attributes Name
    logical(kind=lk), intent(in) :: forwrd
    integer(kind=ilp), intent(in) :: m
    integer(kind=ilp), intent(in) :: n
    complex(kind=dp), intent(inout) :: x(ldx,*)
    integer(kind=ilp), intent(in) :: ldx
    integer(kind=ilp), intent(inout) :: k(*)

interface

  • public pure module subroutine stdlib_zlapmt(forwrd, m, n, x, ldx, k)

    Arguments

    Type IntentOptional Attributes Name
    logical(kind=lk), intent(in) :: forwrd
    integer(kind=ilp), intent(in) :: m
    integer(kind=ilp), intent(in) :: n
    complex(kind=dp), intent(inout) :: x(ldx,*)
    integer(kind=ilp), intent(in) :: ldx
    integer(kind=ilp), intent(inout) :: k(*)

interface

  • public pure module subroutine stdlib_zlaqr0(wantt, wantz, n, ilo, ihi, h, ldh, w, iloz, ihiz, z, ldz, work, lwork, info)

    Arguments

    Type IntentOptional Attributes Name
    logical(kind=lk), intent(in) :: wantt
    logical(kind=lk), intent(in) :: wantz
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: ilo
    integer(kind=ilp), intent(in) :: ihi
    complex(kind=dp), intent(inout) :: h(ldh,*)
    integer(kind=ilp), intent(in) :: ldh
    complex(kind=dp), intent(out) :: w(*)
    integer(kind=ilp), intent(in) :: iloz
    integer(kind=ilp), intent(in) :: ihiz
    complex(kind=dp), intent(inout) :: z(ldz,*)
    integer(kind=ilp), intent(in) :: ldz
    complex(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_zlaqr1(n, h, ldh, s1, s2, v)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: n
    complex(kind=dp), intent(in) :: h(ldh,*)
    integer(kind=ilp), intent(in) :: ldh
    complex(kind=dp), intent(in) :: s1
    complex(kind=dp), intent(in) :: s2
    complex(kind=dp), intent(out) :: v(*)

interface

  • public pure module subroutine stdlib_zlaqr2(wantt, wantz, n, ktop, kbot, nw, h, ldh, iloz, ihiz, z, ldz, ns, nd, sh, v, ldv, nh, t, ldt, nv, wv, ldwv, work, lwork)

    Arguments

    Type IntentOptional Attributes Name
    logical(kind=lk), intent(in) :: wantt
    logical(kind=lk), intent(in) :: wantz
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: ktop
    integer(kind=ilp), intent(in) :: kbot
    integer(kind=ilp), intent(in) :: nw
    complex(kind=dp), intent(inout) :: h(ldh,*)
    integer(kind=ilp), intent(in) :: ldh
    integer(kind=ilp), intent(in) :: iloz
    integer(kind=ilp), intent(in) :: ihiz
    complex(kind=dp), intent(inout) :: z(ldz,*)
    integer(kind=ilp), intent(in) :: ldz
    integer(kind=ilp), intent(out) :: ns
    integer(kind=ilp), intent(out) :: nd
    complex(kind=dp), intent(out) :: sh(*)
    complex(kind=dp), intent(out) :: v(ldv,*)
    integer(kind=ilp), intent(in) :: ldv
    integer(kind=ilp), intent(in) :: nh
    complex(kind=dp), intent(out) :: t(ldt,*)
    integer(kind=ilp), intent(in) :: ldt
    integer(kind=ilp), intent(in) :: nv
    complex(kind=dp), intent(out) :: wv(ldwv,*)
    integer(kind=ilp), intent(in) :: ldwv
    complex(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork

interface

  • public pure module subroutine stdlib_zlaqr3(wantt, wantz, n, ktop, kbot, nw, h, ldh, iloz, ihiz, z, ldz, ns, nd, sh, v, ldv, nh, t, ldt, nv, wv, ldwv, work, lwork)

    Arguments

    Type IntentOptional Attributes Name
    logical(kind=lk), intent(in) :: wantt
    logical(kind=lk), intent(in) :: wantz
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: ktop
    integer(kind=ilp), intent(in) :: kbot
    integer(kind=ilp), intent(in) :: nw
    complex(kind=dp), intent(inout) :: h(ldh,*)
    integer(kind=ilp), intent(in) :: ldh
    integer(kind=ilp), intent(in) :: iloz
    integer(kind=ilp), intent(in) :: ihiz
    complex(kind=dp), intent(inout) :: z(ldz,*)
    integer(kind=ilp), intent(in) :: ldz
    integer(kind=ilp), intent(out) :: ns
    integer(kind=ilp), intent(out) :: nd
    complex(kind=dp), intent(out) :: sh(*)
    complex(kind=dp), intent(out) :: v(ldv,*)
    integer(kind=ilp), intent(in) :: ldv
    integer(kind=ilp), intent(in) :: nh
    complex(kind=dp), intent(out) :: t(ldt,*)
    integer(kind=ilp), intent(in) :: ldt
    integer(kind=ilp), intent(in) :: nv
    complex(kind=dp), intent(out) :: wv(ldwv,*)
    integer(kind=ilp), intent(in) :: ldwv
    complex(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork

interface

  • public pure module subroutine stdlib_zlaqr4(wantt, wantz, n, ilo, ihi, h, ldh, w, iloz, ihiz, z, ldz, work, lwork, info)

    Arguments

    Type IntentOptional Attributes Name
    logical(kind=lk), intent(in) :: wantt
    logical(kind=lk), intent(in) :: wantz
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: ilo
    integer(kind=ilp), intent(in) :: ihi
    complex(kind=dp), intent(inout) :: h(ldh,*)
    integer(kind=ilp), intent(in) :: ldh
    complex(kind=dp), intent(out) :: w(*)
    integer(kind=ilp), intent(in) :: iloz
    integer(kind=ilp), intent(in) :: ihiz
    complex(kind=dp), intent(inout) :: z(ldz,*)
    integer(kind=ilp), intent(in) :: ldz
    complex(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_zlaqr5(wantt, wantz, kacc22, n, ktop, kbot, nshfts, s, h, ldh, iloz, ihiz, z, ldz, v, ldv, u, ldu, nv, wv, ldwv, nh, wh, ldwh)

    Arguments

    Type IntentOptional Attributes Name
    logical(kind=lk), intent(in) :: wantt
    logical(kind=lk), intent(in) :: wantz
    integer(kind=ilp), intent(in) :: kacc22
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: ktop
    integer(kind=ilp), intent(in) :: kbot
    integer(kind=ilp), intent(in) :: nshfts
    complex(kind=dp), intent(inout) :: s(*)
    complex(kind=dp), intent(inout) :: h(ldh,*)
    integer(kind=ilp), intent(in) :: ldh
    integer(kind=ilp), intent(in) :: iloz
    integer(kind=ilp), intent(in) :: ihiz
    complex(kind=dp), intent(inout) :: z(ldz,*)
    integer(kind=ilp), intent(in) :: ldz
    complex(kind=dp), intent(out) :: v(ldv,*)
    integer(kind=ilp), intent(in) :: ldv
    complex(kind=dp), intent(out) :: u(ldu,*)
    integer(kind=ilp), intent(in) :: ldu
    integer(kind=ilp), intent(in) :: nv
    complex(kind=dp), intent(out) :: wv(ldwv,*)
    integer(kind=ilp), intent(in) :: ldwv
    integer(kind=ilp), intent(in) :: nh
    complex(kind=dp), intent(out) :: wh(ldwh,*)
    integer(kind=ilp), intent(in) :: ldwh

interface

  • public recursive module subroutine stdlib_zlaqz0(wants, wantq, wantz, n, ilo, ihi, a, lda, b, ldb, alpha, beta, q, ldq, z, ldz, work, lwork, rwork, rec, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: wants
    character(len=1), intent(in) :: wantq
    character(len=1), intent(in) :: wantz
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: ilo
    integer(kind=ilp), intent(in) :: ihi
    complex(kind=dp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    complex(kind=dp), intent(inout) :: b(ldb,*)
    integer(kind=ilp), intent(in) :: ldb
    complex(kind=dp), intent(inout) :: alpha(*)
    complex(kind=dp), intent(inout) :: beta(*)
    complex(kind=dp), intent(inout) :: q(ldq,*)
    integer(kind=ilp), intent(in) :: ldq
    complex(kind=dp), intent(inout) :: z(ldz,*)
    integer(kind=ilp), intent(in) :: ldz
    complex(kind=dp), intent(inout) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    real(kind=dp), intent(out) :: rwork(*)
    integer(kind=ilp), intent(in) :: rec
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_zlaqz1(ilq, ilz, k, istartm, istopm, ihi, a, lda, b, ldb, nq, qstart, q, ldq, nz, zstart, z, ldz)

    Arguments

    Type IntentOptional Attributes Name
    logical(kind=lk), intent(in) :: ilq
    logical(kind=lk), intent(in) :: ilz
    integer(kind=ilp), intent(in) :: k
    integer(kind=ilp), intent(in) :: istartm
    integer(kind=ilp), intent(in) :: istopm
    integer(kind=ilp), intent(in) :: ihi
    complex(kind=dp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    complex(kind=dp), intent(inout) :: b(ldb,*)
    integer(kind=ilp), intent(in) :: ldb
    integer(kind=ilp), intent(in) :: nq
    integer(kind=ilp), intent(in) :: qstart
    complex(kind=dp), intent(inout) :: q(ldq,*)
    integer(kind=ilp), intent(in) :: ldq
    integer(kind=ilp), intent(in) :: nz
    integer(kind=ilp), intent(in) :: zstart
    complex(kind=dp), intent(inout) :: z(ldz,*)
    integer(kind=ilp), intent(in) :: ldz

interface

  • public recursive module subroutine stdlib_zlaqz2(ilschur, ilq, ilz, n, ilo, ihi, nw, a, lda, b, ldb, q, ldq, z, ldz, ns, nd, alpha, beta, qc, ldqc, zc, ldzc, work, lwork, rwork, rec, info)

    Arguments

    Type IntentOptional Attributes Name
    logical(kind=lk), intent(in) :: ilschur
    logical(kind=lk), intent(in) :: ilq
    logical(kind=lk), intent(in) :: ilz
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: ilo
    integer(kind=ilp), intent(in) :: ihi
    integer(kind=ilp), intent(in) :: nw
    complex(kind=dp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    complex(kind=dp), intent(inout) :: b(ldb,*)
    integer(kind=ilp), intent(in) :: ldb
    complex(kind=dp), intent(inout) :: q(ldq,*)
    integer(kind=ilp), intent(in) :: ldq
    complex(kind=dp), intent(inout) :: z(ldz,*)
    integer(kind=ilp), intent(in) :: ldz
    integer(kind=ilp), intent(out) :: ns
    integer(kind=ilp), intent(out) :: nd
    complex(kind=dp), intent(inout) :: alpha(*)
    complex(kind=dp), intent(inout) :: beta(*)
    complex(kind=dp), intent(inout) :: qc(ldqc,*)
    integer(kind=ilp), intent(in) :: ldqc
    complex(kind=dp), intent(inout) :: zc(ldzc,*)
    integer(kind=ilp), intent(in) :: ldzc
    complex(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    real(kind=dp), intent(out) :: rwork(*)
    integer(kind=ilp), intent(in) :: rec
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_zlaqz3(ilschur, ilq, ilz, n, ilo, ihi, nshifts, nblock_desired, alpha, beta, a, lda, b, ldb, q, ldq, z, ldz, qc, ldqc, zc, ldzc, work, lwork, info)

    Arguments

    Type IntentOptional Attributes Name
    logical(kind=lk), intent(in) :: ilschur
    logical(kind=lk), intent(in) :: ilq
    logical(kind=lk), intent(in) :: ilz
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: ilo
    integer(kind=ilp), intent(in) :: ihi
    integer(kind=ilp), intent(in) :: nshifts
    integer(kind=ilp), intent(in) :: nblock_desired
    complex(kind=dp), intent(inout) :: alpha(*)
    complex(kind=dp), intent(inout) :: beta(*)
    complex(kind=dp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    complex(kind=dp), intent(inout) :: b(ldb,*)
    integer(kind=ilp), intent(in) :: ldb
    complex(kind=dp), intent(inout) :: q(ldq,*)
    integer(kind=ilp), intent(in) :: ldq
    complex(kind=dp), intent(inout) :: z(ldz,*)
    integer(kind=ilp), intent(in) :: ldz
    complex(kind=dp), intent(inout) :: qc(ldqc,*)
    integer(kind=ilp), intent(in) :: ldqc
    complex(kind=dp), intent(inout) :: zc(ldzc,*)
    integer(kind=ilp), intent(in) :: ldzc
    complex(kind=dp), intent(inout) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_zlar1v(n, b1, bn, lambda, d, l, ld, lld, pivmin, gaptol, z, wantnc, negcnt, ztz, mingma, r, isuppz, nrminv, resid, rqcorr, work)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: b1
    integer(kind=ilp), intent(in) :: bn
    real(kind=dp), intent(in) :: lambda
    real(kind=dp), intent(in) :: d(*)
    real(kind=dp), intent(in) :: l(*)
    real(kind=dp), intent(in) :: ld(*)
    real(kind=dp), intent(in) :: lld(*)
    real(kind=dp), intent(in) :: pivmin
    real(kind=dp), intent(in) :: gaptol
    complex(kind=dp), intent(inout) :: z(*)
    logical(kind=lk), intent(in) :: wantnc
    integer(kind=ilp), intent(out) :: negcnt
    real(kind=dp), intent(out) :: ztz
    real(kind=dp), intent(out) :: mingma
    integer(kind=ilp), intent(inout) :: r
    integer(kind=ilp), intent(out) :: isuppz(*)
    real(kind=dp), intent(out) :: nrminv
    real(kind=dp), intent(out) :: resid
    real(kind=dp), intent(out) :: rqcorr
    real(kind=dp), intent(out) :: work(*)

interface

  • public pure module subroutine stdlib_zlarrv(n, vl, vu, d, l, pivmin, isplit, m, dol, dou, minrgp, rtol1, rtol2, w, werr, wgap, iblock, indexw, gers, z, ldz, isuppz, work, iwork, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: n
    real(kind=dp), intent(in) :: vl
    real(kind=dp), intent(in) :: vu
    real(kind=dp), intent(inout) :: d(*)
    real(kind=dp), intent(inout) :: l(*)
    real(kind=dp), intent(in) :: pivmin
    integer(kind=ilp), intent(in) :: isplit(*)
    integer(kind=ilp), intent(in) :: m
    integer(kind=ilp), intent(in) :: dol
    integer(kind=ilp), intent(in) :: dou
    real(kind=dp), intent(in) :: minrgp
    real(kind=dp), intent(inout) :: rtol1
    real(kind=dp), intent(inout) :: rtol2
    real(kind=dp), intent(inout) :: w(*)
    real(kind=dp), intent(inout) :: werr(*)
    real(kind=dp), intent(inout) :: wgap(*)
    integer(kind=ilp), intent(in) :: iblock(*)
    integer(kind=ilp), intent(in) :: indexw(*)
    real(kind=dp), intent(in) :: gers(*)
    complex(kind=dp), intent(out) :: z(ldz,*)
    integer(kind=ilp), intent(in) :: ldz
    integer(kind=ilp), intent(out) :: isuppz(*)
    real(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(out) :: iwork(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_zlatrd(uplo, n, nb, a, lda, e, tau, w, ldw)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: uplo
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: nb
    complex(kind=dp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    real(kind=dp), intent(out) :: e(*)
    complex(kind=dp), intent(out) :: tau(*)
    complex(kind=dp), intent(out) :: w(ldw,*)
    integer(kind=ilp), intent(in) :: ldw

interface

  • public pure module subroutine stdlib_zpbstf(uplo, n, kd, ab, ldab, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: uplo
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: kd
    complex(kind=dp), intent(inout) :: ab(ldab,*)
    integer(kind=ilp), intent(in) :: ldab
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_zpteqr(compz, n, d, e, z, ldz, work, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: compz
    integer(kind=ilp), intent(in) :: n
    real(kind=dp), intent(inout) :: d(*)
    real(kind=dp), intent(inout) :: e(*)
    complex(kind=dp), intent(inout) :: z(ldz,*)
    integer(kind=ilp), intent(in) :: ldz
    real(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_zstedc(compz, n, d, e, z, ldz, work, lwork, rwork, lrwork, iwork, liwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: compz
    integer(kind=ilp), intent(in) :: n
    real(kind=dp), intent(inout) :: d(*)
    real(kind=dp), intent(inout) :: e(*)
    complex(kind=dp), intent(inout) :: z(ldz,*)
    integer(kind=ilp), intent(in) :: ldz
    complex(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    real(kind=dp), intent(out) :: rwork(*)
    integer(kind=ilp), intent(in) :: lrwork
    integer(kind=ilp), intent(out) :: iwork(*)
    integer(kind=ilp), intent(in) :: liwork
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_zstegr(jobz, range, n, d, e, vl, vu, il, iu, abstol, m, w, z, ldz, isuppz, work, lwork, iwork, liwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: jobz
    character(len=1), intent(in) :: range
    integer(kind=ilp), intent(in) :: n
    real(kind=dp), intent(inout) :: d(*)
    real(kind=dp), intent(inout) :: e(*)
    real(kind=dp), intent(in) :: vl
    real(kind=dp), intent(in) :: vu
    integer(kind=ilp), intent(in) :: il
    integer(kind=ilp), intent(in) :: iu
    real(kind=dp), intent(in) :: abstol
    integer(kind=ilp), intent(out) :: m
    real(kind=dp), intent(out) :: w(*)
    complex(kind=dp), intent(out) :: z(ldz,*)
    integer(kind=ilp), intent(in) :: ldz
    integer(kind=ilp), intent(out) :: isuppz(*)
    real(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: iwork(*)
    integer(kind=ilp), intent(in) :: liwork
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_zstein(n, d, e, m, w, iblock, isplit, z, ldz, work, iwork, ifail, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: n
    real(kind=dp), intent(in) :: d(*)
    real(kind=dp), intent(in) :: e(*)
    integer(kind=ilp), intent(in) :: m
    real(kind=dp), intent(in) :: w(*)
    integer(kind=ilp), intent(in) :: iblock(*)
    integer(kind=ilp), intent(in) :: isplit(*)
    complex(kind=dp), intent(out) :: z(ldz,*)
    integer(kind=ilp), intent(in) :: ldz
    real(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(out) :: iwork(*)
    integer(kind=ilp), intent(out) :: ifail(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_zstemr(jobz, range, n, d, e, vl, vu, il, iu, m, w, z, ldz, nzc, isuppz, tryrac, work, lwork, iwork, liwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: jobz
    character(len=1), intent(in) :: range
    integer(kind=ilp), intent(in) :: n
    real(kind=dp), intent(inout) :: d(*)
    real(kind=dp), intent(inout) :: e(*)
    real(kind=dp), intent(in) :: vl
    real(kind=dp), intent(in) :: vu
    integer(kind=ilp), intent(in) :: il
    integer(kind=ilp), intent(in) :: iu
    integer(kind=ilp), intent(out) :: m
    real(kind=dp), intent(out) :: w(*)
    complex(kind=dp), intent(out) :: z(ldz,*)
    integer(kind=ilp), intent(in) :: ldz
    integer(kind=ilp), intent(in) :: nzc
    integer(kind=ilp), intent(out) :: isuppz(*)
    logical(kind=lk), intent(inout) :: tryrac
    real(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: iwork(*)
    integer(kind=ilp), intent(in) :: liwork
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_zsteqr(compz, n, d, e, z, ldz, work, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: compz
    integer(kind=ilp), intent(in) :: n
    real(kind=dp), intent(inout) :: d(*)
    real(kind=dp), intent(inout) :: e(*)
    complex(kind=dp), intent(inout) :: z(ldz,*)
    integer(kind=ilp), intent(in) :: ldz
    real(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_ztgevc(side, howmny, select, n, s, lds, p, ldp, vl, ldvl, vr, ldvr, mm, m, work, rwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: side
    character(len=1), intent(in) :: howmny
    logical(kind=lk), intent(in) :: select(*)
    integer(kind=ilp), intent(in) :: n
    complex(kind=dp), intent(in) :: s(lds,*)
    integer(kind=ilp), intent(in) :: lds
    complex(kind=dp), intent(in) :: p(ldp,*)
    integer(kind=ilp), intent(in) :: ldp
    complex(kind=dp), intent(inout) :: vl(ldvl,*)
    integer(kind=ilp), intent(in) :: ldvl
    complex(kind=dp), intent(inout) :: vr(ldvr,*)
    integer(kind=ilp), intent(in) :: ldvr
    integer(kind=ilp), intent(in) :: mm
    integer(kind=ilp), intent(out) :: m
    complex(kind=dp), intent(out) :: work(*)
    real(kind=dp), intent(out) :: rwork(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_ztgex2(wantq, wantz, n, a, lda, b, ldb, q, ldq, z, ldz, j1, info)

    Arguments

    Type IntentOptional Attributes Name
    logical(kind=lk), intent(in) :: wantq
    logical(kind=lk), intent(in) :: wantz
    integer(kind=ilp), intent(in) :: n
    complex(kind=dp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    complex(kind=dp), intent(inout) :: b(ldb,*)
    integer(kind=ilp), intent(in) :: ldb
    complex(kind=dp), intent(inout) :: q(ldq,*)
    integer(kind=ilp), intent(in) :: ldq
    complex(kind=dp), intent(inout) :: z(ldz,*)
    integer(kind=ilp), intent(in) :: ldz
    integer(kind=ilp), intent(in) :: j1
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_ztgexc(wantq, wantz, n, a, lda, b, ldb, q, ldq, z, ldz, ifst, ilst, info)

    Arguments

    Type IntentOptional Attributes Name
    logical(kind=lk), intent(in) :: wantq
    logical(kind=lk), intent(in) :: wantz
    integer(kind=ilp), intent(in) :: n
    complex(kind=dp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    complex(kind=dp), intent(inout) :: b(ldb,*)
    integer(kind=ilp), intent(in) :: ldb
    complex(kind=dp), intent(inout) :: q(ldq,*)
    integer(kind=ilp), intent(in) :: ldq
    complex(kind=dp), intent(inout) :: z(ldz,*)
    integer(kind=ilp), intent(in) :: ldz
    integer(kind=ilp), intent(in) :: ifst
    integer(kind=ilp), intent(inout) :: ilst
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_ztgsen(ijob, wantq, wantz, select, n, a, lda, b, ldb, alpha, beta, q, ldq, z, ldz, m, pl, pr, dif, work, lwork, iwork, liwork, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: ijob
    logical(kind=lk), intent(in) :: wantq
    logical(kind=lk), intent(in) :: wantz
    logical(kind=lk), intent(in) :: select(*)
    integer(kind=ilp), intent(in) :: n
    complex(kind=dp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    complex(kind=dp), intent(inout) :: b(ldb,*)
    integer(kind=ilp), intent(in) :: ldb
    complex(kind=dp), intent(out) :: alpha(*)
    complex(kind=dp), intent(out) :: beta(*)
    complex(kind=dp), intent(inout) :: q(ldq,*)
    integer(kind=ilp), intent(in) :: ldq
    complex(kind=dp), intent(inout) :: z(ldz,*)
    integer(kind=ilp), intent(in) :: ldz
    integer(kind=ilp), intent(out) :: m
    real(kind=dp), intent(out) :: pl
    real(kind=dp), intent(out) :: pr
    real(kind=dp), intent(out) :: dif(*)
    complex(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: iwork(*)
    integer(kind=ilp), intent(in) :: liwork
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_ztgsja(jobu, jobv, jobq, m, p, n, k, l, a, lda, b, ldb, tola, tolb, alpha, beta, u, ldu, v, ldv, q, ldq, work, ncycle, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: jobu
    character(len=1), intent(in) :: jobv
    character(len=1), intent(in) :: jobq
    integer(kind=ilp), intent(in) :: m
    integer(kind=ilp), intent(in) :: p
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: k
    integer(kind=ilp), intent(in) :: l
    complex(kind=dp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    complex(kind=dp), intent(inout) :: b(ldb,*)
    integer(kind=ilp), intent(in) :: ldb
    real(kind=dp), intent(in) :: tola
    real(kind=dp), intent(in) :: tolb
    real(kind=dp), intent(out) :: alpha(*)
    real(kind=dp), intent(out) :: beta(*)
    complex(kind=dp), intent(inout) :: u(ldu,*)
    integer(kind=ilp), intent(in) :: ldu
    complex(kind=dp), intent(inout) :: v(ldv,*)
    integer(kind=ilp), intent(in) :: ldv
    complex(kind=dp), intent(inout) :: q(ldq,*)
    integer(kind=ilp), intent(in) :: ldq
    complex(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(out) :: ncycle
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_ztgsna(job, howmny, select, n, a, lda, b, ldb, vl, ldvl, vr, ldvr, s, dif, mm, m, work, lwork, iwork, info)

    Arguments

    Type IntentOptional 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

interface

  • public pure module subroutine stdlib_ztgsy2(trans, ijob, m, n, a, lda, b, ldb, c, ldc, d, ldd, e, lde, f, ldf, scale, rdsum, rdscal, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: trans
    integer(kind=ilp), intent(in) :: ijob
    integer(kind=ilp), intent(in) :: m
    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(inout) :: c(ldc,*)
    integer(kind=ilp), intent(in) :: ldc
    complex(kind=dp), intent(in) :: d(ldd,*)
    integer(kind=ilp), intent(in) :: ldd
    complex(kind=dp), intent(in) :: e(lde,*)
    integer(kind=ilp), intent(in) :: lde
    complex(kind=dp), intent(inout) :: f(ldf,*)
    integer(kind=ilp), intent(in) :: ldf
    real(kind=dp), intent(out) :: scale
    real(kind=dp), intent(inout) :: rdsum
    real(kind=dp), intent(inout) :: rdscal
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_ztgsyl(trans, ijob, m, n, a, lda, b, ldb, c, ldc, d, ldd, e, lde, f, ldf, scale, dif, work, lwork, iwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: trans
    integer(kind=ilp), intent(in) :: ijob
    integer(kind=ilp), intent(in) :: m
    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(inout) :: c(ldc,*)
    integer(kind=ilp), intent(in) :: ldc
    complex(kind=dp), intent(in) :: d(ldd,*)
    integer(kind=ilp), intent(in) :: ldd
    complex(kind=dp), intent(in) :: e(lde,*)
    integer(kind=ilp), intent(in) :: lde
    complex(kind=dp), intent(inout) :: f(ldf,*)
    integer(kind=ilp), intent(in) :: ldf
    real(kind=dp), intent(out) :: scale
    real(kind=dp), intent(out) :: dif
    complex(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: iwork(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_ztrevc(side, howmny, select, n, t, ldt, vl, ldvl, vr, ldvr, mm, m, work, rwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: side
    character(len=1), intent(in) :: howmny
    logical(kind=lk), intent(in) :: select(*)
    integer(kind=ilp), intent(in) :: n
    complex(kind=dp), intent(inout) :: t(ldt,*)
    integer(kind=ilp), intent(in) :: ldt
    complex(kind=dp), intent(inout) :: vl(ldvl,*)
    integer(kind=ilp), intent(in) :: ldvl
    complex(kind=dp), intent(inout) :: vr(ldvr,*)
    integer(kind=ilp), intent(in) :: ldvr
    integer(kind=ilp), intent(in) :: mm
    integer(kind=ilp), intent(out) :: m
    complex(kind=dp), intent(out) :: work(*)
    real(kind=dp), intent(out) :: rwork(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_ztrevc3(side, howmny, select, n, t, ldt, vl, ldvl, vr, ldvr, mm, m, work, lwork, rwork, lrwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: side
    character(len=1), intent(in) :: howmny
    logical(kind=lk), intent(in) :: select(*)
    integer(kind=ilp), intent(in) :: n
    complex(kind=dp), intent(inout) :: t(ldt,*)
    integer(kind=ilp), intent(in) :: ldt
    complex(kind=dp), intent(inout) :: vl(ldvl,*)
    integer(kind=ilp), intent(in) :: ldvl
    complex(kind=dp), intent(inout) :: vr(ldvr,*)
    integer(kind=ilp), intent(in) :: ldvr
    integer(kind=ilp), intent(in) :: mm
    integer(kind=ilp), intent(out) :: m
    complex(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    real(kind=dp), intent(out) :: rwork(*)
    integer(kind=ilp), intent(in) :: lrwork
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_ztrexc(compq, n, t, ldt, q, ldq, ifst, ilst, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: compq
    integer(kind=ilp), intent(in) :: n
    complex(kind=dp), intent(inout) :: t(ldt,*)
    integer(kind=ilp), intent(in) :: ldt
    complex(kind=dp), intent(inout) :: q(ldq,*)
    integer(kind=ilp), intent(in) :: ldq
    integer(kind=ilp), intent(in) :: ifst
    integer(kind=ilp), intent(in) :: ilst
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_ztrsen(job, compq, select, n, t, ldt, q, ldq, w, m, s, sep, work, lwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: job
    character(len=1), intent(in) :: compq
    logical(kind=lk), intent(in) :: select(*)
    integer(kind=ilp), intent(in) :: n
    complex(kind=dp), intent(inout) :: t(ldt,*)
    integer(kind=ilp), intent(in) :: ldt
    complex(kind=dp), intent(inout) :: q(ldq,*)
    integer(kind=ilp), intent(in) :: ldq
    complex(kind=dp), intent(out) :: w(*)
    integer(kind=ilp), intent(out) :: m
    real(kind=dp), intent(out) :: s
    real(kind=dp), intent(out) :: sep
    complex(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_ztrsna(job, howmny, select, n, t, ldt, vl, ldvl, vr, ldvr, s, sep, mm, m, work, ldwork, rwork, info)

    Arguments

    Type IntentOptional 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) :: t(ldt,*)
    integer(kind=ilp), intent(in) :: ldt
    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) :: sep(*)
    integer(kind=ilp), intent(in) :: mm
    integer(kind=ilp), intent(out) :: m
    complex(kind=dp), intent(out) :: work(ldwork,*)
    integer(kind=ilp), intent(in) :: ldwork
    real(kind=dp), intent(out) :: rwork(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_ztrsyl(trana, tranb, isgn, m, n, a, lda, b, ldb, c, ldc, scale, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: trana
    character(len=1), intent(in) :: tranb
    integer(kind=ilp), intent(in) :: isgn
    integer(kind=ilp), intent(in) :: m
    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(inout) :: c(ldc,*)
    integer(kind=ilp), intent(in) :: ldc
    real(kind=dp), intent(out) :: scale
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_zunbdb(trans, signs, m, p, q, x11, ldx11, x12, ldx12, x21, ldx21, x22, ldx22, theta, phi, taup1, taup2, tauq1, tauq2, work, lwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: trans
    character(len=1), intent(in) :: signs
    integer(kind=ilp), intent(in) :: m
    integer(kind=ilp), intent(in) :: p
    integer(kind=ilp), intent(in) :: q
    complex(kind=dp), intent(inout) :: x11(ldx11,*)
    integer(kind=ilp), intent(in) :: ldx11
    complex(kind=dp), intent(inout) :: x12(ldx12,*)
    integer(kind=ilp), intent(in) :: ldx12
    complex(kind=dp), intent(inout) :: x21(ldx21,*)
    integer(kind=ilp), intent(in) :: ldx21
    complex(kind=dp), intent(inout) :: x22(ldx22,*)
    integer(kind=ilp), intent(in) :: ldx22
    real(kind=dp), intent(out) :: theta(*)
    real(kind=dp), intent(out) :: phi(*)
    complex(kind=dp), intent(out) :: taup1(*)
    complex(kind=dp), intent(out) :: taup2(*)
    complex(kind=dp), intent(out) :: tauq1(*)
    complex(kind=dp), intent(out) :: tauq2(*)
    complex(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_zunbdb1(m, p, q, x11, ldx11, x21, ldx21, theta, phi, taup1, taup2, tauq1, work, lwork, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: m
    integer(kind=ilp), intent(in) :: p
    integer(kind=ilp), intent(in) :: q
    complex(kind=dp), intent(inout) :: x11(ldx11,*)
    integer(kind=ilp), intent(in) :: ldx11
    complex(kind=dp), intent(inout) :: x21(ldx21,*)
    integer(kind=ilp), intent(in) :: ldx21
    real(kind=dp), intent(out) :: theta(*)
    real(kind=dp), intent(out) :: phi(*)
    complex(kind=dp), intent(out) :: taup1(*)
    complex(kind=dp), intent(out) :: taup2(*)
    complex(kind=dp), intent(out) :: tauq1(*)
    complex(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_zunbdb2(m, p, q, x11, ldx11, x21, ldx21, theta, phi, taup1, taup2, tauq1, work, lwork, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: m
    integer(kind=ilp), intent(in) :: p
    integer(kind=ilp), intent(in) :: q
    complex(kind=dp), intent(inout) :: x11(ldx11,*)
    integer(kind=ilp), intent(in) :: ldx11
    complex(kind=dp), intent(inout) :: x21(ldx21,*)
    integer(kind=ilp), intent(in) :: ldx21
    real(kind=dp), intent(out) :: theta(*)
    real(kind=dp), intent(out) :: phi(*)
    complex(kind=dp), intent(out) :: taup1(*)
    complex(kind=dp), intent(out) :: taup2(*)
    complex(kind=dp), intent(out) :: tauq1(*)
    complex(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_zunbdb3(m, p, q, x11, ldx11, x21, ldx21, theta, phi, taup1, taup2, tauq1, work, lwork, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: m
    integer(kind=ilp), intent(in) :: p
    integer(kind=ilp), intent(in) :: q
    complex(kind=dp), intent(inout) :: x11(ldx11,*)
    integer(kind=ilp), intent(in) :: ldx11
    complex(kind=dp), intent(inout) :: x21(ldx21,*)
    integer(kind=ilp), intent(in) :: ldx21
    real(kind=dp), intent(out) :: theta(*)
    real(kind=dp), intent(out) :: phi(*)
    complex(kind=dp), intent(out) :: taup1(*)
    complex(kind=dp), intent(out) :: taup2(*)
    complex(kind=dp), intent(out) :: tauq1(*)
    complex(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_zunbdb4(m, p, q, x11, ldx11, x21, ldx21, theta, phi, taup1, taup2, tauq1, phantom, work, lwork, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: m
    integer(kind=ilp), intent(in) :: p
    integer(kind=ilp), intent(in) :: q
    complex(kind=dp), intent(inout) :: x11(ldx11,*)
    integer(kind=ilp), intent(in) :: ldx11
    complex(kind=dp), intent(inout) :: x21(ldx21,*)
    integer(kind=ilp), intent(in) :: ldx21
    real(kind=dp), intent(out) :: theta(*)
    real(kind=dp), intent(out) :: phi(*)
    complex(kind=dp), intent(out) :: taup1(*)
    complex(kind=dp), intent(out) :: taup2(*)
    complex(kind=dp), intent(out) :: tauq1(*)
    complex(kind=dp), intent(out) :: phantom(*)
    complex(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_zunbdb5(m1, m2, n, x1, incx1, x2, incx2, q1, ldq1, q2, ldq2, work, lwork, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: m1
    integer(kind=ilp), intent(in) :: m2
    integer(kind=ilp), intent(in) :: n
    complex(kind=dp), intent(inout) :: x1(*)
    integer(kind=ilp), intent(in) :: incx1
    complex(kind=dp), intent(inout) :: x2(*)
    integer(kind=ilp), intent(in) :: incx2
    complex(kind=dp), intent(in) :: q1(ldq1,*)
    integer(kind=ilp), intent(in) :: ldq1
    complex(kind=dp), intent(in) :: q2(ldq2,*)
    integer(kind=ilp), intent(in) :: ldq2
    complex(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_zunbdb6(m1, m2, n, x1, incx1, x2, incx2, q1, ldq1, q2, ldq2, work, lwork, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: m1
    integer(kind=ilp), intent(in) :: m2
    integer(kind=ilp), intent(in) :: n
    complex(kind=dp), intent(inout) :: x1(*)
    integer(kind=ilp), intent(in) :: incx1
    complex(kind=dp), intent(inout) :: x2(*)
    integer(kind=ilp), intent(in) :: incx2
    complex(kind=dp), intent(in) :: q1(ldq1,*)
    integer(kind=ilp), intent(in) :: ldq1
    complex(kind=dp), intent(in) :: q2(ldq2,*)
    integer(kind=ilp), intent(in) :: ldq2
    complex(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: info

interface

  • public recursive module subroutine stdlib_zuncsd(jobu1, jobu2, jobv1t, jobv2t, trans, signs, m, p, q, x11, ldx11, x12, ldx12, x21, ldx21, x22, ldx22, theta, u1, ldu1, u2, ldu2, v1t, ldv1t, v2t, ldv2t, work, lwork, rwork, lrwork, iwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: jobu1
    character(len=1), intent(in) :: jobu2
    character(len=1), intent(in) :: jobv1t
    character(len=1), intent(in) :: jobv2t
    character(len=1), intent(in) :: trans
    character(len=1), intent(in) :: signs
    integer(kind=ilp), intent(in) :: m
    integer(kind=ilp), intent(in) :: p
    integer(kind=ilp), intent(in) :: q
    complex(kind=dp), intent(inout) :: x11(ldx11,*)
    integer(kind=ilp), intent(in) :: ldx11
    complex(kind=dp), intent(inout) :: x12(ldx12,*)
    integer(kind=ilp), intent(in) :: ldx12
    complex(kind=dp), intent(inout) :: x21(ldx21,*)
    integer(kind=ilp), intent(in) :: ldx21
    complex(kind=dp), intent(inout) :: x22(ldx22,*)
    integer(kind=ilp), intent(in) :: ldx22
    real(kind=dp), intent(out) :: theta(*)
    complex(kind=dp), intent(out) :: u1(ldu1,*)
    integer(kind=ilp), intent(in) :: ldu1
    complex(kind=dp), intent(out) :: u2(ldu2,*)
    integer(kind=ilp), intent(in) :: ldu2
    complex(kind=dp), intent(out) :: v1t(ldv1t,*)
    integer(kind=ilp), intent(in) :: ldv1t
    complex(kind=dp), intent(out) :: v2t(ldv2t,*)
    integer(kind=ilp), intent(in) :: ldv2t
    complex(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    real(kind=dp), intent(out) :: rwork(*)
    integer(kind=ilp), intent(in) :: lrwork
    integer(kind=ilp), intent(out) :: iwork(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public module subroutine stdlib_zuncsd2by1(jobu1, jobu2, jobv1t, m, p, q, x11, ldx11, x21, ldx21, theta, u1, ldu1, u2, ldu2, v1t, ldv1t, work, lwork, rwork, lrwork, iwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: jobu1
    character(len=1), intent(in) :: jobu2
    character(len=1), intent(in) :: jobv1t
    integer(kind=ilp), intent(in) :: m
    integer(kind=ilp), intent(in) :: p
    integer(kind=ilp), intent(in) :: q
    complex(kind=dp), intent(inout) :: x11(ldx11,*)
    integer(kind=ilp), intent(in) :: ldx11
    complex(kind=dp), intent(inout) :: x21(ldx21,*)
    integer(kind=ilp), intent(in) :: ldx21
    real(kind=dp), intent(out) :: theta(*)
    complex(kind=dp), intent(out) :: u1(ldu1,*)
    integer(kind=ilp), intent(in) :: ldu1
    complex(kind=dp), intent(out) :: u2(ldu2,*)
    integer(kind=ilp), intent(in) :: ldu2
    complex(kind=dp), intent(out) :: v1t(ldv1t,*)
    integer(kind=ilp), intent(in) :: ldv1t
    complex(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    real(kind=dp), intent(out) :: rwork(*)
    integer(kind=ilp), intent(in) :: lrwork
    integer(kind=ilp), intent(out) :: iwork(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_zungbr(vect, m, n, k, a, lda, tau, work, lwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: vect
    integer(kind=ilp), intent(in) :: m
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: k
    complex(kind=dp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    complex(kind=dp), intent(in) :: tau(*)
    complex(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_zunghr(n, ilo, ihi, a, lda, tau, work, lwork, info)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: ilo
    integer(kind=ilp), intent(in) :: ihi
    complex(kind=dp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    complex(kind=dp), intent(in) :: tau(*)
    complex(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_zungtr(uplo, n, a, lda, tau, work, lwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: uplo
    integer(kind=ilp), intent(in) :: n
    complex(kind=dp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    complex(kind=dp), intent(in) :: tau(*)
    complex(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_zunmbr(vect, side, trans, m, n, k, a, lda, tau, c, ldc, work, lwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: vect
    character(len=1), intent(in) :: side
    character(len=1), intent(in) :: trans
    integer(kind=ilp), intent(in) :: m
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: k
    complex(kind=dp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    complex(kind=dp), intent(in) :: tau(*)
    complex(kind=dp), intent(inout) :: c(ldc,*)
    integer(kind=ilp), intent(in) :: ldc
    complex(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_zunmhr(side, trans, m, n, ilo, ihi, a, lda, tau, c, ldc, work, lwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: side
    character(len=1), intent(in) :: trans
    integer(kind=ilp), intent(in) :: m
    integer(kind=ilp), intent(in) :: n
    integer(kind=ilp), intent(in) :: ilo
    integer(kind=ilp), intent(in) :: ihi
    complex(kind=dp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    complex(kind=dp), intent(in) :: tau(*)
    complex(kind=dp), intent(inout) :: c(ldc,*)
    integer(kind=ilp), intent(in) :: ldc
    complex(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_zunmtr(side, uplo, trans, m, n, a, lda, tau, c, ldc, work, lwork, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: side
    character(len=1), intent(in) :: uplo
    character(len=1), intent(in) :: trans
    integer(kind=ilp), intent(in) :: m
    integer(kind=ilp), intent(in) :: n
    complex(kind=dp), intent(inout) :: a(lda,*)
    integer(kind=ilp), intent(in) :: lda
    complex(kind=dp), intent(in) :: tau(*)
    complex(kind=dp), intent(inout) :: c(ldc,*)
    integer(kind=ilp), intent(in) :: ldc
    complex(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(in) :: lwork
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_zupgtr(uplo, n, ap, tau, q, ldq, work, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: uplo
    integer(kind=ilp), intent(in) :: n
    complex(kind=dp), intent(in) :: ap(*)
    complex(kind=dp), intent(in) :: tau(*)
    complex(kind=dp), intent(out) :: q(ldq,*)
    integer(kind=ilp), intent(in) :: ldq
    complex(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(out) :: info

interface

  • public pure module subroutine stdlib_zupmtr(side, uplo, trans, m, n, ap, tau, c, ldc, work, info)

    Arguments

    Type IntentOptional Attributes Name
    character(len=1), intent(in) :: side
    character(len=1), intent(in) :: uplo
    character(len=1), intent(in) :: trans
    integer(kind=ilp), intent(in) :: m
    integer(kind=ilp), intent(in) :: n
    complex(kind=dp), intent(inout) :: ap(*)
    complex(kind=dp), intent(in) :: tau(*)
    complex(kind=dp), intent(inout) :: c(ldc,*)
    integer(kind=ilp), intent(in) :: ldc
    complex(kind=dp), intent(out) :: work(*)
    integer(kind=ilp), intent(out) :: info