40 lapack_int ldb,
double* alphar,
double* alphai,
43 double* pl,
double* pr,
double* dif,
50 LAPACK_dtgsen( &ijob, &wantq, &wantz, select, &n, a, &lda, b, &ldb,
51 alphar, alphai, beta, q, &ldq, z, &ldz, m, pl, pr, dif,
52 work, &lwork, iwork, &liwork, &info );
87 if( liwork == -1 || lwork == -1 ) {
88 LAPACK_dtgsen( &ijob, &wantq, &wantz, select, &n, a, &lda_t, b,
89 &ldb_t, alphar, alphai, beta, q, &ldq_t, z, &ldz_t,
90 m, pl, pr, dif, work, &lwork, iwork, &liwork,
92 return (info < 0) ? (info - 1) : info;
129 LAPACK_dtgsen( &ijob, &wantq, &wantz, select, &n, a_t, &lda_t, b_t,
130 &ldb_t, alphar, alphai, beta, q_t, &ldq_t, z_t, &ldz_t,
131 m, pl, pr, dif, work, &lwork, iwork, &liwork, &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_int LAPACKE_dtgsen_work(int matrix_layout, lapack_int ijob, lapack_logical wantq, lapack_logical wantz, const lapack_logical *select, lapack_int n, double *a, lapack_int lda, double *b, lapack_int ldb, double *alphar, double *alphai, double *beta, double *q, lapack_int ldq, double *z, lapack_int ldz, lapack_int *m, double *pl, double *pr, double *dif, double *work, lapack_int lwork, lapack_int *iwork, lapack_int liwork)
void LAPACKE_xerbla(const char *name, lapack_int info)
void LAPACK_dtgsen(lapack_int *ijob, lapack_logical *wantq, lapack_logical *wantz, const lapack_logical *select, lapack_int *n, double *a, lapack_int *lda, double *b, lapack_int *ldb, double *alphar, double *alphai, double *beta, double *q, lapack_int *ldq, double *z, lapack_int *ldz, lapack_int *m, double *pl, double *pr, double *dif, double *work, lapack_int *lwork, lapack_int *iwork, lapack_int *liwork, lapack_int *info)
#define LAPACK_TRANSPOSE_MEMORY_ERROR