symm(3F)

SSYMM, DSYMM, CSYMM, ZSYMM - Multiplies a real or complex general matrix by a real or complex symmetric matrix

As shipped in IRIX 6.5.30. Last changed in IRIX 6.5.19.

NAME
     SSYMM, DSYMM, CSYMM, ZSYMM - Multiplies a real or complex general
     matrix by a real or complex symmetric matrix

SYNOPSIS
     Real

        CALL SSYMM (side, uplo, m, n, alpha, a, lda, b, ldb, beta, c, ldc)

     Double precision

        CALL DSYMM (side, uplo, m, n, alpha, a, lda, b, ldb, beta, c, ldc)

     Complex

        CALL CSYMM (side, uplo, m, n, alpha, a, lda, b, ldb, beta, c, ldc)

     Double complex

        CALL ZSYMM (side, uplo, m, n, alpha, a, lda, b, ldb, beta, c, ldc)

DESCRIPTION
     SSYMM and DSYMM multiply a real general matrix by a real symmetric
     matrix.

     CSYMM and ZSYMM multiply a complex general matrix by a complex
     symmetric matrix.

     These routines perform one of the following matrix-matrix operations:

          C <- alpha AB + beta C

          or

          C <- alpha BA + beta C

     where alpha and beta are scalars, A is a symmetric matrix, and B and C
     are m-by-n matrices.

     These routines have the following arguments:

     side      Character*1.  (input)
               Specifies whether the symmetric matrix A appears on the left
               or right in the operation, as follows:

               side = 'L' or 'l':  C <- alpha AB + beta C
               side = 'R' or 'r'; C <- alpha BA + beta C

     uplo      Character*1.  (input)
               Specifies whether the upper or lower triangular part of the
               symmetric matrix A is referenced, as follows:

               uplo = 'U' or 'u':  only the upper triangular part of the
               symmetric matrix is referenced.
               uplo = 'L' or 'l':  only the lower triangular part of the
               symmetric matrix is referenced.

     m         Integer.  (input)
               Specifies the number of rows in matrix C.  m must be >= 0.

     n         Integer.  (input)
               Specifies the number of columns in matrix C.  n must be >=
               0.

     alpha     Scalar factor.  (input)
               SSYMM: Real.
               DSYMM: Double precision.
               CSYMM: Complex.
               ZSYMM: Double complex.

     a         Array of dimension (lda,ka).  (input)
               SSYMM: Real array.
               DSYMM: Double precision array.
               CSYMM: Complex array.
               ZSYMM: Double complex array.
               When side = 'L' or 'l', ka is m; otherwise, it is n.
               Contains the matrix A.

               Before entry with side = 'L' or 'l', the m-by-m part of
               array a must contain the symmetric matrix A, such that:

               * If uplo = 'U' or 'u', the leading m-by-m upper triangular
                 part of array a must contain the upper triangular part of
                 the symmetric matrix.  The strictly lower triangular part
                 of a is not referenced.

               * If uplo = 'L' or 'l', the leading m-by-m lower triangular
                 part of array a must contain the lower triangular part of
                 the symmetric matrix.  The strictly upper triangular part
                 of a is not referenced.

               Before entry with side = 'R' or 'r', the n-by-n part of
               array a must contain the symmetric matrix A, such that:

               * If uplo = 'U' or 'u', the leading n-by-n upper triangular
                 part of array a must contain the upper triangular part of
                 the symmetric matrix.  The strictly lower triangular part
                 of a is not referenced.

               * If uplo = 'L' or 'l', the leading n-by-n lower triangular
                 part of array a must contain the lower triangular part of
                 the symmetric matrix.  The strictly upper triangular part
                 of a is not referenced.

     lda       Integer.  (input)
               Specifies the first dimension of a as declared in the
               calling program.  When side = 'L' or 'l', lda >= MAX(1,m);
               otherwise, lda >= MAX(1,n).

     b         Array of dimension (ldb,n).  (input)
               SSYMM: Real array.
               DSYMM: Double precision array.
               CSYMM: Complex array.
               ZSYMM: Double complex array.

               Contains the matrix B.  Before entry, the leading m-by-n
               part of array b must contain matrix B.

     ldb       Integer.  (input)
               Specifies the first dimension of b as declared in the
               calling program.  ldb >= MAX(1,m).

     beta      Scalar factor.  (input)
               SSYMM: Real.
               DSYMM: Double precision.
               CSYMM: Complex.
               ZSYMM: Double complex.  When beta is supplied as 0, c need
               not be set on input.

     c         Array of dimension (ldc,n).  (input and output)
               SSYMM: Real array.
               DSYMM: Double precision array.
               CSYMM: Complex array.
               ZSYMM: Double complex array.

               Contains the matrix C.  Before entry, the leading m-by-n
               part of array c must contain matrix C, except when beta is
               0; in which case, c need not be set.  On exit, the m-by-n
               updated matrix overwrites array c.

     ldc       Integer.  (input)
               Specifies the first dimension of c as declared in the
               calling program.  ldc >= MAX(1,m).

NOTES
     These routines are Level 3 Basic Linear Algebra Subprograms (Level 3
     BLAS).

SEE ALSO
     HEMM(3F)