Previous: lapack-d Up: ../lapack.html Next: lapack-l


Table of contents


icmax1


 NAME
      ICMAX1 - find the index of the element whose real part has
      maximum absolute value

 SYNOPSIS
      INTEGER FUNCTION ICMAX1( N, CX, INCX )

          INTEGER      INCX, N

          COMPLEX      CX( * )

 PURPOSE
      ICMAX1 finds the index of the element whose real part has
      maximum absolute value.

      Based on ICAMAX from Level 1 BLAS.
      The change is to use the 'genuine' absolute value.

      Contributed by Nick Higham for use with CLACON.

 ARGUMENTS
      N       (input) INTEGER
              The number of elements in the vector CX.

      CX      (input) COMPLEX array, dimension (N)
              The vector whose elements will be summed.

      INCX    (input) INTEGER
              The spacing between successive values of CX.  INCX
              >= 1.

              NEXT LINE IS THE ONLY MODIFICATION.

              CODE FOR INCREMENT NOT EQUAL TO 1

              CODE FOR INCREMENT EQUAL TO 1

              End of ICMAX1

ilaenv


 NAME
      ILAENV - i called from the LAPACK routines to choose
      problem-dependent parameters for the local environment

 SYNOPSIS
      INTEGER FUNCTION ILAENV( ISPEC, NAME, OPTS, N1, N2, N3, N4 )

          CHARACTER*(  * ) NAME, OPTS

          INTEGER      ISPEC, N1, N2, N3, N4

 PURPOSE
      ILAENV is called from the LAPACK routines to choose
      problem-dependent parameters for the local environment.  See
      ISPEC for a description of the parameters.

      This version provides a set of parameters which should give
      good, but not optimal, performance on many of the currently
      available computers.  Users are encouraged to modify this
      subroutine to set the tuning parameters for their particular
      machine using the option and problem size information in the
      arguments.

      This routine will not function correctly if it is converted
      to all lower case.  Converting it to all upper case is
      allowed.

 ARGUMENTS
      ISPEC   (input) INTEGER
              Specifies the parameter to be returned as the value
              of ILAENV.  = 1: the optimal blocksize; if this
              value is 1, an unblocked algorithm will give the
              best performance.  = 2: the minimum block size for
              which the block routine should be used; if the
              usable block size is less than this value, an
              unblocked routine should be used.  = 3: the cross-
              over point (in a block routine, for N less than this
              value, an unblocked routine should be used) = 4: the
              number of shifts, used in the nonsymmetric eigen-
              value routines = 5: the minimum column dimension for
              blocking to be used; rectangular blocks must have
              dimension at least k by m, where k is given by
              ILAENV(2,...) and m by ILAENV(5,...) = 6: the cross-
              over point for the SVD (when reducing an m by n
              matrix to bidiagonal form, if max(m,n)/min(m,n)
              exceeds this value, a QR factorization is used first
              to reduce the matrix to a triangular form.) = 7: the
              number of processors
              = 8: the crossover point for the multishift QR and
              QZ methods for nonsymmetric eigenvalue problems.

      NAME    (input) CHARACTER*(*)
              The name of the calling subroutine, in either upper
              case or lower case.

      OPTS    (input) CHARACTER*(*)
              The character options to the subroutine NAME, con-
              catenated into a single character string.  For exam-
              ple, UPLO = 'U', TRANS = 'T', and DIAG = 'N' for a
              triangular routine would be specified as OPTS =
              'UTN'.

      N1      (input) INTEGER
              N2      (input) INTEGER N3      (input) INTEGER N4
              (input) INTEGER Problem dimensions for the subrou-
              tine NAME; these may not all be required.

              >= 0: the value of the parameter specified by ISPEC
              < 0:  if ILAENV = -k, the k-th argument had an ille-
              gal value.

 FURTHER DETAILS
      The following conventions have been used when calling ILAENV
      from the LAPACK routines:
      1)  OPTS is a concatenation of all of the character options
      to
          subroutine NAME, in the same order that they appear in
      the
          argument list for NAME, even if they are not used in
      determining
          the value of the parameter specified by ISPEC.
      2)  The problem dimensions N1, N2, N3, N4 are specified in
      the order
          that they appear in the argument list for NAME.  N1 is
      used
          first, N2 second, and so on, and unused problem dimen-
      sions are
          passed a value of -1.
      3)  The parameter value returned by ILAENV is checked for
      validity in
          the calling subroutine.  For example, ILAENV is used to
      retrieve
          the optimal blocksize for STRTRI as follows:

          NB = ILAENV( 1, 'STRTRI', UPLO // DIAG, N, -1, -1, -1 )
          IF( NB.LE.1 ) NB = MAX( 1, N )