I want to choose a point at random so that it is located on the unit sphere in $N$ dimensions. How is this done?

According to this post, one can choose each component of an $N$ dimensional vector according to a Gaussian distribution. Then, normalize the resulting vector to attain a point on the unit sphere.

Is this correct? If so, can someone either (a) provide a reference or (b) explain why?

  • 3
    $\begingroup$ is what correct? do u want to end up with the uniform distribution? can you be more precise $\endgroup$ – mathworker21 Jul 6 '19 at 4:43
  • 2
    $\begingroup$ The distribution of a multivariate normal distribution $\mathcal N(0,\mathbf{I}_n)$ is rotationally symmetric, so yes it is correct $\endgroup$ – Henry Jul 6 '19 at 10:54

Adding to @Henry's comment, any $N$-dimensional distribution that is rotationally symmetric can be used to get a uniform distribution on the sphere, in the same way you describe. Now the Gaussian distribution is special in that taking independent copies yields a rotationally symmetric distribution - in fact, this is one way of characterizing the Gaussian distribution.

How does one show that a distribution is rotationally symmetric? In the case of the Gaussian density, this is easy to see since the density is the product of the individual Gaussian densities and thus is proportional to $$ e^{-x_1^2/2}\cdot e^{-x_2^2/2}\cdots e^{-x_n^2/2}=e^{-\|x\|^2/2}, $$ where $\|x\|$ denotes the length of a vector. Since rotating a vector preserves its length, one obtains a rotationally symmetric distribution in $N$ dimensions by taking independent Gaussian entries.

| cite | improve this answer | |

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.