mkl_?trsm_compact
mkl_?trsm_compact
Solves a triangular matrix equation for a set of general, m x n matrices that have been stored in Compact format.
Syntax
mkl_strsm_compact
(
MKL_LAYOUT
layout
,
MKL_SIDE
side
,
MKL_UPLO
uplo
,
MKL_TRANSPOSE
transa
,
MKL_DIAG
diag
,
MKL_INT
m
,
MKL_INT
n
,
float
alpha
,
const
float
*ap
,
MKL_INT
a_stride
,
float
*bp
,
MKL_INT
b_stide
,
MKL_COMPACT_PACK
format
,
MKL_INT
nm
);
mkl_dtrsm_compact
(
MKL_LAYOUT
layout
,
MKL_SIDE
side
,
MKL_UPLO
uplo
,
MKL_TRANSPOSE
transa
,
MKL_DIAG
diag
,
MKL_INT
m
,
MKL_INT
n
,
double
alpha
,
const
double
*ap
,
MKL_INT
a_stride
,
double
*bp
,
MKL_INT
b_stride
,
MKL_COMPACT_PACK
format
,
MKL_INT
nm
);
mkl_ctrsm_compact
(
MKL_LAYOUT
layout
,
MKL_SIDE
side
,
MKL_UPLO
uplo
,
MKL_TRANSPOSE
transa
,
MKL_DIAG
diag
,
MKL_INT
m
,
MKL_INT
n
,
mkl_compact_complex_float
*alpha
,
const
float
*ap
,
MKL_INT
a_stride
,
float
*bp
,
MKL_INT
b_stride
,
MKL_COMPACT_PACK
format
,
MKL_INT
nm
);
mkl_ztrsm_compact
(
MKL_LAYOUT
layout
,
MKL_SIDE
side
,
MKL_UPLO
uplo
,
MKL_TRANSPOSE
transa
,
MKL_DIAG
diag
,
MKL_INT
m
,
MKL_INT
n
,
mkl_compact_complex_double
*alpha
,
const
double
*ap
,
MKL_INT
a_stride
,
double
*bp
,
MKL_INT
b_stride
,
MKL_COMPACT_PACK
format
,
MKL_INT
nm
);
Description
The routine solves one of the following matrix equations for a
group of
nm
matrices:op(A
c
)*Xc
= alpha*Bc
,or
X
c
*op(Ac
) = alpha*Bc
where:
alpha is a scalar, X
c
and Bc
are m
-by-n
matrices that have been stored in compact format, and Ac
is a m
-by-m
unit, or non-unit, upper or lower triangular matrix that has
been stored in compact format.op(A
c
) is one of op(Ac
) = Ac
,
or op(Ac
) = Ac
T
, or
op(Ac
) = Ac
H
,B
c
is overwritten by the solution matrix
Xc
.Input Parameters
- layout
- Specifies whether two-dimensional array storage is row-major (MKL_ROW_MAJOR) or column-major (MKL_COL_MAJOR).
- side
- Specifies whether op(Ac) appears on the left or right of Xcin the equation:if side = MKL_LEFT, then op(Ac)*Xc= alpha*Bc, if side = MKL_RIGHT, then Xc*op(Ac) = alpha*Bc
- uplo
- Specifies whether matrix Acis upper or lower triangular.If uplo = MKL_UPPER, Acis upper triangular.If uplo = MKL_LOWER, Acis lower triangular.
- transa
- Specifies the operation:If, then op(Atransa=MKL_NOTRANSc) = Ac;If, then op(Atransa=MKL_TRANSc) = AcT;If, then op(Atransa=MKL_CONJTRANSc) = AcH;
- diag
- Specifies whether the matrix Acis unit triangular:If, then the matrix is unit triangular;diag=MKL_UNITif, then the matrix is not unit triangular.diag=MKL_NONUNIT
- m
- The number of rows of Bcand the number of rows and columns of Acwhenside=MKL_LEFT;m>= 0.
- n
- The number of columns of Bcand the number of rows and columns of Acwhenside=MKL_RIGHT;n>= 0.
- alpha
- Specifies the scalaralpha. When alpha is zero, then ap is not referenced and bp need not be set before entry.
- ap
- Array, size ldap*k*nm, where k is m when side=MKL_LEFTand n when side =MKL_RIGHT.appoints to the beginning ofnmAcmatrices stored in compact format. When uplo = MKL_UPPER, Acis assumed to be an upper triangular matrix and the lower triangular part of Acis not referenced. With uplo = MKL_LOWER, Acis assumed to be a lower triangular matrix and the upper triangular part of Acis not referenced. With diag = MKL_UNIT, the diagonal elements of Acare not referenced either, but are assumed to be unity.
- ldap
- Column stride (column-major layout) or row stride (row-major layout) of Ac.Whenside=MKL_LEFT,ldapmust be at least max (1,m).Whenside=MKL_RIGHT,ldapmust be at least max (1,n).
- bp
- Array, size ldbp*n*nm when layout = MKL_COL_MAJOR; size ldbp*m*nm when layout = MKL_ROW_MAJOR. Before entry, bp points to the beginning of nm Bcmatrices stored in compact format.
- ldbp
- Column stride (column-major layout) or row stride (row-major layout) of Bc.layout=MKL_COL_MAJORldbpmust be at least max (1,m).layout=MKL_ROW_MAJOR*ldbpmust be at least max (1,n).
- format
- Specifies the format of the compact matrices. See <Compact Format> or mkl_get_format_compact for details.
- nm
- Total number of matrices stored in Compact format; nm >= 0.
The values of
ldap
and ldbp
used in mkl_?trsm_compact
must be consistent with the values used in mkl_?get_size_compact
, mkl_?gepack_compact
, and mkl_?geunpack_compact
.Output Parameters
- bp
- On exit, Bcis overwritten by the solution matrix Xc.bppoints to the beginning of nm such Xcmatrices.