Routine ID: F003 | |
---|---|
Author(s): | Library: KERNLIB |
Submitter: | Submitted: 18.12.1979 |
Language: Fortran or Assembler or COMPASS | Revised: 27.05.1987 |
These subprograms perform elementary matrix operations.
Structure:
SUBROUTINE and FUNCTION subprograms
User Entry Names:
RMADD, | RMBIL, | RMCPY, | RMMNA, | RMMNS, | RMMPA, | RMMPS, | RMMPY, |
RMRAN, | RMSCL, | RMSET, | RMSUB, | RMUTL, | RRSCL, | RUMNA, | RUMNS, |
RUMPA, | RUMPS, | RUMPY, | |||||
DMADD, | DMBIL, | DMCPY, | DMMNA, | DMMNS, | DMMPA, | DMMPS, | DMMPY, |
DMRAN, | DMSCL, | DMSET, | DMSUB, | DMUTL, | DRSCL, | DUMNA, | DUMNS, |
DUMPA, | DUMPS, | DUMPY, | |||||
CMADD, | CMBIL, | CMCPY, | CMMNA, | CMMNS, | CMMPA, | CMMPS, | CMMPY, |
CMRAN, | CMSCL, | CMSET, | CMSUB, | CMUTL, | CRSCL, | CUMNA, | CUMNS, |
CUMPA, | CUMPS, | CUMPY, | CMMPYC, | CCMMPY, | CUMPYC, | CCUMPY |
Usage:
For (type REAL), (type DOUBLE PRECISION), (type COMPLEX):
CALL tMSET (M,N,S,Z11,Z12,Z21) |
|
CALL tMRAN (M,N,A,B,Z11,Z12,Z21) | random(see Note2) |
CALL tMCPY (M,N,X11,X12,X21,Z11,Z12,Z21) |
|
CALL tMUTL (N,X11,X12,X21) | (see Note3) |
CALL tMSCL (M,N,S,X11,X12,X21,Z11,Z12,Z21) |
|
CALL tRSCL (M,N,D1,D2,X11,X12,X21,Z11,Z12,Z21) |
|
CALL tMADD (M,N,X11,X12,X21,Y11,Y12,Y21,Z11,Z12) |
|
CALL tMSUB (M,N,X11,X12,X21,Y11,Y12,Y21,Z11,Z12) |
|
CALL tMMPY (M,N,X11,X12,X21,Y1,Y2,Z1,Z2) |
|
CALL tMMPA (M,N,X11,X12,X21,Y1,Y2,Z1,Z2) |
|
CALL tMMPS (M,N,X11,X12,X21,Y1,Y2,Z1,Z2) |
|
CALL tMMNA (M,N,X11,X12,X21,Y1,Y2,Z1,Z2) |
|
CALL tMMNS (M,N,X11,X12,X21,Y1,Y2,Z1,Z2) |
|
CALL tUMPY (N,U11,U12,U22,Y1,Y2,Z1,Z2) |
|
CALL tUMPA (N,U11,U12,U22,Y1,Y2,Z1,Z2) |
|
CALL tUMPS (N,U11,U12,U22,Y1,Y2,Z1,Z2) |
|
CALL tUMNA (N,U11,U12,U22,Y1,Y2,Z1,Z2) |
|
CALL tUMNS (N,U11,U12,U22,Y1,Y2,Z1,Z2) |
|
F = tMBIL (N,V1,V2,X11,X12,X21,Y1,Y2) |
|
CALL CMMPYC(M,N,X11,X12,X21,Y1,Y2,Z1,Z2) |
|
CALL CCMMPY(M,N,X11,X12,X21,Y1,Y2,Z1,Z2) |
|
CALL CUMPYC(N,U11,U12,U22,Y1,Y2,Z1,Z2) |
|
CALL CCUMPY(N,U11,U12,U22,Y1,Y2,Z1,Z2) |
|
where
are the complex conjugates of , respectively.
of the result matrix .
Accuracy:
On computers with IBM 370 architecture, all routines that accumulate the inner product of type REAL or COMPLEX use double-precision arithmetic internally; the final result is then rounded to single precision.
Notes:
from the actual arguments X11, X12, and X21.
H. Lipps