ধরুন আমার কাছে যথাক্রমে দুটি, এনএক্স 2, এমএক্স 2, এন, এম 2 ডি ভেক্টর উপস্থাপন রয়েছে mat প্রতিটি ভেক্টর জোড়ার (এন, মি) মধ্যে দূরত্ব গণনা করার জন্য কি সহজ এবং ভাল উপায় আছে?
সহজ তবে অদক্ষ উপায় অবশ্যই:
d = zeros(N, M);
for i = 1:N,
for j = 1:M,
d(i,j) = norm(n(i,:) - m(j,:));
endfor;
endfor;
আমার নিকটতম উত্তরটি পাওয়া গেছে bsxfun
, এর মতো ব্যবহার করা হয়:
bsxfun(inline("x-y"),[1,2,3,4],[3;4;5;6])
ans =
-2 -1 0 1
-3 -2 -1 0
-4 -3 -2 -1
-5 -4 -3 -2
cartprod
, তাই এখন আমি লিখতে পারি: (1) x = cartprod(n(:,1), m(:,1));
(2) y = cartprod(n(:,2), m(:,2));
(3) .. যা d = sqrt((x(:,1)-x(:,2)).^2+(y(:,1)-y(:,2)).^2)
আরও দ্রুত চালায়!