Skip to content

Commit

Permalink
Merge pull request #12 from MikeHeiber/development
Browse files Browse the repository at this point in the history
v2.0-beta.3 Development
  • Loading branch information
MikeHeiber authored Feb 16, 2018
2 parents 47ba1b8 + 472de14 commit 488dd05
Show file tree
Hide file tree
Showing 50 changed files with 257 additions and 204 deletions.
75 changes: 47 additions & 28 deletions Doxyfile
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# Doxyfile 1.8.13
# Doxyfile 1.8.14

# This file describes the settings to be used by the documentation system
# doxygen (www.doxygen.org) for a project.
Expand All @@ -20,8 +20,8 @@
# This tag specifies the encoding used for all characters in the config file
# that follow. The default is UTF-8 which is also the encoding used for all text
# before the first occurrence of this tag. Doxygen uses libiconv (or the iconv
# built into libc) for the transcoding. See http://www.gnu.org/software/libiconv
# for the list of possible encodings.
# built into libc) for the transcoding. See
# https://www.gnu.org/software/libiconv/ for the list of possible encodings.
# The default value is: UTF-8.

DOXYFILE_ENCODING = UTF-8
Expand All @@ -38,7 +38,7 @@ PROJECT_NAME = KMC_Lattice
# could be handy for archiving the generated documentation or if some version
# control system is used.

PROJECT_NUMBER = v2.0-beta.2
PROJECT_NUMBER = v2.0-beta.3

# Using the PROJECT_BRIEF tag one can provide an optional one line description
# for a project that appears at the top of each page and should give viewer a
Expand Down Expand Up @@ -337,7 +337,7 @@ BUILTIN_STL_SUPPORT = NO
CPP_CLI_SUPPORT = NO

# Set the SIP_SUPPORT tag to YES if your project consists of sip (see:
# http://www.riverbankcomputing.co.uk/software/sip/intro) sources only. Doxygen
# https://www.riverbankcomputing.com/software/sip/intro) sources only. Doxygen
# will parse them like normal C++ but will assume all classes use public instead
# of private inheritance when no explicit protection keyword is present.
# The default value is: NO.
Expand Down Expand Up @@ -708,7 +708,7 @@ LAYOUT_FILE =
# The CITE_BIB_FILES tag can be used to specify one or more bib files containing
# the reference definitions. This must be a list of .bib files. The .bib
# extension is automatically appended if omitted. This requires the bibtex tool
# to be installed. See also http://en.wikipedia.org/wiki/BibTeX for more info.
# to be installed. See also https://en.wikipedia.org/wiki/BibTeX for more info.
# For LaTeX the style of the bibliography can be controlled using
# LATEX_BIB_STYLE. To use this feature you need bibtex and perl available in the
# search path. See also \cite for info how to create references.
Expand Down Expand Up @@ -795,7 +795,7 @@ INPUT = Z:\Software_Projects\Local\KMC_Lattice\
# This tag can be used to specify the character encoding of the source files
# that doxygen parses. Internally doxygen uses the UTF-8 encoding. Doxygen uses
# libiconv (or the iconv built into libc) for the transcoding. See the libiconv
# documentation (see: http://www.gnu.org/software/libiconv) for the list of
# documentation (see: https://www.gnu.org/software/libiconv/) for the list of
# possible encodings.
# The default value is: UTF-8.

Expand Down Expand Up @@ -1043,7 +1043,7 @@ SOURCE_TOOLTIPS = YES
# If the USE_HTAGS tag is set to YES then the references to source code will
# point to the HTML generated by the htags(1) tool instead of doxygen built-in
# source browser. The htags tool is part of GNU's global source tagging system
# (see http://www.gnu.org/software/global/global.html). You will need version
# (see https://www.gnu.org/software/global/global.html). You will need version
# 4.8.6 or higher.
#
# To use it do the following:
Expand Down Expand Up @@ -1089,6 +1089,17 @@ CLANG_ASSISTED_PARSING = NO

CLANG_OPTIONS =

