CxMul1D

AnalysisLibErrType CxMul1D (double arrayXReal[], double arrayXImg[], double arrayYReal[], double arrayYImg[], int numberOfElements, double outputReal[], double outputImg[]);

Purpose

Multiplies two complex 1D arrays. CxMul1D obtains the element of the resulting complex array using the following formulas:

outputReali = arrayXReali × arrayYReali — arrayXImgi × arrayYImgi

outputImgi = arrayXReali × arrayYImgi + arrayXImgi × arrayYReali

CxMul1D can perform the operations in place; that is, the input and output complex arrays can be the same.

Parameters

Input
Name Type Description
arrayXReal double-precision array Real part of the first array to multiply.
arrayXImg double-precision array Imaginary part of the first array to multiply.
arrayYReal double-precision array Real part of the second array to multiply.
arrayYImg double-precision array Imaginary part of the second array to multiply.
numberOfElements integer Number of elements to multiply.
Output
Name Type Description
outputReal double-precision array Real part of the result of the complex array multiplication.
outputImg double-precision array Imaginary part of the result of the complex array multiplication.

Return Value

Name Type Description
status AnalysisLibErrType A value that specifies the type of error that occurred. Refer to analysis.h for definitions of these constants.