Brownian Motion

Brownian motion is a phenomenon discovered by the botanist Robert Brown in 1827. He observed that small pollen grains suspended in water describe very irregular movements. The motion is due to the impacts of incessantly moving molecules of water on the pollen grains. The process was explained by Einstein in 1905 as a consequence of thermal energy, then after by Langevin in 1908 through the concept of stochastic differential equation.


We begin to summarize the Langevin’s equation, which is more interesting than the Einstein’s equation from the mathematical point of view. The calculation below is taken from the book Handbook of Stochastic Methods (Gardiner, Springer, 2004). The mean kinetic energy is defined in statistical mechanics by

\displaystyle \langle \frac{1}{2} m v^2 \rangle = \frac{1}{2} k T

where T is the absolute temperature, k the Boltzmann’s contant, m the mass of the particle and v = \frac{dx}{dt} the velocity.

Besides this, there is a viscosity force - 6 \pi \eta a \frac{dx}{dt} where a is the diameter of the particle and \eta the viscosity. There is also a fluctuating force X representing the random agitation. Then the Newton’s law implies

\displaystyle m \frac{d^2 x}{dt^2} = - 6 \pi \eta a \frac{dx}{dt} + X

Such an equation is called a stochastic differential equation, that is actually a differential equation with a random term X.

By multiplying the two sides by x

\displaystyle m x \frac{d^2 x}{dt^2} = - 6 \pi \eta a x \frac{dx}{dt} + x X

This can be rewritten

\displaystyle \frac{1}{2} m \frac{d^2 (x^2) }{dt^2} - m \left( \frac{dx}{dt} \right)^2 = - 3 \pi \eta a x \frac{d (x^2)}{dt} + x X

Then by averaging and assuming \langle x X \rangle = 0 we obtain

\displaystyle \frac{1}{2} m \frac{d^2 \langle x^2 \rangle}{dt^2} - k T = - 3 \pi \eta a \frac{d \langle x^2 \rangle}{dt}

This is an ordinary differential equation with general solution

\displaystyle \frac{d \langle x^2 \rangle}{dt} = \frac{k T}{3 \pi \eta a} + \lambda e^{- 6 \pi \eta a t / m}

where \lambda is an arbitrary constant.

By neglecting the fast decreasing exponential we get

\displaystyle \langle x^2 \rangle = \langle x_0^2 \rangle + \frac{k T}{3 \pi \eta a} t

Thus, the mean square of displacements varies linearly with time. This fundamental property can be expressed more mathematically for a displacement \Delta x during a time \Delta t

\displaystyle \boxed{\langle (\Delta x)^2 \rangle = \Delta t}


A Brownian motion, also called Wiener process, is a random variable W ( t ) continuous over [ 0 ; T ] satisfying the three following conditions

  • W ( 0 ) = 0
  • An increment W ( t ) - W ( s ) for 0 \leq s < t \leq T is a random variable normally distributed with zero mean and variance t - s
  • Two increments W ( t ) - W ( s ) and W ( v ) - W ( u ) are independent for 0 \leq s < t < u < v \leq T

The second condition is well illustrated by the relation \langle (\Delta x)^2 \rangle = \Delta t derived in the previous section.


The brownian motion can be easily discretized on computers. Let us denote by T the duration and N the number of iterations. Then the sampling time is given by \delta t = \frac{T}{N} and the discretized time by t_i = i \delta t. From the definition, the discretized Brownian motion W_i must satisfy the three conditions

  • W_0 = 0
  • Each increment \delta W_i = W_i - W_{i - 1} is a random variable normally distributed with zero mean and variance \delta t
  • The increments \delta W_i are independent

These conditions are straightforward to implement in SCILAB, by using the function rand to generate normal distribution \sqrt{\delta t} \mathcal{N} ( 0 , 1 ).

T = 1;
N = 1000;
dt = T / N;
dW = sqrt(dt) * rand(N, 1, 'normal');
W = [0 ; cumsum(dW)];


Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s