如何在边缘E的N维立方体表面生成随机均匀点?
有一个用于生成N维球体的代码,但我无法弄清楚如何为立方体生成它。
答案 0 :(得分:0)
N维超立方体的优点在于它的面是尺寸(N-1)的超立方体。因此,我将分四步进行。
d=randi(N)
s =randi(2)-1
v=rand(N,1)
v(d)=s
,v=E*v
在表面或边长2的3维立方体上绘制1000点我们会像:
N=3;
E=2;
Nsamples=1000;
d=randi(N,1,Nsamples);
s =randi(2,1,Nsamples)-1;
v=rand(N,Nsamples);
for i=1:Nsamples
v(d(i),i)=s(i);
end
v = E*v;
plot3(v(1,:),v(2,:),v(3,:),'.');
这种实现在纯效率方面可能不是最好的,但你了解它的工作原理。
希望这有帮助。
阿德里安。