dmcut2 Documentation

Author:
Mathias Laurin <mathias_laurin@users.sourceforge.net>
Date:
2008-11-13

Abstract

dmcut2 is a scientific program designed to simulate chemical reactions at surfaces using Monte-Carlo (MC) methods [see, e.g., Jansen's Introduction to Monte Carlo Simulations of Surface Reactions ]. The program also features a Metropolis walk algorithm. Short ranged interactions between adsorbates may be taken into account.

During development, emphasis was put on coding style and code readability. Efficiency (speed) was considered during the implementation of the algorithms.

Motivations

MC simulations have a broad range of applications in many aspects of physical chemistry at surfaces, mostly chemical reactions and magnetism. MC simulations are a way to efficiently integrate the master equation. MC simulations are also the only way to simulate transient states of complex reactions.

This program differs from the existing programs by the attention that has been ported to coding style and adherence to coding standards. Indeed, surface MC programs are typically developed by students with little or no interest in programming. Such code is also generally kept in house and cannot be peer reviewed. Adding to that, such code is unfortunately not general enough to be used for slightly different scenario.

dmcut2 aims at providing code that is both designed with surface MC in mind as well as adherence to coding standards. This codebase is meant to be used by students without an extensive knowledge of programming techniques so that they have a solid base to adapt to the model they are working on. Open sourcing the code is also a way to allow peer reviewing so that results from this programs can be trusted by the scientific community.

Acknowledgement

ML gratefully acknowledges the Japanese Society for the Promotion of Science (JSPS) for a twenty four months postdoctoral fellowship at the University of Tokyo and at the Keio University under the supervision of prof. Kondoh.

Dependences

RandomLib, a C++ interface to the Mersenne Twister random number generator MT19937 and to the SIMD-oriented Fast Mersenne Twister random number generator, SFMT19937 is used as the random number generator for this program.

Libraries from the C++ Technical Report 1 TR1 are also used when appropriate. Implementations are available in GCC 4 and above, from boost or STLPort.


SourceForge.net Logo Project's page
Generated on Mon Nov 17 00:23:05 2008 for dmcut2 by doxygen 1.5.7