int P_dgesvd( const char *jobu, const char *jobvt, int M, int N, double *A, int LDA, double *S, double *U, int LDU, double *VT, int LDVT ) { PLASMA_enum ju, jvt; PLASMA_desc *descT; int info; /* if (*jobu != 'N') { return(-1); } if (*jobvt != 'N') { return(-2); } */ ju = PlasmaNoVec; jvt = PlasmaNoVec; PLASMA_Alloc_Workspace_dgesvd(M, N, &descT); info = PLASMA_dgesvd(ju, jvt, M, N, A, LDA, S, descT, U, LDU, VT, LDVT); PLASMA_Dealloc_Handle_Tile(&descT); return(info); }
void PLASMA_DGESVD(PLASMA_enum *jobu, PLASMA_enum *jobvt, int *M, int *N, double *A, int *LDA, double *S, double *U, int *LDU, double *VT, int *LDVT, intptr_t *T, int *INFO) { *INFO = PLASMA_dgesvd(*jobu, *jobvt, *M, *N, A, *LDA, S, U, *LDU, VT, *LDVT, (PLASMA_desc *)(*T)); }