123 integer a_dim1, a_offset, i__1, i__2;
127 int xerbla_(
char *,
integer *);
156 a_offset = 1 + a_dim1;
163 lquery = *lwork == -1;
168 else if (*ilo < 1 || *ilo > max(1,*n))
172 else if (*ihi < min(*ilo,*n) || *ihi > *n)
176 else if (*lda < max(1,*n))
180 else if (*lwork < max(1,nh) && ! lquery)
186 nb = ilaenv_(&c__1,
"SORGQR",
" ", &nh, &nh, &nh, &c_n1);
187 lwkopt = max(1,nh) * nb;
188 work[1] = (
real) lwkopt;
193 xerbla_(
"SORGHR", &i__1);
219 a[i__ + j * a_dim1] = 0.f;
227 a[i__ + j * a_dim1] = a[i__ + (j - 1) * a_dim1];
235 a[i__ + j * a_dim1] = 0.f;
250 a[i__ + j * a_dim1] = 0.f;
253 a[j + j * a_dim1] = 1.f;
266 a[i__ + j * a_dim1] = 0.f;
269 a[j + j * a_dim1] = 1.f;
275 sorgqr_fla(&nh, &nh, &nh, &a[*ilo + 1 + (*ilo + 1) * a_dim1], lda, &tau[* ilo], &work[1], lwork, &iinfo);
277 work[1] = (
real) lwkopt;
float real
Definition: FLA_f2c.h:30
int logical
Definition: FLA_f2c.h:36
int integer
Definition: FLA_f2c.h:25
int sorgqr_fla(integer *m, integer *n, integer *k, real *a, integer *lda, real *tau, real *work, integer *lwork, integer *info)
Definition: sorgqr.c:123