Skip to content

Releases: ReactionMechanismGenerator/RMG-Py

RMG-Py v2.1.6

02 May 15:44
Compare
Choose a tag to compare
  • 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

02 May 15:42
Compare
Choose a tag to compare
  • 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

02 May 15:41
Compare
Choose a tag to compare
  • 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

02 May 15:40
Compare
Choose a tag to compare
  • 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

02 May 15:39
Compare
Choose a tag to compare
  • 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

02 May 15:38
Compare
Choose a tag to compare
  • 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

08 Mar 20:43
Compare
Choose a tag to compare

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
  • 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

RMG-Py v2.0.0

17 Sep 19:49
Compare
Choose a tag to compare

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 and here for SGE scheduler.
  • 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)
  • 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

22 Aug 14:07
Compare
Choose a tag to compare
Update documentation sidebar to match website

Update descriptions and links to reflect recent website changes.

RMG-Py v1.0.4

29 Mar 12:48
Compare
Choose a tag to compare
  • IPython notebooks now found in the ipython folder and contains useful illustrative examples. Requires the installation of jupyter via the command conda 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
  • 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.
  • Automatic plotting of simulations and sensitivities when generating models
    • Automatic plotting of simulations in the job's solver folder when saveSimulationProfiles is set to True 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
  • 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