Intereting Posts

Non-concrete categories constructed from concrete categories
How to quickly compute $2014 ^{2015} \pmod{11}$
Sum of radii of intersecting circles internally tangent to another circle
Prove: For any sequence of linearly independent elements $y_j \in X$ and $a_j \in \mathbb R$ there exists an element $f \in X^*$ s.t. $f(y_j)=a_j$
Does $\sum_{k=0}^{\infty}\sin\left(\frac{\pi x}{2^k}\right)$ have a simple form with interesting properties?
Ornstein-Uhlenbeck process: Markov, but not martingale?
The two extreme cases of the product measure
How to define the entropy of a list of numbers?
$3\times 3$ matrix always has determinant $0$. Must $7$ of the elements be $0$?
Irreducible polynomial in $\mathbb{F}_{p}$
Cardinality of separable metric spaces
Travelling salesman – Linear Programming
21 sided regular polygon and its diagonals
If $A \subseteq C$ and $B \subseteq D$ then $A \times B \subseteq C \times D$
Showing the set of zero-divisors is a union of prime ideals

I have a sphere of radius $R_{s}$, and I would like to pick random points in its volume with uniform probability. How can I do so while preventing any sort of clustering around poles or the center of the sphere?

Since I’m unable to answer my own question, here’s another solution:

Using the strategy suggested by Wolfram MathWorld for picking points on the surface of a sphere: Let $\theta$ be randomly distributed real numbers over the interval $[0,2\pi]$, let $\phi=\arccos(2v−1)$ where $v$ is a random real number over the interval $[0,1]$, and let $r=R_s (\mathrm{rand}(0,1))^\frac13$. Converting from spherical coordinates, a random point in $(x,y,z)$ inside the sphere would therefore be: $((r\cos(\theta)\sin(\phi)),(r\sin(\theta)\sin(\phi)),(r\cos(\phi)))$.

- What is this geometric pattern called?
- Simple proof for Snell's law of refraction
- Under what conditions will the rectangle of the Japanese theorem be a square?
- How to find coordinates of 3rd vertex of a right angled triangle when everything else is known?
- Proving a relation between inradius ,circumradius and exradii in a triangle
- Point reflection over a line

A quick test with a few thousand points in the unit sphere appears to show no clustering. However, I’d appreciate any feedback if someone sees a problem with this approach.

- Product to vertices in triangle maximal
- Formula for solving for Cx and Cy…
- Proving the length of angle bisector
- What is the oldest open problem in geometry?
- Find the centre of a circle passing through a known point and tangential to two known lines
- Find intersection of two 3D lines
- Average norm of a N-dimensional vector given by a normal distribution
- Affine Plane of Order 4 Picture?
- calculate arbitrary points from a plane equation
- Interesting puzzle about a sphere and some circles

Let’s say your sphere is centered at the origin $(0,0,0)$.

For the distance $D$ from the origin of your random pointpoint, note that you want $P(D \le r) = \left(\frac{r}{R_s}\right)^3$. Thus if $U$ is uniformly distributed between 0 and 1, taking $D = R_s U^{1/3}$ will do the trick.

For the direction, a useful fact is that if $X_1, X_2, X_3$ are independent normal random variables with mean 0 and variance 1, then

$$\frac{1}{\sqrt{X_1^2 + X_2^2 + X_3^2}} (X_1, X_2, X_3)$$

is uniformly distributed on (the surface of) the unit sphere. You can generate normal random variables from uniform ones in various ways; the Box-Muller algorithm is a nice simple approach.

So if you choose $U$ uniformly distributed between 0 and 1, and $X_1, X_2, X_3$ iid standard normal and independent of $U$, then

$$\frac{R_s U^{1/3}}{\sqrt{X_1^2 + X_2^2 + X_3^2}} (X_1, X_2, X_3)$$

would produce a uniformly distributed point inside the ball of radius $R_s$.

An alternative method in $3$ dimensions:

Step 1: Take $x, y, $ and $z$ each uniform on $[-r_s, r_s]$.

Step 2: If $x^2+y^2+z^2\leq r_s^2$, stop. If not, throw them away and return to step $1$.

Your success probability each time is given by the volume of the sphere over the volume of the cube, which is about $0.52$. So you’ll require slightly more than $2$ samples on average.

