dtrmm man page on OpenIndiana

Man page or keyword search:  
man Server   20441 pages
apropos Keyword Search (all sections)
Output format
OpenIndiana logo
[printable version]

dtrmm(3P)		    Sun Performance Library		     dtrmm(3P)

NAME
       dtrmm  - perform one of the matrix-matrix operations   B := alpha*op( A
       )*B, or B := alpha*B*op( A )

SYNOPSIS
       SUBROUTINE DTRMM(SIDE, UPLO, TRANSA, DIAG, M, N, ALPHA, A, LDA, B,
	     LDB)

       CHARACTER * 1 SIDE, UPLO, TRANSA, DIAG
       INTEGER M, N, LDA, LDB
       DOUBLE PRECISION ALPHA
       DOUBLE PRECISION A(LDA,*), B(LDB,*)

       SUBROUTINE DTRMM_64(SIDE, UPLO, TRANSA, DIAG, M, N, ALPHA, A, LDA, B,
	     LDB)

       CHARACTER * 1 SIDE, UPLO, TRANSA, DIAG
       INTEGER*8 M, N, LDA, LDB
       DOUBLE PRECISION ALPHA
       DOUBLE PRECISION A(LDA,*), B(LDB,*)

   F95 INTERFACE
       SUBROUTINE TRMM(SIDE, UPLO, [TRANSA], DIAG, [M], [N], ALPHA, A, [LDA],
	      B, [LDB])

       CHARACTER(LEN=1) :: SIDE, UPLO, TRANSA, DIAG
       INTEGER :: M, N, LDA, LDB
       REAL(8) :: ALPHA
       REAL(8), DIMENSION(:,:) :: A, B

       SUBROUTINE TRMM_64(SIDE, UPLO, [TRANSA], DIAG, [M], [N], ALPHA, A,
	      [LDA], B, [LDB])

       CHARACTER(LEN=1) :: SIDE, UPLO, TRANSA, DIAG
       INTEGER(8) :: M, N, LDA, LDB
       REAL(8) :: ALPHA
       REAL(8), DIMENSION(:,:) :: A, B

   C INTERFACE
       #include <sunperf.h>

       void dtrmm(char side, char uplo, char transa, char diag, int m, int  n,
		 double alpha, double *a, int lda, double *b, int ldb);

       void  dtrmm_64(char  side,  char	 uplo, char transa, char diag, long m,
		 long n, double alpha, double *a, long lda,  double  *b,  long
		 ldb);

PURPOSE
       dtrmm  performs	one  of	 the matrix-matrix operations B := alpha*op( A
       )*B, or B := alpha*B*op( A ) where  alpha  is a scalar,	B  is an m  by
       n matrix,  A  is a unit, or non-unit,  upper or lower triangular matrix
       and  op( A )  is one  of

	  op( A ) = A	or   op( A ) = A'.

ARGUMENTS
       SIDE (input)
		 On entry,  SIDE specifies whether  op( A ) multiplies B  from
		 the left or right as follows:

		 SIDE = 'L' or 'l'   B := alpha*op( A )*B.

		 SIDE = 'R' or 'r'   B := alpha*B*op( A ).

		 Unchanged on exit.

       UPLO (input)
		 On  entry, UPLO specifies whether the matrix A is an upper or
		 lower triangular matrix as follows:

		 UPLO = 'U' or 'u'   A is an upper triangular matrix.

		 UPLO = 'L' or 'l'   A is a lower triangular matrix.

		 Unchanged on exit.

       TRANSA (input)
		 On entry, TRANSA specifies the form of op( A ) to be used  in
		 the matrix multiplication as follows:

		 TRANSA = 'N' or 'n'   op( A ) = A.

		 TRANSA = 'T' or 't'   op( A ) = A'.

		 TRANSA = 'C' or 'c'   op( A ) = A'.

		 Unchanged on exit.

		 TRANSA is defaulted to 'N' for F95 INTERFACE.

       DIAG (input)
		 On  entry, DIAG specifies whether or not A is unit triangular
		 as follows:

		 DIAG = 'U' or 'u'   A is assumed to be unit triangular.

		 DIAG = 'N' or 'n'   A is not assumed to be unit triangular.

		 Unchanged on exit.

       M (input)
		 On entry, M specifies the number  of  rows  of	 B.  M	>=  0.
		 Unchanged on exit.

       N (input)
		 On  entry,  N	specifies the number of columns of B.  N >= 0.
		 Unchanged on exit.

       ALPHA (input)
		 On entry,  ALPHA specifies the scalar	alpha. When  alpha  is
		 zero  then  A is not referenced and  B need not be set before
		 entry.	 Unchanged on exit.

       A (input)
		 DOUBLE PRECISION array of DIMENSION ( LDA, k ), where k is  m
		 when  SIDE = 'L' or 'l'  and is  n  when  SIDE = 'R' or 'r'.

		 Before	 entry	with  UPLO = 'U' or 'u',  the  leading	k by k
		 upper triangular part of the array  A must contain the	 upper
		 triangular  matrix  and the strictly lower triangular part of
		 A is not referenced.

		 Before entry  with  UPLO = 'L' or 'l',	 the  leading  k by  k
		 lower	triangular part of the array  A must contain the lower
		 triangular matrix  and the strictly upper triangular part  of
		 A is not referenced.

		 Note  that when  DIAG = 'U' or 'u',  the diagonal elements of
		 A are not referenced either,  but  are	 assumed  to  be  one.
		 Unchanged on exit.

       LDA (input)
		 On  entry, LDA specifies the first dimension of A as declared
		 in the calling (sub) program.	When  SIDE = 'L' or 'l'	  then
		 LDA  >= max( 1, m ), when  SIDE = 'R' or 'r' then LDA >= max(
		 1, n ).  Unchanged on exit.

       B (input/output)
		 DOUBLE PRECISION array of  DIMENSION  (  LDB,	n  ).	Before
		 entry,	 the leading  m by n part of the array	B must contain
		 the matrix  B,	 and  on exit  is overwritten  by  the	transā€
		 formed matrix.

       LDB (input)
		 On  entry, LDB specifies the first dimension of B as declared
		 in  the  calling  (sub)  program.    LDB  >=  max(  1,	 m  ).
		 Unchanged on exit.

				  6 Mar 2009			     dtrmm(3P)
[top]

List of man pages available for OpenIndiana

Copyright (c) for man pages and the logo by the respective OS vendor.

For those who want to learn more, the polarhome community provides shell access and support.

[legal] [privacy] [GNU] [policy] [cookies] [netiquette] [sponsors] [FAQ]
Tweet
Polarhome, production since 1999.
Member of Polarhome portal.
Based on Fawad Halim's script.
....................................................................
Vote for polarhome
Free Shell Accounts :: the biggest list on the net