Open access peer-reviewed chapter

Monte-Carlo Simulation of Particle Diffusion in Various Geometries and Application to Chemistry and Biology

By Ianik Plante and Francis A. Cucinotta

Submitted: May 1st 2012Reviewed: September 9th 2012Published: March 6th 2013

DOI: 10.5772/53203

Downloaded: 2890

1. Introduction

The simulation of systems comprising different types of molecules is of great interest in several fields, notably in chemistry and biological sciences. The conventional approach to simulate biological networks is to write down macroscopic rate equations and solve the corresponding differential equations numerically to obtain the time evolution of molecules concentrations [1-3]. In this method, the system evolution is deterministic, and it is implicitly assumed that the concentrations are large. However, in most biological systems, the concentrations of molecules usually range from nanomolar to micromolar; therefore, the interactions of these molecules are highly stochastic. Recently, various techniques have been developed to take into account the spatial distribution of individual molecules and the stochastic character of reactions between them. Several of these techniques are based on the Green's functions of the Diffusion Equation (DE), and they offer the advantage of being able to follow all the particles in time and space. In this book chapter, this method is applied to simple systems in one, two, and three dimensions. Two applications are discussed. The first is the simulation of ligands molecules near a plane membrane comprising receptors with the possibility of dissociation and initiation of signal transduction. The second application of this theory is the simulation of partially diffusion-controlled chemical reactions.

Advertisement

2. Sampling of the Green's functions of the diffusion equation

The Green's functions of the DE in simple systems under different boundary conditions are known from the theory of heat propagation in solids [4], since the DE and the equation for the propagation of heat are the same. With few assumptions, these Green's functions can be used to model particle systems in specific environments.

2.1. Diffusion equation and boundary conditions

The DE can be written

tp(r,t|r0)=D2p(r,t|r0),E1

where r0is the initial position vector

Through the book chapter, variables written in bold are vectors.

of a particle and ris its position vector at time t. The diffusion coefficient of a particle (D) is used instead of the thermal diffusivity coefficient in the equation of the propagation of heat. In the model presented here, a particle is located at the position r0at t=0. This is expressed mathematically as:

p(r,t=0|r0)=δ(rr0),E2

where δ(r-r0)=δ(x-x0)δ(y-y0)δ(z-z0)is the product of three Dirac's delta functions. To complete the description of the model the boundary conditions at the surfaces are specified. One important case is the radiationboundary condition at the surface X=0:

Dp(x,y,z,t|x0,y0,z0)x|x=0=kap(0,y,z,t|x0,y0,z0).E3

The limit ka→∞is known as the absorbingboundary condition. In this case, the boundary condition is written p(0,y,z,t|x0, y0, z0, t0)=0. The limit ka→0is the reflectingboundary condition. The condition ka>0implies that particles may bind at the surface; therefore, the Green's function of these systems are generally not normalized to 1. In all systems described in Sections 3 and 4 the boundary conditions on surfaces, if any, are reflecting (ka=0). In Section 5 two applications of the theory for which the boundary conditions are different will be discussed.

2.2. Sampling of the Green's functions

To simulate the state of a particle system after one time step, the positions of each particle are calculated by sampling the Green's function for the position r. The Green's function is written p(r, t|r0)to emphasize that it represents the probability of a particle initially located at the position r0to be found at the position rat time t. In the systems presented in Sections 3 and 4, there is no binding of particles to boundaries. Therefore, p(r,t|r0)is normalized as follows:

Ωp(r1,t1|r0)dr1=1,E4

where Ωis the domain where the particle can be found. Another important thing to consider is that the simulation of a particle trajectory can be done by using one or several time steps. This can be expressed mathematically as:

p(r2,Δt1+Δt2|r0)=Ωp(r2,Δt2|r1)p(r1,Δt1|r0)dr1.E5

That is, the probability of a particle to be found at r2after the time steps Δt1and Δt2is the same as going to the intermediate position r1after Δt1and then the final position r2at Δt1+Δt2. The integral over the domain Ωcovers all intermediate positions. This is the Chapman-Kolmogorov equation, which hold in Markovian systems.

As seen in a previous paper [5], Equations (4) and (5) have to modified in systems where there is a possibility of binding of particles at the boundaries.

3. One-dimensional systems

One dimensional (1D) systems are simpler to study than those which are multi-dimensional. They are also of interest since several multi-dimensional systems can be approached as independent 1D systems [6]. In 1D, the DE is:

p(x,t|x0)t=D2x2p(x,t|x0).E6

The initial condition is p(x,0|x0)=δ(x-x0). Three systems are described in this section: free diffusion, diffusion in the half-space X>0and diffusion in the space between X=0and X=L.

3.1. Free diffusion

The Green's function of the DE in 1D for a free particle, noted pfree(x,t|x0), is well known:

pfree(x,t|x0)=14πDtexp[(x-x0)24Dt].E7

This is a Gaussian distribution, with variance σ2=2Dt. This distribution can be sampled by using, for example, the Box-Muller method [7].

Algorithm 1: Sampling algorithm forpfree(x,Δt|x0)(free 1D diffusion)

GENERATE Nas a standard Normal
Xx0+DΔt
RETURN X.

The sampling algorithm is used to generate the positions of 1,000,000 particles after one time step. The results are stored in histograms and normalized. The Green's functions and the results of sampling are illustrated

Through this book chapter, the diffusion coefficient is set to D=1in Figures.

in Figure 1.

Figure 1.

Green's functionspfree(x,t|x0)att=1, 2, 4, 8, 16and32time units, for a particle initially atx0=2. The lines are analytical predictions; the points are the result of sampling from 1,000,000 particle histories.

Because the sampling algorithms use random numbers, the simulation results vary from one simulation to another. Usually, the larger the number of histories, the smaller the statistical fluctuation of the results. The algorithms presented in this book chapter are exact, i.e. the simulation results are expected to converge to the analytical Green's function at the limit of an infinite number of histories. In practice, 1,000,000 particle histories are usually sufficient to converge to the analytical Green's function and to confirm the validity of the algorithm. The time discretization property of the Green's function can also be used to validate the algorithm: since a simulation can be done in several time steps, the positions of the particles obtained after the first time step are used as the initial positions for the next step.

3.2. Diffusion in the half-space x>0

