slepc-3.21.1 2024-04-26
Report Typos and Errors

# DSMatType

Used to refer to one of the matrices stored internally in DS

### Synopsis

```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;
```

### Notes

The matrices preferentially refer to
 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.

DSAllocate(), DSGetArray(), DSGetArrayReal(), DSVectors()