Dynamic-Calibration/utils/YALMIP-master/@sdpvar/accumarray.m

12 lines
334 B
Matlab
Executable File

function A=accumarray(subs,val,varargin)
%ACCUMARRAY (overloaded)
if size(subs,2)>1 || min(size(val))>1 || nargin > 2
error('SDPVAR/ACCUMARRAY currently only supports simple cases (subs=column, val=vector)');
end
S = sparse(max(subs),length(val),0);
for i = 1:size(S,1)
S(i,find(i == subs)) = 1;
end
A = S*reshape(val,[],1);