1 |
/* ASCEND modelling environment |
2 |
Copyright (C) 1990 Karl Michael Westerberg |
3 |
Copyright (C) 1993 Joseph Zaher |
4 |
Copyright (C) 1994 Joseph Zaher, Benjamin Andrew Allan |
5 |
Copyright (C) 1995 Craig Schmidt |
6 |
Copyright (C) 2007 Carnegie Mellon University |
7 |
|
8 |
This program is free software; you can redistribute it and/or modify |
9 |
it under the terms of the GNU General Public License as published by |
10 |
the Free Software Foundation; either version 2, or (at your option) |
11 |
any later version. |
12 |
|
13 |
This program is distributed in the hope that it will be useful, |
14 |
but WITHOUT ANY WARRANTY; without even the implied warranty of |
15 |
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
16 |
GNU General Public License for more details. |
17 |
|
18 |
You should have received a copy of the GNU General Public License |
19 |
along with this program. If not, see <http://www.gnu.org/licenses/>. |
20 |
*//** @file |
21 |
write_MPS: create the actual MPS file |
22 |
|
23 |
This module will create an MPS file representation |
24 |
of the current system. It is passed a mps_data_t |
25 |
data structure, the solver subparameters, and the |
26 |
name of the file. |
27 |
*//* |
28 |
by Craig Schmidt, 2/19/95 |
29 |
Last in CVS: $Revision: 1.6 $ $Date: 1997/07/18 12:14:48 $ $Author: mthomas $ |
30 |
*/ |
31 |
|
32 |
#ifndef ASC_MPS_H |
33 |
#define ASC_MPS_H |
34 |
|
35 |
#include <ascend/system/var.h> |
36 |
#include <ascend/system/slv_param.h> |
37 |
#include "mps_types.h" |
38 |
|
39 |
/** |
40 |
* Writes out a map file. |
41 |
* The VXXXXXXX variable names are mapped to the actual ASCEND names. |
42 |
* |
43 |
* @param name File name to receive the output. |
44 |
* @param vlist Variable list (NULL terminated). |
45 |
* @return Returns zero on success, non-zero if an error occurred. |
46 |
*/ |
47 |
extern boolean write_name_map(const char *name, |
48 |
struct var_variable **vlist); |
49 |
|
50 |
/* |
51 |
* Writes out the MPS file. |
52 |
* |
53 |
* @param name File name to receive the output. |
54 |
* @param mps The main chunk of data for the problem. |
55 |
* @param iarray Integer subparameters, array of size slv6_IA_SIZE. |
56 |
* @param rarray Real subparameters, array of size slv6_RA_SIZE. |
57 |
* @return Returns zero on success, non-zero if an error occurred. |
58 |
*/ |
59 |
extern boolean write_MPS(const char *name, |
60 |
mps_data_t mps, |
61 |
struct slv_parameter *parms); |
62 |
|
63 |
#endif /* ASC_MPS_H */ |
64 |
|