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

Function dlaed1_

numpy/linalg/lapack_lite/f2c_d_lapack.c:9126–9350  ·  view source on GitHub ↗

Subroutine */

Source from the content-addressed store, hash-verified

9124} /* dlaed0_ */
9125
9126/* Subroutine */ int dlaed1_(integer *n, doublereal *d__, doublereal *q,
9127 integer *ldq, integer *indxq, doublereal *rho, integer *cutpnt,
9128 doublereal *work, integer *iwork, integer *info)
9129{
9130 /* System generated locals */
9131 integer q_dim1, q_offset, i__1, i__2;
9132
9133 /* Local variables */
9134 static integer i__, k, n1, n2, is, iw, iz, iq2, zpp1, indx, indxc;
9135 extern /* Subroutine */ int dcopy_(integer *, doublereal *, integer *,
9136 doublereal *, integer *);
9137 static integer indxp;
9138 extern /* Subroutine */ int dlaed2_(integer *, integer *, integer *,
9139 doublereal *, doublereal *, integer *, integer *, doublereal *,
9140 doublereal *, doublereal *, doublereal *, doublereal *, integer *,
9141 integer *, integer *, integer *, integer *), dlaed3_(integer *,
9142 integer *, integer *, doublereal *, doublereal *, integer *,
9143 doublereal *, doublereal *, doublereal *, integer *, integer *,
9144 doublereal *, doublereal *, integer *);
9145 static integer idlmda;
9146 extern /* Subroutine */ int dlamrg_(integer *, integer *, doublereal *,
9147 integer *, integer *, integer *), xerbla_(char *, integer *);
9148 static integer coltyp;
9149
9150
9151/*
9152 -- LAPACK routine (version 3.2) --
9153 -- LAPACK is a software package provided by Univ. of Tennessee, --
9154 -- Univ. of California Berkeley, Univ. of Colorado Denver and NAG Ltd..--
9155 November 2006
9156
9157
9158 Purpose
9159 =======
9160
9161 DLAED1 computes the updated eigensystem of a diagonal
9162 matrix after modification by a rank-one symmetric matrix. This
9163 routine is used only for the eigenproblem which requires all
9164 eigenvalues and eigenvectors of a tridiagonal matrix. DLAED7 handles
9165 the case in which eigenvalues only or eigenvalues and eigenvectors
9166 of a full symmetric matrix (which was reduced to tridiagonal form)
9167 are desired.
9168
9169 T = Q(in) ( D(in) + RHO * Z*Z' ) Q'(in) = Q(out) * D(out) * Q'(out)
9170
9171 where Z = Q'u, u is a vector of length N with ones in the
9172 CUTPNT and CUTPNT + 1 th elements and zeros elsewhere.
9173
9174 The eigenvectors of the original matrix are stored in Q, and the
9175 eigenvalues are in D. The algorithm consists of three stages:
9176
9177 The first stage consists of deflating the size of the problem
9178 when there are multiple eigenvalues or if there is a zero in
9179 the Z vector. For each such occurence the dimension of the
9180 secular equation problem is reduced by one. This stage is
9181 performed by the routine DLAED2.
9182
9183 The second stage consists of calculating the updated

Callers 1

dlaed0_Function · 0.85

Calls 6

dcopy_Function · 0.85
dlaed2_Function · 0.85
dlaed3_Function · 0.85
dlamrg_Function · 0.85
maxFunction · 0.50
minFunction · 0.50

Tested by

no test coverage detected