# If clang assisted parsing is enabled you can provide the clang parser with the
# path to the compilation database (see:
# http://clang.llvm.org/docs/HowToSetupToolingForLLVM.html) used when the files
# were built. This is equivalent to specifying the "-p" option to a clang tool,
# such as clang-check. These options will then be pased to the parser.
# Note: The availability of this option depends on whether or not doxygen was
# generated with the -Duse-libclang=ON option for CMake.
# The default value is: 0.

CLANG_COMPILATION_DATABASE_PATH= 0

#---------------------------------------------------------------------------
# Configuration options related to the alphabetical class index
#---------------------------------------------------------------------------
Expand Down Expand Up @@ -1207,7 +1218,7 @@ HTML_EXTRA_FILES =
# The HTML_COLORSTYLE_HUE tag controls the color of the HTML output. Doxygen
# will adjust the colors in the style sheet and background images according to
# this color. Hue is specified as an angle on a colorwheel, see
# http://en.wikipedia.org/wiki/Hue for more information. For instance the value
# https://en.wikipedia.org/wiki/Hue for more information. For instance the value
# 0 represents red, 60 is yellow, 120 is green, 180 is cyan, 240 is blue, 300
# purple, and 360 is red again.
# Minimum value: 0, maximum value: 359, default value: 220.
Expand Down Expand Up @@ -1243,6 +1254,17 @@ HTML_COLORSTYLE_GAMMA = 80

HTML_TIMESTAMP = NO

# If the HTML_DYNAMIC_MENUS tag is set to YES then the generated HTML
# documentation will contain a main index with vertical navigation menus that
# are dynamically created via Javascript. If disabled, the navigation index will
# consists of multiple levels of tabs that are statically embedded in every HTML
# page. Disable this option to support browsers that do not have Javascript,
# like the Qt help browser.
# The default value is: YES.
# This tag requires that the tag GENERATE_HTML is set to YES.

HTML_DYNAMIC_MENUS = YES

# If the HTML_DYNAMIC_SECTIONS tag is set to YES then the generated HTML
# documentation will contain sections that can be hidden and shown after the
# page has loaded.
Expand All @@ -1266,12 +1288,12 @@ HTML_INDEX_NUM_ENTRIES = 100

# If the GENERATE_DOCSET tag is set to YES, additional index files will be
# generated that can be used as input for Apple's Xcode 3 integrated development
# environment (see: http://developer.apple.com/tools/xcode/), introduced with
# environment (see: https://developer.apple.com/tools/xcode/), introduced with
# OSX 10.5 (Leopard). To create a documentation set, doxygen will generate a
# Makefile in the HTML output directory. Running make will produce the docset in
# that directory and running make install will install the docset in
# ~/Library/Developer/Shared/Documentation/DocSets so that Xcode will find it at
# startup. See http://developer.apple.com/tools/creatingdocsetswithdoxygen.html
# startup. See https://developer.apple.com/tools/creatingdocsetswithdoxygen.html
# for more information.
# The default value is: NO.
# This tag requires that the tag GENERATE_HTML is set to YES.
Expand Down Expand Up @@ -1387,40 +1409,37 @@ QCH_FILE =

# The QHP_NAMESPACE tag specifies the namespace to use when generating Qt Help
# Project output. For more information please see Qt Help Project / Namespace
# (see: http://qt-project.org/doc/qt-4.8/qthelpproject.html#namespace).
# (see: http://doc.qt.io/qt-4.8/qthelpproject.html#namespace).
# The default value is: org.doxygen.Project.
# This tag requires that the tag GENERATE_QHP is set to YES.

QHP_NAMESPACE = org.doxygen.Project

# The QHP_VIRTUAL_FOLDER tag specifies the namespace to use when generating Qt
# Help Project output. For more information please see Qt Help Project / Virtual
# Folders (see: http://qt-project.org/doc/qt-4.8/qthelpproject.html#virtual-
# folders).
# Folders (see: http://doc.qt.io/qt-4.8/qthelpproject.html#virtual-folders).
# The default value is: doc.
# This tag requires that the tag GENERATE_QHP is set to YES.

