~ubuntu-branches/ubuntu/hoary/scilab/hoary

« back to all changes in this revision

Viewing changes to man/eng/fileio/readmps.xml

  • Committer: Bazaar Package Importer
  • Author(s): Torsten Werner
  • Date: 2005-01-09 22:58:21 UTC
  • mfrom: (1.1.1 upstream)
  • Revision ID: james.westby@ubuntu.com-20050109225821-473xr8vhgugxxx5j
Tags: 3.0-12
changed configure.in to build scilab's own malloc.o, closes: #255869

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
<?xml version="1.0" encoding="ISO-8859-1" standalone="no"?>
 
2
<!DOCTYPE MAN SYSTEM "../../manrev.dtd">
 
3
<MAN>
 
4
  <LANGUAGE>eng</LANGUAGE>
 
5
  <TITLE>readmps</TITLE>
 
6
  <TYPE>Scilab Function</TYPE>
 
7
  <DATE>MAY 1998</DATE>
 
8
  <SHORT_DESCRIPTION name="readmps"> reads a file in MPS format</SHORT_DESCRIPTION>
 
9
  <CALLING_SEQUENCE>
 
10
    <CALLING_SEQUENCE_ITEM> mps= readmps (file-name,bounds [,maxsizes]);   </CALLING_SEQUENCE_ITEM>
 
11
  </CALLING_SEQUENCE>
 
12
  <PARAM>
 
13
    <PARAM_INDENT>
 
14
      <PARAM_ITEM>
 
15
        <PARAM_NAME>file-name</PARAM_NAME>
 
16
        <PARAM_DESCRIPTION>
 
17
          <SP>:
 
18
    character string, path of the MPS file</SP>
 
19
        </PARAM_DESCRIPTION>
 
20
      </PARAM_ITEM>
 
21
      <PARAM_ITEM>
 
22
        <PARAM_NAME>bounds</PARAM_NAME>
 
23
        <PARAM_DESCRIPTION>
 
24
          <SP>: 2-vector
 
25
    <VERB>[lowbound,upbound]</VERB> , default lower ans upper bounds</SP>
 
26
        </PARAM_DESCRIPTION>
 
27
      </PARAM_ITEM>
 
28
      <PARAM_ITEM>
 
29
        <PARAM_NAME>maxsizes</PARAM_NAME>
 
30
        <PARAM_DESCRIPTION>
 
31
          <SP>: 3-vector <VERB>[maxm,maxn,maxnza]</VERB>
 
32
  Maximum number of contraints and variables, maximum number of
 
33
  nonzeros entries in the LP constraint matrix. If omitted readmps
 
34
  reads the file once just to compute these numbers.</SP>
 
35
        </PARAM_DESCRIPTION>
 
36
      </PARAM_ITEM>
 
37
      <PARAM_ITEM>
 
38
        <PARAM_NAME>mps</PARAM_NAME>
 
39
        <PARAM_DESCRIPTION>
 
40
          <SP>: tlist with following fields</SP>
 
41
          <PARAM_INDENT>
 
42
            <PARAM_ITEM>
 
43
              <PARAM_NAME>irobj</PARAM_NAME>
 
44
              <PARAM_DESCRIPTION>
 
45
                <SP>: integer (index of the objective row).</SP>
 
46
              </PARAM_DESCRIPTION>
 
47
            </PARAM_ITEM>
 
48
            <PARAM_ITEM>
 
49
              <PARAM_NAME>namec</PARAM_NAME>
 
50
              <PARAM_DESCRIPTION>
 
51
                <SP>: character string (Name of the objective).</SP>
 
52
              </PARAM_DESCRIPTION>
 
53
            </PARAM_ITEM>
 
54
            <PARAM_ITEM>
 
55
              <PARAM_NAME>nameb</PARAM_NAME>
 
56
              <PARAM_DESCRIPTION>
 
57
                <SP>: character string (Name of the right hand side).</SP>
 
58
              </PARAM_DESCRIPTION>
 
59
            </PARAM_ITEM>
 
60
            <PARAM_ITEM>
 
61
              <PARAM_NAME>namran</PARAM_NAME>
 
62
              <PARAM_DESCRIPTION>
 
63
                <SP>: character string (Name of the ranges section).</SP>
 
64
              </PARAM_DESCRIPTION>
 
65
            </PARAM_ITEM>
 
66
            <PARAM_ITEM>
 
67
              <PARAM_NAME>nambnd</PARAM_NAME>
 
68
              <PARAM_DESCRIPTION>
 
69
                <SP>: character string (Name of the bounds section).</SP>
 
70
              </PARAM_DESCRIPTION>
 
71
            </PARAM_ITEM>
 
72
            <PARAM_ITEM>
 
73
              <PARAM_NAME>name</PARAM_NAME>
 
