Matlab 3D中每个2点之间的相互距离
有没有更快的方法来构造d 谢谢你的指导 编辑:Matlab 3D中每个2点之间的相互距离,matlab,Matlab,有没有更快的方法来构造d 谢谢你的指导 编辑: 以下是一种避免显式循环的方法: N= 997 Me: Elapsed time is 17.271125 seconds. DiggyF: Elapsed time is 0.241841 seconds. Oli Charlesworth: Elapsed time is 0.120425 seconds. N=1986 DiggyF : Elapsed time is 1.1
以下是一种避免显式循环的方法:
N= 997
Me: Elapsed time is 17.271125 seconds.
DiggyF: Elapsed time is 0.241841 seconds.
Oli Charlesworth: Elapsed time is 0.120425 seconds.
N=1986
DiggyF : Elapsed time is 1.183639 seconds.
Oli Charlesworth: Elapsed time is 0.502964 seconds.
我不知道这是否会更快;你得试试看 这也会起作用:
dx = repmat(rx, 1, N) - repmat(rx.', N, 1);
如果您有统计工具箱或倍频程,也可以查看该函数
dx = repmat(rx, 1, N) - repmat(rx.', N, 1);
dx = meshgrid(rx) - meshgrid(rx)'
dy = meshgrid(ry) - meshgrid(ry)'
dz = meshgrid(rz) - meshgrid(ry)'