typedef enum { DS_MAT_A, DS_MAT_B, DS_MAT_C, DS_MAT_T, DS_MAT_D, DS_MAT_Q, DS_MAT_Z, DS_MAT_X, DS_MAT_Y, DS_MAT_U, DS_MAT_V, DS_MAT_W, DS_MAT_E0, DS_MAT_E1, DS_MAT_E2, DS_MAT_E3, DS_MAT_E4, DS_MAT_E5, DS_MAT_E6, DS_MAT_E7, DS_MAT_E8, DS_MAT_E9, DS_NUM_MAT } DSMatType;
DS_MAT_A | - first matrix of eigenproblem/singular value problem | |
DS_MAT_B | - second matrix of a generalized eigenproblem | |
DS_MAT_C | - third matrix of a quadratic eigenproblem (deprecated) | |
DS_MAT_T | - tridiagonal matrix | |
DS_MAT_D | - diagonal matrix | |
DS_MAT_Q | - orthogonal matrix of (right) Schur vectors | |
DS_MAT_Z | - orthogonal matrix of left Schur vectors | |
DS_MAT_X | - right eigenvectors | |
DS_MAT_Y | - left eigenvectors | |
DS_MAT_U | - left singular vectors | |
DS_MAT_V | - right singular vectors | |
DS_MAT_W | - workspace matrix | |
DS_MAT_Ex | - extra matrices (x=0,..,9) |
All matrices can have space to hold ld x ld elements, except for DS_MAT_T that has space for 3 x ld elements (ld = leading dimension) and DS_MAT_D that has space for just ld elements.
In DSPEP problems, matrices A, B, W can have space for d*ld x d*ld, where d is the polynomial degree, and X can have ld x d*ld. Also DSNEP has exceptions. Check the manual page of each DS type for details.