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

Function clals0_

numpy/linalg/lapack_lite/f2c_c_lapack.c:11481–12012  ·  view source on GitHub ↗

Subroutine */

Source from the content-addressed store, hash-verified

11479} /* clahr2_ */
11480
11481/* Subroutine */ int clals0_(integer *icompq, integer *nl, integer *nr,
11482 integer *sqre, integer *nrhs, complex *b, integer *ldb, complex *bx,
11483 integer *ldbx, integer *perm, integer *givptr, integer *givcol,
11484 integer *ldgcol, real *givnum, integer *ldgnum, real *poles, real *
11485 difl, real *difr, real *z__, integer *k, real *c__, real *s, real *
11486 rwork, integer *info)
11487{
11488 /* System generated locals */
11489 integer givcol_dim1, givcol_offset, difr_dim1, difr_offset, givnum_dim1,
11490 givnum_offset, poles_dim1, poles_offset, b_dim1, b_offset,
11491 bx_dim1, bx_offset, i__1, i__2, i__3, i__4, i__5;
11492 real r__1;
11493 complex q__1;
11494
11495 /* Local variables */
11496 static integer i__, j, m, n;
11497 static real dj;
11498 static integer nlp1, jcol;
11499 static real temp;
11500 static integer jrow;
11501 extern doublereal snrm2_(integer *, real *, integer *);
11502 static real diflj, difrj, dsigj;
11503 extern /* Subroutine */ int ccopy_(integer *, complex *, integer *,
11504 complex *, integer *), sgemv_(char *, integer *, integer *, real *
11505 , real *, integer *, real *, integer *, real *, real *, integer *), csrot_(integer *, complex *, integer *, complex *,
11506 integer *, real *, real *);
11507 extern doublereal slamc3_(real *, real *);
11508 extern /* Subroutine */ int clascl_(char *, integer *, integer *, real *,
11509 real *, integer *, integer *, complex *, integer *, integer *), csscal_(integer *, real *, complex *, integer *),
11510 clacpy_(char *, integer *, integer *, complex *, integer *,
11511 complex *, integer *), xerbla_(char *, integer *);
11512 static real dsigjp;
11513
11514
11515/*
11516 -- LAPACK routine (version 3.2) --
11517 -- LAPACK is a software package provided by Univ. of Tennessee, --
11518 -- Univ. of California Berkeley, Univ. of Colorado Denver and NAG Ltd..--
11519 November 2006
11520
11521
11522 Purpose
11523 =======
11524
11525 CLALS0 applies back the multiplying factors of either the left or the
11526 right singular vector matrix of a diagonal matrix appended by a row
11527 to the right hand side matrix B in solving the least squares problem
11528 using the divide-and-conquer SVD approach.
11529
11530 For the left singular vector matrix, three types of orthogonal
11531 matrices are involved:
11532
11533 (1L) Givens rotations: the number of such rotations is GIVPTR; the
11534 pairs of columns/rows they were applied to are stored in GIVCOL;
11535 and the C- and S-values of these rotations are stored in GIVNUM.
11536
11537 (2L) Permutation. The (NL+1)-st row of B is to be moved to the first
11538 row, and for J=2:N, PERM(J)-th row of B is to be moved to the

Callers 1

clalsa_Function · 0.85

Calls 9

csrot_Function · 0.85
ccopy_Function · 0.85
csscal_Function · 0.85
slamc3_Function · 0.85
snrm2_Function · 0.85
sgemv_Function · 0.85
clascl_Function · 0.85
clacpy_Function · 0.85
maxFunction · 0.50

Tested by

no test coverage detected