SUBROUTINE DTRANS( PLACE, SCALE, SOURCE, M, N, DEST) CHARACTER * 1 PLACE INTEGER M, N DOUBLE PRECISION SCALE DOUBLE PRECISION SOURCE(*), DEST(*) SUBROUTINE DTRANS_64( PLACE, SCALE, SOURCE, M, N, DEST) CHARACTER * 1 PLACE INTEGER*8 M, N DOUBLE PRECISION SCALE DOUBLE PRECISION SOURCE(*), DEST(*)
SUBROUTINE TRANS( [PLACE], SCALE, SOURCE, M, N, DEST) CHARACTER(LEN=1) :: PLACE INTEGER :: M, N REAL(8) :: SCALE REAL(8), DIMENSION(:) :: SOURCE, DEST SUBROUTINE TRANS_64( [PLACE], SCALE, SOURCE, M, N, DEST) CHARACTER(LEN=1) :: PLACE INTEGER(8) :: M, N REAL(8) :: SCALE REAL(8), DIMENSION(:) :: SOURCE, DEST
void dtrans(char place, double scale, double *source, int m, int n, double *dest);
void dtrans_64(char place, double scale, double *source, long m, long n, double *dest);
PLACE = 'I' or 'i': SOURCE = SCALE * SOURCE' PLACE = 'O' or 'o': DEST = SCALE * SOURCE'