Draft:Super Droplet Method algorithm
Where to get help
How to improve a draft
You can also browse Wikipedia:Featured articles and Wikipedia:Good articles to find examples of Wikipedia's best writing on topics similar to your proposed article. Improving your odds of a speedy review To improve your odds of a faster review, tag your draft with relevant WikiProject tags using the button below. This will let reviewers know a new draft has been submitted in their area of interest. For instance, if you wrote about a female astronomer, you would want to add the Biography, Astronomy, and Women scientists tags. Editor resources
|
This draft is not written from a neutral point of view. Wikipedia articles must be written neutrally in a formal, impersonal, and dispassionate way. They should not read like a blog post, advertisement, or fan page. Rewrite the draft to remove:
Declined by Ldm1954 8 months ago.
|
Comment: Making a few minor changes and resubmitting does not solve the issues. If this is done again I suggest rejection. Ldm1954 (talk) 12:02, 20 May 2026 (UTC)
Comment: Currently too much of this is a how-to/textbook, and we do not have those, see WP:NOTTEXTBOOK. Look at some other pages such as Broyden's method, QM/MM, Anderson acceleration and others. I thnk the whole #SDM Monte-Carlo Algorithm section should be heavily trimmed, perhaps removed. Ldm1954 (talk) 13:19, 26 September 2025 (UTC)
In mathematical modeling of aerosols, clouds and precipitation, Super Droplet Method (SDM) is a Monte-Carlo algorithm for representing collisions and coalescence of particles in atmospheric fluid dynamics simulations. The algorithm and its name was introduced in a 2007 arXiv e-print by Shin-ichiro Shima et al...[1] (preceded by a 2006 patent application[2] and followed by 2008 RIMS Kôkyûroku[3] and 2009 QJRMS[4] papers).

SDM scheme is a probabilistic alternative to the deterministic model of the process embodied in the Smoluchowski coagulation equations. Among the key characteristics of SDM is that it is not subject to the "curse of dimensionality" that hampers application of other methods when multiple particle attributes need to be resolved in a simulation[7]. The algorithm is embarrassingly parallel, has linear time complexity, constant state vector size (number conservation of simulated particles during collisions) and zero numerical diffusion.
Particle-based approaches, including SDM, for simulating the dynamics of sizes of particles in clouds are considered as one of three main cloud microphysics modelling approaches, along with moment-resolved and bin-resolved models[8]. Unlike bin- or moment-resolved methods which constitute Eulerian formulation, particle-resolved models are based on Lagrangian formulation in terms of dynamics in particle attribute space.
The term "super-droplet" approach/method has been used either in reference to the particular Monte-Carlo algorithm (even if not used to model clouds[9]), or more broadly in reference to the particle-based approach for modeling of atmospheric clouds (even if neglecting coalescence processes[10]). Applications of particle-based methods in atmospheric modelling[11][12], including for cloud microphysics modelling[13], and including Monte-Carlo techniques and super-particle nomenclature[14], predate SDM. Analogous Monte-Carlo particle-based methods (or particle swarm methods) have also been used for modelling accretion in astrophysical context[15]
The canonical version of SDM follows the "all or nothing"[16] algorithm presented by Shima et al.[1]. The SDM collision algorithm is a Gillespie algorithm (see also Kinetic Monte Carlo and Dynamic Monte Carlo methods) in the sense that the expected number of droplet collisions which is represented by superdroplets over a given time in a certain volume matches the expected number of real droplet collisions, although the variance can be substantially higher.
SDM Algorithm formulation
The algorithm formulation presented herein follows the notation of Shima et al.[1], but uses pseudocode rather than mathematical notation. The code snippets are valid Python (used to generate the animation above) and refer to NumPy and SciPy components.
Super-particle state
SDM models evolution of a particulate system composed of super droplets, with -th super droplet representing a multiplicity of particles. Each super particle carries a set of attributes, among which there are extensive attributes, such as mass , as well as auxiliary attributes which do not change upon aggregation, such as position in space.
Well-mixed control volume
The considered particle-laden volume is split into cells.
Cell volumes should be small enough to consider them well mixed, and hence to assume that any particle in the cell can collide with any other with a probability dependent only on particle extensive attributes.
In subsequent formulation of the algorithm, a single cell of volume is considered.
Attribute sampling
SDM allows for arbitrary initial sampling of the particle attribute distribution. Among the commonly used methods, there is inverse transform sampling which yields uniform initial multiplicities across the population. Such constant-multiplicity sampling implies evaluation of the quantile function at random locations chosen uniformly from the 0...1 range as in the listing below:
import numpy as np
from scipy import stats
def sample(*,
rng: np.random.Generator,
dist: stats.rv_continuous,
norm: float,
n_s: int,
):
state = np.empty(
shape=n_s,
dtype=[('ξ', np.int64), ('m', np.float64)]
)
state['ξ'] = round(norm / n_s)
state['m'] = dist.ppf(rng.uniform(0, 1, n_s))
return state
Several other sampling methods were discussed and applied in studies employing SDM[17][18][19]
Time stepping, candidate pairs and attribute update
Simulation using SDM involves time-stepping loop that advances the system state by in each step. SDM is a Monte Carlo algorithm and each step employs random number generation. As exemplified in the basic serial implementation of an SDM step given in the listing below, each involves:
- permuting the super particles to select a random set of
n_pairnon-overlapping pairs among alln_ssuper particles in the considered volume ; - shuffling
n_pairrandom numbers from a uniform distribution (stored into arrayφ) - computing the
p_ratioof all possible particle unordered pairs to the number of considered candidate pairsn_pair; - enumerating across all candidate pairs with
αnumbering the pair, andj,knumbering the super droplets within a pair; - evaluating the probability
p_αof collision within the super-droplet pairαas a product of the coagulation kernel, the timestep-to-cell-volume ratioΔt/Δv, thep_ratioandξ_jwherejis chosen to point to the super droplet of higher multiplicity in the pair; - evaluating the
γfactor, which forp_α<1is a Boolean flag resulting from comparison of the probability of coagulation with the random number from the 0...1 range; while in the case ofp_α≥1,γis augmented by the number of "certain" coagulations to represent repeated collision events within a single step (note that depending on the value of theξ_j/ξ_kratio, the number of repeated events may need be truncated incurring a collision-event deficit); - updating particle attributes
ξ_j,ξ_k,m_jandm_k.



