# CxSolveEqs

Advanced Analysis Library Only

AnalysisLibErrType CxSolveEqs (void *inputArray, int numberOfRows, int numberOfColumns, int matrixType, void *rightHandSideVectors, int numberOfRightHandVectors, void *outputArray);

## Purpose

CxSolveEqs is a versatile complex linear equations solver that solves complex linear equations of the format AX = B.
National Instruments recommends you use this function instead of CxGenLinEqs. CxSolveEqs provides functionality in addition to the functionality CxGenLinEqs provides. CxSolveEqs supports in place operation if matrixType is not 0 (General matrix). That is, you can call the function with outputArray = NULL or outputArray = rightHandSideVectors so that the answer vector(s) overwrites rightHandSideVectors directly. Also, CxSolveEqs supports multiple right hand known vectors, whereas CxGenLinEqs supports only a single right hand known vector.

## Parameters

Input
Name | Type | Description
inputArray | numeric array | The coefficient matrix A.
numberOfRows | integer | The number of rows in inputArray.
numberOfColumns | integer | The number of columns in inputArray.
matrixType | integer | The matrix type of inputArray. matrixType must be one of the following values: GENERAL_MATRIX (0): inputArray is a General matrix. The SVD algorithm is used to find the least squares solution of AX = B. SYMPOS_MATRIX (1): inputArray is symmetrical and positive definite. The Cholesky algorithm is used. numberOfColumns is not referenced. LOTRI_MATRIX (2): inputArray is a lower triangular matrix. numberOfColumns is not referenced. UPTRI_MATRIX (3): inputArray is an upper triangular matrix. numberOfColumns is not referenced.
rightHandSideVectors | void * | The right-hand known vector(s). rightHandSideVectors is a matrix in a linear system with multiple right-hand known vectors. In this case, each column of rightHandSideVectors is a known vector.
numberOfRightHandVectors | integer | The number of columns of rightHandSideVectors, which is the number of right-hand known vectors in AX = B.
Output
Name | Type | Description
outputArray | numeric array | The answer vector(s).

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