On Tue, Feb 07, 2012 at 10:54:47PM +0100, Daniel Seither wrote: > Hi, > > in package optim, function linprog(), there is an error that prevents > proper execution of the function if only the minimal set of parameters > (f, A, b) is given. > > Example code to reproduce: > > f = [-3, -2, -2]'; > A = [ 1, 0, 1; > 1, 1, 0; > 1, 2, 0]; > b = [8, 7, 12]'; > linprog(f, A, b) > > This leads to the following error message: > > > error: size (lb) != [(rows (f)) 1] > > error: called from: > > error: /usr/share/octave/packages/3.2/optim-1.0.16/linprog.m at line 99, > > column 7 > > error: test.m at line 6, column 1 > > I use Octave 3.2.4 that comes with the latest stable version of Ubuntu > (11.10) and the octave-optim packet version 1.0.16-1 from the official > Ubuntu repositories. > > The relevant code in linprog.m is the following: > > ## Sanitize lb > > if (isempty (lb)) > > LB = - Inf (nr_f, 1); > > endif > > if (size (lb) != [nr_f 1]) > > error ("size (lb) != [(rows (f)) 1]"); > > endif > > > > ## Sanitize ub > > if (isempty (ub)) > > UB = Inf (nr_f, 1); > > endif > > if (size (ub) != [nr_f 1]) > > error ("size (ub) != [(rows (f)) 1]"); > > endif > > If lb is empty, it is not changed but a new variable LB is set. The > following condition can thus never be fulfilled when lb was initially > empty. For ub/UB, the same holds. If LB and UB are replaced by their > lowercase equivalents, the code works as expected. > > Greetings and thanks for your work on Octave, > Daniel
I applied your fix to SVN, thanks. BTW linprog seems to be only a wrapper to glpk, to mimick Matlabw linprog, without quite achieving compatibility. Olaf ------------------------------------------------------------------------------ Keep Your Developer Skills Current with LearnDevNow! The most comprehensive online learning library for Microsoft developers is just $99.99! Visual Studio, SharePoint, SQL - plus HTML5, CSS3, MVC3, Metro Style Apps, more. Free future releases when you subscribe now! http://p.sf.net/sfu/learndevnow-d2d _______________________________________________ Octave-dev mailing list Octave-dev@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/octave-dev