Function

vDSP_zmsm

Subtracts the product of two complex matrices from a third complex matrix; out-of-place; single precision.

Declaration

void vDSP_zmsm(const DSPSplitComplex *__A, vDSP_Stride __IA, const DSPSplitComplex *__B, vDSP_Stride __IB, const DSPSplitComplex *__C, vDSP_Stride __IC, const DSPSplitComplex *__D, vDSP_Stride __ID, vDSP_Length __M, vDSP_Length __N, vDSP_Length __P);

Parameters

__A

Single-precision complex M-by-P input matrix.

__IA

Stride for A.

__B

Single-precision complex P-by-N input matrix.

__IB

Stride for B.

__C

Single-precision complex M-by-N input matrix.

__IC

Stride for C.

__D

Single-precision complex M-by-N result matrix.

__ID

Stride for D.

__M

The number of rows in matrices A, C, and D.

__N

The number of columns in matrix B, C, and D.

__P

The number of columns in matrix A and the number of rows in matrix B.

Discussion

This function performs an out-of-place complex multiplication of an M-by-P matrix A by a P-by-N matrix B, subtracts the product from M-by-N matrix C, and stores the result in M-by-N matrix D.

This performs the following operation:

mathematical formula

Parameters A and B are the matrixes to be multiplied, and C is the matrix from which the product is to be subtracted. aStride is an address stride through A. bStride is an address stride through B. cStride is an address stride through C. dStride is an address stride through D.

Parameter D is the result matrix.

Parameter M is the row count for A, C and D. Parameter N is the column count of B, C, and D. Parameter P is the column count of A and the row count of B.

See Also

Matrix Multiplication (Complex Matrices)

vDSP_zmma

Multiplies two complex matrices, then adds a third complex matrix; out-of-place; single precision.

vDSP_zmmaD

Multiplies two complex matrices, then adds a third complex matrix; out-of-place; double precision.

vDSP_zmms

Multiplies two complex matrices, then subtracts a third complex matrix; out-of-place; single precision.

vDSP_zmmsD

Multiplies two complex matrices, then subtracts a third complex matrix; out-of-place; double precision.

vDSP_zmmul

Multiplies two matrices of complex numbers; out-of-place; single precision.

vDSP_zmmulD

Multiplies two matrices of complex numbers; out-of-place; double precision.

vDSP_zmsmD

Subtracts the product of two complex matrices from a third complex matrix; out-of-place; double precision.