QHP_VIRTUAL_FOLDER = doc

# If the QHP_CUST_FILTER_NAME tag is set, it specifies the name of a custom
# filter to add. For more information please see Qt Help Project / Custom
# Filters (see: http://qt-project.org/doc/qt-4.8/qthelpproject.html#custom-
# filters).
# Filters (see: http://doc.qt.io/qt-4.8/qthelpproject.html#custom-filters).
# This tag requires that the tag GENERATE_QHP is set to YES.

QHP_CUST_FILTER_NAME =

# The QHP_CUST_FILTER_ATTRS tag specifies the list of the attributes of the
# custom filter to add. For more information please see Qt Help Project / Custom
# Filters (see: http://qt-project.org/doc/qt-4.8/qthelpproject.html#custom-
# filters).
# Filters (see: http://doc.qt.io/qt-4.8/qthelpproject.html#custom-filters).
# This tag requires that the tag GENERATE_QHP is set to YES.

QHP_CUST_FILTER_ATTRS =

# The QHP_SECT_FILTER_ATTRS tag specifies the list of the attributes this
# project's filter section matches. Qt Help Project / Filter Attributes (see:
# http://qt-project.org/doc/qt-4.8/qthelpproject.html#filter-attributes).
# http://doc.qt.io/qt-4.8/qthelpproject.html#filter-attributes).
# This tag requires that the tag GENERATE_QHP is set to YES.

QHP_SECT_FILTER_ATTRS =
Expand Down Expand Up @@ -1513,7 +1532,7 @@ EXT_LINKS_IN_WINDOW = NO

FORMULA_FONTSIZE = 10

# Use the FORMULA_TRANPARENT tag to determine whether or not the images
# Use the FORMULA_TRANSPARENT tag to determine whether or not the images
# generated for formulas are transparent PNGs. Transparent PNGs are not
# supported properly for IE 6.0, but are supported on all modern browsers.
#
Expand All @@ -1525,7 +1544,7 @@ FORMULA_FONTSIZE = 10
FORMULA_TRANSPARENT = YES

# Enable the USE_MATHJAX option to render LaTeX formulas using MathJax (see
# http://www.mathjax.org) which uses client side Javascript for the rendering
# https://www.mathjax.org) which uses client side Javascript for the rendering
# instead of using pre-rendered bitmaps. Use this if you do not have LaTeX
# installed or if you want to formulas look prettier in the HTML output. When
# enabled you may also need to install MathJax separately and configure the path
Expand All @@ -1552,7 +1571,7 @@ MATHJAX_FORMAT = HTML-CSS
# MATHJAX_RELPATH should be ../mathjax. The default value points to the MathJax
# Content Delivery Network so you can quickly see the result without installing
# MathJax. However, it is strongly recommended to install a local copy of
# MathJax from http://www.mathjax.org before deployment.
# MathJax from https://www.mathjax.org before deployment.
# The default value is: http://cdn.mathjax.org/mathjax/latest.
# This tag requires that the tag USE_MATHJAX is set to YES.

Expand Down Expand Up @@ -1614,7 +1633,7 @@ SERVER_BASED_SEARCH = NO
#
# Doxygen ships with an example indexer (doxyindexer) and search engine
# (doxysearch.cgi) which are based on the open source search engine library
# Xapian (see: http://xapian.org/).
# Xapian (see: https://xapian.org/).
#
# See the section "External Indexing and Searching" for details.
# The default value is: NO.
Expand All @@ -1627,7 +1646,7 @@ EXTERNAL_SEARCH = NO
#
# Doxygen ships with an example indexer (doxyindexer) and search engine
# (doxysearch.cgi) which are based on the open source search engine library
# Xapian (see: http://xapian.org/). See the section "External Indexing and
# Xapian (see: https://xapian.org/). See the section "External Indexing and
# Searching" for details.
# This tag requires that the tag SEARCHENGINE is set to YES.

