1 /* divset.f -- translated by f2c (version 19970211).
2 You must link the resulting object file with the libraries:
3 -lf2c -lm (in that order)
4 */
5
6 #include "f2c.h"
7
8 /* Table of constant values */
9
10 static integer c__1 = 1;
11
divset_(alg,iv,liv,lv,v)12 /* Subroutine */ int divset_(alg, iv, liv, lv, v)
13 integer *alg, *iv, *liv, *lv;
14 doublereal *v;
15 {
16 /* Initialized data */
17
18 static integer miniv[4] = { 82,59,103,103 };
19 static integer minv[4] = { 98,71,101,85 };
20
21 extern integer i7mdcn_();
22 extern /* Subroutine */ int dv7dfl_();
23 static integer mv, miv, alg1;
24
25
26 /* *** SUPPLY ***SOL (VERSION 2.3) DEFAULT VALUES TO IV AND V *** */
27
28 /* *** ALG = 1 MEANS REGRESSION CONSTANTS. */
29 /* *** ALG = 2 MEANS GENERAL UNCONSTRAINED OPTIMIZATION CONSTANTS. */
30
31
32 /* I7MDCN... RETURNS MACHINE-DEPENDENT INTEGER CONSTANTS. */
33 /* DV7DFL.... PROVIDES DEFAULT VALUES TO V. */
34
35
36 /* *** SUBSCRIPTS FOR IV *** */
37
38
39 /* *** IV SUBSCRIPT VALUES *** */
40
41 /* /6 */
42 /* DATA ALGSAV/51/, COVPRT/14/, COVREQ/15/, DRADPR/101/, DTYPE/16/, */
43 /* 1 HC/71/, IERR/75/, INITH/25/, INITS/25/, IPIVOT/76/, */
44 /* 2 IVNEED/3/, LASTIV/44/, LASTV/45/, LMAT/42/, MXFCAL/17/, */
45 /* 3 MXITER/18/, NFCOV/52/, NGCOV/53/, NVDFLT/50/, NVSAVE/9/, */
46 /* 4 OUTLEV/19/, PARPRT/20/, PARSAV/49/, PERM/58/, PRUNIT/21/, */
47 /* 5 QRTYP/80/, RDREQ/57/, RMAT/78/, SOLPRT/22/, STATPR/23/, */
48 /* 6 VNEED/4/, VSAVE/60/, X0PRT/24/ */
49 /* /7 */
50 /* / */
51 /* Parameter adjustments */
52 --iv;
53 --v;
54
55 /* Function Body */
56
57 /* ------------------------------- BODY --------------------------------
58 */
59
60 if (21 <= *liv) {
61 iv[21] = i7mdcn_(&c__1);
62 }
63 if (51 <= *liv) {
64 iv[51] = *alg;
65 }
66 if (*alg < 1 || *alg > 4) {
67 goto L40;
68 }
69 miv = miniv[*alg - 1];
70 if (*liv < miv) {
71 goto L20;
72 }
73 mv = minv[*alg - 1];
74 if (*lv < mv) {
75 goto L30;
76 }
77 alg1 = (*alg - 1) % 2 + 1;
78 dv7dfl_(&alg1, lv, &v[1]);
79 iv[1] = 12;
80 if (*alg > 2) {
81 iv[101] = 1;
82 }
83 iv[3] = 0;
84 iv[44] = miv;
85 iv[45] = mv;
86 iv[42] = mv + 1;
87 iv[17] = 200;
88 iv[18] = 150;
89 iv[19] = 1;
90 iv[20] = 1;
91 iv[58] = miv + 1;
92 iv[22] = 1;
93 iv[23] = 1;
94 iv[4] = 0;
95 iv[24] = 1;
96
97 if (alg1 >= 2) {
98 goto L10;
99 }
100
101 /* *** REGRESSION VALUES */
102
103 iv[14] = 3;
104 iv[15] = 1;
105 iv[16] = 1;
106 iv[71] = 0;
107 iv[75] = 0;
108 iv[25] = 0;
109 iv[76] = 0;
110 iv[50] = 32;
111 iv[60] = 58;
112 if (*alg > 2) {
113 iv[60] += 3;
114 }
115 iv[49] = iv[60] + 9;
116 iv[80] = 1;
117 iv[57] = 3;
118 iv[78] = 0;
119 goto L999;
120
121 /* *** GENERAL OPTIMIZATION VALUES */
122
123 L10:
124 iv[16] = 0;
125 iv[25] = 1;
126 iv[52] = 0;
127 iv[53] = 0;
128 iv[50] = 25;
129 iv[49] = 47;
130 if (*alg > 2) {
131 iv[49] = 61;
132 }
133 goto L999;
134
135 L20:
136 iv[1] = 15;
137 goto L999;
138
139 L30:
140 iv[1] = 16;
141 goto L999;
142
143 L40:
144 iv[1] = 67;
145
146 L999:
147 return 0;
148 /* *** LAST CARD OF DIVSET FOLLOWS *** */
149 } /* divset_ */
150
151