Function

cblas_ctrsm

Solves a triangular system of equations with multiple values for the right side.

Declaration

void cblas_ctrsm(const enum CBLAS_ORDER __Order, const enum CBLAS_SIDE __Side, const enum CBLAS_UPLO __Uplo, const enum CBLAS_TRANSPOSE __TransA, const enum CBLAS_DIAG __Diag, const int __M, const int __N, const void *__alpha, const void *__A, const int __lda, void *__B, const int __ldb);

Parameters

Order

Specifies row-major (C) or column-major (Fortran) data ordering.

Side

Determines the order in which the matrix and vector should be multiplied.

Uplo

Specifies whether to use the upper or lower triangle from the matrix. Valid values are 'U' or 'L'.

TransA

Specifies whether to use matrix A ('N' or 'n') or the transpose of A ('T', 't', 'C', or 'c').

Diag

Specifies whether the matrix is unit triangular. Possible values are 'U' (unit triangular) or 'N' (not unit triangular).

M

The number of rows in matrix B.

N

The number of columns in matrix B.

alpha

Scaling factor for matrix A.

A

Triangular matrix A.

lda

The leading dimension of matrix A.

B

On entry, matrix B. Overwritten on return by matrix X.

ldb

The leading dimension of matrix B.

Discussion

If Side is 'L', solves A*X=alpha*B or A'*X=alpha*B, depending on TransA.

If Side is 'R', solves X*A=alpha*B or X*A'=alpha*B, depending on TransA.

In either case, the results overwrite the values of matrix B in X.

See Also

Single-Precision Complex Matrix Functions

cblas_caxpy

Computes a constant times a vector plus a vector (single-precision complex).

cblas_ccopy

Copies a vector to another vector (single-precision complex).

cblas_cgbmv

Scales a general band matrix, then multiplies by a vector, then adds a vector (single-precision complex).

cblas_cgemm

Multiplies two matrices (single-precision complex).

cblas_cgemv

Multiplies a matrix by a vector (single-precision complex).

cblas_cgerc

Multiplies vector X by the conjugate transpose of vector Y, then adds matrix A (single-precision complex).

cblas_cgeru

Multiplies vector X by the transpose of vector Y, then adds matrix A (single-precision complex).

cblas_chbmv

Scales a Hermitian band matrix, then multiplies by a vector, then adds a vector (single-precision complex).

cblas_chemm

Multiplies two Hermitian matrices (single-precision complex), then adds a third (with scaling).

cblas_chemv

Scales and multiplies a Hermitian matrix by a vector, then adds a second (scaled) vector.

cblas_cher

Hermitian rank 1 update: adds the product of a scaling factor, vector X, and the conjugate transpose of X to matrix A.

cblas_cher2

Hermitian rank 2 update: adds the product of a scaling factor, vector X, and the conjugate transpose of vector Y to the product of the conjugate of the scaling factor, vector Y, and the conjugate transpose of vector X, and adds the result to matrix A.

cblas_cher2k

Performs a rank-2k update of a complex Hermitian matrix (single-precision complex).

cblas_cherk

Rank-k update—multiplies a Hermitian matrix by its transpose and adds a second matrix (single precision).

cblas_chpmv

Scales a packed hermitian matrix, multiplies it by a vector, and adds a scaled vector.

cblas_chpr

Scales and multiplies a vector times its conjugate transpose, then adds a matrix.

cblas_chpr2

Multiplies a vector times the conjugate transpose of a second vector and vice-versa, sums the results, and adds a matrix.

cblas_crotg

Constructs a complex Givens rotation.

cblas_cscal

Multiplies each element of a vector by a constant (single-precision complex).

cblas_csrot

Applies a Givens rotation matrix to a pair of complex vectors.

cblas_csscal

Multiplies each element of a vector by a constant (single-precision complex).

cblas_cswap

Exchanges the elements of two vectors (single-precision complex).

cblas_csymm

Multiplies a matrix by a symmetric matrix (single-precision complex).

cblas_csyr2k

Performs a rank-2k update of a symmetric matrix (single-precision complex).

cblas_csyrk

Rank-k update—multiplies a symmetric matrix by its transpose and adds a second matrix (single-precision complex).

cblas_ctbmv

Scales a triangular band matrix, then multiplies by a vector (single-precision compex).

cblas_ctbsv

Solves a triangular banded system of equations.

cblas_ctpmv

Multiplies a triangular matrix by a vector, then adds a vector (single-precision complex).

cblas_ctpsv

Solves a packed triangular system of equations.

cblas_ctrmm

Scales a triangular matrix and multiplies it by a matrix.

cblas_ctrmv

Multiplies a triangular matrix by a vector.

cblas_ctrsv

Solves a triangular system of equations with a single value for the right side.

cblas_scasum

Computes the sum of the absolute values of real and imaginary parts of elements in a vector (single-precision complex).

cblas_scnrm2

Computes the unitary norm of a vector (single-precision complex).