As it will be seen in the applications, this system may be used to represent the motion of particles near a membrane. The reflective boundary condition at x=0is given by

Dp(x,t|x0)x|x=0=0.E8

The solution of the DE in 1D for this system, noted pref(x,t|x0), is given in ref. [8]:

pref(x,t|x0)=14πDt{exp[(x-x0)24Dt]+exp[(x+x0)24Dt]}.E9

This Green's function is the sum of two Gaussian distributions. It can be sampled by the method described in Algorithm 2 (given in ref. [8]):

Algorithm 2: Sampling algorithm forpref(x,Δt|x0)(free 1D diffusion with reflection at x=0)

SETN0(1/2)Erfc[x0/4DΔt]
GENERATE uniform [0,1] random variatesU,V
IF (U<N0)Xx0+4DΔtErfc-1[VErfc(x0/4DΔt)]
ELSEXx0+4DΔtErfc-1[VErfc(x0/4DΔt)]
RETURN X

where Erfc(x)is the complementary error function [9]. The Green's functions and the result of sampling are illustrated in Figure 2.

Figure 2.

Green's functionspref(x,t|x0)att=1, 2, 4, 8, 16and32time units, for a particle in the half-spacex>0initially atx0=2.5. The lines are analytical predictions; the points are the result of sampling from 1,000,000 particles histories.

3.3. Diffusion of a particle between x=0and x=L

This system is used to simulate the motion of particles in a confined space. In this case, the reflective boundary conditions at x=0and x=Lare given by

Dp(x,t|x0)x|x=0=0,Dp(x,t|x0)x|x=L=0.E10

The Green's function of the DE in 1D for a particle between the boundaries, noted pconf(x,t|x0), is [4]:

pconf(x,t|x0)=1Ln=exp(π2n2DtL2)cosnπxLcosnπx0L.E11

This function is complicated by an infinite sum. However, it is possible to use the following algorithm to generate trajectories of particles in this environment [10]. The algorithm is based on a series method, as described in [11]. For this section the functions f(x)and fn(x)are defined:

f(x)=1L+2n=1fn(x),fn(x)=def1Lexp(π2n2DtL2)cosnπxLcosnπx0L.E12

The algorithm is:

Algorithm 3A: Generation of random variateXdistributed aspconf(x,Δt|x0)(particle betweenx=0andx=Lin 1D)

DEFINEH1/L+1/πDΔt
REPEAT
{
GENERATE U,Vuniform on [0,1] and Xuniform on [0,L]
SET Y ← VH
}
UNTIL Y≤f(X)
RETURN X

The verification of Y≤f(X)is dose by using the second part of the algorithm:

Algorithm 3B: Verification ofY<f(X)

SET S ← 1/L+2f1(X), k ← 1(Sholds the approximation sum)
REPEAT FOREVER
{
T = (L/π2kDΔt)exp(-π2k2DΔt/L2)
IF (Y ≥ S+T) THEN RETURN "Y ≥ f(X)" and EXIT
IF (Y ≤ S-T) THEN RETURN "Y ≤ f(X)" and EXIT
k ← k+1
S ← S+2fk(X)
}

The Green's function and the result of sampling for 1,000,000 histories of particles initially located at x0=5are shown in Figure 3.

Figure 3.

Green's functionspconf(x,t|x0)att=1, 2, 4, 8, 16and32time units, for a particle initially atx0=5, allowed to occupy the space betweenx=0andx=10. The lines are analytical predictions; the points are the result of sampling of 1,000,000 particle histories.

When time evolves, as illustrated in Figure 3, the particles become uniformly distributed between x=0and x=10.

4. Two-dimensional systems

Two dimensional (2D) systems are interesting, because the particles trajectories can be visualized in a plane. The DE in 2D can be written:

p(x,y,t|x0,y0)t=D[2x2+2y2]p(x,y,t|x0,y0).E13

The initial condition is p(x,y,t=0|x0, y0)=δ(x-x0)δ(y-y0). In several cases, the Green's function can be written as the product of the functions px(x,t|x0)and py(y,t|y0)(see ref. [6]):

p(x,y,t|x0,y0)=px(x,t|x0)py(y,t|y0).E14

This property of the Green’s function allows the simulation of the motion of particles in the direction x and y independently.

4.1. Free diffusion

The solution of the DE is the product of two Gaussian functions:

pfree(x,y,t|x0,y0)=14πDtexp[(x-x0)2+(y-y0)24Dt]pfree(x,t|x0)pfree(y,t|y0).E15

Therefore, sampling of this Green's function can be done by sampling two Gaussian functions:

Algorithm 4: Sampling algorithm forpfree(x,y,Δt|x0,y0)(free 2D diffusion)

GENERATE N1,N2as a standard Normals
Xx0+DΔtN1
Yy0+DΔtN2
RETURN (X,Y).

Plotting the Green's functions in X and Y would give figures identical to Figure 1. However, in 2D, it is useful to use polar coordinates. That is, the following transformation is used:

x=rcos(θ),y=rsin(θ).E16

The same transformation is done with x0and y0to obtain r0and θ0. The Green's function may be rewritten:

pfree(r,θ,t|r0,θ0)=14πDtexp[r2+r02-2rr0cos(θθ0)4Dt].E17

This form yields an alternate method to sample the Green's function in polar coordinates:

Algorithm 5: Sampling algorithm forr*pfree(r,θ,Δt|r00)(free 2D diffusion)

CALCULATEρr0/2DΔt
REPEAT
GENERATE V,Wuniform on [0,1], E1as standard exponential.
SETΘ2πV.
IFW(1+ρ)<1THEN SETRρ+2E2, where E2 is standard exponential
ELSE SET R ←ρ+N, where N is standard normal
UNTIL R>0and log(Max(R,ρ)/R)+Rρ(1-cos(Θ-θ0))<E1.
RETURN (R,Θ).

Algorithm 5 generates variates rand θdistributed as r*pfree(r,θ,t|r00). The factor roriginates from the differential area in polar coordinates: dxdyis replaced by rdrdθ.

It is possible to obtain related distributions such as p(r,t|r0)and p(θ,t|θ0). They are found by integrating the Green's function:

p(r,t|r0)=14πDtexp(r2+r024Dt)0exp[2rr0cos(θθ0)4Dt]dθ=12DtI0(rr02Dt),E18