If you’re in higher dimensions, this is not a very efficient process at all, because in a large number of dimensions a random point from the cube is probably not in the sphere (so you’ll have to take many points before you get a success). In that case a modified version of Nate’s algorithm would be the way to go.

Nate and Kevin already answered the two I knew. Recalling this and this, I think that another way to generate a uniform distribution over the sphere surface would be to generate a uniform distribution over the vertical cylinder enclosing the sphere, and then project horizontally.

That is, generate $z \sim U[-R,R]$, $\theta \sim U[0,2\pi]$, and then $x=\sqrt{R^2-z^2} \cos(\theta)$, $y=\sqrt{R^2-z^2} \sin(\theta)$. This (if I’m not mistaken) gives a uniform distribution over the sphere surface. Then, apply Nate’s recipe to get a uniform distribution over the sphere volume.

This method is a little simpler (and more efficient) than the accepted answer, though it’s not generalizable to other dimensions.

I just want to add a small derivation to leonbloy’s answer, which uses calculus instead of geometrical intuition. Changing from cartesian $(x,y,z)$ to spherical $(r,\theta,\phi)$ coordinates, we have for the volume element

$$dx dy dz =r^2 \sin \theta ~ dr d\theta d\phi$$

The coordinates $(r,\theta,\phi)$ don’t work for a uniform distribution because we still have a non-constant factor in front of $dr d\theta d\phi$ (see “EDIT” at the bottom, if you do not see why they don’t work). Therefore we introduce

$$u=-\cos \theta \Rightarrow du= \sin \theta d\theta$$

$$\lambda=r^3/R^3 \Rightarrow d \lambda=\frac{3}{R^3}r^2dr$$

with which we obtain an expression with a constant pre-factor

$$dx dy dz= \frac{R^3}{3} d\lambda du d\phi$$

The range of our variables is $\lambda \in [0,1], ~u \in [-1,1], \phi \in [0, 2\pi) $. Choosing those numbers uniformly we get cartesian coordinates

$$

\begin{align}

x&=r \sin(\theta) \cos (\phi) =&R \lambda^{1/3} \sqrt{1-u^2}\cos(\phi)\\

y&=r \sin(\theta) \sin (\phi) =&R \lambda^{1/3} \sqrt{1-u^2}\sin(\phi) \\

z&=r \cos (\theta)=&R \lambda^{1/3} u

\end{align}

$$

EDIT: I want to add an argument why we want a constant prefactor in front of $d\lambda du d\phi$.

Consider the one dimensional case (uniform distribution of points on the line $[0,L]$). For $0<x<L$ the probability to find a point in $(x,x+dx)$ is $P(x)dx$. Since we assume a uniform probability, $P(x)$ has to be $P(x)=1/L$, and hence the probability $P(x)dx=dx/L$ is directly proportional to the volume element $dV=dx$.

Now consider we have a variable $y$, for which we do not know the probability density $Q(y)$ but we know that the volume element is $dV=dx=c dy$ with some constant $c$. Furthermore, we know that $Q(y)dy$ has to be $P(x)dx$ (by definition of probability density). Hence $Q(y)=P(x)dx/dy=c$.

In summary we have shown:

“Variable $y$ is uniformly distributed” $\Leftrightarrow$ “The volume element is $dV=c dy$ for some constant $c$. (For the correct normalization of the probability density the value of $c$ is not arbitrary)

- Do two distinct level sets determine a non-constant complex polynomial?
- Is $\operatorname{card}(I)=\operatorname{card}(D)$
- How can the expectation be equal to the probability?
- Is the set of all pairs of real numbers uncountable?
- Why Composition and Dihedral Group have reverse order of operation?
- Convergence of a sequence in two different $L_p$ spaces
- Is there a 3-dimensional “matrix” by “matrix” product?
- The last digit of $2^{2006}$
- Expected time for the queue to become empty.
- How many solution of a equations?
- Derivative of Quadratic Form
- Do there exist two primes $p<q$ such that $p^n-1\mid q^n-1$ for infinitely many $n$?
- $2\times2$ matrices are not big enough
- Category-theoretic limit related to topological limit?
- How will the limit $\lim \sin(A^{n})$ behave for $|A| > 1$?