MCPcopy Create free account
hub / github.com/numpy/numpy / dormqr_

Function dormqr_

numpy/linalg/lapack_lite/f2c_d_lapack.c:36240–36535  ·  view source on GitHub ↗

Subroutine */

Source from the content-addressed store, hash-verified

36238} /* dormql_ */
36239
36240/* Subroutine */ int dormqr_(char *side, char *trans, integer *m, integer *n,
36241 integer *k, doublereal *a, integer *lda, doublereal *tau, doublereal *
36242 c__, integer *ldc, doublereal *work, integer *lwork, integer *info)
36243{
36244 /* System generated locals */
36245 address a__1[2];
36246 integer a_dim1, a_offset, c_dim1, c_offset, i__1, i__2, i__3[2], i__4,
36247 i__5;
36248 char ch__1[2];
36249
36250 /* Local variables */
36251 static integer i__;
36252 static doublereal t[4160] /* was [65][64] */;
36253 static integer i1, i2, i3, ib, ic, jc, nb, mi, ni, nq, nw, iws;
36254 static logical left;
36255 extern logical lsame_(char *, char *);
36256 static integer nbmin, iinfo;
36257 extern /* Subroutine */ int dorm2r_(char *, char *, integer *, integer *,
36258 integer *, doublereal *, integer *, doublereal *, doublereal *,
36259 integer *, doublereal *, integer *), dlarfb_(char
36260 *, char *, char *, char *, integer *, integer *, integer *,
36261 doublereal *, integer *, doublereal *, integer *, doublereal *,
36262 integer *, doublereal *, integer *), dlarft_(char *, char *, integer *, integer *, doublereal
36263 *, integer *, doublereal *, doublereal *, integer *), xerbla_(char *, integer *);
36264 extern integer ilaenv_(integer *, char *, char *, integer *, integer *,
36265 integer *, integer *, ftnlen, ftnlen);
36266 static logical notran;
36267 static integer ldwork, lwkopt;
36268 static logical lquery;
36269
36270
36271/*
36272 -- LAPACK routine (version 3.2) --
36273 -- LAPACK is a software package provided by Univ. of Tennessee, --
36274 -- Univ. of California Berkeley, Univ. of Colorado Denver and NAG Ltd..--
36275 November 2006
36276
36277
36278 Purpose
36279 =======
36280
36281 DORMQR overwrites the general real M-by-N matrix C with
36282
36283 SIDE = 'L' SIDE = 'R'
36284 TRANS = 'N': Q * C C * Q
36285 TRANS = 'T': Q**T * C C * Q**T
36286
36287 where Q is a real orthogonal matrix defined as the product of k
36288 elementary reflectors
36289
36290 Q = H(1) H(2) . . . H(k)
36291
36292 as returned by DGEQRF. Q is of order M if SIDE = 'L' and of order N
36293 if SIDE = 'R'.
36294
36295 Arguments
36296 =========
36297

Callers 4

dgelsd_Function · 0.85
dormbr_Function · 0.85
dormhr_Function · 0.85
dormtr_Function · 0.85

Calls 7

lsame_Function · 0.85
ilaenv_Function · 0.85
dorm2r_Function · 0.85
dlarft_Function · 0.85
dlarfb_Function · 0.85
maxFunction · 0.50
minFunction · 0.50

Tested by

no test coverage detected