Initializing help system before first use

# XPRSgetcols, XPRSgetcols64

Purpose
Returns the nonzeros in the constraint matrix for the columns in a given range.
Topic area
Problem Information
Synopsis
`int XPRS_CC XPRSgetcols(XPRSprob prob, int start[], int rowind[], double rowcoef[], int maxcoefs, int *p_ncoefs, int first, int last);`
``
`int XPRS_CC XPRSgetcols64(XPRSprob prob, XPRSint64 start[], int rowind[], double rowcoef[], XPRSint64 maxcoefs, XPRSint64 *p_ncoefs, int first, int last);`
Arguments

prob | The current problem.
start | Integer array which will be filled with the indices indicating the starting offsets in the rowind and rowcoef arrays for each requested column. It must be of length last-first+2. Column i starts at position start[i] in the rowind and rowcoef arrays, and has start[i+1]-start[i] elements in it. May be NULL if not required.
rowind | Integer array of length maxcoefs which will be filled with the row indices of the nonzero coefficents for each column. May be NULL if not required.
rowcoef | Double array of length maxcoefs which will be filled with the nonzero coefficient values. May be NULL if not required.
maxcoefs | The size of the rowind and rowcoef arrays. This is the maximum number of nonzero coefficients that the Optimizer is allowed to return.
p_ncoefs | Pointer to an integer where the number of nonzero coefficients in the selected columns will be returned. If p_ncoefs exceeds maxcoefs, only the maxcoefs first nonzero coefficients will be returned. May be NULL if not required.
first | First column in the range.
last | Last column in the range.

Example
The following examples retrieves the number of nonzero coefficients in all columns of the problem:

    int ncoefs, cols, first = 0, last;
    ...
    XPRSgetintattrib(prob,XPRS_COLS,&cols);
    last = cols-1;
    XPRSgetcols(prob,NULL,NULL,NULL,0,&ncoefs,first,last);

See also example tableau.c.
Further information
It is possible to obtain just the number of elements in the range of columns by replacing start, rowind and rowcoef by NULL, as in the example. In this case, maxcoefs must be set to 0 to indicate that the length of arrays passed is zero. This is demonstrated in the example above.
Related topics
XPRSgetrows.
Parent Topic Console and Library Functions

© 2001-2026 Fair Isaac Corporation. All rights reserved. This documentation is the property of Fair Isaac Corporation (“FICO”). Receipt or possession of this documentation does not convey rights to disclose, reproduce, make derivative works, use, or allow others to use it except solely for internal evaluation purposes to determine whether to purchase a license to the software described in this documentation, or as otherwise set forth in a written software license agreement between you and FICO (or a FICO affiliate). Use of this documentation and the software described in it must conform strictly to the foregoing permitted uses, and no other use is permitted.