NAME

dtrans - transpose and scale source matrix


SYNOPSIS

  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(*)

F95 INTERFACE

  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

C INTERFACE

#include <sunperf.h>

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);


PURPOSE

dtrans scales and transposes the source matrix. The N2 x N1 result is written into SOURCE when PLACE = 'I' or 'i', and DEST when PLACE = 'O' or 'o'.

  PLACE = 'I' or 'i': SOURCE = SCALE * SOURCE'
  PLACE = 'O' or 'o': DEST = SCALE * SOURCE'


ARGUMENTS