Desde Marsaglia la fórmula para la generación de puntos al azar sobre una esfera es dada en la Cadena de respuesta, pensé que sería útil para justificar la fórmula.
En esta respuesta, se muestra que el área de la superficie de un anillo se $a\le z\le b$ sobre la esfera es la misma que el área de la franja de $a\le z\le b$ sobre el cilindro tangente a la $x$-$y$ ecuador de la esfera. Esto significa que la proyección cilíndrica de puntos distribuidos uniformemente sobre la esfera, también deben estar distribuidos de manera uniforme en el cilindro. Es decir,
El $z$-coordenadas de los puntos aleatorios deben estar distribuidos de manera uniforme.
Deje $u_1$ $u_2$ estar distribuidos de manera uniforme en $[-1,1]$. Considere la posibilidad de $\left.u_1^2+u_2^2\,\,\middle|\,\,u_1^2+u_2^2\le1\right.$. Dado que $u_1^2+u_2^2\le1$, $(u_1,u_2)$ se distribuyen de manera uniforme en la unidad de disco, y por lo tanto,
$$
P[u_1^2+u_2^2\le r^2]=r^2\etiqueta{1}
$$
La ecuación de $(1)$ muestra que $u_1^2+u_2^2$ es distribuido uniformemente en $[0,1]$, y por lo tanto,
$1-2(u_1^2+u_2^2)$ es distribuido uniformemente en $[-1,1]$
Por lo tanto, podemos dejar que la $z=1-2(u_1^2+u_2^2)$. A continuación,
$$
\sqrt{1-z^2}=2\sqrt{u_1^2+u_2^2}\sqrt{1-(u_1^2+u_2^2)}\etiqueta{2}
$$
Desde $(u_1,u_2)$ es distribuido uniformemente en la unidad de disco,
$\dfrac{(u_1,u_2)}{\sqrt{u_1^2+u_2^2}}$ es distribuido uniformemente en el círculo unidad.
Por lo tanto, $(2)$ y el resaltado declaraciones demuestra que dado $u_1^2+u_2^2\le1$,
$$
\begin{align}
x&=2u_1\sqrt{1-(u_1^2+u_2^2)}\\
y&=2u_2\sqrt{1-(u_1^2+u_2^2)}\\[4pt]
z&=1-2(u_1^2+u_2^2)
\end{align}\etiqueta{3}
$$
se distribuye uniformemente en la unidad de la esfera.
George Marsaglia la fórmula de $(3)$ requiere un promedio de $8/\pi\doteq2.546479$ números aleatorios por punto. Si es más rápido para evaluar el coseno y una raíz cuadrada de generar $0.546479$ números aleatorios, entonces, generar una $u_1,u_2$ uniformemente en $[-1,1]$.
Calcular $\cos(\pi u_2)$,$\sin(\pi u_2)=\mathrm{sgn}(u_2)\sqrt{1-\cos^2(\pi u_2)}$.
$$
\begin{align}
x&=\sqrt{1-u_1^2}\cos(\pi u_2)\\
y&=\sqrt{1-u_1^2}\sin(\pi u_2)\\[4pt]
z&=u_1
\end{align}\etiqueta{4}
$$
se distribuye uniformemente en la unidad de la esfera, sin descartar ninguna de números aleatorios.