Abstract
A highly efficient Monte Carlo (MC) algorithm is developed for the numerical simulation of aerosol dynamics, that is, nucleation, surface growth, and coagulation. Nucleation and surface growth are handled with deterministic means, while coagulation is simulated with a stochastic method (Marcus-Lushnikov stochastic process). Operator splitting techniques are used to synthesize the deterministic and stochastic parts in the algorithm. The algorithm is parallelized using the Message Passing Interface (MPI). The parallel computing efficiency is investigated through numerical examples. Near 60% parallel efficiency is achieved for the maximum testing case with 3.7 million MC particles running on 93 parallel computing nodes. The algorithm is verified through simulating various testing cases and comparing the simulation results with available analytical and/or other numerical solutions. Generally, it is found that only small number (hundreds or thousands) of MC particles is necessary to accurately predict the aerosol particle number density, volume fraction, and so forth, that is, low order moments of the Particle Size Distribution (PSD) function. Accurately predicting the high order moments of the PSD needs to dramatically increase the number of MC particles.
1. Introduction
Population balance equations (PBEs), describing particulate entities conservation, have applications in many branches, such as aerosol dynamics [1, 2], polymerization [3], and so forth. Here, the discussion mainly focuses on aerosol dynamics. Aerosol refers to a colloid suspension of fine solid particles or liquid droplets, which can be found in clouds, air pollution such as smog and smoke, soot in combustion flames, cement dust, and so forth. Analytical solutions to the PBEs are available for only a few specific cases [4, 5]. The most employed general method and its variants for solving the PBEs is based on dividing the particle size domain into sections as developed by Gelbard et al. [6]. Usually, these direct discretization methods work well for either coagulation or condensation dominated aerosol dynamic processes, but they encounter various problems [7] when dealing with combined nucleation, coagulation and condensation, for example, numerical error in specifying a given distribution in a section, non-positiveness and non-conservation of mass and number concentration due to numerical diffusion.
Other than solving the discretized PBEs, a widely used alternative approach has been the method of moments, which solves a group of moments equations derived from the PBEs. These moments (generally several low order moments) provide important information on the PSD function, that is, number density, volume fraction, polydispersity, and so forth. However, owing to the nonlinearity of the PBEs, the governing equations for lower order moments contain higher order moments, which are not closed after cutting off. Various closure methods have been developed, such as unimodal log-normal approximation [8], quadrature/direct quadrature [9, 10], interpolative closure [11], Taylor expansion [12–14], and so forth. Although the method of moments is computationally highly efficient, the complexity of the closure makes it difficult to accommodate complex physical models for aerosol dynamics with high flexibility.
Monte Carlo (MC) simulation does not “solve” the PBEs, but to mimic the evolution of aerosol particles through a stochastic particle system. Modeling coagulation by stochastic particle systems was introduced by several authors [15–17], which is usually called Direct Simulation Algorithm (DSA). Eibeck and Wanger [18] proposed a stochastic algorithm that models the weighted Smoluchowki's coagulation equation, which exhibits lower variance than the DSA for predicting the tail of the PSD. There are modifications to the DSA aiming for higher computational efficiency. The majorant kernel method [19, 20] adopts an acceptance-rejection technique to speed up the simulation. The increased efficiency highly relies on finding a “good” majorant kernel. The so-called τ leaping method [21, 22] is an approximate accelerated stochastic simulation, which enables multiple coagulation events at a time. The extension of the DSA to model general aerosol dynamics (nucleation, surface growth, etc. also included) goes to diverse directions, time or event driven, constant volume or number MC simulations [23–25]. Most of these algorithms share the same idea [26] to randomly choose a aerosol dynamic process (either nucleation, or coagulation, or surface growth) at a time to determine the aerosol particles evolution. Other than selecting all processes randomly, Patterson et al. [27] proposed the linear process deferment algorithm, which separates the surface reaction from other dynamic processes, and models the surface reaction independently for some steps, and then includes the other processes. Their idea to accelerate the simulation is similar to the τ leaping method in some sense.
In this paper we propose a parallel hybrid algorithm of stochastic simulation and deterministic integration for solving the PBE, which is called Operator Splitting Monte Carlo (OSMC). OSMC adopts operator splitting techniques (similar idea is also found in Patterson et al. [27]) to separate coagulation from other processes. Coagulation is simulated by the DSA, but all other processes are modeled by deterministic integration of their dynamic equations. Stochastic simulation is much more efficient than directly solving the Smoluchowski integro-differential equation with traditional discretization [23]. However, using stochastic method for nucleation and surface growth is far more expensive than their corresponding deterministic solution methods. The combination of stochastic and deterministic methods makes OSMC very efficient and flexible for aerosol dynamics simulation. OSMC is used to simulate a series of well-chosen testing cases. Detailed comparison with analytical and/or other numerical solutions is provided. The paper first introduces the OSMC algorithm, then discusses the simulation results of the testing cases.
2. Methodology
2.1. Governing Equations
The evolution of the PSD function,
where
that is, integrating the time that a fluid parcel travel to the spatial position
This work focuses on solving (3) with the OSMC algorithm. The convection of aerosol in the flow field is not considered here. There are many practically interested conditions, where the flow field can be considered as steady and one dimensional, for example, burner stabilized flames and counter flow diffusion flames. Then it is very easy to integrate (2) to build up a one-to-one mapping between the time and spacial coordinate. Hence the convection can be readily assimilated in the model equation (3). For general cases of aerosol evolution in three dimensional flows, it is possible to use the Lagrangian particle scheme to simulate the aerosol evolution along Lagrangian trajectories [28, 29]. Then (3) still applies along the Lagrangian trajectories. So the model equation (3) and the subsequent OSMC algorithm have very broad application.
The aerosol dynamic processes on the right hand side describe the interactions among molecules (or cluster of molecules) and particles. Nucleation is the process that dozens or hundreds of molecules form a stable critical nucleus (particle (Droplets and particles are treated as synonyms in this article)). It is usually modeled by the classic Becker-Döring theory [30] or its variant self-consistent correction theory [31]. Surface growth includes physical condensation and surface chemical reactions, which involves interactions between gas phase molecules and an aerosol particle. Condensation rate in the free molecule regime (i.e., when aerosol particles are smaller than the mean free path of the gas) is proportional to the surface area of particles, and it is proportional to the diameter in the continuum regime (i.e., when aerosol particles are bigger than the mean free path of the gas) [1]. An approximate interpolation formula for the entire range has been proposed by Fuchs and Sutugin [32]. Surface chemical reactions are too broad to address. A typical example in soot formation in combustion flames is the hydrogen-abstraction/carbon-addition soot growth mechanism [33]. Coagulation is the process that two particles coalesce to form a bigger particle. Here, coagulation may also refer to aggregation. The coagulation dynamics is described by the well-known Smoluchowski's equation
The collision kernel function β(
where
2.2. Operator Splitting
The governing Equation (3) contains very different physical processes. Operator splitting is an efficient and powerful method to solve such evolution equations [35]. In operator splitting method, the time interval [0,
where

Operator splitting schemes. (a) first order Lie scheme; (b) second order Strang scheme. Inverting the order of
2.3. MC Simulation of Coagulation
The stochastic algorithm of Gillespie [36] is chosen to simulate coagulation. In essence, the simulation algorithm is as follows:
Here
Gillespie [36] provided three methods to realize Step 3. The partial conditioning method therein is adopted here, which is usually the most efficient and easy to implement for parallel computing. The calculation of
2.4. Deterministic Integration of Nucleation and Surface Growth
Nucleation generates particles with a specific size, which does not depend on the existing aerosol particles. Although there are various nucleation theories for various kinds of aerosol, such as droplets [30, 31], soot particles [37], nucleation rate is generally a function of temperature and nucleated vapor concentration (or polycyclic aromatic hydrocarbon for soot). For a given nucleation model, the nucleation term in (3) can be easily integrated to give the number density of nucleated particles. Surface growth may refer to physical condensation process or surface chemical reactions. Other than on the temperature and surrounding vapor concentration, surface growth rate usually also depends on the size of aerosol particle. In the OSMC algorithm, the size of aerosol particle (modeled by MC particles) by is known. Surface growth term can also be readily integrated.
A self-adaptive fifth order Runge-Kutta method ([38], rkqs subroutine) is used to integrate the dynamic equations for nucleation and surface growth within a discrete time step δ
2.5. Full Algorithm Including All Aerosol Dynamics
Figure 2 shows the flowchart of OSMC including all aerosol dynamics. Only the first order operator splitting (6a) is sketched in the figure.

Flowchart of the OSMC. Filled blocks denote stochastic steps. Here up-sampling is limited to the doubling method, hence no stochasticity is introduced.
At time
In the particles nucleation step, the simulator size
The coagulation simulation process (those steps grouped in the dashed bounding box
The deterministic integration step
A few important points should be addressed in the implementation of the algorithm. Within a time step δ
Another critical issue is how to control the number of MC particles during the simulation, since nucleation and coagulation may cause the number up or down to unappropriate values. There are a few popular methods in literature [40, 41], all of which are actually different ways of re-sampling the PSD during the simulation. Re-sampling contains up-sampling and down-sampling, either adding or removing particles. After re-sampling, the volume of the system
Smith and Matsoukas [41] used a constant number scheme for the simulation of coagulation, which dumps a new particle to the MC particle pool after every coagulation (when the particle number is decreased by one). Another popular scheme is the “topping up” method [40], which increases the number by a factor when it reaches the lower limit. A special case of the “topping up” is the doubling method, that is, when the particle number decreases by half, then duplicates all the particles. In this doubling method, no stochastic error is introduced. Maisels et al. [26] used a doubling-halving scheme to simulate nucleation and coagulation, when the particle number decreases to half of
In our simulation, the number of MC particles is set within the range from
During re-sampling it requires to randomly select
2.6. Parallelization
Computational storage and speed limit the applicability of MC to simulations with relatively small number of particles [43]. Parallel computing can greatly alleviate the storage and speed limits. For the simulation of aerosol dynamics, only coagulation requires to evaluate the interaction between two particles. Hence, it is only necessary to develop parallel scheme for coagulation. Other aerosol dynamics are treated with the same manner as in serial simulation, except that the information about the total particle number density and the simulator volume should be gathered and broadcast to every processor.
Section 2.3 has introduced the partial conditioning method of Gillespie [36], who also introduced other two methods, full conditioning and first-coalescence. But the partial conditioning method is usually the most computationally efficient, and the most convenient for parallel computing.
The Message Passing Interface (MPI) is used in the parallel computing. Every computing processor has
Every processor has a buffer array of size
The key point in this parallel algorithm is the use of the bookkeeping table, which evenly distributes computational load and launches communications simultaneously among processors. Its efficiency is tested in the next section.
3. Results and Discussion
3.1. Parallel Computing Efficiency
Generally, coagulation is the most computationally intensive part in all aerosol dynamics. Besides, only coagulation involving two particles interaction and requires message communication between computing processors in parallel computing. Therefore a testing case of coagulation in the free molecule regime is simulated by the OSMC to investigate the parallel computing efficiency under an eight-core workstation and a computer cluster. The testing case was originally used by Frenklach and Harris [44] to validate their moments method. Initially all particles are mono-dispersed with diameter 1.5 nm, and density 1800 kg·m−3. The particle number density is 1018 m−3. The temperature is kept constant 1800 K. The simulation time is
The coagulation scheme (Section 2.3) requires
Table 1 compares the computational efficiency with different number of MC particles. First, it is found that the computation time is proportional to
Parallel simulations of coagulation in the free molecule regime under an eight-core workstation (WS) and a Beowulf class heterogeneous computer cluster (CC).
3.2. Free Molecule Regime Coagulation
The setup of free molecule regime coagulation testing case is introduced in Section 3.1, where the efficiency of parallel computation is discussed. In this section, the accuracy will be addressed.
There is no general analytical solution available for the free molecule regime coagulation. However, after introducing the self similarity transformation, the Smoluchowski's equation can be reduced to an ordinary integrodifferential equation, and the normalized PSD will be self-similar after enough long time [1]. Specifically, the total particle number density
where the constant
Figure 3 compares the number density obtained by the MC simulation, a sectional method [46], and two solutions evaluated according to (9) with the constant

Evolution of the number density for coagulation in the free molecule regime. The program code for the sectional method is from Prakash et al. [46], enough number of bins has been used to render the solution presented here.
The self-similar solution of the PSD (after reaching the self-similar form) means that if the PSD at one time is known, then the PSD at any other time is also known through the self-similar transformation. Figure 4 shows the PSDs at two different times. Both times are larger than the time required to reach the self-similar form,

Self-similar PSD (histogram) for coagulation in the free molecule regime. The results are obtained by averaging over 10000 repeated MC simulations. ϕ is the volume fraction. η is dimensionless particle volume normalized by the average volume (ϕ/
3.3. Free Molecule Regime Coagulation and Constant Rate Nucleation
This testing case has the same setting as introduced in Section 3.1 for coagulation, and it also includes nucleation with constant rate of 1.0 × 1020 m−3·s−1. Nucleated particles are assumed to have the same diameter 1.5 nm as that of the initial particles.
Figure 5 shows the simulation results with different

Results for free molecule regime coagulation and constant rate nucleation. (a) number density, (b) average diameter, (c) total particle volume, and (d) second moment.
3.4. Condensation and Coagulation
Analytical solutions for condensation and coagulation (Of course, the collision kernels are limited to the three types that the solutions to the Smoluchowski's equation are known.) are available for a few special cases [47]
α(
α(
α(
where α(
In case (iii) condensation and coagulation are independent with each other, which is a trivial case for the current MC method that intrinsically separates the two processes. Here, results for case (i) from MC simulation are reported. For simplicity, the parameters are set as α0 = 1, β0 = 1. The initial PSD is
which has total number density 1, and average volume 1.
Under these conditions, the solution for case (i) is [47]
where the zeroth and first moments,
Further, we derive the second and third moments here
Figure 6 compares the MC simulations (Strang1 scheme) of the condensation and coagulation case with the analytical solutions (12)–(14), which agree extremely well with each other. First order Lie1 and Lie2 schemes are found to give almost the same results as the Strang1 scheme (not shown). In this case, coagulation is independent of condensation, and condensation does not change the number density, hence the solution for the number density is the same as the case of pure constant rate coagulation (not shown here). Since the condensation rate is a linear function of particle volume, the evolution of volume fraction

Evolution of moments for condensation and coagulation with Strang1 scheme, δ
4. Conclusions
A new hybrid algorithm combining stochastic simulation and deterministic method for solving the PBE for aerosol dynamics is proposed. Nucleation and surface growth are handled with deterministic means, while coagulation is simulated with a stochastic method (Marcus-Lushnikov stochastic process). Operator splitting techniques are used to synthesize the deterministic and stochastic parts in the algorithm. The algorithm is parallelized using the MPI.
Parallel simulation of aerosol coagulation in the free molecule regime shows that the parallel computing efficiency decreases with increasing the number of CPUs. While for fixed number of CPUs, increasing the number of MC particles does not affect the efficiency significantly. Near 60% parallel efficiency is achieved for the maximum testing case with 3.7 million MC particles running on 93 CPUs in parallel.
For verification purpose, the algorithm has been applied to a series of testing cases, that is, free molecule regime coagulation, free molecule regime coagulation + constant rate nucleation, and constant kernel coagulation and condensation. All the simulation results agree very well with known analytical solutions or numerical solutions from a sectional method [46]. Generally, it is found that only small number (hundreds or thousands) of MC particles is necessary to accurately predict the aerosol particle number density, volume fraction, and so forth, that is, low order moments of the PSD function. Accurately predicting the high order moments of the PSD needs to dramatically increase the number MC particles.
Conflict of Interests
The authors declare that there is no conflict of interests regarding the publication of this paper.
Footnotes
Acknowledgment
Kun Zhou would like to thank F. Bisetti for insightful discussion and valuable help. Kun Zhou is partially supported by the National Natural Science Foundation of China (Grant no. 11302110). Zhu He is supported by the National Key Technology R&D Program of Chian (Grant no. 2011BAK06B02).
