Labfans是一个针对大学生、工程师和科研工作者的技术社区。 | 论坛首页 | 联系我们(Contact Us) |
![]() |
![]() |
#1 |
高级会员
注册日期: 2019-11-21
帖子: 3,006
声望力: 66 ![]() |
![]()
使用Matlab,如何生成3 ^ 10个点的网络,这些点均匀分布(或分布)在8维单位球面上?
回答: 来自维基百科n-sphere 为了在(n鈭1)球(即n球的表面)上生成均匀分布的随机点,Marsaglia(1972)给出了以下算法。一个可以实现此目的的matlab代码片段是: numdims = 8; numpts = 3^10; x = randn([numdims numpts]); lx = repmat(sqrt(sum(x.^2,1)), [numdims 1]); x = x./lx; %x(:,j) is the jth point on the circle) 更多&回答... |
![]() |
![]() |