Releases: ReactionMechanismGenerator/RMG-Py
Releases · ReactionMechanismGenerator/RMG-Py
RMG-Py v2.1.8
-
New features:
- Chlorine and iodine atom types have been added, bringing support for these elements to RMG-database
- Forbidden structures now support Molecule and Species definitions in addition to Group definitions
-
Changes:
- Reaction pair generation will now fall back to generic method instead of raising an exception
- Removed sensitivity.py script since it was effectively a duplicate of simulate.py
- Thermo jobs in Cantherm now output a species dictionary
- Fitted atom energy corrections added for B3LYP/6-31g**
- Initial framework added for hydrogen bonding
- Renamed molepro module and associated classes to molpro (MolPro) to match actual spelling of the program
- Chemkin module is now cythonized to improve performance
-
Fixes:
- Allow delocalization of triradicals to prevent hysteresis in resonance structure generation
- Fix reaction comment parsing issue with uncertainty analysis
- Fix numerical issue causing a number of pressure dependent RMG jobs to crash
- Template reactions from seed mechanisms are now loaded as library reactions if the original family is not loaded
- Fix issues with degeneracy calculation for identical reactants
RMG-Py v2.1.7
-
Charged atom types:
- Atom types now have a charge attribute to cover a wider range of species
- New atom types added for nitrogen and sulfur groups
- Carbon and oxygen atom types renamed following new valence based naming scheme
-
Ring perception:
- Ring perception methods in the Graph class now use RingDecomposerLib
- This includes the getSmallestSetOfSmallestRings methods and a newly added getRelevantCycles method
- The set of relevant cycles is unique and generally more useful for chemical graphs
- This also fixes inaccuracies with the original SSSR method
-
Other changes:
- Automatically load reaction libraries when using a seed mechanism
- Default kinetics estimator has been changed to rate rules instead of group additivity
- Kinetics families can now be set to be irreversible
- Model enlargement now occurs after each reactor simulation rather than after all of them
- Updated bond additivity corrections for CBS-QB3 in Cantherm
-
Fixes:
- Do not print SMILES when raising AtomTypeError to avoid further exceptions
- Do not recalculate thermo if a species already has it
- Fixes to parsing of family names in seed mechanisms
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