SSYMM/DSYMM/CHEMM/CSYMM/ZHEMM/ZSYMM |
If an error in the arguments is detected, the subprograms call error handler XERBLA, which writes an error message onto the standard error file and terminates execution. The standard version of XERBLA (refer to the end of this chapter) can be replaced with a
side ≠ ’L’ or ’l’ or ’R’ or ’r’ uplo ≠ ’L’ or ’l’ or ’U’ or ’u’ m < 0
n < 0
lda too small ldb < max(m,1) ldc < max(m,1)
Actual character arguments in a subroutine call can be longer than the corresponding dummy arguments. Therefore, readability of the CALL statement may be improved, for example, by coding the side argument as ’LEFT’ for ’L’ or ’RIGHT’ for ’R’. Refer to “Example 2.”
Example 1 Form the REAL*4 matrix product C = AB, where A is a
CHARACTER*1 SIDE,UPLO |
| |
INTEGER*4 | M,N,LDA,LDB,LDC |
|
REAL*4 | ALPHA,BETA,A(10,10),B(10,10),C(10,10) | |
SIDE = ’L’ |
|
|
UPLO = ’U’ |
|
|
M = 6 |
|
|
N = 8 |
|
|
ALPHA = 1.0 |
|
|
BETA = 0.0 |
|
|
LDA = 10 |
|
|
LDB = 10 |
|
|
LDC = 10 |
|
|
CALL SSYMM (SIDE,UPLO,M,N,ALPHA,A,LDA,B,LDB,BETA,C,LDC) | ||
Example 2 Form the COMPLEX*8 | 1 | |
|
| 2 |
scalar, A is an
268HP MLIB User’s Guide