50 LAPACK_dbbcsd( &jobu1, &jobu2, &jobv1t, &jobv2t, &trans, &m, &p, &q,
51 theta, phi, u1, &ldu1, u2, &ldu2, v1t, &ldv1t, v2t,
52 &ldv2t, b11d, b11e, b12d, b12e, b21d, b21e, b22d, b22e,
53 work, &lwork, &info );
93 LAPACK_dbbcsd( &jobu1, &jobu2, &jobv1t, &jobv2t, &trans, &m, &p, &q,
94 theta, phi, u1, &ldu1_t, u2, &ldu2_t, v1t, &ldv1t_t,
95 v2t, &ldv2t_t, b11d, b11e, b12d, b12e, b21d, b21e,
96 b22d, b22e, work, &lwork, &info );
97 return (info < 0) ? (info - 1) : info;
119 if( v1t_t == NULL ) {
127 if( v2t_t == NULL ) {
150 LAPACK_dbbcsd( &jobu1, &jobu2, &jobv1t, &jobv2t, &trans, &m, &p, &q,
151 theta, phi, u1_t, &ldu1_t, u2_t, &ldu2_t, v1t_t,
152 &ldv1t_t, v2t_t, &ldv2t_t, b11d, b11e, b12d, b12e, b21d,
153 b21e, b22d, b22e, work, &lwork, &info );
void LAPACKE_dge_trans(int matrix_layout, lapack_int m, lapack_int n, const double *in, lapack_int ldin, double *out, lapack_int ldout)
#define LAPACKE_malloc(size)
lapack_logical LAPACKE_lsame(char ca, char cb)
void LAPACKE_xerbla(const char *name, lapack_int info)
void LAPACK_dbbcsd(char *jobu1, char *jobu2, char *jobv1t, char *jobv2t, char *trans, lapack_int *m, lapack_int *p, lapack_int *q, double *theta, double *phi, double *u1, lapack_int *ldu1, double *u2, lapack_int *ldu2, double *v1t, lapack_int *ldv1t, double *v2t, lapack_int *ldv2t, double *b11d, double *b11e, double *b12d, double *b12e, double *b21d, double *b21e, double *b22d, double *b22e, double *work, lapack_int *lwork, lapack_int *info)
#define LAPACK_TRANSPOSE_MEMORY_ERROR