File: dlasq1

package info (click to toggle)
ruby-lapack 1.8.1-1
  • links: PTS, VCS
  • area: main
  • in suites: bullseye, buster
  • size: 28,552 kB
  • sloc: ansic: 191,612; ruby: 3,934; makefile: 8
file content (75 lines) | stat: -rwxr-xr-x 2,541 bytes parent folder | download | duplicates (5)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
--- 
:name: dlasq1
:md5sum: 64432270af33eae03a6a5fd907dae092
:category: :subroutine
:arguments: 
- n: 
    :type: integer
    :intent: input
- d: 
    :type: doublereal
    :intent: input/output
    :dims: 
    - n
- e: 
    :type: doublereal
    :intent: input/output
    :dims: 
    - n
- work: 
    :type: doublereal
    :intent: workspace
    :dims: 
    - 4*n
- info: 
    :type: integer
    :intent: output
:substitutions: {}

:fortran_help: "      SUBROUTINE DLASQ1( N, D, E, WORK, INFO )\n\n\
  *  Purpose\n\
  *  =======\n\
  *\n\
  *  DLASQ1 computes the singular values of a real N-by-N bidiagonal\n\
  *  matrix with diagonal D and off-diagonal E. The singular values\n\
  *  are computed to high relative accuracy, in the absence of\n\
  *  denormalization, underflow and overflow. The algorithm was first\n\
  *  presented in\n\
  *\n\
  *  \"Accurate singular values and differential qd algorithms\" by K. V.\n\
  *  Fernando and B. N. Parlett, Numer. Math., Vol-67, No. 2, pp. 191-230,\n\
  *  1994,\n\
  *\n\
  *  and the present implementation is described in \"An implementation of\n\
  *  the dqds Algorithm (Positive Case)\", LAPACK Working Note.\n\
  *\n\n\
  *  Arguments\n\
  *  =========\n\
  *\n\
  *  N     (input) INTEGER\n\
  *        The number of rows and columns in the matrix. N >= 0.\n\
  *\n\
  *  D     (input/output) DOUBLE PRECISION array, dimension (N)\n\
  *        On entry, D contains the diagonal elements of the\n\
  *        bidiagonal matrix whose SVD is desired. On normal exit,\n\
  *        D contains the singular values in decreasing order.\n\
  *\n\
  *  E     (input/output) DOUBLE PRECISION array, dimension (N)\n\
  *        On entry, elements E(1:N-1) contain the off-diagonal elements\n\
  *        of the bidiagonal matrix whose SVD is desired.\n\
  *        On exit, E is overwritten.\n\
  *\n\
  *  WORK  (workspace) DOUBLE PRECISION array, dimension (4*N)\n\
  *\n\
  *  INFO  (output) INTEGER\n\
  *        = 0: successful exit\n\
  *        < 0: if INFO = -i, the i-th argument had an illegal value\n\
  *        > 0: the algorithm failed\n\
  *             = 1, a split was marked by a positive value in E\n\
  *             = 2, current block of Z not diagonalized after 30*N\n\
  *                  iterations (in inner while loop)\n\
  *             = 3, termination criterion of outer while loop not met \n\
  *                  (program created more than N unreduced blocks)\n\
  *\n\n\
  *  =====================================================================\n\
  *\n"