where I0(x)is the Modified Bessel Function of the First Kind of order 0 (see ref. [9]). The angular distribution p(θ,t|θ0)is obtained by integrating over r:

p(θ,t|θ0)=14πDt0exp[r2+r02-2rr0cos(θθ0)4Dt]rdr.E19

The factor ris also included in the integral. The result is:

p(θ,t|θ0)=1exp(r024Dt)+exp[r02sin2(θθ0)4Dt]r0cos(θθ0)Dt(1+Erf[r0cos(θθ0)4Dt]).E20

where Erf(x)is the error function [9]. The distributions p(r,t|r0)and p(θ,t|θ0)for x0=2.5and y0=2.5are illustrated in Figure 4.

Figure 4.

Distributionsp(r,t|r0)andp(θ,t|θ0)for 1,000,000 particles initially located atx0=2.5andy0=2.5at t=1,2,4,8,16 and 32 units.

Similar results are found using either algorithm 4 or 5. In 2D, it is possible to represent the time evolution of the particle system (Figure 5).

Figure 5.

Positions of 1,000,000 particles initially located atx0=2.5,y0=0att=1, 2, 4, 8, 16and32time units. The positions are obtained by sampling the Green's function as described inAlgorithm 4or5.

4.2. The rectangular corner x>0, y>0

As in section 4.1, the solution of the DE is the product of two independent 1D reflective Green's functions:

p(x,y,t|x0,y0)==14πDt{exp[(x-x0)24Dt]+exp[(x+x0)24Dt]}{exp[(y-y0)24Dt]+exp[(y+y0)24Dt]}.E21

The positions of the particles can be sampled by using two applications of Algorithm 2 (for X and Y). An example of the time evolution of 1,000,000 particles is illustrated in Figure 6.

Figure 6.

Positions of 1,000,000 particles initially located atx0=10,y0=10att=1, 2, 4, 8, 16and32time units, assuming reflective boundaries atX=0andY=0. The positions are obtained by sampling the Green's function as described inAlgorithm 2.

4.3. The rectangle 0<x<a, 0<y<b

The solution of the DE is also the product of two independent 1D Green's functions:

p(x,y,t|x0,y0)==1ab[m=exp(π2m2Dta2)cosmπxacosmπx0a][n=exp(π2n2Dtb2)cosnπybcosnπy0b].E22

Therefore the positions of the particles can be sampled by using Algorithm 3 for the coordinates x and y.

Figure 7.

Positions of 1,000,000 particles initially located atx0=2.5,y0=0in the rectangle of 10 units height and 15 units width att=1, 2, 4, 8, 16and32time units. The positions are obtained by sampling the Green's function as described inAlgorithm 3.

The particle system depicted in Figure 7 illustrates how particles initially located in a given position will diffuse and eventually become uniformly distributed in the rectangular area.

4.4. The particles outside a disk of radius R

This problem is of interest to simulate how particles move and/or bind to curved cell membranes comprising receptors. In this section, only the case of the reflective boundary condition is discussed. In polar coordinates, the DE can be written

D[1rr(rr)+1r22θ2]p(r,θ,t|r0,θ0)=tp(r,θ,t|r0,θ0).E23

The reflective boundary condition at r=Ris:

Dp(r,θ,t|r0,θ0)r|r=R=0.E24

The Green's function for a particle initially located at (r00) is:

p(r,θ,t|r0,θ0)=1n=cos[n(θθ0)]0e-u2DtuCn(u,r)Cn(u,r0)du,E25

where

Cn(u,r)=Jn(ur)Yn'(uR)Jn'(uR)Yn(ur)Jn'(uR)2+Yn'(uR)2.E26

Jn(x)and Yn(x)are the Bessel Functions of the First and Second Kind, respectively (see ref. [9]). The parameters of this distribution are R>0, 0≤θ0≤2π, r0>Rand Dt>0. The variates of this distributions are r>Rand 0≤θ≤2π.

The normalization of this function is:

0Rp(r,θ,t|r0,θ0)rdrdθ=1.E27

We have not been able so far to develop a sampling algorithm for the distribution function p(r,θ,t|r0, θ0). An approximate algorithm to sample the positions can be done by using free diffusion and reflecting particles which are inside the disk (r<R). The results given by this simulation are illustrated in Figure 8.

Figure 8.

Positions of 1,000,000 particles initially located atx0=2.5,y0=2.5near a reflective boundary atR=1att=1, 2, 4, 8, 16and32time units.

In this example, since an approximate method is used to simulate the motion of particles, the distributions of rand θdo not verify the time discretization equations, as an exact sampling algorithm of p(r,θ,t|r0, θ0)would (results not shown). Therefore, this example illustrate that the time discretization property of the Green’s function is a very powerful way to verify the validity of the sampling algorithms.

It is interesting to note that for R→0, Cn(u,r)→Jn(ur); in this case, the integral can be evaluated by using Weber's formula (Watson P. 395 [12], Gradsteyn 6.633, Equation 2 [13]):

pref(r,θ,t|r0,θ0)=1n=cos[n(θθ0)]12Dtexp(r2+r024Dt)In(rr02Dt).E28