74
              <PARAM_DESCRIPTION>
 
75
                <SP>: character string (Name of the  LP problem).</SP>
 
76
              </PARAM_DESCRIPTION>
 
77
            </PARAM_ITEM>
 
78
            <PARAM_ITEM>
 
79
              <PARAM_NAME>rownames</PARAM_NAME>
 
80
              <PARAM_DESCRIPTION>
 
81
                <SP>: character string column vector (Name of the rows). 
 
82
          colnames : character string row vector (Name of the columns).</SP>
 
83
              </PARAM_DESCRIPTION>
 
84
            </PARAM_ITEM>
 
85
            <PARAM_ITEM>
 
86
              <PARAM_NAME>rowstat</PARAM_NAME>
 
87
              <PARAM_DESCRIPTION>
 
88
                <SP>: integer vector,  row types:</SP>
 
89
                <PARAM_INDENT>
 
90
                  <PARAM_ITEM>
 
91
                    <PARAM_NAME>1</PARAM_NAME>
 
92
                    <PARAM_DESCRIPTION>
 
93
                      <SP>row type is &quot;=&quot;</SP>
 
94
                    </PARAM_DESCRIPTION>
 
95
                  </PARAM_ITEM>
 
96
                  <PARAM_ITEM>
 
97
                    <PARAM_NAME>2</PARAM_NAME>
 
98
                    <PARAM_DESCRIPTION>
 
99
                      <SP>:  row type is &quot;&gt;=&quot;</SP>
 
100
                    </PARAM_DESCRIPTION>
 
101
                  </PARAM_ITEM>
 
102
                  <PARAM_ITEM>
 
103
                    <PARAM_NAME>3</PARAM_NAME>
 
104
                    <PARAM_DESCRIPTION>
 
105
                      <SP>:  row type is &quot;&lt;=&quot;</SP>
 
106
                    </PARAM_DESCRIPTION>
 
107
                  </PARAM_ITEM>
 
108
                  <PARAM_ITEM>
 
109
                    <PARAM_NAME>4</PARAM_NAME>
 
110
                    <PARAM_DESCRIPTION>
 
111
                      <SP>:  objective row</SP>
 
112
                    </PARAM_DESCRIPTION>
 
113
                  </PARAM_ITEM>
 
114
                  <PARAM_ITEM>
 
115
                    <PARAM_NAME>5</PARAM_NAME>
 
116
                    <PARAM_DESCRIPTION>
 
117
                      <SP>:  other free row</SP>
 
118
                    </PARAM_DESCRIPTION>
 
119
                  </PARAM_ITEM>
 
120
                </PARAM_INDENT>
 
121
              </PARAM_DESCRIPTION>
 
122
            </PARAM_ITEM>
 
123
            <PARAM_ITEM>
 
124
              <PARAM_NAME>rowcode</PARAM_NAME>
 
125
              <PARAM_DESCRIPTION>
 
126
                <SP>: real matrix <VERB>[hdrowcd,lnkrow]</VERB> with</SP>
 
127
                <PARAM_INDENT>
 
128
                  <PARAM_ITEM>
 
129
                    <PARAM_NAME>hdrowcd</PARAM_NAME>
 
130
                    <PARAM_DESCRIPTION>
 
131
                      <SP>: real vector (Header to the linked list of rows with the same codes).</SP>
 
132
                    </PARAM_DESCRIPTION>
 
133
                  </PARAM_ITEM>
 
134
                  <PARAM_ITEM>
 
135
                    <PARAM_NAME>lnkrow</PARAM_NAME>
 
136
                    <PARAM_DESCRIPTION>
 
137
                      <SP>: integer vector (Linked list of rows with the same codes).</SP>
 
138
                    </PARAM_DESCRIPTION>
 
139
                  </PARAM_ITEM>
 
140
                </PARAM_INDENT>
 
141
              </PARAM_DESCRIPTION>
 
142
            </PARAM_ITEM>
 
143
            <PARAM_ITEM>
 
144
              <PARAM_NAME>colcode</PARAM_NAME>
 
145
              <PARAM_DESCRIPTION>
 
146
                <SP>: real matrix <VERB>[hdcolcd,lnkcol]</VERB> with</SP>
 
147
                <PARAM_INDENT>
 
148
                  <PARAM_ITEM>
 
149
                    <PARAM_NAME>hdcolcd</PARAM_NAME>
 
150
                    <PARAM_DESCRIPTION>
 
151
                      <SP>: integer vector (Header to the linked list of columns with the same codes).</SP>
 
152
                    </PARAM_DESCRIPTION>
 
153
                  </PARAM_ITEM>
 
154
                  <PARAM_ITEM>
 
155
                    <PARAM_NAME>lnkcol</PARAM_NAME>
 
156
                    <PARAM_DESCRIPTION>
 
