Function

cblas_ctrmm(_:_:_:_:_:_:_:_:_:_:_:_:) Scales a triangular matrix and multiplies it by a matrix.

SDKs

iOS 4.0+ macOS 10.2+ Mac Catalyst 13.0+ tvOS 9.0+ watchOS 2.0+ Declaration func cblas_ctrmm (_ __Order : CBLAS_ORDER , _ __Side : CBLAS_SIDE , _ __Uplo : CBLAS_UPLO , _ __TransA : CBLAS_TRANSPOSE , _ __Diag : CBLAS_DIAG , _ __M : Int32 , _ __N : Int32 , _ __alpha : UnsafeRawPointer !, _ __A : UnsafeRawPointer !, _ __lda : Int32 , _ __B : UnsafeMutableRawPointer !, _ __ldb : Int32 )

Parameters `Order`

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

`Side`

Determines the order in which the matrices 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`

Number of rows in matrix B

.

`N`

Number of columns in matrix B

.

`alpha`

Scaling factor for matrix A

.

`A`

`lda`

Leading dimension of matrix A

.

`B`

Matrix B

. Overwritten by results on return.

`ldb`

Leading dimension of matrix B

.

Discussion If Side

is 'L'

, multiplies alpha*A*B

or alpha*A'*B

, depending on TransA

.

If Side

is 'R'

, multiplies alpha*B*A

or alpha*B*A'

, depending on TransA

.

In either case, the results are stored in matrix B

.

See Also

Single-Precision Complex Matrix Functions func cblas_cgbmv (CBLAS_ORDER, CBLAS_TRANSPOSE, Int32, Int32, Int32, Int32, UnsafeRawPointer!, UnsafeRawPointer!, Int32, UnsafeRawPointer!, Int32, UnsafeRawPointer!, UnsafeMutableRawPointer!, Int32)

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

func cblas_cgemm (CBLAS_ORDER, CBLAS_TRANSPOSE, CBLAS_TRANSPOSE, Int32, Int32, Int32, UnsafeRawPointer!, UnsafeRawPointer!, Int32, UnsafeRawPointer!, Int32, UnsafeRawPointer!, UnsafeMutableRawPointer!, Int32)

Multiplies two matrices (single-precision complex).

func cblas_cgemv (CBLAS_ORDER, CBLAS_TRANSPOSE, Int32, Int32, UnsafeRawPointer!, UnsafeRawPointer!, Int32, UnsafeRawPointer!, Int32, UnsafeRawPointer!, UnsafeMutableRawPointer!, Int32)

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

func cblas_cgerc (CBLAS_ORDER, Int32, Int32, UnsafeRawPointer!, UnsafeRawPointer!, Int32, UnsafeRawPointer!, Int32, UnsafeMutableRawPointer!, Int32)

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

func cblas_cgeru (CBLAS_ORDER, Int32, Int32, UnsafeRawPointer!, UnsafeRawPointer!, Int32, UnsafeRawPointer!, Int32, UnsafeMutableRawPointer!, Int32)

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

func cblas_chbmv (CBLAS_ORDER, CBLAS_UPLO, Int32, Int32, UnsafeRawPointer!, UnsafeRawPointer!, Int32, UnsafeRawPointer!, Int32, UnsafeRawPointer!, UnsafeMutableRawPointer!, Int32)

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

func cblas_chemm (CBLAS_ORDER, CBLAS_SIDE, CBLAS_UPLO, Int32, Int32, UnsafeRawPointer!, UnsafeRawPointer!, Int32, UnsafeRawPointer!, Int32, UnsafeRawPointer!, UnsafeMutableRawPointer!, Int32)

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

func cblas_chemv (CBLAS_ORDER, CBLAS_UPLO, Int32, UnsafeRawPointer!, UnsafeRawPointer!, Int32, UnsafeRawPointer!, Int32, UnsafeRawPointer!, UnsafeMutableRawPointer!, Int32)

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

func cblas_cher2 (CBLAS_ORDER, CBLAS_UPLO, Int32, UnsafeRawPointer!, UnsafeRawPointer!, Int32, UnsafeRawPointer!, Int32, UnsafeMutableRawPointer!, Int32)

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

.

func cblas_cher2k (CBLAS_ORDER, CBLAS_UPLO, CBLAS_TRANSPOSE, Int32, Int32, UnsafeRawPointer!, UnsafeRawPointer!, Int32, UnsafeRawPointer!, Int32, Float, UnsafeMutableRawPointer!, Int32)

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

func cblas_cherk (CBLAS_ORDER, CBLAS_UPLO, CBLAS_TRANSPOSE, Int32, Int32, Float, UnsafeRawPointer!, Int32, Float, UnsafeMutableRawPointer!, Int32)

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

func cblas_chpmv (CBLAS_ORDER, CBLAS_UPLO, Int32, UnsafeRawPointer!, UnsafeRawPointer!, UnsafeRawPointer!, Int32, UnsafeRawPointer!, UnsafeMutableRawPointer!, Int32)

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

func cblas_chpr2 (CBLAS_ORDER, CBLAS_UPLO, Int32, UnsafeRawPointer!, UnsafeRawPointer!, Int32, UnsafeRawPointer!, Int32, UnsafeMutableRawPointer!)

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

func cblas_csymm (CBLAS_ORDER, CBLAS_SIDE, CBLAS_UPLO, Int32, Int32, UnsafeRawPointer!, UnsafeRawPointer!, Int32, UnsafeRawPointer!, Int32, UnsafeRawPointer!, UnsafeMutableRawPointer!, Int32)

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

func cblas_csyr2k (CBLAS_ORDER, CBLAS_UPLO, CBLAS_TRANSPOSE, Int32, Int32, UnsafeRawPointer!, UnsafeRawPointer!, Int32, UnsafeRawPointer!, Int32, UnsafeRawPointer!, UnsafeMutableRawPointer!, Int32)

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

func cblas_csyrk (CBLAS_ORDER, CBLAS_UPLO, CBLAS_TRANSPOSE, Int32, Int32, UnsafeRawPointer!, UnsafeRawPointer!, Int32, UnsafeRawPointer!, UnsafeMutableRawPointer!, Int32)

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

func cblas_ctbmv (CBLAS_ORDER, CBLAS_UPLO, CBLAS_TRANSPOSE, CBLAS_DIAG, Int32, Int32, UnsafeRawPointer!, Int32, UnsafeMutableRawPointer!, Int32)

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

func cblas_ctrsm (CBLAS_ORDER, CBLAS_SIDE, CBLAS_UPLO, CBLAS_TRANSPOSE, CBLAS_DIAG, Int32, Int32, UnsafeRawPointer!, UnsafeRawPointer!, Int32, UnsafeMutableRawPointer!, Int32)

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