h.passModel(...) returns a kHighsStatus variable, which indicates whether an issue occurred (see docs). Similarly h.run() returns a kHighsModelStatus (see docs) which indicates whether the model was feasible, unbounded, solved to optimality, etc.
It would be ideal to use these to incorporate readable error handling into the module, rather than relying on a user enabling debug=True and then trawling through pages on pages of logs. This could be leveraged to include slightly more granular output as well.
To do:
[x] Utilise kHighsStatus return from h.passModel and h.run
[x] Utilise kHighsModelStatus return from h.getModelStatus()
h.passModel(...)
returns akHighsStatus
variable, which indicates whether an issue occurred (see docs). Similarlyh.run()
returns akHighsModelStatus
(see docs) which indicates whether the model was feasible, unbounded, solved to optimality, etc.It would be ideal to use these to incorporate readable error handling into the module, rather than relying on a user enabling
debug=True
and then trawling through pages on pages of logs. This could be leveraged to include slightly more granular output as well.To do:
kHighsStatus
return fromh.passModel
andh.run
kHighsModelStatus
return fromh.getModelStatus()
.mps
files fromdebug