157
                      <SP>: integer vector (Linked list of columns with the same codes).</SP>
 
158
                    </PARAM_DESCRIPTION>
 
159
                  </PARAM_ITEM>
 
160
                </PARAM_INDENT>
 
161
              </PARAM_DESCRIPTION>
 
162
            </PARAM_ITEM>
 
163
            <PARAM_ITEM>
 
164
              <PARAM_NAME>rownmbs</PARAM_NAME>
 
165
              <PARAM_DESCRIPTION>
 
166
                <SP>: integer vector (Row numbers of nonzeros in columns of matrix A.)</SP>
 
167
              </PARAM_DESCRIPTION>
 
168
            </PARAM_ITEM>
 
169
            <PARAM_ITEM>
 
170
              <PARAM_NAME>colpnts</PARAM_NAME>
 
171
              <PARAM_DESCRIPTION>
 
172
                <SP>: integer vector (Pointers to the beginning of columns of matrix A).</SP>
 
173
              </PARAM_DESCRIPTION>
 
174
            </PARAM_ITEM>
 
175
            <PARAM_ITEM>
 
176
              <PARAM_NAME>acoeff</PARAM_NAME>
 
177
              <PARAM_DESCRIPTION>
 
178
                <SP>: real vector (Array of nonzero elements for each column).</SP>
 
179
              </PARAM_DESCRIPTION>
 
180
            </PARAM_ITEM>
 
181
            <PARAM_ITEM>
 
182
              <PARAM_NAME>rhs</PARAM_NAME>
 
183
              <PARAM_DESCRIPTION>
 
184
                <SP>:real vector ( Right hand side of the linear program).</SP>
 
185
              </PARAM_DESCRIPTION>
 
186
            </PARAM_ITEM>
 
187
            <PARAM_ITEM>
 
188
              <PARAM_NAME>ranges</PARAM_NAME>
 
189
              <PARAM_DESCRIPTION>
 
190
                <SP>: real vector of constraint ranges.</SP>
 
191
              </PARAM_DESCRIPTION>
 
192
            </PARAM_ITEM>
 
193
            <PARAM_ITEM>
 
194
              <PARAM_NAME>bounds</PARAM_NAME>
 
195
              <PARAM_DESCRIPTION>
 
196
                <SP>: real matrix <VERB>[lbounds,ubounds]</VERB> with</SP>
 
197
                <PARAM_INDENT>
 
198
                  <PARAM_ITEM>
 
199
                    <PARAM_NAME>ubounds</PARAM_NAME>
 
200
                    <PARAM_DESCRIPTION>
 
201
                      <SP>: full column vector of upper bounds</SP>
 
202
                    </PARAM_DESCRIPTION>
 
203
                  </PARAM_ITEM>
 
204
                  <PARAM_ITEM>
 
205
                    <PARAM_NAME>lbounds</PARAM_NAME>
 
206
                    <PARAM_DESCRIPTION>
 
207
                      <SP>: full column vector of lower bounds</SP>
 
208
                    </PARAM_DESCRIPTION>
 
209
                  </PARAM_ITEM>
 
210
                </PARAM_INDENT>
 
211
              </PARAM_DESCRIPTION>
 
212
            </PARAM_ITEM>
 
213
            <PARAM_ITEM>
 
214
              <PARAM_NAME>stavar</PARAM_NAME>
 
215
              <PARAM_DESCRIPTION>
 
216
                <SP>: full column vector of variable status</SP>
 
217
                <PARAM_INDENT>
 
218
                  <PARAM_ITEM>
 
219
                    <PARAM_NAME>0</PARAM_NAME>
 
220
                    <PARAM_DESCRIPTION>
 
221
                      <SP>:standard (non negative) variable</SP>
 
222
                    </PARAM_DESCRIPTION>
 
223
                  </PARAM_ITEM>
 
224
                  <PARAM_ITEM>
 
225
                    <PARAM_NAME>1</PARAM_NAME>
 
226
                    <PARAM_DESCRIPTION>
 
227
                      <SP>: upper bounded variable</SP>
 
228
                    </PARAM_DESCRIPTION>
 
229
                  </PARAM_ITEM>
 
230
                  <PARAM_ITEM>
 
231
                    <PARAM_NAME>2</PARAM_NAME>
 
232
                    <PARAM_DESCRIPTION>
 
233
                      <SP>: lower bounded variable</SP>
 
234
                    </PARAM_DESCRIPTION>
 
235
                  </PARAM_ITEM>
 
236
                  <PARAM_ITEM>
 
237
                    <PARAM_NAME>3</PARAM_NAME>
 
238
                    <PARAM_DESCRIPTION>
 
239
                      <SP>: lower and upper bounded variable</SP>
 
240
                    </PARAM_DESCRIPTION>
 
241
                  </PARAM_ITEM>
 
242
                  <PARAM_ITEM>
 
