You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I posted the following cbc mailing list, bur I now suspect the mailing list is dead so I am reposting the message here:
am not sure if this is the right mailing list to post to about this,
as this is not a 'core part of CBC. Please let me know if I should
post about this in another mailing list.
I have noticed that in CBC 2.10, there is a difference in how
CoinLpIO::readLp(const char *filename) behaves from CBC 2.9 and earlier.
Previously, readLP can read a filename that does not have a .lp
extension. In 2.10, this is no longer the case, and an error is
thrown:
ERROR: CoinLpIO::readLp, ### ERROR: Unable to open file lplp for reading
even though there is a file lplp.
Looking at the code for readLP() in CoinLpIO.cpp in the CBC 2.10
source, the code now check if filename has a .lp extension at the end,
and reject the filename if it does not. The error message is
confusing, as it is not that the file is not found, but that it does
not have a .lp extension.
More importantly, why was the old behaviour of allowing filename to
not have .lp extension changed? The old behaviour is similar to what
CPLEX does - i.e. it allows you to read a lp format file that does not
have .lp extension. Also the file I was trying to read was written
writeLp(), so now writeLp() can write with a filename that readLp does
not accept.
The behaviour is also different from reading a MPS file, where a MPS
formatted file without .mps extension can still be read.
reacted with thumbs up emoji reacted with thumbs down emoji reacted with laugh emoji reacted with hooray emoji reacted with confused emoji reacted with heart emoji reacted with rocket emoji reacted with eyes emoji
-
I posted the following cbc mailing list, bur I now suspect the mailing list is dead so I am reposting the message here:
am not sure if this is the right mailing list to post to about this,
as this is not a 'core part of CBC. Please let me know if I should
post about this in another mailing list.
I have noticed that in CBC 2.10, there is a difference in how
CoinLpIO::readLp(const char *filename) behaves from CBC 2.9 and earlier.
Previously, readLP can read a filename that does not have a .lp
extension. In 2.10, this is no longer the case, and an error is
thrown:
ERROR: CoinLpIO::readLp, ### ERROR: Unable to open file lplp for reading
even though there is a file lplp.
Looking at the code for readLP() in CoinLpIO.cpp in the CBC 2.10
source, the code now check if filename has a .lp extension at the end,
and reject the filename if it does not. The error message is
confusing, as it is not that the file is not found, but that it does
not have a .lp extension.
More importantly, why was the old behaviour of allowing filename to
not have .lp extension changed? The old behaviour is similar to what
CPLEX does - i.e. it allows you to read a lp format file that does not
have .lp extension. Also the file I was trying to read was written
writeLp(), so now writeLp() can write with a filename that readLp does
not accept.
The behaviour is also different from reading a MPS file, where a MPS
formatted file without .mps extension can still be read.
Cheers,
Kish
Beta Was this translation helpful? Give feedback.
All reactions