The seemingly random motion of a small particle immersed in a fluid (Brownian motion) is due to individual collisions of the molecules that make up the fluid with the small particle. Thus, the motion is not actually random, but could be determined in principle by applying Newton's Laws to the individual collisions. However, in practice, it is impractical to keep track of the motion of all the molecules in the fluid. Similarly to other topics in statistical mechanics, however, we can obtain a statistical description of the motion. In this picture, we can model Brownian motion as being due to a random force applied to the particle with viscous drag also acting. Russel, et al., [1] show how this model, under widely applicable assumptions, has a solution in which a particle moving in one dimension simply moves a random distance, xi, in each time step, τ, of a simulation. The random moves xi are normally distributed with a probability distribution f(xi, τ) given by: where Do = kT/6πµa, with k being Boltzmann's constant, T the absolute temperature, µ the kinematic viscosity of the fluid, and a the radius of the sphere. If the particle is allowed to move in three dimensions, then random moves (yi, zi) are taken in each direction with the same probability distribution as xi. Hence, modeling Brownian motion in this approximation just involves generating normally distributed random numbers with probability distribution given by f(xi, τ). The random number generators in most standard libraries produce uniformly distributed random numbers, however. So we need to have a means of producing normally distributed random numbers from a source of uniformly distributed random numbers. This process is described here. As we test our code, some properties of uniformly distributed numbers will become useful. They are described here. [1] W.B. Russel, D.A. Saville, and W.R. Schowalter, Colloidal Dispersions , (Cambridge University Press, Cambridge, 1989).