from collections import abc
def sdm(*,
rng: np.random.Generator,
ξ: abc.MutableSequence[int],
m: abc.MutableSequence[float],
kern: abc.Callable[[float, float], float],
Δt: float,
Δv: float,
):
""" SDM step assuming non-zero multiplicities """
n_s = len(ξ)
n_pair = n_s // 2
pairs = rng.permutation(n_s)[: 2 * n_pair]
φ = rng.uniform(0, 1, n_pair)
p_ratio = n_s * (n_s - 1) / 2 / n_pair
for α, (j, k) in enumerate(pairs.reshape(-1, 2)):
p_jk = kern(m[j], m[k]) * Δt / Δv
if ξ[j] < ξ[k]:
j, k = k, j
p_α = ξ[j] * p_ratio * p_jk
γ = p_α // 1 + ((p_α - p_α // 1) > φ[α])
if γ != 0:
γ = min(γ, (ξ[j] / ξ[k]) // 1)
if ξ[j] - γ * ξ[k] > 0:
ξ[j] -= γ * ξ[k]
m[k] += γ * m[j]
else:
ξ[j] = ξ[k] // 2
ξ[k] -= ξ[j]
m[k] += γ * m[j]
m[j] = m[k]
Collision Scenarios
The above algorithm can yield the following collision scenarios (see animations above, symbol m denotes an arbitrary mass unit, symbol M denotes the mass attribute of the super-droplet of respective color):
- A: single-collision event (γ=1 )
- B: multiple-collision event (γ > 1 and ξ[j] ≠ γξ[k])
- C: equal-ratio collision event (γ ≥ 1 and ξ[j] = γξ[k]), note: an equal-ratio collision event may also occur within scenario A
Concurrency
The SDM coagulation algorithm does not feature data dependencies across candidate pairs, hence is particularly well suited for SIMT concurrent operation. Implementations of SDM leverage both CPU and GPU multi-threading.[20]
Algorithm development and applications
The SDM algorithm has been applied in diverse modelling studies, covering topics such as:
- mixed-phase clouds[19]
- representation of collisional breakup[21]
- aqueous chemical reactions involving soluble aerosol material[22]
- in-cloud electro-coalescence[23]
- role of clouds in nuclear fallout dynamics[24]
- geo-engineering (cloud brightening)[25] (the reference uses particle-based microphysics representation, but collisions are represented in a different way than SDM)
- simulations of processes occurring in cloud-chamber laboratories[26][27]
- interaction of cosmic rays with clouds[28]
- dynamics of fogs[29]
Open-source implementations
(links point to Git repositories)
- reusable SDM libraries and packages:
- libcloudph++ (C++/CUDA)
- PySDM (Python/Numba/CUDA)
- CLEO (C++/Kokkos), also integrated into ICON model.
- Droplets.jl (Julia)
- SDM implementations integrated in other software:
- SCALE-SDM (Fortran)
- Pencil Code (Fortran)
- PALM LES (Fortran)
- LCM1D (Python)
- superdroplet (Cython/Numba/C++11/Fortran 2008/Julia)
- NTLP (FORTRAN)
- LacmoPy (Python/Numba)
- McSnow (FORTRAN)
- Particula (Python)
References
- ^ a b c d Shima, S.; Kusano, K.; Kawano, A.; Sugiyama, T.; Kawahara, S. (2009). "The super-droplet method for the numerical simulation of clouds and precipitation: A particle-based and probabilistic microphysics model coupled with a non-hydrostatic model". Quarterly Journal of the Royal Meteorological Society. 135 (642): 1307–1320. arXiv:physics/0701103. Bibcode:2009QJRMS.135.1307S. doi:10.1002/qj.441.
- ^ JP 2007292465A, "Simulation method, simulation program, and simulation apparatus"
- ^ Shima, S. (2008). "Estimation of the computational cost of super-droplet method". RIMS Kokyuroku. 1606: 110–118.
- ^ Shima, S.; Kusano, K.; Kawano, A.; Sugiyama, T.; Kawahara, S. (2009). "The super-droplet method for the numerical simulation of clouds and precipitation: a particle-based and probabilistic microphysics model coupled with a non-hydrostatic model". Quarterly Journal of the Royal Meteorological Society. 135 (642): 1307–1320. arXiv:physics/0701103. Bibcode:2009QJRMS.135.1307S. doi:10.1002/qj.441.
- ^ V.S. Safronov (1962). "Частный случай решения уравнения коагуляции (A restricted solution of the accretion equation)". Dokl. Akad. Nauk SSSR (in Russian). 147.
- ^ A.M. Golovin (1963). "К вопросу о решении уравнения коагуляции дождевых капель с учетом конденсации (On solving the equation of rain drop coagulation with allowance for condensation)". Dokl. Akad. Nauk SSSR (in Russian). 148.
- ^ Grabowski, W.W. and Morrison, H. and Shima, S. and Abade, G.C. and Dziekan, P. and Pawlowska, H. (2019). "Modeling of Cloud Microphysics: Can We Do Better?". Bulletin of the American Meteorological Society. 100 (4): 655–672. Bibcode:2019BAMS..100..655G. doi:10.1175/BAMS-D-18-0005.1. OSTI 1612584.
{{cite journal}}: CS1 maint: multiple names: authors list (link) - ^ Morrison, H. and van Lier-Walqui, M. and Fridlind, A.M. and Grabowski, W.W. and Harrington, J.Y. and Hoose, C. and Korolev, A. and Kumjian, M.R. and Milbrandt, J.A. and Pawlowska, H. and Posselt, D.J. and Prat, O.P. and Reimel, K.J. and Shima, S. and van Diedenhoven, B. and Xue, L. (2020). "Confronting the Challenge of Modeling Cloud and Precipitation Microphysics". Journal of Advences in Modeling Earth Systems. 12 (8): e2019MS001689. Bibcode:2020JAMES..1201689M. doi:10.1029/2019MS001689. PMC 7507216. PMID 32999700.
{{cite journal}}: CS1 maint: article number as page number (link) CS1 maint: multiple names: authors list (link) - ^ Jokulsdottir, T. and Archer, D. (2016). "A stochastic, Lagrangian model of sinking biogenic aggregates in the ocean (SLAMS 1.0): model formulation, validation and sensitivity". Geoscientific Model Development. 9 (4): 1455–1476. Bibcode:2016GMD.....9.1455J. doi:10.5194/gmd-9-1455-2016.
{{cite journal}}: CS1 maint: multiple names: authors list (link) - ^ Chandrakar, K.K. and Grabowski, W.W and Morrison, H. and Bryan, G.H. (2021). "Impact of Entrainment Mixing and Turbulent Fluctuations on Droplet Size Distributions in a Cumulus Cloud: An Investigation Using Lagrangian Microphysics with a Subgrid-Scale Model". Journal of the Atmospheric Sciences. 78 (9): 2983. Bibcode:2021JAtS...78.2983C. doi:10.1175/JAS-D-20-0281.1.
{{cite journal}}: CS1 maint: multiple names: authors list (link) - ^ Lange, R. (1973), ADPIC: a three-dimensional computer code for the study of pollutant dispersal and deposition under complex conditions, doi:10.2172/4308175, OSTI 4308175
- ^ Lange, R. (1978). "ADPIC–A Three-Dimensional Particle-in-Cell Model for the Dispersal of Atmospheric Pollutants and its Comparison to Regional Tracer Studies". Journal of Applied Meteorology. 17 (3): 320. Bibcode:1978JApMe..17..320L. doi:10.1175/1520-0450(1978)017<0320:ATDPIC>2.0.CO;2.
- ^ Clark, T.L. and Hall, W.D. (1979). "A Numerical Experiment on Stochastic Condensation Theory". Journal of the Atmospheric Sciences. 36 (3): 470. Bibcode:1979JAtS...36..470C. doi:10.1175/1520-0469(1979)036<0470:ANEOSC>2.0.CO;2.
{{cite journal}}: CS1 maint: multiple names: authors list (link) - ^ Zannetti, P. (1984). "New Monte Carlo scheme for simulating Lagranian particle diffusion with wind shear effects"". Applied Mathematical Modelling. 8 (3): 188–192. doi:10.1016/0307-904X(84)90088-X.
- ^ Zsom, A. and Dullemond, C.P. (2008). "A representative particle approach to coagulation and fragmentation of dust aggregates and fluid droplets". Astronomy & Astrophysics. 489 (2): 931–941. arXiv:0807.5052. Bibcode:2008A&A...489..931Z. doi:10.1051/0004-6361:200809921.
{{cite journal}}: CS1 maint: multiple names: authors list (link) - ^ Unterstrasser, S. and Hoffmann, F. and Lerch, M. (2017). "Collection/aggregation algorithms in Lagrangian cloud microphysical models: rigorous evaluation in box model simulations". Geoscientific Model Development. 10 (4): 1521–1548. Bibcode:2017GMD....10.1521U. doi:10.5194/gmd-10-1521-2017.
{{cite journal}}: CS1 maint: multiple names: authors list (link) - ^ Unterstrasser, S. and Hoffmann, F. and Lerch, M. (2017). "Collection/aggregation algorithms in Lagrangian cloud microphysical models: rigorous evaluation in box model simulations". Geoscientifi Model Development. 10 (4): 1521–1548. Bibcode:2017GMD....10.1521U. doi:10.5194/gmd-10-1521-2017.
{{cite journal}}: CS1 maint: multiple names: authors list (link) - ^ Dziekan, P. and Pawlowska, H. (2017). "Stochastic coalescence in Lagrangian cloud microphysics". Atmospheric Chemistry and Physics. 17 (22): 13509–13520. Bibcode:2017ACP....1713509D. doi:10.5194/acp-17-13509-2017.
{{cite journal}}: CS1 maint: multiple names: authors list (link) - ^ a b Shima S. and Sato, Y. and Hashimoto, A. and Misumi R. (2020). "Predicting the morphology of ice particles in deep convection using the super-droplet method: development and evaluation of SCALE-SDM 0.2.5-2.2.0, -2.2.1, and -2.2.2". Geoscientific Model Development. 13 (9): 4107–4157. Bibcode:2020GMD....13.4107S. doi:10.5194/gmd-13-4107-2020.
{{cite journal}}: CS1 maint: multiple names: authors list (link) - ^ Arabas, S. and Jaruga, A. and Pawlowska, H. and Grabowski, W.W. (2015). "libcloudph++ 1.0: a single-moment bulk, double-moment bulk, and particle-based warm-rain microphysics library in C++". Geoscientific Model Development. 8 (6): 1677–1707. arXiv:1310.1905. Bibcode:2015GMD.....8.1677A. doi:10.5194/gmd-8-1677-2015.
{{cite journal}}: CS1 maint: multiple names: authors list (link) - ^ de Jong, E. and Mackay, J.B. and Bulenok, O. and Jaruga, A. and Arabas, S. (2023). "Breakups are complicated: an efficient representation of collisional breakup in the superdroplet method". Geoscientific Model Development. 16 (14): 4193–4211. Bibcode:2023GMD....16.4193D. doi:10.5194/gmd-16-4193-2023.
{{cite journal}}: CS1 maint: multiple names: authors list (link) - ^ Jaruga, A. and Pawlowska, H. (2018). "libcloudph++ 2.0: aqueous-phase chemistry extension of the particle-based cloud microphysics scheme". Geoscientific Model Development. 11 (9): 3623–3645. Bibcode:2018GMD....11.3623J. doi:10.5194/gmd-11-3623-2018.
{{cite journal}}: CS1 maint: multiple names: authors list (link) - ^ Zhang, R. and Zhou, L. and Shima, S. and Yang, H. (2024). "Preliminary evaluation of the effect of electro-coalescence with conducting sphere approximation on the formation of warm cumulus clouds using SCALE-SDM version 0.2.5–2.3.0". Geoscientific Model Dvelopment. 17 (17): 6761–6774. Bibcode:2024GMD....17.6761Z. doi:10.5194/gmd-17-6761-2024.
{{cite journal}}: CS1 maint: multiple names: authors list (link) - ^ McGuffin, D.L. and Lucas, D.D. and Morris, J.P. and Spriggs, G.D. and Knight, K.B. (2022). "Super-Droplet Method to Simulate Lagrangian Microphysics of Nuclear Fallout in a Homogeneous Cloud". Journal of Geophysical Research Atmospheres. 127 (18) e2022JD036599. Bibcode:2022JGRD..12736599M. doi:10.1029/2022JD036599.
{{cite journal}}: CS1 maint: multiple names: authors list (link) - ^ Andrejczuk, M. and Gadian, A. and Blyth, A. (2014). "Numerical simulations of stratocumulus cloud response to aerosol perturbation" (PDF). Atmospheric Research. 140–141: 76–84. Bibcode:2014AtmRe.140...76A. doi:10.1016/j.atmosres.2014.01.006.
{{cite journal}}: CS1 maint: multiple names: authors list (link) - ^ MacMillan, T. and Shaw, R.A. and Cantrell, W.H. and Richter, D.H. (2022). "Direct numerical simulation of turbulence and microphysics in the Pi Chamber". Physical Review Fluids. 7 (2): 020501. Bibcode:2022PhRvF...7b0501M. doi:10.1103/PhysRevFluids.7.020501.
{{cite journal}}: CS1 maint: article number as page number (link) CS1 maint: multiple names: authors list (link) - ^ Grabowski, W.W. and Kim, Y. and Yum, S.S. (2024). "CCN Activation and Droplet Growth in Pi Chamber Simulations with Lagrangian Particle–Based Microphysics". Journal of the Atmospheric Sciences. 81 (7): 1201–1212. Bibcode:2024JAtS...81.1201G. doi:10.1175/JAS-D-24-0004.1.
{{cite journal}}: CS1 maint: multiple names: authors list (link) - ^ Kusano, K. and Hasegawa, K. and Shima, S. (2012). Simulation study on bi-stability of cloud-rain system and cosmic ray influence on climate. 39th COSPAR Scientific Assembly. Bibcode:2012cosp...39.1008K.
{{cite conference}}: CS1 maint: multiple names: authors list (link) - ^ Richter, D.H. and MacMillan, T. and Wainwright, C. (2021). "A Lagrangian Cloud Model for the Study of Marine Fog". Boundary-Layer Meteorology. 181 (2–3): 523–542. Bibcode:2021BoLMe.181..523R. doi:10.1007/s10546-020-00595-w.
{{cite journal}}: CS1 maint: multiple names: authors list (link)
Content Disclaimer
Informasi ini disarikan dari Wikipedia dan disajikan kembali untuk tujuan edukasi. Konten tersedia di bawah lisensi CC BY-SA 3.0. Kami tidak bertanggung jawab atas ketidakakuratan data yang bersumber dari kontribusi publik tersebut.
- The information displayed on this website is sourced in part or in whole from Wikipedia and has been adapted for the purpose of restating it. We strive to provide accurate and relevant information, however:
- There is no guarantee of absolute accuracy. Wikipedia is an open, collaborative project that can be edited by anyone, so information is subject to change.
- It is not intended to constitute professional advice. The content displayed is for informational and educational purposes only. For important decisions (e.g., medical, legal, or financial), please consult a professional.
- Content copyright. Wikipedia is licensed under the Creative Commons Attribution-ShareAlike License (CC BY-SA). This means that content may be reused with appropriate attribution and shared under a similar license.
- Responsible use. Any risk arising from the use of information from this website is entirely the responsibility of the user.

- promotional language: see Words to watch;
- personal commentary: opinions or direct addresses to the reader;
- informal language.
Instead, only summarize in your own words a range of independent, reliable, published sources that discuss the subject.