Circle Point Picking

DOWNLOAD Mathematica Notebook

A uniform distribution of points on the circumference of a circle can be obtained by picking a random real number between 0 and 2pi. Picking random points on a circle is therefore a great deal more straightforward than sphere point picking.

n random points can be picked on a unit circle in the Wolfram Language using the function RandomPoint[Circle[], n].

CirclePointPicking

Random points on a circle can also be obtained by picking two numbers x_1, x_2 from a uniform distribution on (-1,1), and rejecting pairs with x_1^2+x_2^2>=1. From the remaining points, the double-angle formulas then imply that the points with Cartesian coordinates

x=(x_1^2-x_2^2)/(x_1^2+x_2^2)
(1)
y=(2x_1x_2)/(x_1^2+x_2^2)
(2)

have the desired distribution (von Neumann 1951, Cook 1957). This method can also be extended to sphere point picking (Cook 1957). The plots above show the distribution of points for 50, 100, and 500 initial points (where the counts refer to the number of points before throwing away).

Wolfram Web Resources

Mathematica »

The #1 tool for creating Demonstrations and anything technical.

Wolfram|Alpha »

Explore anything with the first computational knowledge engine.

Wolfram Demonstrations Project »

Explore thousands of free applications across science, mathematics, engineering, technology, business, art, finance, social sciences, and more.

Computerbasedmath.org »

Join the initiative for modernizing math education.

Online Integral Calculator »

Solve integrals with Wolfram|Alpha.

Step-by-step Solutions »

Walk through homework problems step-by-step from beginning to end. Hints help you try the next step on your own.

Wolfram Problem Generator »

Unlimited random practice problems and answers with built-in Step-by-step solutions. Practice online or make a printable study sheet.

Wolfram Education Portal »

Collection of teaching and learning tools built by Wolfram education experts: dynamic textbook, lesson plans, widgets, interactive Demonstrations, and more.

Wolfram Language »

Knowledge-based programming for everyone.