CLATDF(3)      LAPACK routine of NEC Numeric Library Collection      CLATDF(3)



NAME
       CLATDF

SYNOPSIS
       SUBROUTINE CLATDF (IJOB, N, Z, LDZ, RHS, RDSUM, RDSCAL, IPIV, JPIV)



PURPOSE
            CLATDF computes the contribution to the reciprocal Dif-estimate
            by solving for x in Z * x = b, where b is chosen such that the norm
            of x is as large as possible. It is assumed that LU decomposition
            of Z has been computed by CGETC2. On entry RHS = f holds the
            contribution from earlier solved sub-systems, and on return RHS = x.

            The factorization of Z returned by CGETC2 has the form
            Z = P * L * U * Q, where P and Q are permutation matrices. L is lower
            triangular with unit diagonal elements and U is upper triangular.




ARGUMENTS
           IJOB      (input)
                     IJOB is INTEGER
                     IJOB = 2: First compute an approximative null-vector e
                         of Z using CGECON, e is normalized and solve for
                         Zx = +-e - f with the sign giving the greater value of
                         2-norm(x).  About 5 times as expensive as Default.
                     IJOB .ne. 2: Local look ahead strategy where
                         all entries of the r.h.s. b is choosen as either +1 or
                         -1.  Default.

           N         (input)
                     N is INTEGER
                     The number of columns of the matrix Z.

           Z         (input)
                     Z is REAL array, dimension (LDZ, N)
                     On entry, the LU part of the factorization of the n-by-n
                     matrix Z computed by CGETC2:  Z = P * L * U * Q

           LDZ       (input)
                     LDZ is INTEGER
                     The leading dimension of the array Z.  LDA >= max(1, N).

           RHS       (input/output)
                     RHS is REAL array, dimension (N).
                     On entry, RHS contains contributions from other subsystems.
                     On exit, RHS contains the solution of the subsystem with
                     entries according to the value of IJOB (see above).

           RDSUM     (input/output)
                     RDSUM is REAL
                     On entry, the sum of squares of computed contributions to
                     the Dif-estimate under computation by CTGSYL, where the
                     scaling factor RDSCAL (see below) has been factored out.
                     On exit, the corresponding sum of squares updated with the
                     contributions from the current sub-system.
                     If TRANS = 'T' RDSUM is not touched.
                     NOTE: RDSUM only makes sense when CTGSY2 is called by CTGSYL.

           RDSCAL    (input/output)
                     RDSCAL is REAL
                     On entry, scaling factor used to prevent overflow in RDSUM.
                     On exit, RDSCAL is updated w.r.t. the current contributions
                     in RDSUM.
                     If TRANS = 'T', RDSCAL is not touched.
                     NOTE: RDSCAL only makes sense when CTGSY2 is called by
                     CTGSYL.

           IPIV      (input)
                     IPIV is INTEGER array, dimension (N).
                     The pivot indices; for 1 <= i <= N, row i of the
                     matrix has been interchanged with row IPIV(i).

           JPIV      (input)
                     JPIV is INTEGER array, dimension (N).
                     The pivot indices; for 1 <= j <= N, column j of the
                     matrix has been interchanged with column JPIV(j).



LAPACK routine                  31 October 2017                      CLATDF(3)