# HG changeset patch # User Jaroslav Hajek # Date 1263976322 -3600 # Node ID e409546ac0a8891dce8938f0258ddfaa846aba77 # Parent 36ea14c8992dfc5997470d21bc5ac70fd5916258 add bsxfun tests diff -r 36ea14c8992d -r e409546ac0a8 src/ChangeLog --- a/src/ChangeLog Wed Jan 20 08:56:12 2010 +0100 +++ b/src/ChangeLog Wed Jan 20 09:32:02 2010 +0100 @@ -1,3 +1,7 @@ +2010-01-20 Jaroslav Hajek + + * DLD-FUNCTIONS/bsxfun.cc: New tests. + 2010-01-20 David Bateman * graphics.h.in (string_array_property): New property. diff -r 36ea14c8992d -r e409546ac0a8 src/DLD-FUNCTIONS/bsxfun.cc --- a/src/DLD-FUNCTIONS/bsxfun.cc Wed Jan 20 08:56:12 2010 +0100 +++ b/src/DLD-FUNCTIONS/bsxfun.cc Wed Jan 20 09:32:02 2010 +0100 @@ -742,4 +742,26 @@ %% The below is a very hard case to treat %!assert(bsxfun (f, ones([4, 1, 4, 1]), ones([1, 4, 1, 4])), zeros([4, 4, 4, 4])); +%!shared a, b, aa, bb +%! a = randn (3, 1, 3); +%! aa = a(:, ones (1, 3), :, ones (1, 3)); +%! b = randn (1, 3, 3, 3); +%! bb = b(ones (1, 3), :, :, :); +%!assert (bsxfun (@plus, a, b), aa + bb); +%!assert (bsxfun (@minus, a, b), aa - bb); +%!assert (bsxfun (@times, a, b), aa .* bb); +%!assert (bsxfun (@rdivide, a, b), aa ./ bb); +%!assert (bsxfun (@ldivide, a, b), aa .\ bb); +%!assert (bsxfun (@power, a, b), aa .^ bb); +%!assert (bsxfun (@power, abs (a), b), abs (aa) .^ bb); +%!assert (bsxfun (@eq, round (a), round (b)), round (aa) == round (bb)); +%!assert (bsxfun (@ne, round (a), round (b)), round (aa) != round (bb)); +%!assert (bsxfun (@lt, a, b), aa < bb); +%!assert (bsxfun (@le, a, b), aa <= bb); +%!assert (bsxfun (@gt, a, b), aa > bb); +%!assert (bsxfun (@ge, a, b), aa >= bb); +%!assert (bsxfun (@min, a, b), min (aa, bb)); +%!assert (bsxfun (@max, a, b), max (aa, bb)); +%!assert (bsxfun (@and, a > 0, b > 0), (aa > 0) & (bb > 0)); +%!assert (bsxfun (@or, a > 0, b > 0), (aa > 0) | (bb > 0)); */