Expand Down Expand Up @@ -1814,7 +1833,7 @@ LATEX_SOURCE_CODE = NO

# The LATEX_BIB_STYLE tag can be used to specify the style to use for the
# bibliography, e.g. plainnat, or ieeetr. See
# http://en.wikipedia.org/wiki/BibTeX and \cite for more info.
# https://en.wikipedia.org/wiki/BibTeX and \cite for more info.
# The default value is: plain.
# This tag requires that the tag GENERATE_LATEX is set to YES.

Expand Down Expand Up @@ -1997,9 +2016,9 @@ DOCBOOK_PROGRAMLISTING = NO
#---------------------------------------------------------------------------

# If the GENERATE_AUTOGEN_DEF tag is set to YES, doxygen will generate an
# AutoGen Definitions (see http://autogen.sf.net) file that captures the
# structure of the code including all documentation. Note that this feature is
# still experimental and incomplete at the moment.
# AutoGen Definitions (see http://autogen.sourceforge.net/) file that captures
# the structure of the code including all documentation. Note that this feature
# is still experimental and incomplete at the moment.
# The default value is: NO.

GENERATE_AUTOGEN_DEF = NO
Expand Down
5 changes: 5 additions & 0 deletions Lattice.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@
#include "Lattice.h"

using namespace std;
using namespace Utils;

