|
26 | 26 | * @ingroup FILEREADERS |
27 | 27 | * @brief AMPL .nl file reader and writer |
28 | 28 | * @author Stefan Vigerske |
| 29 | + * |
| 30 | + * \par Reading Functionality |
| 31 | + * |
| 32 | + * The reader supports linear, nonlinear, and logic constraints, with the following limitations: |
| 33 | + * - For nonlinear expressions, only unary operators minus (negation), abs, pow2, sqrt, log, log10, exp, sin, cos, |
| 34 | + * binary operators add, sub, mul, div, pow, and n-ary operator sum are supported. |
| 35 | + * - For logical constraints, only operators not, or, and, iff, eq, and ne are supported and all arguments must |
| 36 | + * be either boolean values or binary variables! The reader currently does not support logical operations that |
| 37 | + * use algebraic or linear expressions, and therefore not the creation of indicator constraints. |
| 38 | + * |
| 39 | + * In addition, the reader creates special ordered set (SOS) constraints of type 1 and 2 if they were specified via |
| 40 | + * [`sosnr` suffixes](https://discuss.ampl.com/t/how-can-i-use-the-solver-s-special-ordered-sets-feature/45). |
| 41 | + * Values specified via `ref` suffix are passed on as weights to the SOS constraint handlers. |
| 42 | + * For SOS of type 2, the weights determine the order of variables in the SOS. |
| 43 | + * |
| 44 | + * Next to SOS, suffixes can be used to specify flags of variables (see \ref SCIPcreateVar()) and constraints |
| 45 | + * (see \ref SCIPcreateCons()). For variables, supported suffixes are `initial` and `removable`. For constraints, |
| 46 | + * supported suffixes are `initial`, `separate`, `enforce`, `check`, `propagate`, `dynamic`, and `removable`. |
| 47 | + * |
| 48 | + * \par Writing Functionality |
| 49 | + * |
| 50 | + * The writer currently supports the constraint handlers linear, setppc, logicor, knapsack, varbound, and nonlinear only. |
| 51 | + * When writing nonlinear constraints, expression handlers entropy and signpower are currently not supported. |
29 | 52 | */ |
30 | 53 |
|
31 | 54 | /*---+----1----+----2----+----3----+----4----+----5----+----6----+----7----+----8----+----9----+----0----+----1----+----2*/ |
|
0 commit comments