44 double* rconde,
double* rcondv,
52 LAPACK_zggesx( &jobvsl, &jobvsr, &sort, selctg, &sense, &
n, a, &lda, b,
53 &ldb, sdim,
alpha, beta, vsl, &ldvsl, vsr, &ldvsr,
54 rconde, rcondv, work, &lwork, rwork, iwork, &liwork,
90 if( liwork == -1 || lwork == -1 ) {
92 &lda_t, b, &ldb_t, sdim,
alpha, beta, vsl, &ldvsl_t,
93 vsr, &ldvsr_t, rconde, rcondv, work, &lwork, rwork,
94 iwork, &liwork, bwork, &info );
95 return (info < 0) ? (info - 1) : info;
113 ldvsl_t *
MAX(1,
n) );
114 if( vsl_t == NULL ) {
122 ldvsr_t *
MAX(1,
n) );
123 if( vsr_t == NULL ) {
132 LAPACK_zggesx( &jobvsl, &jobvsr, &sort, selctg, &sense, &
n, a_t, &lda_t,
133 b_t, &ldb_t, sdim,
alpha, beta, vsl_t, &ldvsl_t, vsr_t,
134 &ldvsr_t, rconde, rcondv, work, &lwork, rwork, iwork,
135 &liwork, bwork, &info );
void LAPACKE_zge_trans(int matrix_layout, lapack_int m, lapack_int n, const lapack_complex_double *in, lapack_int ldin, lapack_complex_double *out, lapack_int ldout)
lapack_int LAPACKE_zggesx_work(int matrix_layout, char jobvsl, char jobvsr, char sort, LAPACK_Z_SELECT2 selctg, char sense, lapack_int n, lapack_complex_double *a, lapack_int lda, lapack_complex_double *b, lapack_int ldb, lapack_int *sdim, lapack_complex_double *alpha, lapack_complex_double *beta, lapack_complex_double *vsl, lapack_int ldvsl, lapack_complex_double *vsr, lapack_int ldvsr, double *rconde, double *rcondv, lapack_complex_double *work, lapack_int lwork, double *rwork, lapack_int *iwork, lapack_int liwork, lapack_logical *bwork)