Lattice::Lattice() {

Expand Down Expand Up @@ -222,6 +223,10 @@ int Lattice::getWidth() const{
return Width;
}

double Lattice::getVolume() const {
return ((Length*Width*Height*1e-7*Unit_size)*1e-7*Unit_size)*1e-7*Unit_size;
}

bool Lattice::isOccupied(const Coords& coords) const{
return site_ptrs[getSiteIndex(coords)]->isOccupied();
}
Expand Down
3 changes: 3 additions & 0 deletions Lattice.h
Original file line number Diff line number Diff line change
Expand Up @@ -181,6 +181,9 @@ class Lattice{
//! \return The unit size property of the lattice.
double getUnitSize() const;

//! \brief Gets the volume of the lattice in cm^-3.
double getVolume() const;

//! \brief Gets the y-direction size of the lattice, the width.
//! \return The Width property of the lattice, which is the y-direction size.
int getWidth() const;
Expand Down
8 changes: 6 additions & 2 deletions Simulation.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -45,7 +45,7 @@ void Simulation::init(const Parameters_Simulation& params, const int id) {
}


list<Event*>::iterator Simulation::addEvent(Event* event_ptr) {
list<Event*>::const_iterator Simulation::addEvent(Event* event_ptr) {
event_ptrs.push_back(event_ptr);
return --event_ptrs.end();
}
Expand All @@ -64,7 +64,7 @@ void Simulation::addObject(Object* object_ptr) {
N_events_executed++;
}

list<Event*>::iterator Simulation::chooseNextEvent() {
list<Event*>::const_iterator Simulation::chooseNextEvent() {
auto event_target_it = event_ptrs.begin();
if (event_ptrs.size() > 1) {
for (auto it = ++event_ptrs.begin(); it != event_ptrs.end(); ++it) {
Expand Down Expand Up @@ -162,6 +162,10 @@ double Simulation::getTime() const {
return time_sim;
}

double Simulation::getVolume() const {
return lattice.getVolume();
}

bool Simulation::isLoggingEnabled() const {
return Enable_logging;
}
Expand Down
7 changes: 5 additions & 2 deletions Simulation.h
Original file line number Diff line number Diff line change
Expand Up @@ -110,6 +110,9 @@ class Simulation{
//! Get the current simulation time in units of seconds.
double getTime() const;

//! Get the simulation box volume in cm^-3
double getVolume() const;

//! \brief Checks whether or not logging is enabled.
//! \details This is primarily used for debugging purposes.
//! \return true if logging is enabled.
Expand Down Expand Up @@ -140,7 +143,7 @@ class Simulation{
//! \brief Adds a pointer to an Event object to the event list and returns the iterator to its position in the list.
//! \param event_ptr is the input Event pointer.
//! \return A list iterator that indicates where in the event list the newly added Event pointer is located.
std::list<Event*>::iterator addEvent(Event* event_ptr);
std::list<Event*>::const_iterator addEvent(Event* event_ptr);

//! \brief Adds a pointer to an Object object to the object list.
//! \param object_ptr is the input Object pointer.
Expand All @@ -149,7 +152,7 @@ class Simulation{
//! \brief Searches the event list and determines which event will be executed next.
//! \details Chooses the event that has the smallest execution time.
//! \return A list iterator points to an Event pointer in event list that has been selected to be executed next.
std::list<Event*>::iterator chooseNextEvent();
std::list<Event*>::const_iterator chooseNextEvent();

//! \brief Constructs and returns a vector of pointers to all Object objects that are to have their events recalculated/
//! \param coords_start is the Coords struct that designates the starting coordinates of an event.
Expand Down
9 changes: 1 addition & 8 deletions Utils.h
Original file line number Diff line number Diff line change
Expand Up @@ -205,15 +205,8 @@ namespace Utils {
result = 1;
return result;
}
int exponent_abs;
if (exponent < 0) {
exponent_abs = -exponent;
}
else {
exponent_abs = exponent;
}
result = base;
for (int i = 1; i < exponent_abs; i++) {
for (int i = 1; i < abs(exponent); i++) {
result *= base;
}
if (exponent < 0) {
Expand Down
2 changes: 1 addition & 1 deletion docs/_event_8h_source.html
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@
<tr style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">KMC_Lattice
&#160;<span id="projectnumber">v2.0-beta.2</span>
&#160;<span id="projectnumber">v2.0-beta.3</span>
</div>
<div id="projectbrief">A general framework for three-dimensional lattice kinetic Monte Carlo simulations</div>
</td>
Expand Down
59 changes: 30 additions & 29 deletions docs/_lattice_8h_source.html

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion docs/_object_8h_source.html
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@
<tr style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">KMC_Lattice
&#160;<span id="projectnumber">v2.0-beta.2</span>
&#160;<span id="projectnumber">v2.0-beta.3</span>
</div>
<div id="projectbrief">A general framework for three-dimensional lattice kinetic Monte Carlo simulations</div>
</td>
Expand Down
37 changes: 19 additions & 18 deletions docs/_simulation_8h_source.html

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion docs/_site_8h_source.html
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@
<tr style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">KMC_Lattice
&#160;<span id="projectnumber">v2.0-beta.2</span>
&#160;<span id="projectnumber">v2.0-beta.3</span>
</div>
<div id="projectbrief">A general framework for three-dimensional lattice kinetic Monte Carlo simulations</div>
</td>
Expand Down
10 changes: 5 additions & 5 deletions docs/_utils_8h_source.html

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion docs/annotated.html
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@
<tr style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">KMC_Lattice
&#160;<span id="projectnumber">v2.0-beta.2</span>
&#160;<span id="projectnumber">v2.0-beta.3</span>
</div>
<div id="projectbrief">A general framework for three-dimensional lattice kinetic Monte Carlo simulations</div>
</td>
Expand Down
2 changes: 1 addition & 1 deletion docs/class_event-members.html
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@
<tr style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">KMC_Lattice
&#160;<span id="projectnumber">v2.0-beta.2</span>
&#160;<span id="projectnumber">v2.0-beta.3</span>
</div>
<div id="projectbrief">A general framework for three-dimensional lattice kinetic Monte Carlo simulations</div>
</td>
Expand Down
2 changes: 1 addition & 1 deletion docs/class_event.html
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@
<tr style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">KMC_Lattice
&#160;<span id="projectnumber">v2.0-beta.2</span>
&#160;<span id="projectnumber">v2.0-beta.3</span>
</div>
<div id="projectbrief">A general framework for three-dimensional lattice kinetic Monte Carlo simulations</div>
</td>
Expand Down
Loading

0 comments on commit 488dd05

Please sign in to comment.