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

Function zunmtr_

numpy/linalg/lapack_lite/f2c_z_lapack.c:29731–29995  ·  view source on GitHub ↗

Subroutine */

Source from the content-addressed store, hash-verified

29729} /* zunmqr_ */
29730
29731/* Subroutine */ int zunmtr_(char *side, char *uplo, char *trans, integer *m,
29732 integer *n, doublecomplex *a, integer *lda, doublecomplex *tau,
29733 doublecomplex *c__, integer *ldc, doublecomplex *work, integer *lwork,
29734 integer *info)
29735{
29736 /* System generated locals */
29737 address a__1[2];
29738 integer a_dim1, a_offset, c_dim1, c_offset, i__1[2], i__2, i__3;
29739 char ch__1[2];
29740
29741 /* Local variables */
29742 static integer i1, i2, nb, mi, ni, nq, nw;
29743 static logical left;
29744 extern logical lsame_(char *, char *);
29745 static integer iinfo;
29746 static logical upper;
29747 extern /* Subroutine */ int xerbla_(char *, integer *);
29748 extern integer ilaenv_(integer *, char *, char *, integer *, integer *,
29749 integer *, integer *, ftnlen, ftnlen);
29750 static integer lwkopt;
29751 static logical lquery;
29752 extern /* Subroutine */ int zunmql_(char *, char *, integer *, integer *,
29753 integer *, doublecomplex *, integer *, doublecomplex *,
29754 doublecomplex *, integer *, doublecomplex *, integer *, integer *), zunmqr_(char *, char *, integer *, integer *,
29755 integer *, doublecomplex *, integer *, doublecomplex *,
29756 doublecomplex *, integer *, doublecomplex *, integer *, integer *);
29757
29758
29759/*
29760 -- LAPACK routine (version 3.2) --
29761 -- LAPACK is a software package provided by Univ. of Tennessee, --
29762 -- Univ. of California Berkeley, Univ. of Colorado Denver and NAG Ltd..--
29763 November 2006
29764
29765
29766 Purpose
29767 =======
29768
29769 ZUNMTR overwrites the general complex M-by-N matrix C with
29770
29771 SIDE = 'L' SIDE = 'R'
29772 TRANS = 'N': Q * C C * Q
29773 TRANS = 'C': Q**H * C C * Q**H
29774
29775 where Q is a complex unitary matrix of order nq, with nq = m if
29776 SIDE = 'L' and nq = n if SIDE = 'R'. Q is defined as the product of
29777 nq-1 elementary reflectors, as returned by ZHETRD:
29778
29779 if UPLO = 'U', Q = H(nq-1) . . . H(2) H(1);
29780
29781 if UPLO = 'L', Q = H(1) H(2) . . . H(nq-1).
29782
29783 Arguments
29784 =========
29785
29786 SIDE (input) CHARACTER*1
29787 = 'L': apply Q or Q**H from the Left;
29788 = 'R': apply Q or Q**H from the Right.

Callers 1

zheevd_Function · 0.85

Calls 5

lsame_Function · 0.85
ilaenv_Function · 0.85
zunmql_Function · 0.85
zunmqr_Function · 0.85
maxFunction · 0.50

Tested by

no test coverage detected