API Documentation Update
Pre-releaseThis object-oriented C++ software package contains a general framework for lattice kinetic Monte Carlo (KMC) simulations. This framework consists of a number of base classes and utility functions that must be extended to create a full operational KMC simulation. The goal of this package is to be robust and flexible so that users can easily develop KMC simulations for a wide variety of different scientific problems without the need to start from scratch. See the readme file for more information.
This update contains minor improvements throughout the codebase, a major refactoring of the Simulation class to separate out a new separate Lattice class, and complete API documentation using doxygen.
Major changes since KMC_Lattice v1.0:
- Replaced boost random number generator usage with the standard random number generator introduced in C++11, so that the boost library is no longer required.
- The Event class now calculates and stores the execution time of the event instead of the wait time.
- Added functions to the Event and Site classes that enable the calculation of reaction events between two objects.
- Added new functions to the Simulation class and the Utils file that make it easier to build new simulation applications.
- The Event class now has a default function for calculating the execution time that can be overloaded in derived Event classes for implementing more complex mechanisms
- API documentation created with Doxygen
This release was developed under the financial assistance award 70NANB14H012 from U.S. Department of Commerce, National Institute of Standards and Technology as part of the Center for Hierarchical Materials Design (CHiMaD).