Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

RMG futurization: Python 3 compatibility and PEP-8 compliance #1724

Merged
merged 164 commits into from
Sep 24, 2019
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
164 commits
Select commit Hold shift + click to select a range
b54b19f
Update and refactor Travis build configuration
mliu49 Jul 24, 2019
9281d86
Add conda environment file for Python 3
mliu49 Jul 24, 2019
f83b48c
Adjust Travis build to also test on Python 3
mliu49 Jul 24, 2019
c1c74be
Change print syntax in Makefile and setup.py
mliu49 Jul 26, 2019
af2e7a1
Import functools.reduce in reaction.py
mliu49 Jul 29, 2019
603c87e
Decode bytes returned by subprocess.check_output in utilities.py
mliu49 Jul 29, 2019
aba2d5a
Remove external cclib and use cclib conda package
amarkpayne Aug 5, 2019
ba25f01
Remove reduction module
mliu49 Aug 12, 2019
cc62858
Remove documentation for reduction module
mliu49 Aug 12, 2019
ff03112
Remove scoop framework and all usages
mliu49 Aug 12, 2019
4c443e7
Various PEP-8 modifications and futurization to Arkane
alongd Aug 16, 2019
3b0a171
BugFix: Nested variable i definition resolved
alongd Aug 15, 2019
d9d7f8b
Implement abstract methods in Arkane Logs, raise NotImplementedErrors
alongd Aug 15, 2019
078b9a5
Turned static log methods in Arkane into functions, renamed them
alongd Aug 15, 2019
a82e020
Don't shadow `database` from outer scope
alongd Aug 16, 2019
b188a17
Create LogError exception class for Arkane
alongd Aug 16, 2019
83a3466
Removed seemingly unnecessary print statements from Arkane input.py
alongd Aug 16, 2019
b5a240d
Directly use the correct returned argument (instead of _, markings)
alongd Aug 16, 2019
b3fa250
Replace pylab with pyplot for plotting rotor scans
alongd Aug 19, 2019
7e206f3
Upgrade external wip to Python 3
amarkpayne Aug 16, 2019
8423581
Upgrade rmg.py to Python 3
amarkpayne Aug 16, 2019
57edf9a
Upgrade rmgpy/*.py to Python 3
amarkpayne Aug 20, 2019
d74b859
Upgrade rmgpy/rmg/*.py to Python 3
amarkpayne Aug 20, 2019
1701e94
Upgrade scripts to Python 3
amarkpayne Aug 16, 2019
abe3d06
Correct path issue so that outputTest.py runs from any location
amarkpayne Aug 16, 2019
22af8bb
Prevent file locking for HDF5 files
amarkpayne Aug 16, 2019
2194bf8
Explicitly add h5py dependency
amarkpayne Aug 16, 2019
2913cb7
Bug fix: Import conformer from statmech instead of pdep
amarkpayne Aug 19, 2019
81ed4c6
Merge pull request #1686 from ReactionMechanismGenerator/amp_py3_pr
mliu49 Aug 21, 2019
610931a
Various PEP-8 modifications and futurization to the pdep module
alongd Aug 16, 2019
574fb87
Merge pull request #1696 from ReactionMechanismGenerator/pdep_py3
mliu49 Aug 21, 2019
0c0467c
Py3 compatibility changes on statmech module
xiaoruiDong Aug 13, 2019
9f5574d
Merge pull request #1689 from ReactionMechanismGenerator/py3_XD
mliu49 Aug 24, 2019
396f0b5
Py3 and PEP-8 changes to selected rmgpy/*.py files
mliu49 Aug 12, 2019
31efff3
Py3 and PEP-8 changes to pure python part of molecule module
mliu49 Aug 12, 2019
3252b00
Py3 and PEP-8 changes to qm module
mliu49 Aug 12, 2019
4c7c379
Refactor setup.py and cythonization process
mliu49 Aug 12, 2019
0579eca
Refactor make clean
mliu49 Aug 13, 2019
069ed2a
Remove old use of rmgpy.rmg.model.Species from thermoengine
mliu49 Aug 13, 2019
b09196b
Py3 and PEP-8 changes to thermo and transport modules
mliu49 Aug 13, 2019
e70fd60
Py3 and PEP-8 changes to tools module
mliu49 Aug 13, 2019
a671e18
Do not warn when setting matplotlib backend in tools.plot
mliu49 Aug 13, 2019
46ac799
Replace pylab with pyplot in rmgpy.tools.diff_models
mliu49 Aug 26, 2019
ff3a645
Fix import in databaseTest.py
mliu49 Aug 26, 2019
3bc2c2c
Merge pull request #1687 from ReactionMechanismGenerator/py3_mliu
amarkpayne Aug 26, 2019
2426437
Py3 and PEP-8 changes to cythonized files in rmgpy
mliu49 Aug 13, 2019
52454ae
Fix unreachable code in chemkin module
mliu49 Aug 13, 2019
6698aab
Py3 and PEP-8 changes to cythonized files in rmgpy.molecule
mliu49 Aug 14, 2019
c363844
Py3 and PEP-8 changes to cythonized files in rmgpy.thermo and rmgpy.k…
mliu49 Aug 15, 2019
2998fca
Py3 and PEP-8 changes to cythonized files in rmgpy.statmech
mliu49 Aug 16, 2019
448ba9b
Py3 and PEP-8 changes to cythonized files in rmgpy.solver
mliu49 Aug 16, 2019
d4974fd
Prevent element-wise comparisons for np arrays when calling as_dict()
amarkpayne Aug 20, 2019
7b5ddd7
Refactor and simplify Reaction.generatePairs
mliu49 Aug 23, 2019
065c8dd
Merge pull request #1694 from ReactionMechanismGenerator/py3_mliu_2
alongd Aug 28, 2019
ef139e8
databaseTest futurization
mjohnson541 Aug 12, 2019
6811038
rmgpy.pdep py3 changes
mjohnson541 Aug 12, 2019
6655729
rmgpy.kinetics py3 changes
mjohnson541 Aug 12, 2019
ef1e174
rmgpy.solver py3 changes
mjohnson541 Aug 12, 2019
53a2476
ndTorsions py3 changes
mjohnson541 Aug 12, 2019
670aa7e
rmgpy.data py3 changes
mjohnson541 Aug 12, 2019
221a8e1
Remove disfunctional PDepNetwork property label
mjohnson541 Aug 14, 2019
427e8bf
Additional Py3 and PEP-8 fixes to rmgpy.data
mliu49 Aug 16, 2019
47a142d
Format ndTorsions and refactor paths
mliu49 Aug 16, 2019
200e84e
Py3 and PEP-8 changes to databaseTest.py
mliu49 Aug 28, 2019
3a607a9
Additional Py3 and PEP-8 fixes to rmgpy.solver
mliu49 Aug 28, 2019
3769a09
Additional Py3 and PEP-8 fixes to rmgpy.pdep
mliu49 Aug 28, 2019
106fc50
Additional Py3 and PEP-8 fixes to rmgpy.kinetics
mliu49 Aug 28, 2019
2d9cfa5
Update environment file
mliu49 Aug 28, 2019
50e6ae4
Merge pull request #1707 from ReactionMechanismGenerator/py_matt
amarkpayne Aug 29, 2019
fdf0a48
Modified the ArkaneSpecies.update_xyz_string() method
alongd Aug 29, 2019
af9dc41
Merge pull request #1714 from ReactionMechanismGenerator/arkane_speci…
mliu49 Aug 29, 2019
72b92a0
Switch ML estimator to chemprop
Aug 5, 2019
3b7cb4c
Update documentation and ML example
Aug 5, 2019
1522599
Update meta.yaml
Aug 5, 2019
d0e5ca3
Revert Fix Travis builds by adding in missing miniconda dependencies
amarkpayne Jul 22, 2019
0b48cb7
Update Python 3 environment
Aug 12, 2019
86f4bf9
Adjust directory structure for N4H6 in arkane examples
mliu49 Aug 22, 2019
2c158ad
Move PyDQED check to check_dependencies function
mliu49 Aug 26, 2019
8d4d526
Refactor check_dependencies to be more modular
mliu49 Aug 26, 2019
86156b6
Move PyDAS solver check from Makefile to utilities.py
mliu49 Aug 26, 2019
f59814c
Remove `u` tag for unicode string from testing databases
mliu49 Aug 27, 2019
4e78f1d
Change travis to only run py3 build, since py2 will always fail now
mliu49 Aug 27, 2019
73d2d65
Change cython language level to 3
mliu49 Aug 27, 2019
fc523e1
Refactor and standardize short/long description writing
mliu49 Aug 27, 2019
0abf56b
Fix `exec` usage
mliu49 Aug 27, 2019
6657f61
Change molecule fingerprint to enable better sorting
mliu49 Aug 27, 2019
c90c407
Add sorting_key attribute to Atom, Bond, Molecule, Species
mliu49 Aug 27, 2019
0c0c7ed
Add/update comparison methods for Atom, Bond, Molecule, Species
mliu49 Aug 27, 2019
fea1ac5
Fix unit tests affected by changes to sorting
mliu49 Aug 27, 2019
b8acca0
Fix I/O related string issues
mliu49 Aug 27, 2019
a22b616
Fix other string formatting issues
mliu49 Aug 27, 2019
256de03
Fix exception message handling
mliu49 Aug 27, 2019
0b3884f
Fix dictionary item retrieval/iteration issues
mliu49 Aug 27, 2019
92c584f
Fix usage of str.translate
mliu49 Aug 27, 2019
715b6bf
Fix issue with calling lpsolve
mliu49 Aug 27, 2019
190fe9a
Fix family loading to account for __pycache__
mliu49 Aug 27, 2019
90c6803
Miscellaneous fixes to unit tests
mliu49 Aug 27, 2019
f487687
Fix sorting when using machine learning thermo
mliu49 Aug 27, 2019
4589119
Fix type comparison
mliu49 Aug 27, 2019
df19793
Fix sorting in generateReactionKey
mliu49 Aug 27, 2019
403b44c
Fix file opening using `file`
mliu49 Aug 27, 2019
aba04e0
Fix interesting symmetry bug
mliu49 Aug 27, 2019
cca187f
Remove work_in_progress decorator from a test
mliu49 Aug 27, 2019
bcac42d
Capture standard output when running functional tests
mliu49 Aug 27, 2019
195f49b
Mark InChI pickle test as work_in_progress
mliu49 Aug 27, 2019
2dd0a79
Fix sorting of Quantity objects in main.execute
mliu49 Aug 27, 2019
34b3bc0
Decode dot output when generating flux diagram
mliu49 Aug 27, 2019
6c8004e
Refactor removeVanDerWaalsBonds to not modify dict while iterating
mliu49 Aug 27, 2019
bfb51b1
Switch to Py3 compatible version of Q2DTor
mliu49 Aug 27, 2019
aa6243f
Remove uses of six.string_types
mliu49 Aug 29, 2019
4baba99
Make Entry.shortDesc and Entry.longDesc standard attributes
mliu49 Aug 29, 2019
aaaa9b1
Fix min usage with Entry objects
mliu49 Aug 29, 2019
7b4f66e
Make the python 3 environment file the only environment file
amarkpayne Sep 3, 2019
3d9fbdb
Remove xrange calls in chemkin.pyx
mliu49 Sep 6, 2019
6cfa689
Close all matplotlib.pyplot figures
alongd Sep 9, 2019
28931a0
Merge pull request #1713 from ReactionMechanismGenerator/py3_only
amarkpayne Sep 11, 2019
90aa855
PEP-8 renaming in rmgpy.data
mliu49 Sep 23, 2019
92d627e
PEP-8 renaming in rmgpy.kinetics
mliu49 Sep 23, 2019
14bfbbe
PEP-8 renaming in rmgpy.molecule
mliu49 Sep 23, 2019
0ee066a
PEP-8 renaming in rmgpy.pdep and rmgpy.statmech
mliu49 Sep 23, 2019
952e526
PEP-8 renaming fixes
mliu49 Sep 23, 2019
feb62df
PEP-8 renaming in rmgpy.thermo and rmgpy.transport
mliu49 Sep 23, 2019
fdcd194
PEP-8 renaming in rmgpy.qm
mliu49 Sep 23, 2019
5a04472
PEP-8 renaming in top level modules
mliu49 Sep 23, 2019
e9a65fc
PEP-8 renaming in rmgpy.solver
mliu49 Sep 23, 2019
4a41739
PEP-8 renaming in rmgpy.rmg
mliu49 Sep 23, 2019
a55ab9d
PEP-8 renaming in rmgpy.tools and scripts
mliu49 Sep 23, 2019
2e5afaa
PEP-8 renaming fixes
mliu49 Sep 23, 2019
e527706
Make Arkane unit tests PEP-8 compliant
amarkpayne Sep 23, 2019
8f47f47
Remove unused unit test in solvationTest.py
amarkpayne Sep 23, 2019
038aede
Make rmgpy/data/* unit tests PEP-8 compliant
amarkpayne Sep 23, 2019
e08f2fa
Make rmgpy/kinetics/* unit tests PEP-8 compliant
amarkpayne Sep 23, 2019
e41116f
Make select rmgpy/molecule/* unit tests PEP-8 compliant
amarkpayne Sep 23, 2019
e205547
Make test_lone_pair_retention error when exceptions are encountered
amarkpayne Sep 23, 2019
7732682
Make rmgpy/pdep/* unit tests PEP-8 compliant
amarkpayne Sep 23, 2019
3770769
Make rmgpy/qm/* unit tests PEP-8 compliant
amarkpayne Sep 23, 2019
42a2623
Make rmgpy/rmg/* unit tests PEP-8 compliant
amarkpayne Sep 23, 2019
3324ee3
Make rmgpy/solver/* unit tests PEP-8 compliant
amarkpayne Sep 23, 2019
d26da0c
Make rmgpy/statmech/* unit tests PEP-8 compliant
amarkpayne Sep 23, 2019
4089edd
Make rmgpy/thermo/* unit tests PEP-8 compliant
amarkpayne Sep 23, 2019
601d52e
Make rmgpy/tools/* unit tests PEP-8 compliant
amarkpayne Sep 23, 2019
0f82030
Make rmgpy/* unit tests PEP-8 compliant
amarkpayne Sep 23, 2019
1a90a74
Fix doctring in tests for debye units
amarkpayne Sep 23, 2019
f94e417
Make testing/databaseTest.py unit tests PEP-8 compliant
amarkpayne Sep 23, 2019
59d8060
Make Arkane PEP8 compliant
alongd Sep 23, 2019
e2fa0d7
Renamed argument `format` to `file_format`
alongd Sep 23, 2019
66795f7
Added generate_high_p_limit_kinetics() to Reaction
alongd Sep 23, 2019
e8369f2
Arkane PEP8 compliant changes in the RMG code
alongd Sep 23, 2019
7c12457
Preserve backward compatibility with Arkane YAML files
alongd Sep 23, 2019
51994ed
Tests: Load Arkane YAML files both from v 2.4.1 and a recent version
alongd Sep 23, 2019
8ad5293
Implement parent methods in HinderedRotorClassicalND()
alongd Sep 23, 2019
2e317a3
Create rmgpy.util.as_list function
mliu49 Sep 23, 2019
13a225c
Fix database loading in arkane.input
mliu49 Sep 23, 2019
02af7dd
Fix bath gas loading for arkane explorer tool
mliu49 Sep 23, 2019
999beb2
Refactor database loading in rmgpy.rmg.input
mliu49 Sep 23, 2019
61ad9ba
PEP-8 renaming in rmgpy.rmg.input
mliu49 Sep 23, 2019
82e12f4
Additional renaming in rmgpy.data
mliu49 Sep 23, 2019
8565041
Additional renaming in rmgpy.species
mliu49 Sep 23, 2019
f5e4ee0
Additional renaming of missed functions
mliu49 Sep 23, 2019
8cac287
Refactor properties in rmgpy.quantity to be more pythonic
mliu49 Sep 23, 2019
6069719
Fix bug when generating profile graph
mliu49 Sep 23, 2019
c09504d
Add rmg2to3.py script to facilitate user transition
mliu49 Sep 23, 2019
5b85619
Merge pull request #1719 from ReactionMechanismGenerator/py3_pep8
mliu49 Sep 23, 2019
f73cb57
Add check for Python version to Makefile and rmg.py
mliu49 Sep 23, 2019
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
2 changes: 1 addition & 1 deletion .conda/meta.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -34,10 +34,10 @@ requirements:
- cairo
- cairocffi
- cantera >=2.3.0
- chemprop
- coolprop
- coverage
- cython >=0.25.2
- dde
- ffmpeg
- gprof2dot
- graphviz
Expand Down
14 changes: 7 additions & 7 deletions .travis.yml
Original file line number Diff line number Diff line change
@@ -1,5 +1,4 @@
language: c
sudo: false
language: minimal

env:
global:
Expand Down Expand Up @@ -39,17 +38,18 @@ jobs:
install:
# Clone RMG-database
- git clone https://github.com/ReactionMechanismGenerator/RMG-database.git
# install Q2DTor
- git clone https://github.com/mjohnson541/Q2DTor.git RMG-Py/external/Q2DTor --branch arkane
# build environment and activate
- cd RMG-Py
- conda env create -q -f environment_linux.yml
# Create and activate environment
- conda env create -q -f environment.yml
- source activate rmg_env
# Install codecov for coverage report
- conda install -y -c conda-forge codecov
- conda list
# Setup MOPAC license key
- yes 'Yes' | $HOME/miniconda/envs/rmg_env/bin/mopac $MOPACKEY > /dev/null
# Install Q2DTor
- git clone -b arkanepy3 https://github.com/mjohnson541/Q2DTor.git external/Q2DTor
# Compile RMG
- make
script:
- make test-unittests
Expand All @@ -61,7 +61,7 @@ jobs:
- stage: documentation
install:
- cd RMG-Py
- conda env create -q -f environment_linux.yml
- conda env create -q -f environment.yml
- source activate rmg_env
# Install sphinx for building documentation
- conda install -y sphinx
Expand Down
9 changes: 5 additions & 4 deletions Arkane.py
Original file line number Diff line number Diff line change
Expand Up @@ -33,34 +33,35 @@
reaction rates and other properties used in detailed kinetics models using
various methodologies and theories. To run Arkane, use the command ::

$ python arkane.py FILE
$ python Arkane.py FILE

where ``FILE`` is the path to an Arkane input file describing the job to
execute. Arkane will run the specified job, writing the output to
``output.py`` and a log to both the console and to ``Arkane.log``, with both
files appearing in the same directory as the input file. Some additional
command-line arguments are available; run the command ::

$ python arkane.py -h
$ python Arkane.py -h

for more information.
"""

import os
import logging

from arkane.main import *
from arkane.main import Arkane

arkane = Arkane()

# Parse and validate the command-line arguments
arkane.parseCommandLineArguments()
arkane.parse_command_line_arguments()

# Execute the job
arkane.execute()

try:
import psutil

process = psutil.Process(os.getpid())
memory_info = process.memory_info()
logging.info('Memory used: %.2f MB' % (memory_info.rss / 1024.0 / 1024.0))
Expand Down
52 changes: 13 additions & 39 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -4,68 +4,42 @@
#
################################################################################

DASPK=$(shell python -c 'import pydas.daspk; print pydas.daspk.__file__')
DASSL=$(shell python -c 'import pydas.dassl; print pydas.dassl.__file__')
.PHONY : all minimal main solver check pycheck arkane clean install decython documentation mopac_travis
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

(Outside the scope of this PR) Are our .PHONY targets up to date? Should things like test and eg0 be in there?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I was also wondering about this. I looked it up, and it seems like phony targets are most important if you have files with the same name as the target. In that case, putting the target in the phony list tells make to execute the target rather than compile the file.


.PHONY : all minimal main solver check cantherm clean install decython documentation mopac_travis

all: main solver check
all: pycheck main solver check

minimal:
python setup.py build_ext minimal --build-lib . --build-temp build --pyrex-c-in-temp
python setup.py build_ext minimal --inplace --build-temp .

main:
@ echo "Checking you have PyDQED..."
@ python -c 'import pydqed; print pydqed.__file__'
python setup.py build_ext main --build-lib . --build-temp build --pyrex-c-in-temp
python setup.py build_ext main --inplace --build-temp .

solver:

ifneq ($(DASPK),)
@ echo "DASPK solver found. Compiling with DASPK and sensitivity analysis capability..."
@ (echo DEF DASPK = 1) > rmgpy/solver/settings.pxi
else ifneq ($(DASSL),)
@ echo "DASSL solver found. Compiling with DASSL. Sensitivity analysis capabilities are off..."
@ (echo DEF DASPK = 0) > rmgpy/solver/settings.pxi
else
@ echo 'No PyDAS solvers found. Please check if you have the latest version of PyDAS.'
@ python -c 'import pydas.dassl'
endif
python setup.py build_ext solver --build-lib . --build-temp build --pyrex-c-in-temp
@ python utilities.py check-pydas
python setup.py build_ext solver --inplace --build-temp .

arkane:
python setup.py build_ext arkane --build-lib . --build-temp build --pyrex-c-in-temp
python setup.py build_ext arkane --inplace --build-temp .

check:
@ python utilities.py check-dependencies

pycheck:
@ python utilities.py check-python

documentation:
$(MAKE) -C documentation html
@ echo "Start at: documentation/build/html/index.html"

clean:
@ echo "Removing build directory..."
@ python setup.py clean --build-temp build
@ echo "Removing compiled files..."
@ python utilities.py clean
@ echo "Cleanup completed."

clean-solver:
@ 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."

install:
@ echo "Checking you have PyDQED..."
@ python -c 'import pydqed; print pydqed.__file__'
@ python -c 'import pydqed; print(pydqed.__file__)'
ifneq ($(DASPK),)
@ echo "DASPK solver found. Compiling with DASPK and sensitivity analysis capability..."
@ (echo DEF DASPK = 1) > rmgpy/solver/settings.pxi
Expand All @@ -87,7 +61,7 @@ q2dtor:
and HinderedRotor2D within Arkane please cite: \n\nD. Ferro-Costas, M. N. D. S.Cordeiro, D. G. Truhlar, A.\
Fernández-Ramos, Comput. Phys. Commun. 232, 190-205, 2018.\n"
@ read -p "Press ENTER to continue" dummy
@ git clone https://github.com/mjohnson541/Q2DTor.git external/Q2DTor --branch arkane
@ git clone https://github.com/mjohnson541/Q2DTor.git external/Q2DTor --branch arkanepy3

decython:
# de-cythonize all but the 'minimal'. Helpful for debugging in "pure python" mode.
Expand All @@ -113,7 +87,7 @@ ifneq ($(OS),Windows_NT)
mkdir -p testing/coverage
rm -rf testing/coverage/*
endif
nosetests --nocapture --nologcapture --all-modules -A 'functional' --verbose --exe rmgpy arkane
nosetests --nologcapture --all-modules -A 'functional' --verbose --exe rmgpy arkane

test-database:
nosetests --nocapture --nologcapture --verbose --detailed-errors testing/databaseTest.py
Expand Down
14 changes: 7 additions & 7 deletions arkane/__init__.py
Original file line number Diff line number Diff line change
@@ -1,10 +1,6 @@
#!/usr/bin/env python
# -*- coding: utf-8 -*-

"""
initialize imports
"""

###############################################################################
# #
# RMG - Reaction Mechanism Generator #
Expand Down Expand Up @@ -32,9 +28,13 @@
# #
###############################################################################

"""
initialize imports
"""

from arkane.common import ArkaneSpecies
from arkane.kinetics import KineticsJob
from arkane.main import Arkane
from arkane.pdep import PressureDependenceJob
from arkane.statmech import StatMechJob
from arkane.thermo import ThermoJob
from arkane.kinetics import KineticsJob
from arkane.pdep import PressureDependenceJob
from arkane.common import ArkaneSpecies
Loading