示例#1
0
文件: P.c 项目: nashp/HiPLARb
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);
}
示例#2
0
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)); }