-
Notifications
You must be signed in to change notification settings - Fork 230
Code Organization
Max Liu edited this page Aug 18, 2017
·
2 revisions
This page is meant to provide an overview of the major functioning of RMG and why it works that way. This should be a good reference to jumpstart developers' contributions to the project.
The entire RMG project is broken down into a database and python code. These are in separate GitHub repositories since additions of data often don't require code alterations and vise versa. This is not always the case. When using source code, it is best to have up to date versions of both as incompatibilities can arise.
Here are specific modules that discuss the inner workings of various parts of RMG.
- RMG models and mechanism generation
- Reactions
- Kinetic estimation
- Representing Chemical Structures
- Thermo estimation
- Database structure
- Logging and output
- Cantherm
- What's happening
- relationships between classes/objects (inheritance, organization)
- large overview of algorithm in decision trees
- Where is it happening
- mention location of methods and classes.
- cite ipynb when used for these concepts
- aside: Change class docstring if out of date
- Why does it function this way
- any historical knowledge of the topic
- eg. if changed it would break X; lazy programming
- Code examples
- short examples if not in ipynb