Advanced Analysis Library Only
AnalysisLibErrType CxEigenVBack (void *inputEigenvectors, int numberOfEigenvectors, int side, int method, int indexLow, int indexHigh, double scale[], void *outputEigenvectors);
Transforms the complex eigenvectors of a balanced matrix to those of the original matrix. If you want more accurate eigenvectors for an unsymmetric matrix, complete the following steps:
Input | ||
Name | Type | Description |
inputEigenvectors | numeric array | The eigenvectors of the balanced matrix. |
numberOfEigenvectors | integer | The order of inputEigenvectors. |
side | integer | Specifies whether inputEigenvectors contains right side eigenvectors or left side eigenvectors. side must be one of the following values:
|
method | integer | Specifies how the original matrix is balanced. method should be the same value as passed to CxMatrixBalance or MatrixBalance when the original matrix was balanced. |
indexLow | integer | The permutation information from CxMatrixBalance or MatrixBalance. |
indexHigh | integer | The permutation information from CxMatrixBalance or MatrixBalance. |
scale | double-precision array | The scale information from CxMatrixBalance or MatrixBalance. |
Output | ||
Name | Type | Description |
outputEigenvectors | numeric array | The eigenvectors of the original matrix. If outputEigenvectors = NULL or outputEigenvectors = inputEigenvectors, the back-transformed eigenvectors overwrite inputEigenvectors. |
Name | Type | Description |
status | AnalysisLibErrType | A value that specifies the type of error that occurred. Refer to analysis.h for definitions of these constants. |