Next: Problem Dimensions Up: Design and Documentation of Previous: Order of Arguments

## Option Arguments

Arguments specifying options are usually of type CHARACTER1. The arguments that specify options are character arguments with the names `SIDE`, `TRANS`, `UPLO`, and `DIAG`. On entry to a ScaLAPACK routine, these arguments are global input and must have the same value on each process in the process grid.

`SIDE` is used by the routines as follows:

`TRANS` is used by the routines as follows:
In the real case the values ``T'` and ``C'` have the same meaning, and in the complex case the value ``T'` is not allowed.

`UPLO` is used by the Hermitian, symmetric, and triangular distributed matrix routines to specify whether the upper or lower triangle is being referenced as follows:

`DIAG` is used by the triangular distributed matrix routines to specify whether the distributed matrix is unit triangular, as follows:
When `DIAG` is supplied as ``U'`, the diagonal elements are not referenced. For example:

UPLO
  (global input) CHARACTER1
  = 'U': Upper triangle of the matrix A(IA:IA+M-1,JA:JA+N-1);
  = 'L': Lower triangle of the matrix A(IA:IA+M-1,JA:JA+N-1).

The corresponding lower-case characters may be supplied (with the same meaning), but any other value is illegal (see section 4.6.6).

A longer character string can be passed as the actual argument, making the calling program more readable, but only the first character is significant; this is a standard feature of Fortran 77. For example:

           CALL PSPOTRS('upper', . . . )