1 #include "../gmx_lapack.h"
2 #include "lapack_limits.h"
6 F77_FUNC(dormtr
,DORMTR
)(const char *side
,
20 int a_dim1
, a_offset
, c_dim1
, c_offset
, i__2
;
22 int i1
, i2
, nb
, mi
, ni
, nq
, nw
;
31 a_offset
= 1 + a_dim1
;
35 c_offset
= 1 + c_dim1
;
40 left
= (*side
=='L' || *side
=='l');
41 upper
= (*uplo
=='U' || *uplo
=='u');
42 lquery
= *lwork
== -1;
53 nb
= DORMQL_BLOCKSIZE
;
55 work
[1] = (double) lwkopt
;
64 if (*m
== 0 || *n
== 0 || nq
== 1) {
79 F77_FUNC(dormql
,DORMQL
)(side
, trans
, &mi
, &ni
, &i__2
, &a
[(a_dim1
<< 1) + 1], lda
, &
80 tau
[1], &c__
[c_offset
], ldc
, &work
[1], lwork
, &iinfo
);
90 F77_FUNC(dormqr
,DORMQR
)(side
, trans
, &mi
, &ni
, &i__2
, &a
[a_dim1
+ 2], lda
, &tau
[1], &
91 c__
[i1
+ i2
* c_dim1
], ldc
, &work
[1], lwork
, &iinfo
);
93 work
[1] = (double) lwkopt
;