SolveEqs

Advanced Analysis Library Only

AnalysisLibErrType SolveEqs (void *inputArray, int numberOfRows, int numberOfColumns, int typeInputArray, void *rightHandSideVectors, int numberOfRightHandVectors, void *outputArray);

Purpose

Solves real linear equations as follows: AX = B. SolveEqs is a versatile complex linear equations solver. National Instruments recommends that you use SolveEqs instead of GenLinEqs.

The function supports in place operation if typeInputArray is not 0 (General matrix). That is, outputArray can be NULL or rightHandSideVectors so that the answer vector(s) overwrites rightHandSideVectors directly.

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.
typeInputArray integer The matrix type of inputArray. typeInputArray 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 a symmetrical and positive definite matrix. 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.