The series which is obtained can be evaluated (http://functions.wolfram.com/ 03.02.23.0007.01):

pref(r,θ,t|r0,θ0)=112Dtexp(r2+r024Dt)exp[rr02Dtcos(θθ0)]pfree(r,θ,t|r0,θ0).E29

Thus, for R→0, pref(r,θ,t|r00) → pfree(r,θ,t|r00), as expected.

5. Three-dimensional systems

Three dimensional systems are more complex and harder to visualize. In 3D, the DE can be written in cartesian coordinates as:

tp(x,y,z,t|x0,y0,z0)=D[2x2+2y2+2z2]p(x,y,z,t|x0,y0,z0).E30

The initial condition is p(x,y,z,t=0|x0, y0, z0)=δ(x-x0)δ(y-y0)δ(z-z0). As in 2D, in several cases, the Green's function can be written as the product of the functions px(x,t|x0), py(y,t|y0)and pz(z,t|z0):

p(x,y,z,t|x0,y0,z0)=px(x,t|x0)py(y,t|y0)pz(z,t|z0).E31

5.1. Free diffusion

The solution of the DE for free particles is the product of three Gaussian functions:

pfree(x,y,z,t|x0, y0,z0)==1(4πDt)3/2exp[(x-x0)2+(y-y0)2+(z-z0)24Dt]pfree(x,t|x0)pfree(y,t|y0)pfree(z,t|z0).E32

Since the Gaussian functions are independent, the positions x, yand zcan be obtained by sampling the Gaussian distribution for each variateX, Yand Z:

Algorithm 6: Sampling algorithm forpfree(x,y,z,Δt|x0,y0,z0)(free 3D diffusion)

GENERATE N1, N2, N3 as a standard Normals
Xx0+DΔtN1
Yy0+DΔtN2
Zz0+DΔtN3
RETURN (X,Y,Z).

In 3D, it is useful to use spherical coordinates (r,θ,ϕ)

The following notation is used: (radial, azimutal, polar). r: [0,∞),θ: [0,π],ϕ: [0,2π).

. That is, the following transformation is used:

x=rsin(θ)cos(ϕ),y=rsin(θ)sin(ϕ),z=rcos(θ).E33

The differential volume element is given by

dV=r2sin(θ)drdθdϕ.E34

The DE can be written in spherical coordinates as:

p(r,θ,ϕ,t|r0,θ0,ϕ0)t=D[2r2+2rr+1r2sin2θ2ϕ2+1r2sinθθ(sinθθ)]p(r,θ,ϕ,t|r0,θ0,ϕ0).E35

Using the transformation to spherical coordinates, the Green's function of the DE for free particles can be rewritten as:

pfree(r,θ,ϕ,t|r0,θ0,ϕ0)==1(4πDt)3/2exp{r2+r022rr0[cosθcosθ0+sinθsinθ0cos(ϕϕ0)]4Dt}.E36

The angle between the vectors (r,θ,ϕ) and (r000) is given by cos(γ):

cos(γ)=cosθcosθ0+sinθsinθ0cos(ϕϕ0).E37

Therefore, Eq. (36) can be written in the compact form:

pfree(r,θ,ϕ,t|r0,θ0,ϕ0)=1(4πDt)3/2exp[r2+r022rr0cosγ4Dt].E38

In spherical coordinates, as in 2D, it is possible to obtain related distributions such as p(r,t|r0). It is obtained by integrating the Green's function over the angles:

p(r,t|r0)=00πr2pfree(r,θ,ϕ,t|r0,θ0,ϕ0)sin(ϕ)dθdϕ=r4πr02Dtexp(r2+r024Dt)sinh(rr02Dt).E39

5.2. The corner x>0, y>0, z>0

The Green's function is the product of three independent 1D Green's functions:

p(x,y,z,t|x0,y0,z0)=1(4πDt)3/2[e(x-x0)2/4Dt+e(x+x0)2/4Dt][e(y-y0)2/4Dt+e(y+y0)2/4Dt][e(z-z0)2/4Dt+e(z+z0)2/4Dt].E40

As it is the case in 2D, the coordinates x,yand zcan be treated independently. Therefore, the positions of the particles can be generated by using Algorithm 2 for each of the coordinates.

5.3. The parallelipiped 0<x<a, 0<y<b, 0<z<c

The Green's function is also the product of three independent 1D Green's functions:

p(x,y,z,t|x0,y0,z0)=1abcm,n,l=exp[π2Dt(m2a2+n2b2+l2c2)]cosmπxacosmπx0acosnπybcosnπy0bcoslπzccoslπz0c.E41

Therefore, the positions of particles can be generated by using Algorithm 3 for each of the coordinates. This sampling algorithm can be used to simulate the trajectories of particles confined into a box of sides a, band c. At equilibrium, as it is the case in 2D (Figure 7), the particles are uniformly distributed within the volume.

Advertisement

6. Applications

Two applications of the approach described in the previous sections are presented. The first is the simulation of particles near a membrane comprising receptors. The second one is the simulation of chemical reactions. These applications will eventually be used to study the evolution of the chemical species created by ionizing radiations in biological media [14].

6.1. Particle near a 1D membrane comprising receptors

To apply the theory described in the chapter to cell culture simulations, it is necessary to make some assumptions. The details of the model presented here and more results are given in ref. [5]. Similar models have been used to study autocrine and paracrine signals in cell culture assays [15], ligand accumulation in autocrine cell cultures [16] and the spatial range of autocrine signaling [17].

6.1.1. Model and assumptions

A particle is assumed to be located in the proximity of a plane membrane comprising receptors, corresponding to the plane X=0. The particle can move freely in the Y and Z directions, and can bind reversibly to receptors located on the membrane and initiate signal transduction. This is illustrated in Figure 9:

Figure 9.

Ligands near a surface comprising receptors. The rate constants for association, dissociation and initiation of signal transduction areka,kdandke, respectively.

The binding rate constant (ka) is obtained from the ligand-receptor association rate constant and the density of receptors on the surface, which are assumed to be uniformly distributed on the membrane [16]. The ligand-receptor complex has the rate constants kdfor dissociation and kefor initiation of signal transduction. As a first approximation, this is equivalent to the problem

A+Bkdka(AB)keAB.E42

Since the particles are moving freely in the Y and Z direction, the Green's function can be written as the product of the independent functions px(x,t|x0), py(y,t|y0)and pz(z,t|z0). But py(y,t|y0)and pz(z,t|z0)are Gaussians functions, which can be sampled as described in section 4.1; therefore, only the sampling of px(x,t|x0)will be discussed here. For convenience, the index "x" will be omitted in this section.

A particle can be free at position x>0, in a reversible bound state (*) at x=0or activating signal transduction (**). The boundary condition at x=0can be written:

Dp(x,t|x0)x|x=0=kap(0,t|x0)kdp(*,t|x0),E43

where p(*,t|x0)is the probability of a particle initially located at x0to be in the reversible bound state at time t. The time evolution of p(*,t|x0)is:

dp(*,t|x0)dt=kap(0,t|x0)(kd+ke)p(*,t|x0).E44

Similarly, the time evolution of p(**,t|x0)is:

dp(**,t|x0)dt=kep(*,t|x0).E45

6.1.2. Green's functions

This problem can be solved analytically by using Laplace Transforms [18]. The solutions are expressed using three coefficients α, βand γ. They are the roots of a cubic polynomial

At least one of the roots of a third-order polynomial is real, the two other roots being either real or complex conjugates.

, for which the coefficients are given by the rate constants ka, kdand keas follows:

α+β+γ=ka/D,αβ+βγ+γα=(ke+kd)/D,αβγ=keka/D2.E46

The mathematical expressions of the Green's function for a particle in this system are quite long. To simplify the following expressions, the variables ρx=x/4Dt, ρ0=x0/4Dt, α'=αDt, β'=βDtand γ'=γDtare defined.

p(x,t|x0)=pref(x,t|x0)+α(γ+α)(α+β)(γα)(αβ)W(ρx+ρ0,α')++β(α+β)(β+γ)(αβ)(βγ)W(ρx+ρ0,β')+γ(β+γ)(γ+α)(βγ)(γα)W(ρx+ρ0,γ').E47

where pref(x,t|x0)is the Green's function for a reflective membrane, given in Section 3.2. The functions W(x,y)and Ω(x)are defined as:

Ω(x)=exp(x2)Erfc(x),W(x,y)exp(2xy+y2)Erfc(x+y)=exp(x2)Ω(x+y)E48

It is possible for two of the roots to be complex conjugates. Nevertheless, it is still possible to use the Green's function given in Equation (47) by implementing the numerical evaluation of W(x,y) for complex numbers [19].

The probability of survival for a free particle is obtained by integrating p(x,t|x0)on [0,∞):

Q(t|x0)=1(γ+α)(α+β)(γα)(αβ)W(ρ0,α')(α+β)(β+γ)(αβ)(βγ)W(ρ0,β')(β+γ)(γ+α)(βγ)(γα)W(ρ0,γ')Erfc(ρ0).E49

The probability of a particle initially at x0>0to be reversibly bound at time tis:

p(*,t|x0)=α(α+β+γ)(γα)(αβ)W(ρ0,α')+β(α+β+γ)(αβ)(βγ)W(ρ0,β')+γ(α+β+γ)(βγ)(γα)W(ρ0,γ').E50

A particle initially at x0>0can also be found in an irreversibly bound state at time t. The probability to be found in this state is given by p(**,t|x0)=1-p(*,t|x0)-Q(t|x0), which can be written as:

p(**,t|x0)=βγ(γα)(αβ)W(ρ0,α')++αγ(αβ)(βγ)W(ρ0,β')+αβ(βγ)(γα)W(ρ0,γ')+Erfc(ρ0).E51

To obtain the Green's function of a particle in a reversibly bound state, the material balance condition kap(x,t|*)=kdp(*,t|x)(given in ref. [18,20]) is used. This yields the Green's function for the dissociation of a bound particle:

Dkdp(x,t|*)=α(γα)(αβ)W(ρx,α')+β(αβ)(βγ)W(ρx,β')+γ(βγ)(γα)W(ρx,γ').E52

The probability of dissociation of a particle that was initially in a reversibly bound state Q(t|*)is found by integrating p(*,t|x)over [0,∞):

DkdQ(t|*)=1(γα)(αβ)Ω(α')1(αβ)(βγ)Ω(β')1(βγ)(γα)Ω(γ').E53

The probability of a particle initially in a reversibly bound state to stay in this state is given by (ref. [18]):

p(*,t|*)=α(β+γ)(γα)(αβ)Ω(α')+β(γ+α)(αβ)(βγ)Ω(β')+γ(α+β)(βγ)(γα)Ω(γ').E54

Finally, the probability of a particle initially in a reversibly bound state to activate signal transduction is:

p(**,t|*)=1+1α+β+γ[βγ(β+γ)(γα)(αβ)Ω(α')+αγ(α+γ)(αβ)(βγ)Ω(β')+αβ(α+β)(βγ)(γα)Ω(γ')].E55

For some particular values of α, βand γ, the Green's functions of this section have singularities (0/0). In these cases, the Green's functions take slightly different forms, but it is still possible to use the approach described here (see ref. [5]).

6.1.3. Time discretization equations

A simulation is usually done by dividing the final simulation time in a finite number of time steps. If the simulation can be done in two time steps such as t=Δt1+Δt2, a particle initially located at position x0can:

  1. go to position x1during Δt1and then go to its final xposition during Δt2,

  2. go to position x1during Δt1and reversibly bind to the membrane during Δt2,

  3. go to position x1during Δt1and activate signal transduction during Δt2,

  4. reversibly bind to the membrane during Δt1and stay in this state during Δt2,

  5. reversibly bind to the membrane during Δt1and dissociate during Δt2,

  6. reversibly bind to the membrane during Δt1and activate signal transduction during Δt2,

or

  1. activate signal transduction during Δt1.

From this the following time discretization equations are obtained:

p(x,t|x0)=Ωp(x,Δt2|x1)p(x1,Δt1|x0)dx1+p(x,Δt2|*)p(*,Δt1|x0),p(*,t|x0)=p(*,Δt2|*)p(*,Δt1|x0)+Ωp(*,Δt2|x1)p(x1,Δt1|x0)dx1,p(**,t|x0)=p(**,Δt1|x0)+p(**,Δt2|*)p(*,Δt1|x0)+Ωp(**,Δt2|x1)p(x1,Δt1|x0)dx1.E56

The first of these equations is similar to the Chapman-Kolmogorov equation, to which a term has been added to account for the possibility of dissociation. Each term of these equations can be associated with the possibilities i-vii. Similarly, a particle initially in a reversibly bound state can:

  1. dissociate to position x1during Δt1and go to its final position x during Δt2,

  2. dissociate to position x1during Δt1and re-bind reversibly during Δt2,

  3. dissociate to position x1during Δt1and initiate signal transduction during Δt2,

  4. stay reversibly bound during Δt1and dissociate to position xduring Δt2,

  5. stay reversibly bound during Δt1and Δt2,

  6. stay reversibly bound during Δt1and initiate signal transduction during Δt2, or

  7. initiate signal transduction during Δt1.

This yields the time discretization equations for the bound particle:

p(x,t|*)=Ωp(x,Δt2|x1)p(x1,Δt1|*)dx1+p(x,Δt2|*)p(*,Δt1|*),p(*,t|*)=p(*,Δt2|*)p(*,Δt1|*)+Ωp(*,Δt2|x1)p(x1,Δt1|*)dx1,p(*,t|*)=p(*,Δt1|*)+p(*,Δt2|*)p(*,Δt1|*)+Ωp(*,Δt2|x1)p(x1,Δt1|*)dx1.E57

These equations are proven in the supplemental material of ref. [5].

6.1.4. Brownian dynamics algorithm

Using the Green's functions, it is possible to construct a Brownian Dynamics algorithm to simulate the motion and binding of the ligand and the possible initiation of signal transduction. First, it should be noted that p(x,t|x0)is a sub-density

A sub-density means that P=0Lf(x)dx1, and f(x)≥0. In this case, a random variate with the density f/p is generated with probability P.

. Since p(x,t|x0)≤pref(x,t|x0), the rejection method can be used [21]. This yields the following algorithm:

Algorithm 7a: sampling ofp(x,Δt|x0)(free particles)

REPEAT
{
GENERATE Uuniform on [0,1], Xdistributed as pref(x,Δt|x0)
}
UNTIL p(X,Δt|x0)U*pref(X,Δt|x0)
RETURN X

There are also particles which are bound to the membrane. These particles may dissociate with probability Q(Δt|*). If this is the case, the position xof the particle is distributed as p(x,Δt|*), which can be written with a Gaussian factor in evidence:

p(x,Δt|*)=kdDexp(x24DΔt)[α(γα)(αβ)Ω(x4DΔt+αDΔt)+β(αβ)(βγ)Ω(x4DΔt+βDΔt)+γ(βγ)(γα)Ω(x4DΔt+γDΔt)].E58

This form is convenient because it is the product of a Gaussian function by a function g(x)with three terms in Ω(x). Since 0≤Ω(x)≤1, p(x,Δt|*)can be sampled by a rejection method:

Algorithm 7b: sampling ofp(x,Δt|*)(reversibly bound particles)

CALCULATE H = |α/(γ-α)(α-β)|+|β/(α-β)(β-γ)|+|γ/(β-γ)(γ-α)|
REPEAT
{
GENERATE U uniform on [0,1],X=|N|2DΔt, where N is a standard Normal
}
UNTIL UH≤g(X)
RETURN X

6.1.5. Simulation results

A simulation has been done by using ka=6, kd=10and ke=1. The results are shown in Figure 10. It should also be noted that the time discretization equations (56) and (57) were used to validate the simulation results. In this case, it is possible to verify that the simulation results for free particles corresponds to p(x,t|x0), but also that the number of bound particles can be accurately predicted after several time steps.

Figure 10.

Left) Probability distribution of a particle near a partially absorbing and reflecting boundary with back reaction forx0=2.5,ka=6,kd=10,ke=1andD=1(α=1,β=2andγ=3) att=1, 2, 4, 8and16time units. The lines are the analytical predictionsp(x,t|x0). The dots are given by the simulation of 1,000,000 particle histories either with one or multiple time steps. (Right) Probability of a particle in these conditions to be free, reversibly bound or irreversibly bound as a function of time.

6.2. Bimolecular reactions

Bimolecular reactions are an important application of the theory described in the book chapter. Let the particles A and B initially at the positions rA0and rB0. They can react with the reaction rate ka:

A+BkaC.E59

6.2.1. Green's functions for the particles

The probability distribution is solution of the following equation [2]:

tp(rA,rB,t|rA0,rB0)=[DAA2+DBB2]p(rA,rB,t|rA0,rB0).E60

It is convenient at this point to use a transformation of coordinates, similar to a center of mass transformation:

R=DB/DArA+DA/DBrB,r=rBrA.E61

The same transformation is done to rA0and rB0to obtain r0and R0. The operators R=∂/∂Rand r=∂/∂rare also defined. Using the transformation, Equation (60) can be rewritten as:

tp(R,r,t|R0,r0)=D[R2+r2]p(R,r,t|R0,r0).E62

where D=DA+DB, the sum of the diffusion coefficients of the particles. Therefore, p(R,r,t|R0,r0)can be factorized as follows:

p(R,r,t|R0,r0)=pR(R,t|R0)pr(r,t|,r0).E63

Using this factorization, two DE are obtained in rand R:

tpR(R,t|R0)=DR2pR(R,t|R0),tpr(r,t|r0)=Dr2pr(r,t|r0).E64

This equation describes two independent random processes - diffusion in the coordinates rand R. The initial condition for Equation (64a) is pR(R,t|R0)=δ(R-R0), and the boundary condition is pR(|R|→∞,t|R0)=0. As seen in Section 5.1, Equation (64a) represents free diffusion in 3D:

pR(R,t|R0)=1(4πDt)3/2exp[(RR0)24Dt].E65

This function can be sampled for Ras in Algorithm 3, by using three Gaussian random numbers. Equation (64b) is the diffusive motion of the separation vector between particles. The initial condition is pr(r,t|r0,t0)=δ(r-r0), and the outer boundary condition is pr(|r|→∞,t|r0,t0)=0. The possibility of a chemical reaction is introduced as the inner boundary condition

4πσ2Dpr(r,t|r0)r|r=σ=kapr(|r|=σ,t|r0),E66

where σis the reaction radius. As it is the case for free particles, Equation (66) is the radiationboundary condition. The limit ka→0is the reflectingboundary condition (no reactions between particles), whereas the limit ka→∞is the absorbingboundary condition. In the latter case, the boundary condition is written pr(|r|=σ,t|r0)=0.

The exact solution for this problem is given in ref. [4]:

p(r,θ,ϕ,t|r0,θ0,ϕ0)=1rr0n=0(2n+1)Pn(cosγ)0e-u2DtuFn+1/2(u,r)Fn+1/2(u,r0)du.E67

where Pn(x)are the Legendre polynomials,

Fυ(u,r)=(2σka+1)[Jυ(ur)Yυ(uσ)Yυ(ur)Jυ(uσ)]2uσ[Jυ(ur)Yν'(uσ)Yυ(ur)Jν'(uσ)][(2σka+1)Jυ(uσ)2uσJν'(uσ)]2+[(2σka+1)Yυ(uσ)2uσYν'(uσ)]2.E68

and γis the angle formed by (r,θ,ϕ), the origin and (r000). In this expression, it is possible to evaluate Pn(cosγ), knowing that

Pn(cosγ)=Pn(cosθ)Pn(cosθ0)+2m=1n(n-m)!(n+m)!Pnm(cosθ)Pnm(cosθ0)cosm(ϕϕ0).E69

where Pnm(x)are the associated Legendre polynomials (ref. [9]). For θ0=0and ϕ0=0, Pn(cosγ)=Pn(cosθ). It is also interesting to note that for ka=0and σ→0, Fn+1/2(u,r) →Jn+1/2(ur). In this case, p(r,θ,ϕ,t|r0,,θ00)can be written:

p(r,θ,ϕ,t|r0,θ0,ϕ0)=1rr0n=0(2n+1)Pn(cosγ)0e-u2DtuJn+1/2(ur)Jn+1/2(ur0)du.E70

The integral can be evaluated using Weber's formula (ref. [13], section 6.633, eq 2):

p(r,θ,ϕ,t|r0,θ0,ϕ0)=1rr0n=0(2n+1)Pn(cosγ)12Dtexp(r2+r024Dt)In+1/2(rr02Dt).E71

This equation can be further simplified by using Iυ(z)=eiυπ/2Jυ(eiπ/2z)(ref. [12], p. 77; ref. [13] section 8.406), Jυ(eimπz)=eimπυJυ(z)(ref. [12], p. 75; ref. [13], section 8.476) and the identity

exp(izcosγ)=π2zn=0(2n+1)inJn+1/2(z)Pn(cosγ).E72

(ref. [12], p. 368; ref. [13], section 8.511). This yields the following equation:

p(r,θ,ϕ,t|r0,θ0,ϕ0)==18πDtrr0exp(r2+r024Dt)rr0πDtexp(rr0cosγ2Dt)1(4πDt)3/2exp[r2+r022rr0cosγ4Dt].E73

Therefore, p(r,θ,ϕ,t|r000)is equivalent to free 3D diffusion (Equation 38) for ka=0and σ=0.

We were not able to develop a sampling algorithm for p(r,θ,ϕ,t|r000). However, it is possible to use the radial component of the DE in 3D:

p(r,t|r0)t=Dr2r[r2rp(r,t|r0)],E74

with the boundary condition given by Equation 66. The solution is much simpler in this case:

4πrr0p(r,t|r0)=14πDt{exp[(r-r0)24Dt]+exp[(r+r0)24Dt]}+αW(r+r04Dt,αDt),E75

where α=-(ka+4πσD)/(4πσ2D). Therefore, this approximation is widely used in chemistry and biophysics [22]. The survival probability of a pair of particles, Q(t|r0), is well known and can be calculated by integrating p(r,t|r0)over space:

Q(t|r0)=σ4πr2p(r,t|r0)dr=1+σα+1r0α[W(r0σ4Dt,αDt)Erfc(r0σ4Dt)].E76

For this system, the time discretization equations takes the form:

p(r2,Δt1+Δt2|r0)=σ4πr12p(r2,Δt2|r1)p(r1,Δt1|r0)dr,p(*,Δt1+Δt2|r0)=p(*,Δt1|r0)+σ4πr12p(*,Δt2|r1)p(r1,Δt1|r0)dr,E77

where p(*,t|r0)=1-Q(t|r0).

6.2.2. Sampling algorithm

The objective is to generate random variates from f(r)≡4πr2p(r,t|r0)(ref. [23]). It can be noted that f(r)is composed by the sum of two Gaussians and a negative term, since ka≥0. Thus, f(r)≤h(r), where

h(r)=rr04πDt{exp[(r-r0)24Dt]+exp[(r+r0)24Dt]}.E78

Since f(r)is bound by the sum of two Gaussian functions, it can be sampled by a rejection method. To do so, h(r)is written as the sum of four terms, which, after rearrangement and truncation to the positive ranges, are:

h1(r)=r-r0r04πDtexp[(r-r0)24Dt]×1[rr0],h2(r)=r+r0r04πDtexp[(r+r0)24Dt]×1[rσ],h3(r)=r0r04πDtexp[(r-r0)24Dt]×1[rσ],h4(r)=2σ-r0r04πDtexp[(r+r0)24Dt]×1[rσ]×1[r0]E79

where 1[condition] takes the value 1 when the condition is true, and 0 when it is false. A related function is also defined:

h4'(r)=r0r04πDtexp[(r-r0)24Dt]×1[rσ].E80

Thus, f(r)h(r)=defhi(r). It is possible to generate a random variate with density proportional to h(r), since h(r)is a mixture of known probability distribution functions. To do so, the weight of the contributions of h1, h2and h3+h4are needed:

p1=h1(y)dy=Dtπr02,p2=h2(y)dy=Dtπr02exp[(σ-r0)24Dt],p'=(h3(y)+h4(y))dy=Φ(r0σ2Dt)+1[r0]r0r0Φ(σ-r02Dt).E81

where Φ(x)is the normal distribution function:

Φ(x2)=1Erfc(x)/2.E82

From this algorithm 8a is obtained:

Algorithm 8a

CALCULATE p1, p2and p'. SET s=p1+p2+p‘
GENERATE a uniform [0,1] random variateU
IF sU∈ [0,p1], SETXr0+4DtE, where Eis standard exponential.
IF sU∈ (p1,p2], SETXr0+(r0σ)2+4DtE, where Eis standard exponential.
IF sU∈ [p1+p2,s], use algorithm 8b to generate X
RETURN X

The second part is given by Algorithm 8b:

Algorithm 8b

REPEAT
GENERATE Nas standard normal, Uuniform on [0,1]
SetXr0+2DtN
UNTIL X>σ, or jointly X<σ, Dt<2σ2and U≤(2σ-r0)/r0
In the former case, RETURN X
In the latter case, RETURN 2σ-X

Algorithm 8 generates numbers with density probability proportional to h(r). However, random numbers distributed as f(r)are needed. Since f(r)is bound by h(r), a rejection method is used as the final step, i.e. the overall algorithm generate pairs of random numbers (X,U) with Xhaving density distribution proportional to hand Uuniform on [0,1] until Uh(X)≤f(X)and returns X. Results obtained by using this algorithm are shown in Figure 11.

Figure 11.

a) Green's function4πr2p(r,t|r0)forD=1,R=1,r0=1.5andα=-2att=1, 2, 4, 8, 16and32. Analytical functions: (―); Result of sampling: (■). b) Survival probability Q(t|r0) as function of time forD=1,R=1,r0=1.5andka=0.1 x 4πRD(―),4πRD(---) and10 x 4πRD( ).

The time discretization property of the Green’s functions (Equations 77) are also used to validate the simulation results and the sampling algorithm.

This algorithm is used to sample the length of the separation vector r. To fully caracterize the vector its direction should be specified by the angles θand ϕin a spherical coordinate system. An exact answer including the angles could be obtained by sampling the multi-variate Green's function given by Equation 67. An approximate method to obtain the deflection angles, which can be used here, is given by [24].

After sampling of the vectors rand R, the new positions of the particles rAand rBare obtained by inverting the transformation given by Equation (61):

rA=DA/DBRDArDA+DB,rB=DA/DBR+DBrDA+DB.E83

6.2.3. Application to radiation chemistry

Ionizing radiation interacts with water molecules and creates radiolytic species, which react with cellular components and eventually lead to biological effects [14]. The precise location of the created radiolytic species are highly dependent of the type and energy of ionizing radiation. Therefore, considerable effort has been devoted to the Monte-Carlo simulation of ionizing radiation tracks, which provides such information [25]. After their formation, the radiolytic species react with each other and with other cellular molecules. Hence, radiation chemistry is a very important link between the radiation track structure and cellular damage and biological effects [26].

The simulation of radiation chemistry is difficult for several reasons. One important problem is the calculation time. Since the number of interactions between Nparticles is N(N-1)/2, the calculation time increases as ~N2. Therefore, simulation of systems comprising over 10000 particles is difficult, even in modern computers. For example, Uehara and Nikjoo [27] reported that the simulation of time-dependent yields of chemical species produced by five 1-MeV electron tracks comprising about 1,500 particles from 10-12 to 10-6 s requires about 250 h of calculation time. One promising approach is the new hardware called general purpose graphic processing units (GPGPU), which are special cards comprising a large number of processors designed to perform a large number of calculations simulaneously. Regarding this, the sampling algorithms proposed in this book chapter do not require much memory and could be implemented on a GPGPU, which could allow the simulation of large particle systems.

We conclude this section by showing a simulation result of water radiolysis by a 12C6+ ion of 25 MeV/amu [28] in Figure 12. Briefly, the track structure and the position of all the radiolytic species (.OH, H., e-aq, H2, H2O2,..) at ~10-13 s are calculated by the code RITRACKS, described in [25] and references therein. The time evolution of the radiolytic species are calculated by using a step-by-step Monte-Carlo simulation code of radiation chemistry [28-30]. Each dot in Figure 12 represents a radiolytic species. The changes in the colors of the dots indicates that chemical reaction occurs. The number of chemical reactions (the radiolytic yields) which are calculated by the program have been validated with experimental data [30].

Figure 12.

Time evolution of the radiolytic species created by a 12C6+ ion track, 25 MeV/amu (LET~75 keV/μm) at 10-13, 10-9, 10-7 and 10-6 s.

7. Conclusion

The simulations based on the Green's function of the DE are able to accurately describe the evolution of particles in time and space in various geometries, even if the number of particles is small. In fact, this approach is now used in several fields. Of particular interest in radiobiology is the study of radiation chemistry, biochemical networks and bimolecular reactions.

The Green's functions and their respective sampling algorithms have been presented for simple systems in one, two and three dimensions. Obviously, it is difficult to develop sampling algorithm even for simple systems because of the complex mathematical form of the Green’s functions. However, it is very useful to develop sampling algorithms for systems for which analytical solutions are known, because they can be used to validate future models which will be based on numerical solutions of the DE. The DE can be solved easily by numerical methods such as finite-difference schemes, but these techniques may have restrictions for computational stability and the boundary conditions are often difficult to implement [31]. The systems with complex boundary conditions are particularly relevant to study biological networks. However, as seen in the applications, since the Green's functions of systems with complex boundary conditions are often subdensities of the Green's functions for the corresponding system with reflective boundary conditions, the rejection method can be used.

The algorithms developed in this chapter are already used to simulate the radiation chemistyoccuring in liquid water [28-30]. In the future, they will allow the validation and verification of future calculations, which will use the numerical solution of the diffusion equation. Eventually, the approach depicted in this book chapter will be used to simulate the time evolution of radiolytic species created by ionizing radiation and their reactions with molecules in biological media [23].

Acknowledgments

This work was support by the NASA Space Radiation Risk Assessment Program. The help of Dr. Luc Devroye (McGill University) with sampling algorithms is greatly acknowledged.

Notes

  • Through the book chapter, variables written in bold are vectors.
  • Through this book chapter, the diffusion coefficient is set to D=1 in Figures.
  • The following notation is used: (radial, azimutal, polar). r: [0,∞),θ: [0,π],ϕ: [0,2π).
  • At least one of the roots of a third-order polynomial is real, the two other roots being either real or complex conjugates.
  • A sub-density means that P=∫0Lf(x)dx≤1, and f(x)≥0. In this case, a random variate with the density f/p is generated with probability P.

© 2013 The Author(s). Licensee IntechOpen. This chapter is distributed under the terms of the Creative Commons Attribution 3.0 License, which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.

How to cite and reference

Link to this chapter Copy to clipboard

Cite this chapter Copy to clipboard

Ianik Plante and Francis A. Cucinotta (March 6th 2013). Monte-Carlo Simulation of Particle Diffusion in Various Geometries and Application to Chemistry and Biology, Theory and Applications of Monte Carlo Simulations, Victor (Wai Kin) Chan, IntechOpen, DOI: 10.5772/53203. Available from:

chapter statistics

2890total chapter downloads

7Crossref citations

More statistics for editors and authors

Login to your personal dashboard for more detailed statistics on your publications.

Access personal reporting

Related Content

This Book

Next chapter

Kinetic Monte Carlo Simulation in Biophysics and Systems Biology

By Subhadip Raychaudhuri

Related Book

First chapter

Global Optimization Using Local Search Approach for Course Scheduling Problem

By Ade Jamal

We are IntechOpen, the world's leading publisher of Open Access books. Built by scientists, for scientists. Our readership spans scientists, professors, researchers, librarians, and students, as well as business professionals. We share our knowledge and peer-reveiwed research papers with libraries, scientific and engineering societies, and also work with corporate R&D departments and government entities.

More About Us