Releases: ReactionMechanismGenerator/RMG-Py
Releases · ReactionMechanismGenerator/RMG-Py
RMG-Py v2.1.6
-
Model resurrection:
- Automatically attempts to save simulation after encountering a DASPK error
- Adds species and reactions in order to modify model dynamics and fix the error
-
New features:
- Add functionality to read RCCSD(T)-F12 energies from MolPro log files
- Add liquidReactor support to flux diagram generation
-
Other changes:
- Removed rmgpy.rmg.model.Species class and merged functionality into main rmgpy.species.Species class
- Refactored parsing of RMG-generated kinetics comments from Chemkin files and fixed related issues
- Refactored framework for generating reactions to reduce code duplication
- Resonance methods renamed from generateResonanceIsomers to generate_resonance_structures across all modules
- Raise CpInf to Cphigh for entropy calculations to prevent invalid results
-
Fixes:
- Update sensitivity analysis to use ModelSettings and SimulatorSettings classes introduced in v2.1.5
- Fixed generate_reactions methods in KineticsDatabase to be directly usable again
- Fixed issues with aromaticity perception and generation of aromatic resonance structures
RMG-Py v2.1.5
-
New bicyclic formula:
- Estimates polycyclic corrections for unsaturated bicyclics by adjusting the correction for the saturated version
- Can provide a decent estimate in many cases where there is not an exact match
-
Other changes:
- Refactored simulation algorithm to properly add multiple objects per iteration
- Print equilibrium constant and reverse rate coefficient values when using Cantherm to calculate kinetics
- Speed up degeneracy calculation by reducing unnecessary operations
-
Fixes:
- Loosen tolerance for bond order identification to account for floating point error
- Fixed uncertainty analysis to allow floats as bond orders
- Fixed some comment parsing issues in uncertainty analysis
- Added product structure atom relabeling for families added in RMG-database v2.1.5
- Fixed issue with automatic debugging of kinetics errors due to forbidden structures
RMG-Py v2.1.4
-
Accelerator tools:
- Dynamics criterion provides another method to expand the mechanism by adding reactions to the core
- Surface algorithm enables better control of species movement to the core when using the dynamics criterion
- Multiple sets of model parameters can now be specified in a input file to allow different stages of model generation
- A species number termination criterion can now be set to limit model size
- Multiple items can now be added per iteration to speed up model construction
- New ModelSettings and SimulatorSettings classes for storing input parameters
-
New features:
- Kinetics libraries can now be automatically generated during RMG runs to be used as seeds for subsequent runs
- Loading automatically generated seed mechanisms recreates the original template reaction objects to allow restarting runs from the seed mechanism
- Carbene constraints can now be set in the species constraint block using maxSingletCarbenes and maxCarbeneRadicals
- Chirality is now considered for determining symmetry numbers
- Thermodynamic pruning has been added to allow removal of edge species with unfavorable free energy (beta)
-
Other changes:
- RMG-Py exception classes have been consolidated in the rmgpy.exceptions module
- Species labels will now inherit the label from a matched thermo library entry
- Sensitivity analysis is now available for LiquidReactor
-
Fixes:
- Fixed sensitivity analysis following changes to the simulate method
- Add memory handling when generating collision matrix for pressure dependence
- Improved error checking for MOPAC
- Prevent infinite loops when retrieving thermo groups
-
Known issues:
- Seed mechanisms cannot be loaded if the database settings are different from the original ones used to generate the seed
RMG-Py v2.1.3
-
Thermo central database:
- Framework for tracking and submitting species to a central database have been added
- Following species submission, the central database will queue and submit quantum chemistry jobs for thermochemistry calculation
- This is an initial step towards self-improving thermochemistry prediction
-
Rotor handling in Cantherm:
- Free rotors can now be specified
- Limit number of terms used when fitting hinder rotor scans
- Fixed bug with ZPE calculation when using hindered rotors
-
New reaction degeneracy algorithm:
- Use atom ID's to distinguish degenerate reactions from duplicates due to other factors
- Degeneracy calculation now operates across all families rather than within each separately
- Multiple transition states are now identified based on template comparisons and kept as duplicate reactions
-
Nodal distances:
- Distances can now be assigned to trees in reaction families
- This enables better rate averages with multiple trees
- Fixed bug with finding the closest rate rule in the tree
-
New features:
- Added methods for automatically writing RMG-database files
- New symmetry algorithm improves symmetry number calculations for resonant and cyclic species
- Group additivity algorithm updated to apply new long distance corrections
- Specific colliders can now be specified for pressure-dependent rates
- Very short superminimal example added (hydrogen oxidation) for checking basic RMG operation
- Cantera now outputs a Chemkin file which can be directly imported into Chemkin
-
Fixes:
- Fixed bug with negative activation energies when using Evans-Polanyi rates
- Fixed walltime specification from command line when running RMG
- Fixes and unit tests added for diffusionLimited module
-
Known issues:
- The multiple transition state algorithm can result in undesired duplicate reactions for reactants with multiple resonance structures
RMG-Py v2.1.2
-
Improvements:
- New nitrogen atom types
- Kinetics libraries can now be specified as a list of strings in the input file
- New script to generate output HTML locally: generateChemkinHTML.py
- New kekulization module replaces RDKit for generating Kekule structures
- Benzene bonds can now be reacted in reaction families
- Removed cantherm.geometry module due to redundancy with statmech.conformer
-
Fixes:
- Reaction direction is now more deterministic after accounting for floating point error
- Multiple bugs with resonance structure generation for aromatics have been addressed
RMG-Py v2.1.1
-
Uncertainty analysis:
- Local and global uncertainty analysis now available for RMG-generated models
- Global uncertainty analysis uses MIT Uncertainty Quantification library, currently only supported on Linux systems
- Examples for each module are available in localUncertainty.ipynb and globalUncertainty.ipynb
-
Fixes:
- Clar structure generation no longer intercepts signals
- Fixes to SMILES generation
- Fix default spin state of [CH]
RMG-Py v2.1.0
This release contains several new features and bug-fixes.
-
Clar structure generation
- optimizes the aromatic isomer representations in RMG
- lays the foundations for future development of poly-aromatic kinetics reaction families
-
Flux pathway analysis
- introduces an ipython notebook for post-generatation pathway analysis (
ipython.mechanism_analyzer.ipynb
) - visualizes reactions and provides flux statistics in a more transparent way
- introduces an ipython notebook for post-generatation pathway analysis (
-
Cantera mechanism
- automatically writes cantera version of RMG-generated mechanism at the end of RMG jobs
-
Fixes bugs
- upgrades
pruning
to fix new memory leaks introduced by recent functionalities - fixes the bug of duplicated species creation caused by
getThermoData
removing isomers unexpectedly - fixes restart file generation and parsing problems and users can choose restart mode again
- upgrades bicyclic decomposition method such that more deterministic behaviors are ensured
- change bond order type to float from string to improve RMG's symmetry calculation for species with multiple resonance structures
- upgrades
RMG-Py v2.0.0
This release includes several milestones of RMG project (see installation here):
- Parallelization finally introduced in RMG:
- Generates reactions during
enlarge
step in parallel fashion (rmgpy.rmg.react
) - Enables concurrent computing for QMTP thermochemistry calculations (
rmgpy.thermo.thermoengine
) - Instructions of running RMG parallel mode can be found
here for SLURM scheduler
andhere for SGE scheduler
.
- Generates reactions during
- Polycyclic thermochemistry estimation improved:
- Extends group additivity method for polycyclics and estimates polycyclics of any large sizes by a heuristic method (bicyclics decomposition)
- New tree averaging for kinetics:
- Fixes previous issue of imcomplete generation of cross-level rate rules
- Implements Euclidean distance algorithm for the selection of the best rate rules to use in
estimateKinetics
- Streamlines storage of kinetics comments for averaged rules, which can be analyzed by
extractSourceFromComments
- Database entry accessibility tests:
- Adds entry accessibility tests for future entries (
testing.databaseTest
)
- Adds entry accessibility tests for future entries (
- Fixes bugs
- fluxdiagram generation is now fixed, one can use it to generate short video of fluxdigram evolution
- mac environment yml file is introduced to make sure smooth RMG-Py installation and jobs on mac
- fixes failure of
checkForExistingSpecies
for polyaromatics species - fixes execution failure when both pruning and pDep are turned on
- fixes pDep irreversible reactions
- fixes issue of valency of
Cbf
atom by dynamic benzene bond order assignment
RMG-Py v1.0.5
Update documentation sidebar to match website Update descriptions and links to reflect recent website changes.
RMG-Py v1.0.4
- IPython notebooks now found in the
ipython
folder and contains useful illustrative examples. Requires the installation of jupyter via the commandconda install jupyter
- Cantera support in RMG:
- New module found in
rmgpy.tools.canteraModel
, which provides functions to help simulate RMG models using Cantera instead of native RMG solvers. - Has capability to generate cantera conditions and convert CHEMKIN files to cantera models, or use RMG to directly convert species and reactions objects to Cantera objects.
- Demonstrative example found in
ipython/canteraSimulation.ipynb
- New module found in
- Module for regression testing of models generated by RMG
- This new module is found at
rmgpy.tools.observableRegression
and helps identify differences between different versions of models generated by RMG, using the "observables" that the user cares about (i.e. main species mole fractions). Runs simulations via cantera.
- This new module is found at
- Automatic plotting of simulations and sensitivities when generating models
- Automatic plotting of simulations in the job's
solver
folder whensaveSimulationProfiles
is set toTrue
in the input file. - Sensitivities for top 10 most sensitivie reactions and thermo now plotted automatically and stored in the
solver
folder. - New
rmgpy.tools.plot
module contains plotting classes useful for plotting simulations, sensitivities, and other data
- Automatic plotting of simulations in the job's
- CHEMKIN files are now read literally: unlisted bath gases are not added when loading a chemkin file
- Functionality to assist in saving training reactions and thermo groups to RMG (see ipython notebook scripts in
RMG-database/scripts/
for working examples) - Improved thermochemistry estimation (mostly for cyclics and polycyclics)
- Add rank as an additional attribute in thermo database entries to determine trustworthiness
- Fixes ring group retrieval when multiple rings or polycyclic rings are found in a single molecule
- Changes to resonance isomer generation to fixes aromatic crashes and print more debugging information
- Bug fixes:
- Crashes with a useful error message when a Reaction Library and Seed Mechanism contains more than 3 reactants or products
- Initial mole fractions get handled as floats to prevent integer division errors, and a useful message about renormalization is printed
- Training reactions now load successfully regardless of
generateSpeciesConstraints
parameters (#602) - Transport data is now saved correctly to CHEMKIN
tran.dat
file and also imports successfully - Fixes appending of reactions to CHEMKIN file when reaction libraries are desired to be appended to output
- Fixes writing of csv files for simulation and sensitivity results in Windows
- Reverts the vertex connectivity value algorithm to prevent overflow errors
- Fixes
Reaction.draw()
function to draw the entire reaction rather than a single species
- Other fixes
- Enforces compatible versions of matplotlib and cantera in anaconda build
- Github pull requests from forked repo's will no longer fail Travis CI builds due to encrypted environment variable issues