dtrsm

STD.BLAS.dtrsm( side, tri, transposeA, diag, M, N, lda, alpha, A, B);

sideSide for A, Side.Ax is op(A) X = alpha B
triIndicates whether upper or lower triangle is used
transposeAIs op(A) the transpose of A
diagThe diagonal (an implied unit diagonal or supplied)
MNumber of rows
NNumber of columns
lda The leading dimension of the A matrix, either M or N
alphaThe scalar multiplier for B
AA triangular matrix
BThe matrix of values for the solve
Return:The matrix of coefficients to get B

The dtrsm function is a triangular matrix solver. op(A) X = alpha B or X op(A) = alpha B * where op is Transpose, X and B is MxN

Example:

IMPORT STD;
Side := STD.BLAS.Types.Side;
Diagonal := STD.BLAS.Types.Diagonal;
Triangle := STD.BLAS.Types.Triangle;
STD.BLAS.Types.matrix_t left_a0 := [2, 3, 4, 0, 2, 3, 0, 0, 2];
STD.BLAS.Types.matrix_t mat_b := [4, 6, 8, 6, 13, 18, 8, 18, 29];

Test1_mat := STD.BLAS.dtrsm(Side.Ax, Triangle.Lower, FALSE, Diagonal.NotUnitTri,
                            3, 3, 3, 1.0, left_a0, mat_b);