# CxLinEv1D

int CxLinEv1D (double arrayXReal[], double arrayXImg[], int numberOfElements, double aReal, double aImg, double bReal, double bImg, double outputReal[], double outputImg[]);

## Purpose

Performs a linear evaluation of a complex 1D array. CxLinEv1D obtains the element of the resulting complex array using the following formulas:

outputReali = aReal × arrayXReali — aImg × arrayXImgi + bReal

outputImgi = aReal × arrayXImgi + aImg × arrayXReali + bImg

CxLinEv1D 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 complex array used as the basis for the linear evaluation.
arrayXImg | double-precision array | Imaginary part of the complex array used as the basis for the linear evaluation.
numberOfElements | integer | Number of elements to evaluate.
aReal | double-precision | Real part of the multiplicative constant used in the linear evaluation of the input array. Default Value: 1.0.
aImg | double-precision | Imaginary part of the multiplicative constant used in the linear evaluation of the input array. Default Value: 1.0.
bReal | double-precision | Real part of the additive constant used in the linear evaluation of the input array. Default Value: 0.0.
bImg | double-precision | Imaginary part of the additive constant used in the linear evaluation of the input array. Default Value: 0.0.
Output
Name | Type | Description
outputReal | double-precision array | Real part of the result of the linear evaluation of the input array.
outputImg | double-precision array | Imaginary part of the result of the linear evaluation of the input array.

## 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.