octave-bug-tracker
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Octave-bug-tracker] [bug #31742] sqp: incorrect order of removal of Inf


From: Olaf Till
Subject: [Octave-bug-tracker] [bug #31742] sqp: incorrect order of removal of Inf bounds
Date: Wed, 15 Dec 2010 07:45:59 +0000
User-agent: Mozilla/5.0 (X11; U; Linux i686 (x86_64); en-US; rv:1.9.0.19) Gecko/2010102906 Iceweasel/3.0.6 (Debian-3.0.6-3)

Follow-up Comment #8, bug #31742 (project octave):

(I did not find the applied changeset first because it has the wrong author
logged.)

You have edited it and made a change that should be revoked: the lines

__sqp_lb__ = __sqp_lb__(tmp_idx);
...
__sqp_ub__ = __sqp_ub__(tmp_idx);

must indeed be

__sqp_lb__ = __sqp_lb__(tmp_idx, 1);
...
__sqp_ub__ = __sqp_ub__(tmp_idx, 1);

as I had it. Otherwise, if lb (or ub, respectively) is scalar and -Inf (or
+Inf, respectively), __sqp_lb__ (or __sqp_ub__) get dimensions 0x0, which are
the wrong dimensions for the later calculations.

I also saw now that I did not see that actually tmp_lb and tmp_ub are not
needed. They can be removed everywhere and the test

if (any (tmp_lb > tmp_ub))

can be made with __sqp_lb__ and __sqp_ub__ instead. (Since the removed bounds
still present in tmp_lb can not be greater than the respective bounds in
tmp_ub anyway, and vice versa.)

    _______________________________________________________

Reply to this item at:

  <http://savannah.gnu.org/bugs/?31742>

_______________________________________________
  Message sent via/by Savannah
  http://savannah.gnu.org/




reply via email to

[Prev in Thread] Current Thread [Next in Thread]