view general/arrutils/join.m @ 13:03694e5c8365

Reorganised some high order list functions to correct class-based method dispatch; fixed some docs.
author samer
date Wed, 16 Jan 2013 12:12:34 +0000
parents e44f49929e56
children
line wrap: on
line source
function Z=join(X,Y)
% join - Cartesian product of two arrays
%
% join :: [[N,M]], [[L,P]] -> [[N*L,M+P]].
%
% The result contains every pairing of rows from the two arguments

%Z=[repmat(X,size(Y,1),1) kron(Y,ones(size(X,1),1))];

% this is probably faster (no multiplications!)
m=size(X,1); n=size(Y,1);
Z=[repmat(X,n,1) Y(repmat(1:n,m,1),:)];