Provided by: libpdl-linearalgebra-perl_0.35-1_amd64 bug

NAME

       PDL::LinearAlgebra::Complex - PDL interface to the lapack linear algebra programming
       library (complex number)

SYNOPSIS

        use PDL;
        use PDL::LinearAlgebra::Complex;
        $a = random(cdouble, 100, 100);
        $s = zeroes(cdouble, 100);
        $u = zeroes(cdouble, 100, 100);
        $v = zeroes(cdouble, 100, 100);
        $info = 0;
        $job = 0;
        cgesdd($a, $job, $info, $s , $u, $v);

DESCRIPTION

       This module provides an interface to parts of the lapack library (complex numbers).  These
       routines accept either float or double ndarrays.  #line 68 "Complex.pm"

FUNCTIONS

   cgtsv
         Signature: (complex [phys]DL(n);complex  [phys]D(n);complex  [phys]DU(n);complex  [io,phys]B(n,nrhs); int [o,phys]info())

       Solves the equation

               A * X = B

       where A is an "n" by "n" tridiagonal matrix, by Gaussian elimination with partial
       pivoting, and B is an "n" by "nrhs" matrix.

       Note that the equation "A**T*X = B"  may be solved by interchanging the order of the
       arguments DU and DL.

       NB This differs from the LINPACK function "cgtsl" in that "DL" starts from its first
       element, while the LINPACK equivalent starts from its second element.

           Arguments
           =========

           DL:   On entry, DL must contain the (n-1) sub-diagonal elements of A.

                 On exit, DL is overwritten by the (n-2) elements of the
                 second super-diagonal of the upper triangular matrix U from
                 the LU factorization of A, in DL(1), ..., DL(n-2).

           D:    On entry, D must contain the diagonal elements of A.

                 On exit, D is overwritten by the n diagonal elements of U.

           DU:   On entry, DU must contain the (n-1) super-diagonal elements of A.

                 On exit, DU is overwritten by the (n-1) elements of the
                 first super-diagonal of the U.

           B:    On entry, the n by nrhs matrix of right hand side matrix B.
                 On exit, if info = 0, the n by nrhs solution matrix X.

           info:   = 0:  successful exit
                   < 0:  if info = -i, the i-th argument had an illegal value
                   > 0:  if info = i, U(i,i) is exactly zero, and the solution
                         has not been computed.  The factorization has not been
                         completed unless i = n.

        $dl = random(float, 9) + random(float, 9) * i;
        $d = random(float, 10) + random(float, 10) * i;
        $du = random(float, 9) + random(float, 9) * i;
        $b = random(10,5) + random(10,5) * i;
        cgtsv($dl, $d, $du, $b, ($info=null));
        print "X is:\n$b" unless $info;

   cgesvd
         Signature: (complex [io]A(m,n); int jobu(); int jobvt(); [o]s(minmn);complex  [o]U(p,p);complex  [o]VT(s,s); int [o]info(); [t]rwork(rworkn))

       Complex version of "gesvd" in PDL::LinearAlgebra::Real.

       The SVD is written

        A = U * SIGMA * ConjugateTranspose(V)

   cgesdd
         Signature: (complex [io]A(m,n); int jobz(); [o]s(minmn);complex  [o]U(p,p);complex  [o]VT(s,s); int [o]info(); int [t]iwork(iworkn))

       Complex version of "gesdd" in PDL::LinearAlgebra::Real.

       The SVD is written

        A = U * SIGMA * ConjugateTranspose(V)

   cggsvd
         Signature: (complex [io]A(m,n); int jobu(); int jobv(); int jobq();complex  [io]B(p,n); int [o]k(); int [o]l();[o]alpha(n);[o]beta(n);complex  [o]U(q,q);complex  [o]V(r,r);complex  [o]Q(s,s); int [o]iwork(n); int [o]info(); [t]rwork(rworkn))

       Complex version of "ggsvd" in PDL::LinearAlgebra::Real

   cgeev
         Signature: (complex A(n,n); int jobvl(); int jobvr();complex  [o]w(n);complex  [o]vl(m,m);complex  [o]vr(p,p); int [o]info(); [t]rwork(rworkn))

       Complex version of "geev" in PDL::LinearAlgebra::Real

   cgeevx
         Signature: (complex [io]A(n,n);  int jobvl(); int jobvr(); int balance(); int sense();complex  [o]w(n);complex  [o]vl(m,m);complex  [o]vr(p,p); int [o]ilo(); int [o]ihi(); [o]scale(n); [o]abnrm(); [o]rconde(q); [o]rcondv(r); int [o]info(); [t]rwork(rworkn))

       Complex version of "geevx" in PDL::LinearAlgebra::Real

   cggev
         Signature: (complex A(n,n); int [phys]jobvl();int [phys]jobvr();complex B(n,n);complex [o]alpha(n);complex [o]beta(n);complex [o]VL(m,m);complex [o]VR(p,p);int [o]info(); [t]rwork(rworkn))

       Complex version of "ggev" in PDL::LinearAlgebra::Real

   cggevx
         Signature: (complex [io,phys]A(n,n);int balanc();int jobvl();int jobvr();int sense();complex [io,phys]B(n,n);complex [o]alpha(n);complex [o]beta(n);complex [o]VL(m,m);complex [o]VR(p,p);int [o]ilo();int [o]ihi();[o]lscale(n);[o]rscale(n);[o]abnrm();[o]bbnrm();[o]rconde(r);[o]rcondv(s);int [o]info(); [t]rwork(rworkn); int [t]bwork(bworkn); int [t]iwork(iworkn))

       Complex version of "ggevx" in PDL::LinearAlgebra::Real

   cgees
         Signature: (complex [io]A(n,n);  int jobvs(); int sort();complex  [o]w(n);complex  [o]vs(p,p); int [o]sdim(); int [o]info(); [t]rwork(n); int [t]bwork(bworkn);SV* select_func)

       Complex version of "gees" in PDL::LinearAlgebra::Real

           select_func:
                   If sort = 1, select_func is used to select eigenvalues to sort
                   to the top left of the Schur form.
                   If sort = 0, select_func is not referenced.
                   An complex eigenvalue w is selected if
                   select_func(PDL::Complex(w)) is true;
                   Note that a selected complex eigenvalue may no longer
                   satisfy select_func(PDL::Complex(w)) = 1 after ordering, since
                   ordering may change the value of complex eigenvalues
                   (especially if the eigenvalue is ill-conditioned); in this
                   case info is set to N+2.

   cgeesx
         Signature: (complex [io]A(n,n);  int jobvs(); int sort(); int sense();complex  [o]w(n);complex [o]vs(p,p); int [o]sdim(); [o]rconde();[o]rcondv(); int [o]info(); [t]rwork(n); int [t]bwork(bworkn);SV* select_func)

       Complex version of "geesx" in PDL::LinearAlgebra::Real

           select_func:
                   If sort = 1, select_func is used to select eigenvalues to sort
                   to the top left of the Schur form.
                   If sort = 0, select_func is not referenced.
                   An complex eigenvalue w is selected if
                   select_func(PDL::Complex(w)) is true;
                   Note that a selected complex eigenvalue may no longer
                   satisfy select_func(PDL::Complex(w)) = 1 after ordering, since
                   ordering may change the value of complex eigenvalues
                   (especially if the eigenvalue is ill-conditioned); in this
                   case info is set to N+2.

   cgges
         Signature: (complex [io]A(n,n); int jobvsl();int jobvsr();int sort();complex [io]B(n,n);complex [o]alpha(n);complex [o]beta(n);complex [o]VSL(m,m);complex [o]VSR(p,p);int [o]sdim();int [o]info(); [t]rwork(rworkn); int [t]bwork(bworkn);SV* select_func)

       Complex version of "ggees" in PDL::LinearAlgebra::Real

           select_func:
                   If sort = 1, select_func is used to select eigenvalues to sort
                   to the top left of the Schur form.
                   If sort = 0, select_func is not referenced.
                   An eigenvalue w = w/beta is selected if
                   select_func(PDL::Complex(w), PDL::Complex(beta)) is true;
                   Note that a selected complex eigenvalue may no longer
                   satisfy select_func(PDL::Complex(w),PDL::Complex(beta)) = 1 after ordering, since
                   ordering may change the value of complex eigenvalues
                   (especially if the eigenvalue is ill-conditioned); in this
                   case info is set to N+2.

   cggesx
         Signature: (complex [io]A(n,n); int jobvsl();int jobvsr();int sort();int sense();complex [io]B(n,n);complex [o]alpha(n);complex [o]beta(n);complex [o]VSL(m,m);complex [o]VSR(p,p);int [o]sdim();[o]rconde(q=2);[o]rcondv(q=2);int [o]info(); [t]rwork(rworkn); int [t]bwork(bworkn); int [t]iwork(iworkn);SV* select_func)

       Complex version of "ggeesx" in PDL::LinearAlgebra::Real

           select_func:
                   If sort = 1, select_func is used to select eigenvalues to sort
                   to the top left of the Schur form.
                   If sort = 0, select_func is not referenced.
                   An eigenvalue w = w/beta is selected if
                   select_func(PDL::Complex(w), PDL::Complex(beta)) is true;
                   Note that a selected complex eigenvalue may no longer
                   satisfy select_func(PDL::Complex(w),PDL::Complex(beta)) = 1 after ordering, since
                   ordering may change the value of complex eigenvalues
                   (especially if the eigenvalue is ill-conditioned); in this
                   case info is set to N+3.

   cheev
         Signature: (complex [io]A(n,n); int jobz(); int uplo(); [o]w(n); int [o]info(); [t]rwork(rworkn))

       Complex version of "syev" in PDL::LinearAlgebra::Real for Hermitian matrix

   cheevd
         Signature: (complex [io,phys]A(n,n);  int jobz(); int uplo(); [o,phys]w(n); int [o,phys]info())

       Complex version of "syevd" in PDL::LinearAlgebra::Real for Hermitian matrix

   cheevx
         Signature: (complex A(n,n);  int jobz(); int range(); int uplo(); vl(); vu(); int il(); int iu(); abstol(); int [o]m(); [o]w(n);complex  [o]z(p,p);int [o]ifail(n); int [o]info(); [t]rwork(rworkn); int [t]iwork(iworkn))

       Complex version of "syevx" in PDL::LinearAlgebra::Real for Hermitian matrix

   cheevr
         Signature: (complex [phys]A(n,n);  int jobz(); int range(); int uplo(); [phys]vl(); [phys]vu(); int [phys]il(); int [phys]iu(); [phys]abstol(); int [o,phys]m(); [o,phys]w(n);complex  [o,phys]z(p,q);int [o,phys]isuppz(r); int [o,phys]info())

       Complex version of "syevr" in PDL::LinearAlgebra::Real for Hermitian matrix

   chegv
         Signature: (complex [io]A(n,n);int itype();int jobz(); int uplo();complex [io]B(n,n);[o]w(n); int [o]info(); [t]rwork(rworkn))

       Complex version of "sygv" in PDL::LinearAlgebra::Real for Hermitian matrix

   chegvd
         Signature: (complex [io,phys]A(n,n);int [phys]itype();int jobz(); int uplo();complex [io,phys]B(n,n);[o,phys]w(n); int [o,phys]info())

       Complex version of "sygvd" in PDL::LinearAlgebra::Real for Hermitian matrix

   chegvx
         Signature: (complex [io]A(n,n);int itype();int jobz();int range();
                 int uplo();complex [io]B(n,n);vl();vu();int il();
                 int iu();abstol();int [o]m();[o]w(n);complex
                 [o]Z(p,p);int [o]ifail(n);int [o]info(); [t]rwork(rworkn); int [t]iwork(iworkn);
               )

       Complex version of "sygvx" in PDL::LinearAlgebra::Real for Hermitian matrix

   cgesv
         Signature: (complex [io,phys]A(n,n);complex   [io,phys]B(n,m); int [o,phys]ipiv(n); int [o,phys]info())

       Complex version of "gesv" in PDL::LinearAlgebra::Real

   cgesvx
         Signature: (complex [io]A(n,n); int trans(); int fact();complex  [io]B(n,m);complex  [io]af(n,n); int [io]ipiv(n); int [io]equed(); [o]r(p); [o]c(q);complex  [o]X(n,m); [o]rcond(); [o]ferr(m); [o]berr(m); [o]rpvgrw(); int [o]info(); [t]rwork(rworkn); [t]work(rworkn))

       Complex version of "gesvx" in PDL::LinearAlgebra::Real.

           trans:  Specifies the form of the system of equations:
                   = 0:  A * X = B     (No transpose)
                   = 1:  A' * X = B  (Transpose)
                   = 2:  A**H * X = B  (Conjugate transpose)

   csysv
         Signature: (complex [io,phys]A(n,n);  int uplo();complex  [io,phys]B(n,m); int [o]ipiv(n); int [o]info())

       Complex version of "sysv" in PDL::LinearAlgebra::Real

   csysvx
         Signature: (complex [phys]A(n,n); int uplo(); int fact();complex  [phys]B(n,m);complex  [io,phys]af(n,n); int [io,phys]ipiv(n);complex  [o]X(n,m); [o]rcond(); [o]ferr(m); [o]berr(m); int [o]info(); [t]rwork(n))

       Complex version of "sysvx" in PDL::LinearAlgebra::Real

   chesv
         Signature: (complex [io,phys]A(n,n);  int uplo();complex  [io,phys]B(n,m); int [o,phys]ipiv(n); int [o,phys]info())

       Complex version of "sysv" in PDL::LinearAlgebra::Real for Hermitian matrix

   chesvx
         Signature: (complex A(n,n); int uplo(); int fact();complex  B(n,m);complex  [io]af(n,n); int [io]ipiv(n);complex  [o]X(n,m); [o]rcond(); [o]ferr(m); [o]berr(m); int [o]info(); [t]rwork(n))

       Complex version of "sysvx" in PDL::LinearAlgebra::Real for Hermitian matrix

   cposv
         Signature: (complex [io,phys]A(n,n);  int uplo();complex  [io,phys]B(n,m); int [o,phys]info())

       Complex version of "posv" in PDL::LinearAlgebra::Real for Hermitian positive definite
       matrix

   cposvx
         Signature: (complex [io]A(n,n); int uplo(); int fact();complex  [io]B(n,m);complex  [io]af(n,n); int [io]equed(); [o]s(p);complex  [o]X(n,m); [o]rcond(); [o]ferr(m); [o]berr(m); int [o]info(); [t]rwork(rworkn); [t]work(workn))

       Complex version of "posvx" in PDL::LinearAlgebra::Real for Hermitian positive definite
       matrix

   cgels
         Signature: (complex [io,phys]A(m,n); int trans();complex  [io,phys]B(p,q);int [o,phys]info())

       Solves overdetermined or underdetermined complex linear systems involving an M-by-N matrix
       A, or its conjugate-transpose.  Complex version of "gels" in PDL::LinearAlgebra::Real.

           trans:  = 0: the linear system involves A;
                   = 1: the linear system involves A**H.

   cgelsy
         Signature: (complex [io]A(m,n);complex  [io]B(p,q); rcond(); int [io]jpvt(n); int [o]rank();int [o]info(); [t]rwork(rworkn))

       Complex version of "gelsy" in PDL::LinearAlgebra::Real

   cgelss
         Signature: (complex [io]A(m,n);complex  [io]B(p,q); rcond(); [o]s(r); int [o]rank();int [o]info(); [t]rwork(rworkn))

       Complex version of "gelss" in PDL::LinearAlgebra::Real

   cgelsd
         Signature: (complex [io]A(m,n);complex  [io]B(p,q); rcond(); [o]s(minmn); int [o]rank();int [o]info(); int [t]iwork(iworkn); [t]rwork(rworkn))

       Complex version of "gelsd" in PDL::LinearAlgebra::Real

   cgglse
         Signature: (complex [phys]A(m,n);complex  [phys]B(p,n);complex [io,phys]c(m);complex [phys]d(p);complex [o,phys]x(n);int [o,phys]info())

       Complex version of "gglse" in PDL::LinearAlgebra::Real

   cggglm
         Signature: (complex [phys]A(n,m);complex  [phys]B(n,p);complex [phys]d(n);complex [o,phys]x(m);complex [o,phys]y(p);int [o,phys]info())

       Complex version of "ggglm" in PDL::LinearAlgebra::Real

   cgetrf
         Signature: (complex [io]A(m,n); int [o]ipiv(p); int [o]info())

       Complex version of "getrf" in PDL::LinearAlgebra::Real

   cgetf2
         Signature: (complex [io]A(m,n); int [o]ipiv(p); int [o]info())

       Complex version of "getf2" in PDL::LinearAlgebra::Real

   csytrf
         Signature: (complex [io,phys]A(n,n); int uplo(); int [o,phys]ipiv(n); int [o,phys]info())

       Complex version of "sytrf" in PDL::LinearAlgebra::Real

   csytf2
         Signature: (complex [io,phys]A(n,n); int uplo(); int [o,phys]ipiv(n); int [o,phys]info())

       Complex version of "sytf2" in PDL::LinearAlgebra::Real

   cchetrf
         Signature: (complex [io]A(n,n); int uplo(); int [o]ipiv(n); int [o]info(); [t]work(workn))

       Complex version of "sytrf" in PDL::LinearAlgebra::Real for Hermitian matrix

   chetf2
         Signature: (complex [io]A(n,n); int uplo(); int [o]ipiv(n); int [o]info())

       Complex version of "sytf2" in PDL::LinearAlgebra::Real for Hermitian matrix

   cpotrf
         Signature: (complex [io,phys]A(n,n); int uplo(); int [o,phys]info())

       Complex version of "potrf" in PDL::LinearAlgebra::Real for Hermitian positive definite
       matrix

   cpotf2
         Signature: (complex [io,phys]A(n,n); int uplo(); int [o,phys]info())

       Complex version of "potf2" in PDL::LinearAlgebra::Real for Hermitian positive definite
       matrix

   cgetri
         Signature: (complex [io,phys]A(n,n); int [phys]ipiv(n); int [o,phys]info())

       Complex version of "getri" in PDL::LinearAlgebra::Real

   csytri
         Signature: (complex [io]A(n,n); int uplo(); int ipiv(n); int [o]info(); [t]work(workn))

       Complex version of "sytri" in PDL::LinearAlgebra::Real

   chetri
         Signature: (complex [io]A(n,n); int uplo(); int ipiv(n); int [o]info(); [t]work(workn))

       Complex version of "sytri" in PDL::LinearAlgebra::Real for Hermitian matrix

   cpotri
         Signature: (complex [io,phys]A(n,n); int uplo(); int [o,phys]info())

       Complex version of "potri" in PDL::LinearAlgebra::Real

   ctrtri
         Signature: (complex [io,phys]A(n,n); int uplo(); int diag(); int [o,phys]info())

       Complex version of "trtri" in PDL::LinearAlgebra::Real

   ctrti2
         Signature: (complex [io,phys]A(n,n); int uplo(); int diag(); int [o,phys]info())

       Complex version of "trti2" in PDL::LinearAlgebra::Real

   cgetrs
         Signature: (complex [phys]A(n,n); int trans();complex  [io,phys]B(n,m); int [phys]ipiv(n); int [o,phys]info())

       Complex version of "getrs" in PDL::LinearAlgebra::Real

           Arguments
           =========
               trans:   = 0:  No transpose;
                        = 1:  Transpose;
                        = 2:  Conjugate transpose;

   csytrs
         Signature: (complex [phys]A(n,n); int uplo();complex [io,phys]B(n,m); int [phys]ipiv(n); int [o,phys]info())

       Complex version of "sytrs" in PDL::LinearAlgebra::Real

   chetrs
         Signature: (complex [phys]A(n,n); int uplo();complex [io,phys]B(n,m); int [phys]ipiv(n); int [o,phys]info())

       Complex version of "sytrs" in PDL::LinearAlgebra::Real for Hermitian matrix

   cpotrs
         Signature: (complex [phys]A(n,n); int uplo();complex  [io,phys]B(n,m); int [o,phys]info())

       Complex version of "potrs" in PDL::LinearAlgebra::Real for Hermitian positive definite
       matrix

   ctrtrs
         Signature: (complex [phys]A(n,n); int uplo(); int trans(); int diag();complex [io,phys]B(n,m); int [o,phys]info())

       Complex version of "trtrs" in PDL::LinearAlgebra::Real

           Arguments
           =========
               trans:   = 0:  No transpose;
                        = 1:  Transpose;
                        = 2:  Conjugate transpose;

   clatrs
         Signature: (complex [phys]A(n,n); int uplo(); int trans(); int diag(); int normin();complex [io,phys]x(n); [o,phys]scale();[io,phys]cnorm(n);int [o,phys]info())

       Complex version of "latrs" in PDL::LinearAlgebra::Real

           Arguments
           =========
               trans:   = 0:  No transpose;
                        = 1:  Transpose;
                        = 2:  Conjugate transpose;

   cgecon
         Signature: (complex A(n,n); int norm(); anorm(); [o]rcond();int [o]info(); [t]rwork(rworkn); [t]work(workn))

       Complex version of "gecon" in PDL::LinearAlgebra::Real

   csycon
         Signature: (complex A(n,n); int uplo(); int ipiv(n); anorm(); [o]rcond();int [o]info(); [t]work(workn))

       Complex version of "sycon" in PDL::LinearAlgebra::Real

   checon
         Signature: (complex A(n,n); int uplo(); int ipiv(n); anorm(); [o]rcond();int [o]info(); [t]work(workn))

       Complex version of "sycon" in PDL::LinearAlgebra::Real for Hermitian matrix

   cpocon
         Signature: (complex A(n,n); int uplo(); anorm(); [o]rcond();int [o]info(); [t]work(workn); [t]rwork(n))

       Complex version of "pocon" in PDL::LinearAlgebra::Real for Hermitian positive definite
       matrix

   ctrcon
         Signature: (complex A(n,n); int norm();int uplo();int diag(); [o]rcond();int [o]info(); [t]work(workn); [t]rwork(n))

       Complex version of "trcon" in PDL::LinearAlgebra::Real

   cgeqp3
         Signature: (complex [io]A(m,n); int [io]jpvt(n);complex  [o]tau(k); int [o]info(); [t]rwork(rworkn))

       Complex version of "geqp3" in PDL::LinearAlgebra::Real

   cgeqrf
         Signature: (complex [io,phys]A(m,n);complex  [o,phys]tau(k); int [o,phys]info())

       Complex version of "geqrf" in PDL::LinearAlgebra::Real

   cungqr
         Signature: (complex [io,phys]A(m,n);complex  [phys]tau(k); int [o,phys]info())

       Complex version of "orgqr" in PDL::LinearAlgebra::Real

   cunmqr
         Signature: (complex [phys]A(p,k); int side(); int trans();complex  [phys]tau(k);complex  [io,phys]C(m,n);int [o,phys]info())

       Complex version of "ormqr" in PDL::LinearAlgebra::Real. Here trans = 1 means conjugate
       transpose.

   cgelqf
         Signature: (complex [io,phys]A(m,n);complex  [o,phys]tau(k); int [o,phys]info())

       Complex version of "gelqf" in PDL::LinearAlgebra::Real

   cunglq
         Signature: (complex [io,phys]A(m,n);complex  [phys]tau(k); int [o,phys]info())

       Complex version of "orglq" in PDL::LinearAlgebra::Real

   cunmlq
         Signature: (complex [phys]A(k,p); int side(); int trans();complex  [phys]tau(k);complex  [io,phys]C(m,n);int [o,phys]info())

       Complex version of "ormlq" in PDL::LinearAlgebra::Real. Here trans = 1 means conjugate
       transpose.

   cgeqlf
         Signature: (complex [io,phys]A(m,n);complex  [o,phys]tau(k); int [o,phys]info())

       Complex version of "geqlf" in PDL::LinearAlgebra::Real

   cungql
         Signature: (complex [io,phys]A(m,n);complex  [phys]tau(k); int [o,phys]info())

   cunmql
         Signature: (complex [phys]A(p,k); int side(); int trans();complex  [phys]tau(k);complex  [io,phys]C(m,n);int [o,phys]info())

       Complex version of "ormql" in PDL::LinearAlgebra::Real. Here trans = 1 means conjugate
       transpose.

   cgerqf
         Signature: (complex [io,phys]A(m,n);complex  [o,phys]tau(k); int [o,phys]info())

       Complex version of "gerqf" in PDL::LinearAlgebra::Real

   cungrq
         Signature: (complex [io,phys]A(m,n);complex  [phys]tau(k); int [o,phys]info())

       Complex version of "orgrq" in PDL::LinearAlgebra::Real.

   cunmrq
         Signature: (complex [phys]A(k,p); int side(); int trans();complex  [phys]tau(k);complex  [io,phys]C(m,n);int [o,phys]info())

       Complex version of "ormrq" in PDL::LinearAlgebra::Real. Here trans = 1 means conjugate
       transpose.

   ctzrzf
         Signature: (complex [io,phys]A(m,n);complex  [o,phys]tau(k); int [o,phys]info())

       Complex version of "tzrzf" in PDL::LinearAlgebra::Real

   cunmrz
         Signature: (complex [phys]A(k,p); int side(); int trans();complex  [phys]tau(k);complex  [io,phys]C(m,n);int [o,phys]info())

       Complex version of "ormrz" in PDL::LinearAlgebra::Real. Here trans = 1 means conjugate
       transpose.

   cgehrd
         Signature: (complex [io,phys]A(n,n); int [phys]ilo();int [phys]ihi();complex [o,phys]tau(k); int [o,phys]info())

       Complex version of "gehrd" in PDL::LinearAlgebra::Real

   cunghr
         Signature: (complex [io,phys]A(n,n); int [phys]ilo();int [phys]ihi();complex [phys]tau(k); int [o,phys]info())

       Complex version of "orghr" in PDL::LinearAlgebra::Real

   chseqr
         Signature: (complex [io,phys]H(n,n); int job();int compz();int [phys]ilo();int [phys]ihi();complex [o,phys]w(n);complex  [o,phys]Z(m,m); int [o,phys]info())

       Complex version of "hseqr" in PDL::LinearAlgebra::Real

   ctrevc
         Signature: (complex [io]T(n,n); int side();int howmny();int select(q);complex [o]VL(m,m);complex  [o]VR(p,p);int [o]m(); int [o]info(); [t]work(workn))

       Complex version of "trevc" in PDL::LinearAlgebra::Real

   ctgevc
         Signature: (complex [io]A(n,n); int side();int howmny();complex  [io]B(n,n);int select(q);complex [o]VL(m,m);complex  [o]VR(p,p);int [o]m(); int [o]info(); [t]work(workn))

       Complex version of "tgevc" in PDL::LinearAlgebra::Real

   cgebal
         Signature: (complex [io,phys]A(n,n); int job(); int [o,phys]ilo();int [o,phys]ihi();[o,phys]scale(n); int [o,phys]info())

       Complex version of "gebal" in PDL::LinearAlgebra::Real

   clange
         Signature: (complex A(n,m); int norm(); [o]b(); [t]work(workn))

       Complex version of "lange" in PDL::LinearAlgebra::Real

   clansy
         Signature: (complex A(n,n); int uplo(); int norm(); [o]b(); [t]work(workn))

       Complex version of "lansy" in PDL::LinearAlgebra::Real

   clantr
         Signature: (complex A(m,n); int uplo(); int norm();int diag(); [o]b(); [t]work(workn))

       Complex version of "lantr" in PDL::LinearAlgebra::Real

   cgemm
         Signature: (complex [phys]A(m,n); int transa(); int transb();complex  [phys]B(p,q);complex [phys]alpha();complex  [phys]beta();complex  [io,phys]C(r,s))

       Complex version of "gemm" in PDL::LinearAlgebra::Real.

           Arguments
           =========
               transa:  = 0:  No transpose;
                        = 1:  Transpose;
                        = 2:  Conjugate transpose;

               transb:  = 0:  No transpose;
                        = 1:  Transpose;
                        = 2:  Conjugate transpose;

   cmmult
         Signature: (complex [phys]A(m,n);complex  [phys]B(p,m);complex  [o,phys]C(p,n))

       Complex version of "mmult" in PDL::LinearAlgebra::Real

   ccrossprod
         Signature: (complex [phys]A(n,m);complex  [phys]B(p,m);complex  [o,phys]C(p,n))

       Complex version of "crossprod" in PDL::LinearAlgebra::Real

   csyrk
         Signature: (complex [phys]A(m,n); int uplo(); int trans();complex  [phys]alpha();complex  [phys]beta();complex  [io,phys]C(p,p))

       Complex version of "syrk" in PDL::LinearAlgebra::Real

   cdot
         Signature: (complex [phys]a(n);complex [phys]b(n);complex [o]c())

       Complex version of "dot" in PDL::LinearAlgebra::Real

   cdotc
         Signature: (complex [phys]a(n);complex [phys]b(n);complex [o,phys]c())

       Forms the dot product of two vectors, conjugating the first vector.

   caxpy
         Signature: (complex [phys]a(n);complex [phys] alpha();complex [io,phys]b(n))

       Complex version of "axpy" in PDL::LinearAlgebra::Real

   cnrm2
         Signature: (complex [phys]a(n);[o]b())

       Complex version of "nrm2" in PDL::LinearAlgebra::Real

   casum
         Signature: (complex [phys]a(n);[o]b())

       Complex version of "asum" in PDL::LinearAlgebra::Real

   cscal
         Signature: (complex [io,phys]a(n);complex scale())

       Complex version of "scal" in PDL::LinearAlgebra::Real

   csscal
         Signature: (complex [io,phys]a(n);scale())

       Scales a complex vector by a real constant.

   crotg
         Signature: (complex [io,phys]a();complex [phys]b();[o,phys]c();complex  [o,phys]s())

       Complex version of "rotg" in PDL::LinearAlgebra::Real

   clacpy
         Signature: (complex [phys]A(m,n); int uplo();complex  [o,phys]B(p,n))

       Complex version of "lacpy" in PDL::LinearAlgebra::Real

   claswp
         Signature: (complex [io,phys]A(m,n); int [phys]k1(); int [phys]k2(); int [phys]ipiv(p))

       Complex version of "laswp" in PDL::LinearAlgebra::Real

   ctricpy
         Signature: (A(c=2,m,n);int uplo();[o] C(c=2,m,n))

       Copy triangular part to another matrix. If uplo == 0 copy upper triangular part.

       ctricpy does not process bad values.  It will set the bad-value flag of all output
       ndarrays if the flag is set for any of the input ndarrays.

   cmstack
         Signature: (x(c,n,m);y(c,n,p);[o]out(c,n,q))

       Combine two 3D ndarrays into a single ndarray.  This routine does backward and forward
       dataflow automatically.

       cmstack does not process bad values.  It will set the bad-value flag of all output
       ndarrays if the flag is set for any of the input ndarrays.

   ccharpol
         Signature: (A(c=2,n,n);[o]Y(c=2,n,n);[o]out(c=2,p); [t]rwork(rworkn))

       Complex version of "charpol" in PDL::LinearAlgebra::Real

AUTHOR

       Copyright (C) Grégory Vanuxem 2005-2018.

       This library is free software; you can redistribute it and/or modify it under the terms of
       the Perl Artistic License as in the file Artistic_2 in this distribution.