ContentsIndexHome
PreviousUpNext
IAimmsMathProgramInfo::GetRowData Method

Get rows information.

virtual _LONG_T GetRowData(
    _LONG_T is_update, 
    _LONG_T max_no, 
    _LONG_T row_no[], 
    double lb[], 
    double lev[], 
    double ub[], 
    _LONG_T no_elm[], 
    double sum_nl[], 
    _LONG_T type_flag[]
) = 0;
Parameters 
Description 
_LONG_T is_update 
An integer indicator for full (value 0) or update (value 1) retrieval. 
_LONG_T max_no 
The maximum number of rows to retrieve. 
_LONG_T row_no[] 
In case of a full retrieval the size of this array must be at least 1 and on output row_no[0] will contain the number of the first row that is retrieved. In case of an update retrieval the array row_no contains the row numbers of the updated rows. In the latter case the length of row_no must be at least max_no
double lb[] 
Array with the lower bounds of the rows. Length must be at least max_no. This argument may be NULL. 
double lev[] 
Array with the level values of the rows. Length must be at least max_no. This argument may be NULL. 
double ub[] 
Array with the upper bounds of the rows. Length must be at least max_no. This argument may be NULL. 
_LONG_T no_elm[] 
Array with the number of non-zero elements in the rows. Length must be at least max_no. This argument may be NULL. 
double sum_nl[] 
Array with the sum of the nonlinear terms in the initial point as defined by the level values of the columns. Length must be at least max_no. This argument may be NULL. (NLP and MINLP only.) 
_LONG_T type_flag[] 
Array of bit fields that specify row properties; flags are taken from the ColumnRowFlag enumeration. Length must be at least max_no. This argument may be NULL. 

The GetRowData method returns the actual number of rows retrieved.

The GetRowData method is used to get information about the rows from AIMMS. This method can be used for either a full or an update retrieval, and in both cases you can retrieve all data in one call or retrieve it block-wise in consecutive calls.

  1. If max_no is greater than or equal to the total number of (updated) rows in the problem, you get all row data using a single call to this method.
  2. If max_no is smaller than the total number of rows then you request for a block-wise retrieval, and you must call GetRowData repeatedly, until all (updated) rows are retrieved.
  3. In case of a full retrieval, a consecutive number of rows is retrieved, starting from the row number that is returned in row_no[0]. Thus, the retrieved row numbers are row_no[0], row_no[0] + 1, row_no[0] + 2, etc.
  4. In case of a partial retrieval, the retrieved row numbers are given explicitly in the array row_no. Thus the retrieved row numbers are row_no[0], row_no[1], row_no[2], etc.
  5. The values in the other output arrays match with these retrieved row numbers. For example, in full retrieve mode lb[5] is the lower bound for row number row_no[0]+5; in partial retrieve mode lb[5] is the lower bound for row number row_no[5].
  6. If you pass a NULL value for one of the output arrays, except row_no, then the corresponding data will not be retrieved.

Copyright © 1993–2016 by AIMMS B.V. All rights reserved.