-
Notifications
You must be signed in to change notification settings - Fork 2
/
EMSOLI.INC
340 lines (340 loc) · 8.19 KB
/
EMSOLI.INC
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
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
CM
c*********************************************************************
C
c equivalence statements for the EMSOL integer control variables.
c These may be included in your program to allow referencing
c EMSOL control variables by mnemonic names.
C
c*********************************************************************
c
c Array for integer control variables.
c
integer emsoliln
parameter (emsoliln = 250)
integer emsoli(emsoliln)
common/ems_com_emsoli/emsoli
c
c The log frequency.
c
integer ILOGFREQ
equivalence (emsoli( 1), ILOGFREQ)
c
c The unit where output is directed for writing.
c
integer IPRINTUNIT
equivalence (emsoli( 2), IPRINTUNIT)
c
c The maximum number of iterations between a refactorization
c (invert) of the basis must be performed.
c
integer IMAXFACTOR
equivalence (emsoli( 3), IMAXFACTOR)
c
c The current number of iterations EMSOL has performed in a solve
c subroutine.
c
integer IITERNUM
equivalence (emsoli( 4), IITERNUM)
c
c The maximum number of iterations EMSOL will perform.
c
integer IMAXITER
equivalence (emsoli( 5), IMAXITER)
c
c The simplex log detail bit mask.
c
integer ILOGLEVEL
equivalence (emsoli( 6), ILOGLEVEL)
c
c One objective function (type N row) flag for MPS files.
c
integer IONEOBJ
equivalence (emsoli( 7), IONEOBJ)
c
c The number of the current ems_QPAR parametric adjustment.
c
integer IQPARNUMITER
equivalence (emsoli( 8), IQPARNUMITER)
c
c The maximum number of rows allowed in the matrix.
c
integer IMAXROWS
equivalence (emsoli( 9), IMAXROWS)
c
c The maximum number of columns allowed in the matrix.
c
integer IMAXCOLS
equivalence (emsoli(10), IMAXCOLS)
c
c The number of characters in the names of the
c
integer INUMCHAR
equivalence (emsoli(11), INUMCHAR)
c
c The stopping condition bit mask.
c
integer ISTOPMASK
equivalence (emsoli(12), ISTOPMASK)
c
c The maximum number of iterations of the interior-point barrier
c algorithm.
c
integer IMAXITERB
equivalence (emsoli(13), IMAXITERB)
c
c The formation of the adjacency matrix biA <biA sup T>.
c
integer IADJACTYPE
equivalence (emsoli(14), IADJACTYPE)
c
c The formation of the normal matrix.
c
integer IFORMNTYPE
equivalence (emsoli(15), IFORMNTYPE)
c
c The dense column threshold.
c
integer IDENSECOL
equivalence (emsoli(16), IDENSECOL)
c
c The type of Devex pricing to be used.
c
integer IDEVEXMODE
equivalence (emsoli(17), IDEVEXMODE)
c
c The null space checking switch.
c
integer INULLCHECK
equivalence (emsoli(18), INULLCHECK)
c
c The constraint dropping threshold.
c
integer IDROPROWCT
equivalence (emsoli(19), IDROPROWCT)
c
c The frequency which ems_ITRU is called.
c
integer IITERUFREQ
equivalence (emsoli(20), IITERUFREQ)
c
c The potential basis flag.
c
integer IPOSSBASIS
equivalence (emsoli(21), IPOSSBASIS)
c
c The maximum null space projections.
c
integer IMAXPROJNS
equivalence (emsoli(22), IMAXPROJNS)
c
c The number of elements in the last created block.
c
integer INUMELS
equivalence (emsoli(23), INUMELS)
c
c The number of matrix blocks.
c
integer INUMBLOCKS
equivalence (emsoli(24), INUMBLOCKS)
c
c The position of the message number on the output line.
c
integer IMSGPOS
equivalence (emsoli(25), IMSGPOS)
c
c The number of lines on the page.
c
integer IPAGELINES
equivalence (emsoli(26), IPAGELINES)
c
c The number of rows in the matrix.
c
integer INUMROWS
equivalence (emsoli(27), INUMROWS)
c
c The number of structural variables in the matrix.
c
integer INUMCOLS
equivalence (emsoli(28), INUMCOLS)
c
c The current number of primal infeasibilities.
c
integer INUMPINF
equivalence (emsoli(29), INUMPINF)
c
c The current number of dual infeasibilities.
c
integer INUMDINF
equivalence (emsoli(30), INUMDINF)
c
c The bit mask that determines which parts of the matrix are
c written or read by ems_PTMD or ems_GTMD.
c
integer IMODELMASK
equivalence (emsoli(31), IMODELMASK)
c
c The solution writing bit mask for ems_PRTS.
c
integer IPRTINFOMASK
equivalence (emsoli(32), IPRTINFOMASK)
c
c The write matrix bit mask for ems_PRTS.
c
integer ISOLMASK
equivalence (emsoli(33), ISOLMASK)
integer IPRTMTRXMASK
equivalence (emsoli(33), IPRTMTRXMASK)
c
c The number of elements in each spare block.
c
integer IEXTRABLK
equivalence (emsoli(34), IEXTRABLK)
c
c The maximum number of parametric adjustments that will be
c performed by ems_QPAR.
c
integer IQPARMAXITER
equivalence (emsoli(35), IQPARMAXITER)
c
c The length of the output line.
c
integer ILINELEN
equivalence (emsoli(36), ILINELEN)
c
c The maximum node number created so far.
c
integer INUMNODES
equivalence (emsoli(37), INUMNODES)
c
c The ems_MSLV log detail bit mask.
c
integer IINTMASK
equivalence (emsoli(38), IINTMASK)
c
c The fast iteration switch.
c
integer IFASTITS
equivalence (emsoli(39), IFASTITS)
c
c The maximum number of nodes to evaluate.
c
integer IMAXNODES
equivalence (emsoli(40), IMAXNODES)
c
c The maximum number of feasible integer solutions to find.
c
integer IMAXSOLS
equivalence (emsoli(41), IMAXSOLS)
c
c The number of integer solutions found so far.
c
integer INUMSOLS
equivalence (emsoli(42), INUMSOLS)
c
c The number of individual integer variables.
c
integer INUMINTS
equivalence (emsoli(43), INUMINTS)
c
c The number of sets.
c
integer INUMSETS
equivalence (emsoli(44), INUMSETS)
c
c The number of integer variables at fractional values.
c
integer INUMUNSAT
equivalence (emsoli(45), INUMUNSAT)
c
c IBM Vector facility flag.
c
integer IVECTOR
equivalence (emsoli(46), IVECTOR)
c
c The problem status.
c
integer IPROBSTAT
equivalence (emsoli(47), IPROBSTAT)
c
c The maximum number of decomposition iterations.
c
integer IMAJORITS
equivalence (emsoli(48), IMAJORITS)
c
c The sensitivity information writeing bit mask.
c
integer IPRINTSENS
equivalence (emsoli(49), IPRINTSENS)
c
c The maximum number of integer variables.
c
integer IMAXINTS
equivalence (emsoli(50), IMAXINTS)
c
c The maximum number of sets.
c
integer IMAXSETS
equivalence (emsoli(51), IMAXSETS)
c
c The bit mask that selects various steps of the MIP algorithm.
c
integer ISTRATEGY
equivalence (emsoli(52), ISTRATEGY)
c
c The maximum amount of integer information.
c
integer IMAXINTINFO
equivalence (emsoli(53), IMAXINTINFO)
c
c Number of integer variables that must be fixed for supernode
c processing to continue.
c
integer ITHRESHOLD
equivalence (emsoli(54), ITHRESHOLD)
c
c The number of heuristic passes to be made by ems_MPRE.
c
integer IHEURPASS
equivalence (emsoli(55), IHEURPASS)
c
c The number of branches allowed inside a supernode before
c supernode processing ends.
c
integer ISUPERTOL
equivalence (emsoli(56), ISUPERTOL)
c
c The row ordering method indicator.
c
integer IROWORD
equivalence (emsoli(57), IROWORD)
c
c The row ordering read and write logical unit.
c
integer IORDUNIT
equivalence (emsoli(58), IORDUNIT)
c
c The amount of extra information that is saved and restored by
c the user exit subroutine ems_NODU.
c
integer IMIPLENGTH
equivalence (emsoli(59), IMIPLENGTH)
c
c The current number of iterations ems_BSLV has performed.
c
integer IITERBNUM
equivalence (emsoli(60), IITERBNUM)
c
c The type of pricing for ems_NSLV.
c
integer IPRICETYPE
equivalence (emsoli(61), IPRICETYPE)
c
c A secondary problem status variable.
c
integer IPROBSTAT2
equivalence (emsoli(63), IPROBSTAT2)
c
c The bit mask that indicates the type of model read in by ems_SMDL.
c
integer ISMDLTYPEMASK
equivalence (emsoli(64), ISMDLTYPEMASK)