|
function bsxfunEx
|
|
%% This example shows the use of bsxfun
|
|
|
|
% C = bsxfun(fun,A,B) applies an element-by-element binary operation to
|
|
% arrays A and B, with singleton expansion enabled. fun is a function
|
|
% handle, and can either be a MATLAB file function or one of a selected number
|
|
% of built in functions
|
|
|
|
% Copyright 2015 The MathWorks, Inc.
|
|
|
|
A = magic(4000);
|
|
t1 = 0;
|
|
t2 = 0;
|
|
|
|
for ii = 1:10
|
|
tic
|
|
Anew1 = A - repmat(mean(A),length(A),1);
|
|
t1 = t1+toc;
|
|
|
|
tic
|
|
Anew2 = bsxfun(@minus, A, mean(A));
|
|
t2 = t2+toc;
|
|
end
|
|
fprintf(1,'t1: %fs\nt2: %fs\n',t1,t2);
|
|
|
|
% Verify that they're equal
|
|
assert(isequal(Anew1,Anew2),'Anew1 is not equal to Anew2')
|
|
% Copyright 2015 The MathWorks, Inc.
|