On 25.08.2015 21:00, Andrew Makhorin wrote:
> 
>> currently
>>
>> glp_set_mat_col()
>> glp_set_mat_row()
>> glp_load_matrix()
>>
>> may be used to place zero valued coefficients in the sparse matrix
>> stored as structure GLPAIJ.
>>
>> These zero values are not needed in any way by GLPK.
>>
>> It is left to the calling problem to avoid passing zeros.
>>
>> I suggest to change above functions to check the value of coefficients
>> and to simply ignore any zero values.
>>
>> A simple
>>
>> if (0 == val[k])
>>    continue;
>>
>> will be sufficient.
>>
> 
> The idea was to keep the user data untouched, so it is undesirable to
> change the default behavior.
> Probably to resolve the issue there should
> be an option or additional api routines. Note that on passing the data
> to the solver zero coeffs are skipped.
> 

The documentation of glp_get_mat_col and glp_get_mat_row says:
The routine glp_get_mat_col/-row scans (non-zero) elements

So the user knows that zero elements are not considered.

As dropping the zeros only changes internal data which is not accessible
to the user I see no need for any new API routines nor for any option.

Best regards

Heinrich Schuchardt

_______________________________________________
Help-glpk mailing list
[email protected]
https://lists.gnu.org/mailman/listinfo/help-glpk

Reply via email to