### RANGES Section (Optional)

The RANGES section specifies the range of the RHS value for the constraint rows. With range specification, a row can be constrained from above and below.

For a constraint row , if is the RHS value and is the range for this row, then the equivalent constraints are given in Table 15.1, depending on the type of row and the sign of .

Table 15.1: Range Effect

 Type of Row Sign of Equivalent Constraints G L E E

• Indicator record:

 Field1 Field2 Field3 Field4 Field5 Field6 RANGES Blank Blank . Blank .

• Data record:

 Field1 Field2 Field3 Field4 Field5 Field6 Blank Range name Row name (e.g., rowi) Range for RHS of row rowi Row name (e.g., rowj) Range for RHS of row rowj

Notes:

1. Range assignment for an objective row (i.e., MAX, MIN, or N row) is not allowed.

2. The rows that have a range element defined in this section need not be specified in the same order in which the rows were specified in the ROWS or RHS section. However, a row in the RANGES section should be defined in the ROWS section.

3. It is possible to specify multiple range vectors, which are labeled by different range names. Normally, the first range vector encountered in the RANGES section is used, and all other range vectors are discarded. All the elements in a range vector must be specified before other range vectors are introduced. Within the specific range vector, for a given range, duplicate assignments of range values are not allowed.

4. A missing value in field4 or field6 is ignored. A data record with missing values in both field4 and field6 is ignored.

5. When a sequence of data records have an identical value in field2, you can specify the value in the first occurrence and omit the value by giving a missing value in the other records. If the value in field2 of the first data record in the section is missing, it means the name of the first vector is the missing value.