Subroutine */
| 37911 | } /* dstedc_ */ |
| 37912 | |
| 37913 | /* Subroutine */ int dsteqr_(char *compz, integer *n, doublereal *d__, |
| 37914 | doublereal *e, doublereal *z__, integer *ldz, doublereal *work, |
| 37915 | integer *info) |
| 37916 | { |
| 37917 | /* System generated locals */ |
| 37918 | integer z_dim1, z_offset, i__1, i__2; |
| 37919 | doublereal d__1, d__2; |
| 37920 | |
| 37921 | /* Local variables */ |
| 37922 | static doublereal b, c__, f, g; |
| 37923 | static integer i__, j, k, l, m; |
| 37924 | static doublereal p, r__, s; |
| 37925 | static integer l1, ii, mm, lm1, mm1, nm1; |
| 37926 | static doublereal rt1, rt2, eps; |
| 37927 | static integer lsv; |
| 37928 | static doublereal tst, eps2; |
| 37929 | static integer lend, jtot; |
| 37930 | extern /* Subroutine */ int dlae2_(doublereal *, doublereal *, doublereal |
| 37931 | *, doublereal *, doublereal *); |
| 37932 | extern logical lsame_(char *, char *); |
| 37933 | extern /* Subroutine */ int dlasr_(char *, char *, char *, integer *, |
| 37934 | integer *, doublereal *, doublereal *, doublereal *, integer *); |
| 37935 | static doublereal anorm; |
| 37936 | extern /* Subroutine */ int dswap_(integer *, doublereal *, integer *, |
| 37937 | doublereal *, integer *), dlaev2_(doublereal *, doublereal *, |
| 37938 | doublereal *, doublereal *, doublereal *, doublereal *, |
| 37939 | doublereal *); |
| 37940 | static integer lendm1, lendp1; |
| 37941 | |
| 37942 | static integer iscale; |
| 37943 | extern /* Subroutine */ int dlascl_(char *, integer *, integer *, |
| 37944 | doublereal *, doublereal *, integer *, integer *, doublereal *, |
| 37945 | integer *, integer *), dlaset_(char *, integer *, integer |
| 37946 | *, doublereal *, doublereal *, doublereal *, integer *); |
| 37947 | static doublereal safmin; |
| 37948 | extern /* Subroutine */ int dlartg_(doublereal *, doublereal *, |
| 37949 | doublereal *, doublereal *, doublereal *); |
| 37950 | static doublereal safmax; |
| 37951 | extern /* Subroutine */ int xerbla_(char *, integer *); |
| 37952 | extern doublereal dlanst_(char *, integer *, doublereal *, doublereal *); |
| 37953 | extern /* Subroutine */ int dlasrt_(char *, integer *, doublereal *, |
| 37954 | integer *); |
| 37955 | static integer lendsv; |
| 37956 | static doublereal ssfmin; |
| 37957 | static integer nmaxit, icompz; |
| 37958 | static doublereal ssfmax; |
| 37959 | |
| 37960 | |
| 37961 | /* |
| 37962 | -- LAPACK routine (version 3.2) -- |
| 37963 | -- LAPACK is a software package provided by Univ. of Tennessee, -- |
| 37964 | -- Univ. of California Berkeley, Univ. of Colorado Denver and NAG Ltd..-- |
| 37965 | November 2006 |
| 37966 | |
| 37967 | |
| 37968 | Purpose |
| 37969 | ======= |
| 37970 |