Skip to content
Snippets Groups Projects
Commit 7005be71 authored by Martin Deimel's avatar Martin Deimel
Browse files

MAINT Update and rearrange 'lateral_interaction.rst'

parent bc74b83c
No related branches found
No related tags found
1 merge request!288Rework and update documentation
Conquering Combinatorics with *itertools*
-----------------------------------------
Even restricting oneself to nearest neighbor lateral interactions or a number of different
configurations to be considered for lateral interactions can quickly lead to a couple of tens or
hundreds. A phenomenon which is among practitioners humbly referred to as *combinatorial
explosion*. Unfortunately, manually typing all these combinations is usually tiring and very error
prone. Fortunately, the ``itertools`` module from the python standard library allows to very
quickly generate all needed configurations. Before delving into the practical steps of this I
would like to point out that lateral interactions typically slow down the simulation by about
one order of magnitude, which is a purely empirical fact.
...@@ -4,10 +4,11 @@ ...@@ -4,10 +4,11 @@
Topic Guides Topic Guides
============ ============
The conceptual parts of this topic guide predate the `kmos3 paper <http://dx.doi.org/10.1016/j.cpc.2014.04.003>`_ The conceptual parts of this topic guide predate the
(`arXiv <http://arxiv.org/abs/1401.5278>`_). Please refer to the paper for a thorough background on kMC `kmos3 paper <https://doi.org/10.1016/j.cpc.2014.04.003>`_
and lattice kMC on crystal surfaces. The more technical parts stated below might still be useful for using (`arXiv <https://arxiv.org/abs/1401.5278>`_). Please refer to the paper for a thorough background
kmos3. on KMC and lattice KMC on crystal surfaces. The more technical parts stated below might still be
useful for using kmos3.
.. toctree:: .. toctree::
:maxdepth: 2 :maxdepth: 2
...@@ -16,9 +17,8 @@ kmos3. ...@@ -16,9 +17,8 @@ kmos3.
workflows workflows
data_models data_models
kmos3_speed kmos3_speed
temporal_acceleration
lateral_interaction lateral_interaction
otf_backend temporal_acceleration
proc_syntax proc_syntax
coord_syntax coord_syntax
developers_guide developers_guide
...@@ -27,6 +27,6 @@ kmos3. ...@@ -27,6 +27,6 @@ kmos3.
.. The Editor Frontend .. The Editor Frontend
.. The Editor API .. The Editor API
.. The Runtime Frontend .. The Runtime Frontend
.. On the kMC solver .. On the KMC solver
.. Nuts'n'Bolts of kMC .. Nuts'n'Bolts of KMC
.. On the Random Number Generator .. On the Random Number Generator
Modeling lateral interaction Modeling Lateral Interactions
============================ =============================
Introduction
^^^^^^^^^^^^
.. todo::
This page needs more work.
Lateral Interaction Models Lateral Interaction Models
^^^^^^^^^^^^^^^^^^^^^^^^^^ --------------------------
- pairwise interaction - pairwise interaction
- bond-order potentials - bond-order potentials
Conquering combinatorics with itertools .. include:: combinatorics.rst
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ .. include:: otf_backend.rst
Even restricting oneself to nearest neighbor
lateral interaction to number of different
configurations to be considered for lateral
interactions can quickly reach a couple
of tens or hundred. A phenomenon which is
among practitioners humbly referred to as
*combinatorial explosions*. Unfortunately
manually typing all these combinations if
usually tiring and thus error prone.
Fortunately the `itertools` module from the
python standard library allows to very quickly
generate all needed configurations. Before
delving into the practical steps of this I
would like to point out that lateral interaction
typically slows down the simulation by about
one order of magnitude, which is a purely
empirical fact.
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment