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

Function slarf_

numpy/linalg/lapack_lite/f2c_s_lapack.c:21310–21473  ·  view source on GitHub ↗

Subroutine */

Source from the content-addressed store, hash-verified

21308} /* slaqr5_ */
21309
21310/* Subroutine */ int slarf_(char *side, integer *m, integer *n, real *v,
21311 integer *incv, real *tau, real *c__, integer *ldc, real *work)
21312{
21313 /* System generated locals */
21314 integer c_dim1, c_offset;
21315 real r__1;
21316
21317 /* Local variables */
21318 static integer i__;
21319 static logical applyleft;
21320 extern /* Subroutine */ int sger_(integer *, integer *, real *, real *,
21321 integer *, real *, integer *, real *, integer *);
21322 extern logical lsame_(char *, char *);
21323 static integer lastc;
21324 extern /* Subroutine */ int sgemv_(char *, integer *, integer *, real *,
21325 real *, integer *, real *, integer *, real *, real *, integer *);
21326 static integer lastv;
21327 extern integer ilaslc_(integer *, integer *, real *, integer *), ilaslr_(
21328 integer *, integer *, real *, integer *);
21329
21330
21331/*
21332 -- LAPACK auxiliary routine (version 3.2) --
21333 -- LAPACK is a software package provided by Univ. of Tennessee, --
21334 -- Univ. of California Berkeley, Univ. of Colorado Denver and NAG Ltd..--
21335 November 2006
21336
21337
21338 Purpose
21339 =======
21340
21341 SLARF applies a real elementary reflector H to a real m by n matrix
21342 C, from either the left or the right. H is represented in the form
21343
21344 H = I - tau * v * v'
21345
21346 where tau is a real scalar and v is a real vector.
21347
21348 If tau = 0, then H is taken to be the unit matrix.
21349
21350 Arguments
21351 =========
21352
21353 SIDE (input) CHARACTER*1
21354 = 'L': form H * C
21355 = 'R': form C * H
21356
21357 M (input) INTEGER
21358 The number of rows of the matrix C.
21359
21360 N (input) INTEGER
21361 The number of columns of the matrix C.
21362
21363 V (input) REAL array, dimension
21364 (1 + (M-1)*abs(INCV)) if SIDE = 'L'
21365 or (1 + (N-1)*abs(INCV)) if SIDE = 'R'
21366 The vector v in the representation of H. V is not used if
21367 TAU = 0.

Callers 12

sgebd2_Function · 0.85
sgehd2_Function · 0.85
sgelq2_Function · 0.85
sgeqr2_Function · 0.85
slaqr2_Function · 0.85
slaqr3_Function · 0.85
slarfx_Function · 0.85
sorg2r_Function · 0.85
sorgl2_Function · 0.85
sorm2l_Function · 0.85
sorm2r_Function · 0.85
sorml2_Function · 0.85

Calls 5

lsame_Function · 0.85
ilaslc_Function · 0.85
ilaslr_Function · 0.85
sgemv_Function · 0.85
sger_Function · 0.85

Tested by

no test coverage detected