| Author(s): H. Lipps | Library: KERNLIB |
| Submitter: | Submitted: 18.12.1979 |
| Language: Fortran or Assembler or COMPASS | Revised: 15.11.1995 |
These subprograms perform elementary matrix operations.
Structure:
SUBROUTINE and FUNCTION subprograms
User Entry Names:
| RMADD, | RMBIL, | RMCPY, | RMDMP, | RMMNA, | RMMNS, | RMMPA, | RMMPS, |
| RMMPY, | RMRAN, | RMSCL, | RMSET, | RMSUB, | RMUTL, | RUMNA, | RUMNS, |
| RUMPA, | RUMPS, | RUMPY, | |||||
| DMADD, | DMBIL, | DMCPY, | DMDMP, | DMMNA, | DMMNS, | DMMPA, | DMMPS, |
| DMMPY, | DMRAN, | DMSCL, | DMSET, | DMSUB, | DMUTL, | DUMNA, | DUMNS, |
| DUMPA, | DUMPS, | DUMPY, | |||||
| CMADD, | CMBIL, | CMCPY, | CMDMP, | CMMNA, | CMMNS, | CMMPA, | CMMPS, |
| CMMPY, | CMRAN, | CMSCL, | CMSET, | CMSUB, | CMUTL, | CUMNA, | CUMNS, |
| CUMPA, | CUMPS, | CUMPY, | CMMPYC, | CCMMPY, | CUMPYC, | CCUMPY |
Usage:
For t = R (type REAL), t = D (type DOUBLE PRECISION), t = C (type COMPLEX):
| CALL tMSET (M,N,S,Z11,Z12,Z21) | zij = s |
| CALL tMRAN (M,N,A,B,Z11,Z12,Z21) | zij = random (see Note 2) |
| CALL tMCPY (M,N,X11,X12,X21,Z11,Z12,Z21) | zij = xij |
| CALL tMUTL (N,X11,X12,X21) | xjk = xkj (j > k) (see Note 3) |
| CALL tMSCL (M,N,S,X11,X12,X21,Z11,Z12,Z21) | zij = sxij |
| CALL tMDMP (M,N,D1,D2,X11,X12,X21,Z11,Z12,Z21) | zij = dixij |
| CALL tMADD (M,N,X11,X12,X21,Y11,Y12,Y21,Z11,Z12,Z21) | zij = xij + yij |
| CALL tMSUB (M,N,X11,X12,X21,Y11,Y12,Y21,Z11,Z12,Z21) | zij = xij - yij |
| CALL tMMPY (M,N,X11,X12,X21,Y1,Y2,Z1,Z2) |
zi = xi1y1 + |
| CALL tMMPA (M,N,X11,X12,X21,Y1,Y2,Z1,Z2) |
zi = xi1y1 + |
| CALL tMMPS (M,N,X11,X12,X21,Y1,Y2,Z1,Z2) |
zi = xi1y1 + |
| CALL tMMNA (M,N,X11,X12,X21,Y1,Y2,Z1,Z2) |
zi = - xi1y1 - |
| CALL tMMNS (M,N,X11,X12,X21,Y1,Y2,Z1,Z2) |
zi = - xi1y1 - |
| CALL tUMPY (N,U11,U12,U22,Y1,Y2,Z1,Z2) |
zj = ujjyj + |
| CALL tUMPA (N,U11,U12,U22,Y1,Y2,Z1,Z2) |
zj = ujjyj + |
| CALL tUMPS (N,U11,U12,U22,Y1,Y2,Z1,Z2) |
zj = ujjyj + |
| CALL tUMNA (N,U11,U12,U22,Y1,Y2,Z1,Z2) |
zj = - ujjyj - |
| CALL tUMNS (N,U11,U12,U22,Y1,Y2,Z1,Z2) |
zj = - ujjyj - |
| F = tMBIL (N,V1,V2,X11,X12,X21,Y1,Y2) |
f = |
| CALL CMMPYC(M,N,X11,X12,X21,Y1,Y2,Z1,Z2) |
zi = xi1 |
| CALL CCMMPY(M,N,X11,X12,X21,Y1,Y2,Z1,Z2) |
zi = |
| CALL CUMPYC(N,U11,U12,U22,Y1,Y2,Z1,Z2) |
zj = ujj |
| CALL CCUMPY(N,U11,U12,U22,Y1,Y2,Z1,Z2) |
zj = |
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: