1 #include "gmx_lapack.h"
2 #include "lapack_limits.h"
5 F77_FUNC(dormbr,DORMBR)(const char *vect,
20 int a_dim1, a_offset, c_dim1, c_offset, i__1;
23 int i1, i2, nb, mi, ni, nq, nw;
33 a_offset = 1 + a_dim1;
37 c_offset = 1 + c_dim1;
41 applyq = (*vect=='Q' || *vect=='q');
42 left = (*side=='L' || *side=='l');
43 notran = (*trans=='N' || *trans=='n');
44 lquery = *lwork == -1;
54 nb = DORMQR_BLOCKSIZE;
56 work[1] = (double) lwkopt;
66 if (*m == 0 || *n == 0) {
74 F77_FUNC(dormqr,DORMQR)(side, trans, m, n, k, &a[a_offset], lda, &tau[1], &c__[
75 c_offset], ldc, &work[1], lwork, &iinfo);
90 F77_FUNC(dormqr,DORMQR)(side, trans, &mi, &ni, &i__1, &a[a_dim1 + 2], lda, &tau[1]
91 , &c__[i1 + i2 * c_dim1], ldc, &work[1], lwork, &iinfo);
96 *(unsigned char *)transt = 'T';
98 *(unsigned char *)transt = 'N';
102 F77_FUNC(dormlq,DORMLQ)(side, transt, m, n, k, &a[a_offset], lda, &tau[1], &c__[
103 c_offset], ldc, &work[1], lwork, &iinfo);
118 F77_FUNC(dormlq,DORMLQ)(side, transt, &mi, &ni, &i__1, &a[(a_dim1 << 1) + 1], lda,
119 &tau[1], &c__[i1 + i2 * c_dim1], ldc, &work[1], lwork, &
123 work[1] = (double) lwkopt;