I have not found an implementation of such an algorithm on Python
Something like this:
There are two input arguments:
- n - dimension of space.
- m - number of points on the n-1 sphere.
I need to approximately evenly arrange them on the surface of the n-sphere.
Coordinate axes are located in the center of n-1 sphere. For example in 3d on a regular sphere it's possible to position the points like this
In my opinion, the Fibonacci algorithm is very good visually. I don't know if there is something similar for n-sphere. I have 512D space and I'm going to place 1000 or even 10,000 points in it.
How to do this in python?
An n-sphere embedded in an (n + 1)-dimensional Euclidean space is called a hypersphere.
You only need to avoid off-by-one errors. (2-sphere is surface in 3d- space etc) – MBov
with coordinates in range<-1,+1>
and then change the length of vector tor
byv = v*r/|v|
. There is also a very good duplicate for this in here (not sure how old but at least a year or two) but can not find it now (about generating pseudorandom hyperspheres with normal distribution of points) – Spektre