Table size limit?

1 次查看(过去 30 天)
Edward Umpfenbach
Here is what I am seeing:
>> mnl = readmps('mnl.mps');
??? Error using ==> addtotable at 12
Too many entries in table.
Error in ==> readmps at 150
rowtable=addtotable(rowtable,f{2},rowcount);
I am trying to use readmps, a file off the matlab exchange for creating linear programming problems in matlab. I have used the program before with no problems. I suspect that the mps file I am trying to read in is just to big. Is this likely the cause? Is there some size limit on tables that I am unaware of?

回答(5 个)

Edward Umpfenbach
Still hoping for an answer. Bump.

Walter Roberson
Walter Roberson 2012-3-5
I do not find any readmps routine in the MATLAB File Exchange.
I find lpmexext which appears to have a read_mps command in it. That code appears to have a limit of 100 lps. You might be able to increase that by increasing the value of the LPMAX #define near the beginning of the C source.
  1 个评论
Walter Roberson
Walter Roberson 2012-3-5
In newtable.m change the 1000 to a larger value.

请先登录,再进行评论。


Edward Umpfenbach
I apologize. It must not have been on the exchange. I found it through google:
I will consider lpmexext, but only if I really need to. I could probably deal with C source code and Mex files, but my comfort zone is just m files.

Jan
Jan 2012-3-5
There is no real chance, that somebody can guess, what's going on. We do neither know the function nor the file.
I suggest to use the debugger to stop Matlab, when the problem occurs:
dbstop if error
Then check the value of the local variables. Perhaps rowcount is Inf by accident or a damaged file? Perhaps it is negative and the error message is misleading?
Did you ask the author?

Edward Umpfenbach
The reason I didn't do any of what you have suggested is that I have successfully used this file before, no errors. The only thing that changed is that I have a larger mps file. In addition, it ran for approximately a day before I saw the error above. Thus, I assumed that I was hitting some Matlab limit on a data structure size or something.
I will try with the debugger. Thanks for the help.
  3 个评论
Edward Umpfenbach
Sounds good. So, just to be clear, open newtable.m, change the 1000 to a larger number, and I should be good?
Walter Roberson
Walter Roberson 2012-3-6
Looks like it to me. Or at least _that_ won't be the limit you run in to ;-)

请先登录,再进行评论。

类别

Help CenterFile Exchange 中查找有关 Logical 的更多信息

标签

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by