rbmatlab 0.10.01
|
00001 function res = gram_matrix(X1,X2) 00002 %function res = gram_matrix(X1,X2) 00003 % 00004 % function computing a gram matrix between the two vector sets X1 00005 % and X2 00006 00007 % Bernard Haasdonk 28.1.2009 00008 00009 if nargin < 2 00010 X2 = X1; 00011 end; 00012 dim = size(X1,1); 00013 n1 = size(X1,2); 00014 n2 = size(X2,2); 00015 XX1 = repmat(reshape(X1,dim,n1,1),[1,1,n2]); 00016 XX2 = repmat(reshape(X2,dim,1,n2),[1,n1,1]); 00017 res = reshape(sum(XX1.*XX2,1),n1,n2); 00018 %| \docupdate