File: cgbequb

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 (128 lines) | stat: -rwxr-xr-x 4,268 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
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
--- 
:name: cgbequb
:md5sum: 5041799a7d0f357f5d903a9c34b04f02
:category: :subroutine
:arguments: 
- m: 
    :type: integer
    :intent: input
- n: 
    :type: integer
    :intent: input
- kl: 
    :type: integer
    :intent: input
- ku: 
    :type: integer
    :intent: input
- ab: 
    :type: doublereal
    :intent: input
    :dims: 
    - ldab
    - n
- ldab: 
    :type: integer
    :intent: input
- r: 
    :type: real
    :intent: output
    :dims: 
    - m
- c: 
    :type: real
    :intent: output
    :dims: 
    - n
- rowcnd: 
    :type: real
    :intent: output
- colcnd: 
    :type: real
    :intent: output
- amax: 
    :type: real
    :intent: output
- info: 
    :type: integer
    :intent: output
:substitutions: 
  m: ldab
:fortran_help: "      SUBROUTINE CGBEQUB( M, N, KL, KU, AB, LDAB, R, C, ROWCND, COLCND, AMAX, INFO )\n\n\
  *  Purpose\n\
  *  =======\n\
  *\n\
  *  CGBEQUB computes row and column scalings intended to equilibrate an\n\
  *  M-by-N matrix A and reduce its condition number.  R returns the row\n\
  *  scale factors and C the column scale factors, chosen to try to make\n\
  *  the largest element in each row and column of the matrix B with\n\
  *  elements B(i,j)=R(i)*A(i,j)*C(j) have an absolute value of at most\n\
  *  the radix.\n\
  *\n\
  *  R(i) and C(j) are restricted to be a power of the radix between\n\
  *  SMLNUM = smallest safe number and BIGNUM = largest safe number.  Use\n\
  *  of these scaling factors is not guaranteed to reduce the condition\n\
  *  number of A but works well in practice.\n\
  *\n\
  *  This routine differs from CGEEQU by restricting the scaling factors\n\
  *  to a power of the radix.  Baring over- and underflow, scaling by\n\
  *  these factors introduces no additional rounding errors.  However, the\n\
  *  scaled entries' magnitured are no longer approximately 1 but lie\n\
  *  between sqrt(radix) and 1/sqrt(radix).\n\
  *\n\n\
  *  Arguments\n\
  *  =========\n\
  *\n\
  *  M       (input) INTEGER\n\
  *          The number of rows of the matrix A.  M >= 0.\n\
  *\n\
  *  N       (input) INTEGER\n\
  *          The number of columns of the matrix A.  N >= 0.\n\
  *\n\
  *  KL      (input) INTEGER\n\
  *          The number of subdiagonals within the band of A.  KL >= 0.\n\
  *\n\
  *  KU      (input) INTEGER\n\
  *          The number of superdiagonals within the band of A.  KU >= 0.\n\
  *\n\
  *  AB      (input) DOUBLE PRECISION array, dimension (LDAB,N)\n\
  *          On entry, the matrix A in band storage, in rows 1 to KL+KU+1.\n\
  *          The j-th column of A is stored in the j-th column of the\n\
  *          array AB as follows:\n\
  *          AB(KU+1+i-j,j) = A(i,j) for max(1,j-KU)<=i<=min(N,j+kl)\n\
  *\n\
  *  LDAB    (input) INTEGER\n\
  *          The leading dimension of the array A.  LDAB >= max(1,M).\n\
  *\n\
  *  R       (output) REAL array, dimension (M)\n\
  *          If INFO = 0 or INFO > M, R contains the row scale factors\n\
  *          for A.\n\
  *\n\
  *  C       (output) REAL array, dimension (N)\n\
  *          If INFO = 0,  C contains the column scale factors for A.\n\
  *\n\
  *  ROWCND  (output) REAL\n\
  *          If INFO = 0 or INFO > M, ROWCND contains the ratio of the\n\
  *          smallest R(i) to the largest R(i).  If ROWCND >= 0.1 and\n\
  *          AMAX is neither too large nor too small, it is not worth\n\
  *          scaling by R.\n\
  *\n\
  *  COLCND  (output) REAL\n\
  *          If INFO = 0, COLCND contains the ratio of the smallest\n\
  *          C(i) to the largest C(i).  If COLCND >= 0.1, it is not\n\
  *          worth scaling by C.\n\
  *\n\
  *  AMAX    (output) REAL\n\
  *          Absolute value of largest matrix element.  If AMAX is very\n\
  *          close to overflow or very close to underflow, the matrix\n\
  *          should be scaled.\n\
  *\n\
  *  INFO    (output) INTEGER\n\
  *          = 0:  successful exit\n\
  *          < 0:  if INFO = -i, the i-th argument had an illegal value\n\
  *          > 0:  if INFO = i,  and i is\n\
  *                <= M:  the i-th row of A is exactly zero\n\
  *                >  M:  the (i-M)-th column of A is exactly zero\n\
  *\n\n\
  *  =====================================================================\n\
  *\n"