# HG changeset patch # User Jaroslav Hajek # Date 1259147109 -3600 # Node ID d82388277620cf3aa3319e35b7ce5e7fec4fdbf0 # Parent 1fc9fd052f0c0e26cf37c87ff22799f880ce1669 fix bug in balance diff -r 1fc9fd052f0c -r d82388277620 liboctave/ChangeLog --- a/liboctave/ChangeLog Wed Nov 25 12:05:03 2009 +0100 +++ b/liboctave/ChangeLog Wed Nov 25 12:05:09 2009 +0100 @@ -1,3 +1,7 @@ +2009-11-17 Jaroslav Hajek + + * base-aepbal.h (permuting_vector): Fix lower part swapping. + 2009-11-18 David Grundberg * str-vec.cc (string_vector::list_in_columns): Avoid crash on diff -r 1fc9fd052f0c -r d82388277620 liboctave/base-aepbal.h --- a/liboctave/base-aepbal.h Wed Nov 25 12:05:03 2009 +0100 +++ b/liboctave/base-aepbal.h Wed Nov 25 12:05:09 2009 +0100 @@ -64,16 +64,12 @@ for (octave_idx_type i = n-1; i >= ihi; i--) { octave_idx_type j = scale(i) - 1; - octave_idx_type k = pv(j); - pv(j) = pv(i); - pv(i) = k; + std::swap (pv(i), pv(j)); } - for (octave_idx_type i = ilo-2; i >= 0; i--) + for (octave_idx_type i = 0; i < ilo-1; i++) { octave_idx_type j = scale(i) - 1; - octave_idx_type k = pv(j); - pv(j) = pv(i); - pv(i) = k; + std::swap (pv(i), pv(j)); } return pv; diff -r 1fc9fd052f0c -r d82388277620 src/ChangeLog --- a/src/ChangeLog Wed Nov 25 12:05:03 2009 +0100 +++ b/src/ChangeLog Wed Nov 25 12:05:09 2009 +0100 @@ -1,3 +1,7 @@ +2009-11-17 Jaroslav Hajek + + * DLD-FUNCTIONS/balance.cc: Fix docs. + 2009-11-03 David Grundberg * ov-class.cc (make_idx_args): Call user-defined subsref/subsasgn diff -r 1fc9fd052f0c -r d82388277620 src/DLD-FUNCTIONS/balance.cc --- a/src/DLD-FUNCTIONS/balance.cc Wed Nov 25 12:05:03 2009 +0100 +++ b/src/DLD-FUNCTIONS/balance.cc Wed Nov 25 12:05:09 2009 +0100 @@ -63,7 +63,7 @@ \n\ If two output values are requested, @code{balance} returns \n\ the diagonal @code{d} and the permutation @code{p} separately as vectors. \n\ -In this case, @code{dd = eye(n)(p,:) * diag (d)}, where @code{n} is the matrix \n\ +In this case, @code{dd = eye(n)(:,p) * diag (d)}, where @code{n} is the matrix \n\ size. \n\ \n\ If four output values are requested, compute @code{aa = cc*a*dd} and\n\