243
                    <PARAM_NAME>4</PARAM_NAME>
 
244
                    <PARAM_DESCRIPTION>
 
245
                      <SP>: minus infinity type variable  i.e -inf&lt;x&lt;=u</SP>
 
246
                    </PARAM_DESCRIPTION>
 
247
                  </PARAM_ITEM>
 
248
                  <PARAM_ITEM>
 
249
                    <PARAM_NAME>5</PARAM_NAME>
 
250
                    <PARAM_DESCRIPTION>
 
251
                      <SP>: plus infinity type variable  i.e l&lt;=x&lt; inf</SP>
 
252
                    </PARAM_DESCRIPTION>
 
253
                  </PARAM_ITEM>
 
254
                  <PARAM_ITEM>
 
255
                    <PARAM_NAME>6</PARAM_NAME>
 
256
                    <PARAM_DESCRIPTION>
 
257
                      <SP>: fixed type variable  i.e l=x=u</SP>
 
258
                    </PARAM_DESCRIPTION>
 
259
                  </PARAM_ITEM>
 
260
                  <PARAM_ITEM>
 
261
                    <PARAM_NAME>-k</PARAM_NAME>
 
262
                    <PARAM_DESCRIPTION>
 
263
                      <SP>: free variable</SP>
 
264
                    </PARAM_DESCRIPTION>
 
265
                  </PARAM_ITEM>
 
266
                </PARAM_INDENT>
 
267
              </PARAM_DESCRIPTION>
 
268
            </PARAM_ITEM>
 
269
          </PARAM_INDENT>
 
270
        </PARAM_DESCRIPTION>
 
271
      </PARAM_ITEM>
 
272
    </PARAM_INDENT>
 
273
  </PARAM>
 
274
  <DESCRIPTION>
 
275
    <P><VERB>readmps</VERB>.
 
276
    Utility function: reads a file containing description of an LP problem
 
277
    given  in MPS format. It is an
 
278
    interface with the program <VERB>rdmps1.f</VERB> of hopdm (J. Gondzio).
 
279
    For a description of the variables, see the file rdmps1.f.</P>
 
280
    <P>
 
281
    MPS format is a standard ASCII medium for LP codes.  
 
282
    MPS format is described in more detail in Murtagh's book:</P>
 
283
    <P>
 
284
    Murtagh B. (1981). Advanced Linear Programming, McGrew-Hill,
 
285
    New York, 1981.</P>
 
286
  </DESCRIPTION>
 
287
  <EXAMPLE>
 
288
<![CDATA[
 
289
 
 
290
//Let the LP problem:
 
291
//objective:
 
292
//   min     XONE + 4 YTWO + 9 ZTHREE
 
293
//constraints:
 
294
//  LIM1:    XONE +   YTWO            < = 5
 
295
//  LIM2:    XONE +            ZTHREE > = 10
 
296
// MYEQN:         -   YTWO  +  ZTHREE   = 7
 
297
//Bounds
 
298
//  0 < = XONE < = 4
 
299
// -1 < = YTWO < = 1
 
300
 
 
301
//Generate MPS file 
 
302
txt=['NAME          TESTPROB'
 
303
     'ROWS'
 
304
     ' N  COST'
 
305
     ' L  LIM1'
 
306
     ' G  LIM2'
 
307
     ' E  MYEQN'
 
308
     'COLUMNS'
 
309
     '    XONE      COST                 1   LIM1                 1'
 
310
     '    XONE      LIM2                 1'
 
311
     '    YTWO      COST                 4   LIM1                 1'
 
312
     '    YTWO      MYEQN               -1'
 
313
     '    ZTHREE    COST                 9   LIM2                 1'
 
314
     '    ZTHREE    MYEQN                1'
 
315
     'RHS'
 
316
     '    RHS1      LIM1                 5   LIM2                10'
 
317
     '    RHS1      MYEQN                7'
 
318
     'BOUNDS'
 
319
     ' UP BND1      XONE                 4'
 
320
     ' LO BND1      YTWO                -1'
 
321
     ' UP BND1      YTWO                 1'
 
322
     'ENDATA'];
 
323
mputl(txt,TMPDIR+'/test.mps')
 
324
//Read the MPS file
 
325
P=readmps(TMPDIR+'/test.mps',[0 10^30])
 
326
//Convert it to linpro format
 
327
LP=mps2linpro(P)
 
328
//Solve it with linpro
 
329
[x,lagr,f]=linpro(LP(2:$))
 
330
 ]]>
 
331
  </EXAMPLE>
 
332
  <SEE_ALSO>
 
333
    <SEE_ALSO_ITEM>
 
334
      <LINK>mps2linpro</LINK>
 
335
    </SEE_ALSO_ITEM>
 
336
  </SEE_ALSO>
 
337
</MAN>