samer@4: function Z=vecop(F,X,Y) samer@4: % vecop - apply binary function to different sized arrays samer@4: % samer@4: % vecop :: samer@4: % ([[D]],[[D]]->[[D]]) ~'some function requiring equal size args', samer@4: % [[DX]] ~'first arg of size DX', samer@4: % [[DY]] ~'second arg of size DY' samer@4: % -> [[DZ]] ~'result of size DZ' :- DZ=max(DX,DY). samer@4: % samer@4: samer@4: samer@4: DX=size(X); DY=size(Y); samer@4: E=max(length(DX),length(DY)); samer@4: DZ=max(pad1s(E,DX),pad1s(E,DY)); samer@4: Z=feval(F,repmat_to(X,DZ),repmat_to(Y,DZ)); samer@4: