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

Function clarft_

numpy/linalg/lapack_lite/f2c_c_lapack.c:19365–19704  ·  view source on GitHub ↗

Subroutine */

Source from the content-addressed store, hash-verified

19363} /* clarfg_ */
19364
19365/* Subroutine */ int clarft_(char *direct, char *storev, integer *n, integer *
19366 k, complex *v, integer *ldv, complex *tau, complex *t, integer *ldt)
19367{
19368 /* System generated locals */
19369 integer t_dim1, t_offset, v_dim1, v_offset, i__1, i__2, i__3, i__4;
19370 complex q__1;
19371
19372 /* Local variables */
19373 static integer i__, j, prevlastv;
19374 static complex vii;
19375 extern /* Subroutine */ int cgemv_(char *, integer *, integer *, complex *
19376 , complex *, integer *, complex *, integer *, complex *, complex *
19377 , integer *);
19378 extern logical lsame_(char *, char *);
19379 static integer lastv;
19380 extern /* Subroutine */ int ctrmv_(char *, char *, char *, integer *,
19381 complex *, integer *, complex *, integer *), clacgv_(integer *, complex *, integer *);
19382
19383
19384/*
19385 -- LAPACK auxiliary routine (version 3.2) --
19386 -- LAPACK is a software package provided by Univ. of Tennessee, --
19387 -- Univ. of California Berkeley, Univ. of Colorado Denver and NAG Ltd..--
19388 November 2006
19389
19390
19391 Purpose
19392 =======
19393
19394 CLARFT forms the triangular factor T of a complex block reflector H
19395 of order n, which is defined as a product of k elementary reflectors.
19396
19397 If DIRECT = 'F', H = H(1) H(2) . . . H(k) and T is upper triangular;
19398
19399 If DIRECT = 'B', H = H(k) . . . H(2) H(1) and T is lower triangular.
19400
19401 If STOREV = 'C', the vector which defines the elementary reflector
19402 H(i) is stored in the i-th column of the array V, and
19403
19404 H = I - V * T * V'
19405
19406 If STOREV = 'R', the vector which defines the elementary reflector
19407 H(i) is stored in the i-th row of the array V, and
19408
19409 H = I - V' * T * V
19410
19411 Arguments
19412 =========
19413
19414 DIRECT (input) CHARACTER*1
19415 Specifies the order in which the elementary reflectors are
19416 multiplied to form the block reflector:
19417 = 'F': H = H(1) H(2) . . . H(k) (Forward)
19418 = 'B': H = H(k) . . . H(2) H(1) (Backward)
19419
19420 STOREV (input) CHARACTER*1
19421 Specifies how the vectors which define the elementary
19422 reflectors are stored (see also Further Details):

Callers 7

cgelqf_Function · 0.85
cgeqrf_Function · 0.85
cunglq_Function · 0.85
cungqr_Function · 0.85
cunmlq_Function · 0.85
cunmql_Function · 0.85
cunmqr_Function · 0.85

Calls 6

lsame_Function · 0.85
cgemv_Function · 0.85
clacgv_Function · 0.85
ctrmv_Function · 0.85
maxFunction · 0.50
minFunction · 0.50

Tested by

no test coverage detected