diff --git a/Makefile b/Makefile index 3323593c68..c37fda75c2 100644 --- a/Makefile +++ b/Makefile @@ -6,13 +6,10 @@ DASPK=$(shell python -c 'import pydas.daspk; print pydas.daspk.__file__') DASSL=$(shell python -c 'import pydas.dassl; print pydas.dassl.__file__') -RDKIT_VERSION=$(shell python -c 'import rdkit; print rdkit.__version__') -.PHONY : all minimal main solver cantherm clean decython documentation QM mopac_travis +.PHONY : all minimal main solver check cantherm clean decython documentation mopac_travis -all: main solver QM - -noQM: main solver +all: main solver check minimal: python setup.py build_ext minimal --build-lib . --build-temp build --pyrex-c-in-temp @@ -39,35 +36,32 @@ endif cantherm: python setup.py build_ext cantherm --build-lib . --build-temp build --pyrex-c-in-temp -QM: - @ echo "Checking if you have symmetry..." - @ echo "symmetry -h" - @ echo "Checking you have rdkit..." - @ python -c 'import rdkit; print rdkit.__file__' - @ echo "Checking rdkit version..." -ifneq ($(RDKIT_VERSION),) - @ echo "Found rdkit version $(RDKIT_VERSION)" -else - $(error RDKit version out of date, please install RDKit version 2015.03.1 or later with InChI support); -endif - @ echo "Checking rdkit has InChI support..." - @ python -c 'from rdkit import Chem; assert Chem.inchi.INCHI_AVAILABLE, "RDKit installed without InChI Support. Please install with InChI."' +check: + @ python utilities.py check-dependencies documentation: $(MAKE) -C documentation html @ echo "Start at: documentation/build/html/index.html" clean: - python setup.py clean --build-temp build - rm -rf build/ - find . -name '*.so' -exec rm -f '{}' \; - find . -name '*.pyc' -exec rm -f '{}' \; - + @ echo "Removing build directory..." + @ python setup.py clean --build-temp build + @ echo "Removing compiled files..." + @ python utilities.py clean + @ echo "Cleanup completed." + clean-solver: - rm -r build/pyrex/rmgpy/solver/ - rm -r build/build/pyrex/rmgpy/solver/ - find rmgpy/solver/ -name '*.so' -exec rm -f '{}' \; - find rmgpy/solver/ -name '*.pyc' -exec rm -f '{}' \; + @ echo "Removing solver build directories..." +ifeq ($(OS),Windows_NT) + @ -rd /s /q build\pyrex\rmgpy\solver + @ -rd /s /q build\build\pyrex\rmgpy\solver +else + @ -rm -r build/pyrex/rmgpy/solver/ + @ -rm -r build/build/pyrex/rmgpy/solver/ +endif + @ echo "Removing compiled files..." + @ python utilities.py clean-solver + @ echo "Cleanup completed." decython: # de-cythonize all but the 'minimal'. Helpful for debugging in "pure python" mode. @@ -75,50 +69,42 @@ decython: find . -name *.pyc -exec rm -f '{}' \; test-all: -ifeq ($(OS),Windows_NT) - nosetests --nocapture --nologcapture --all-modules --verbose --with-coverage --cover-inclusive --cover-package=rmgpy --cover-erase --cover-html --cover-html-dir=testing/coverage --exe rmgpy -else +ifneq ($(OS),Windows_NT) mkdir -p testing/coverage rm -rf testing/coverage/* - nosetests --nocapture --nologcapture --all-modules --verbose --with-coverage --cover-inclusive --cover-package=rmgpy --cover-erase --cover-html --cover-html-dir=testing/coverage --exe rmgpy endif + nosetests --nocapture --nologcapture --all-modules --verbose --with-coverage --cover-inclusive --cover-package=rmgpy --cover-erase --cover-html --cover-html-dir=testing/coverage --exe rmgpy test-unittests: -ifeq ($(OS),Windows_NT) - nosetests --nocapture --nologcapture --all-modules -A 'not functional' --verbose --with-coverage --cover-inclusive --cover-package=rmgpy --cover-erase --cover-html --cover-html-dir=testing/coverage --exe rmgpy -else +ifneq ($(OS),Windows_NT) mkdir -p testing/coverage rm -rf testing/coverage/* - nosetests --nocapture --nologcapture --all-modules -A 'not functional' --verbose --with-coverage --cover-inclusive --cover-package=rmgpy --cover-erase --cover-html --cover-html-dir=testing/coverage --exe rmgpy endif + nosetests --nocapture --nologcapture --all-modules -A 'not functional' --verbose --with-coverage --cover-inclusive --cover-package=rmgpy --cover-erase --cover-html --cover-html-dir=testing/coverage --exe rmgpy test test-unittests-non-auth: -ifeq ($(OS),Windows_NT) - nosetests --nocapture --nologcapture --all-modules -A 'not functional and not auth' --verbose --with-coverage --cover-inclusive --cover-package=rmgpy --cover-erase --cover-html --cover-html-dir=testing/coverage --exe rmgpy -else +ifneq ($(OS),Windows_NT) mkdir -p testing/coverage rm -rf testing/coverage/* - nosetests --nocapture --nologcapture --all-modules -A 'not functional and not auth' --verbose --with-coverage --cover-inclusive --cover-package=rmgpy --cover-erase --cover-html --cover-html-dir=testing/coverage --exe rmgpy endif + nosetests --nocapture --nologcapture --all-modules -A 'not functional and not auth' --verbose --with-coverage --cover-inclusive --cover-package=rmgpy --cover-erase --cover-html --cover-html-dir=testing/coverage --exe rmgpy test-functional: -ifeq ($(OS),Windows_NT) - nosetests --nocapture --nologcapture --all-modules -A 'functional' --verbose --exe rmgpy -else +ifneq ($(OS),Windows_NT) mkdir -p testing/coverage rm -rf testing/coverage/* - nosetests --nocapture --nologcapture --all-modules -A 'functional' --verbose --exe rmgpy endif + nosetests --nocapture --nologcapture --all-modules -A 'functional' --verbose --exe rmgpy test-database: nosetests -v -d testing/databaseTest.py -eg0: noQM +eg0: all mkdir -p testing/eg0 rm -rf testing/eg0/* cp examples/rmg/superminimal/input.py testing/eg0/input.py @ echo "Running eg0: superminimal (H2 oxidation) example" python rmg.py testing/eg0/input.py -eg1: noQM +eg1: all mkdir -p testing/eg1 rm -rf testing/eg1/* cp examples/rmg/minimal/input.py testing/eg1/input.py @@ -168,7 +154,7 @@ eg7: all @ echo "Running eg7: gri_mech_rxn_lib example" python rmg.py testing/eg7/input.py -scoop: noQM +scoop: all mkdir -p testing/scoop rm -rf testing/scoop/* cp examples/rmg/minimal/input.py testing/scoop/input.py diff --git a/documentation/source/_static/RMG-logo.pdf b/documentation/source/_static/RMG-logo.pdf deleted file mode 100644 index 04e67a07df..0000000000 Binary files a/documentation/source/_static/RMG-logo.pdf and /dev/null differ diff --git a/documentation/source/_static/custom.css b/documentation/source/_static/custom.css new file mode 100644 index 0000000000..50044b6385 --- /dev/null +++ b/documentation/source/_static/custom.css @@ -0,0 +1,81 @@ +@import url("classic.css"); + +/* ----- sidebar styles ----- */ + +div.sidebarlogo { + text-align: center; + padding: 20px; +} + +div.sphinxsidebarwrapper { + padding: 0; +} + +#sidebar .icon { + float: left; + width: 40px; + padding: 5px; +} + +#sidebar div.menuitem { + padding: 5px; +} + +#sidebar div.menutext { + text-align: left; + margin-left: 50px; + padding: 1px 5px; +} + +#sidebar div.menutitle { + color: #F04040; + font-size: 125%; + vertical-align: bottom; +} + +#sidebar div.menudesc { + color: #FFFFFF; + font-size: 90%; + vertical-align: top; +} + +#rmgsidebar a { + text-decoration: none; +} + +#rmgsidebar div.menuitem { + min-height: 50px; +} + +#rmgsidebar div.menuitem:hover { + background-color: #606060; +} + +/* ----- table styles ----- */ + +th { + background-color: transparent; +} + +table.rmg { + border-top: 2px solid #000000; + border-bottom: 2px solid #000000; + border-collapse: collapse; + margin: 10px 10px 20px 30px; +} + +table.rmg thead { + border-bottom: 1px solid #000000; +} + +table.rmg th, +table.rmg td { + padding: 5px; +} + +/* ----- code block styles ----- */ + +pre { + border-top: 1px solid #F04040; + border-bottom: 1px solid #F04040; +} diff --git a/documentation/source/_static/database-logo-small.png b/documentation/source/_static/database-logo-small.png deleted file mode 100644 index 59e4508d41..0000000000 Binary files a/documentation/source/_static/database-logo-small.png and /dev/null differ diff --git a/documentation/source/_static/documentation-icon.png b/documentation/source/_static/documentation-icon.png deleted file mode 100644 index 88076af3ab..0000000000 Binary files a/documentation/source/_static/documentation-icon.png and /dev/null differ diff --git a/documentation/source/_static/github-icon.png b/documentation/source/_static/github-icon.png new file mode 100644 index 0000000000..119a56e22f Binary files /dev/null and b/documentation/source/_static/github-icon.png differ diff --git a/documentation/source/_static/groupdraw-logo-small.png b/documentation/source/_static/groupdraw-logo-small.png deleted file mode 100644 index 44cef2a54c..0000000000 Binary files a/documentation/source/_static/groupdraw-logo-small.png and /dev/null differ diff --git a/documentation/source/_static/input-logo-small.png b/documentation/source/_static/input-logo-small.png deleted file mode 100644 index 9542994e8e..0000000000 Binary files a/documentation/source/_static/input-logo-small.png and /dev/null differ diff --git a/documentation/source/_static/kinetics-search-logo-small.png b/documentation/source/_static/kinetics-search-logo-small.png deleted file mode 100644 index 94dd1210e9..0000000000 Binary files a/documentation/source/_static/kinetics-search-logo-small.png and /dev/null differ diff --git a/documentation/source/_static/moleculedraw-logo-small.png b/documentation/source/_static/moleculedraw-logo-small.png deleted file mode 100644 index 4bb0fc055d..0000000000 Binary files a/documentation/source/_static/moleculedraw-logo-small.png and /dev/null differ diff --git a/documentation/source/_static/pdep-logo-small.png b/documentation/source/_static/pdep-logo-small.png deleted file mode 100644 index 6297914e67..0000000000 Binary files a/documentation/source/_static/pdep-logo-small.png and /dev/null differ diff --git a/documentation/source/_static/rmg-icon.png b/documentation/source/_static/rmg-icon.png new file mode 100644 index 0000000000..231a23b689 Binary files /dev/null and b/documentation/source/_static/rmg-icon.png differ diff --git a/documentation/source/_static/rmg-logo-big.pdf b/documentation/source/_static/rmg-logo-big.pdf new file mode 100755 index 0000000000..2023eedafc Binary files /dev/null and b/documentation/source/_static/rmg-logo-big.pdf differ diff --git a/documentation/source/_static/rmg-logo-small.png b/documentation/source/_static/rmg-logo-small.png index 7e6d7742c9..741de8ed83 100644 Binary files a/documentation/source/_static/rmg-logo-small.png and b/documentation/source/_static/rmg-logo-small.png differ diff --git a/documentation/source/_static/rmg.css b/documentation/source/_static/rmg.css deleted file mode 100644 index f538f4b28e..0000000000 --- a/documentation/source/_static/rmg.css +++ /dev/null @@ -1,318 +0,0 @@ -@import url("basic.css"); - -/* -- page layout ----------------------------------------------------------- */ - -body { - font-family: sans-serif; - font-size: 100%; - background-color: #F0F0F0; - color: #000; - margin: 0; - padding: 0; -} - -div.header { - color: #993333; - font-size: 0.8em; - text-align: right; - padding: 4px 10px 4px 0; -} - -div.document { - -} - -div.documentwrapper { - float: left; - width: 100%; -} - -div.bodywrapper { - background-color: #FFFFFF; - border: 1px solid #993333; - border-right: 0px; - margin: 0 0 0 230px; -} - -div.body { - color: #000000; - padding: 0px 10px 10px 10px; -} - -div.footer { - color: #808080; - width: 100%; - padding: 4px 0 4px 0; - margin: 40px 0 0 0; - text-align: center; - font-size: 0.7em; -} - -div.footer a { - color: #808080; - text-decoration: underline; -} - -div.related { - color: #993333; - font-size: 0.8em; - padding: 4px 0 2px 0; - border-bottom: 1px solid #993333; -} - -div.related a { - color: #993333; -} - -div.related ul { - padding: 0 0 0 0; -} - -div.related ul li { - margin-right: 0px; - padding: 0 0 0 0; -} - -div.sphinxsidebar { -} - -div.sidebarlogo { - text-align: center; - margin: 0 0 20px 0; -} - -div.sphinxsidebar h3 { - font-family: sans-serif; - color: #993333; - font-size: 1.4em; - font-weight: normal; - margin: 0; - padding: 0; -} - -div.sphinxsidebar h3 a { - color: #993333; -} - -div.sphinxsidebar h4 { - font-family: sans-serif; - color: #993333; - font-size: 1.3em; - font-weight: normal; - margin: 5px 0 0 0; - padding: 0; -} - -div.sphinxsidebar p { - color: #993333; -} - -div.sphinxsidebar p.topless { - margin: 5px 10px 10px 10px; - word-wrap: break-word; -} - -div.sphinxsidebar ul { - margin: 10px; - padding: 0; - color: #ffffff; -} - -div.sphinxsidebar a { - color: #993333; -} - -div.sphinxsidebar input { - border: 1px solid #993333; - font-family: sans-serif; - font-size: 1em; -} - - - -/* -- hyperlink styles ------------------------------------------------------ */ - -a { - color: #993333; - text-decoration: none; -} - -a:visited { - color: #993333; - text-decoration: none; -} - -a:hover { - text-decoration: underline; -} - - - -/* -- body styles ----------------------------------------------------------- */ - -div.body h1, -div.body h2, -div.body h3, -div.body h4, -div.body h5, -div.body h6 { - font-family: sans-serif; - font-weight: normal; - color: #993333; - margin: 20px 0px 10px 0px; - padding: 3px 0px 3px 0px; -} - -div.body h1 { margin-top: 0; font-size: 200%; } -div.body h2 { font-size: 160%; } -div.body h3 { font-size: 140%; } -div.body h4 { font-size: 120%; } -div.body h5 { font-size: 110%; } -div.body h6 { font-size: 100%; } - -a.headerlink { - color: #c60f0f; - font-size: 0.8em; - padding: 0 4px 0 4px; - text-decoration: none; -} - -a.headerlink:hover { - background-color: #c60f0f; - color: white; -} - -div.body p, div.body dd, div.body li { - text-align: justify; - line-height: 130%; -} - -div.admonition p.admonition-title + p { - display: inline; -} - -div.admonition p { - margin-bottom: 5px; -} - -div.admonition pre { - margin-bottom: 5px; -} - -div.admonition ul, div.admonition ol { - margin-bottom: 5px; -} - -div.note { - background-color: #eee; - border: 1px solid #ccc; -} - -div.seealso { - background-color: #ffc; - border: 1px solid #ff6; -} - -div.topic { - background-color: #eee; -} - -div.warning { - background-color: #ffe4e4; - border: 1px solid #f66; -} - -p.admonition-title { - display: inline; -} - -p.admonition-title:after { - content: ":"; -} - -pre { - padding: 5px; - background-color: #eeffcc; - color: #333333; - line-height: 120%; - border: 1px solid #ac9; - border-left: none; - border-right: none; -} - -tt { - background-color: #ecf0f3; - padding: 0 1px 0 1px; - font-size: 0.95em; -} - -.warning tt { - background: #efc2c2; -} - -.note tt { - background: #d6d6d6; -} - -.viewcode-back { - font-family: sans-serif; -} - -div.viewcode-block:target { - background-color: #f4debf; - border-top: 1px solid #ac9; - border-bottom: 1px solid #ac9; -} - -p.caption { - font-size: 0.9em; -} - - -/* -- table styles ----------------------------------------------------------- */ -/* -table, -table colgroup, -table th, -table tr, -table td { - border: 0px inset #000000; - padding: 0px -} -*/ - -table.data td { - padding-right: 3px -} - -table.data, table.data thead, table.data tbody { - border-top: 1px solid #000000; - border-bottom: 1px solid #000000; - padding: 20px -} - - -/* Some custom sidebar link styling */ -div.customsidebar { - border-top: 1px solid #993333; -} - -.icon_sidebar { - float: left; -} -img.icon_sidebar { max-width: none;} - -.biglink_sidebar { - font-size: 120%; - font-weight: bold; - text-align: left; - vertical-align: bottom; -} - -.linkdesc { - font-size: 90%; - text-align: left; - vertical-align: top; - font-style: italic; -} - diff --git a/documentation/source/_static/solvation-search-logo-small.png b/documentation/source/_static/solvation-search-logo-small.png deleted file mode 100644 index 6544745349..0000000000 Binary files a/documentation/source/_static/solvation-search-logo-small.png and /dev/null differ diff --git a/documentation/source/_static/tools-icon.png b/documentation/source/_static/tools-icon.png deleted file mode 100644 index 16e327dec4..0000000000 Binary files a/documentation/source/_static/tools-icon.png and /dev/null differ diff --git a/documentation/source/_templates/customsidebar.html b/documentation/source/_templates/customsidebar.html deleted file mode 100644 index b4cfc6f221..0000000000 --- a/documentation/source/_templates/customsidebar.html +++ /dev/null @@ -1,73 +0,0 @@ -
-
diff --git a/documentation/source/_templates/index.html b/documentation/source/_templates/index.html index 2bab1dcab9..4b220a9ecb 100644 --- a/documentation/source/_templates/index.html +++ b/documentation/source/_templates/index.html @@ -2,68 +2,71 @@ {% set title = 'Overview' %} {% block body %} -+ Reaction Mechanism Generator (RMG) is an automatic chemical reaction mechanism generator + that constructs kinetic models composed of elementary chemical reaction steps using a general understanding + of how molecules react. +
- -I want to... | -Resource | -
---|---|
analyze models & search databases | -rmg website resources (no download needed) | -
make transition state theory calculations | -Run Cantherm with the Canterm User's Guide | -
create mechanisms automatically | -Download RMG with the RMG User's Guide | -
post an issue with RMG | -github issues page | -
contribute to RMG project | -RMG developer's wiki | -
+ This documentation site if for the newer Python version of RMG called RMG-Py. + It is developed on GitHub as RMG-Py. +
-- Reaction Mechanism Generator (RMG) is an automatic chemical reaction mechanism generator - that constructs kinetic models composed of elementary chemical reaction - steps using a general understanding of how molecules react. +
+ CanTherm is developed and distributed as part of RMG-Py, but can be used as a stand-alone + application for Thermochemistry, Transition State Theory, and Master Equation chemical kinetics + calculations.
- +- These pages describe the newer Python version of RMG that we call RMG-Py. - It is developed on github as RMG-Py. + RMG is free, open-source software, and is under active and ongoing development. + If you are interested in assisting with or guiding its development, please let us know. + Any issues, concerns, or comments can be posted to our + Github issues page.
- +- CanTherm is developed and distributed as part of RMG-Py, but can be used as a stand-alone - application for Thermochemistry, Transition State Theory, and Master Equation chemical kinetics - calculations. + While you are free to use or modify RMG components as you wish, we would like to + coordinate with you. Please contact Professor William H. Green, + Professor Richard H. West, + or the The RMG Development Team for further information.
-RMG is free, open-source software, and is under active and ongoing development. -If you are interested in assisting with or guiding its development, please let us know. Any issues, -concerns, or comments can be posted to our Github issues page. -While you are free to use/modify RMG components as you wish, we would like to -co-ordinate with you. Please contact Professor William H. Green, -Professor Richard H. West, -or the The RMG Development Team for further information. +I want to... | +Resource | +
---|---|
analyze models & search databases | +RMG website resources (no download needed) | +
make transition state theory calculations | +Run Cantherm with the Canterm User's Guide | +
create mechanisms automatically | +Download RMG with the RMG User's Guide | +
post an issue with RMG | +GitHub issues page | +
contribute to RMG project | +RMG developer's wiki | +