Skip to main content

A SEAMM plug-in for simple, quick minimization

Project description

SEAMM QuickMin Plug-in

GitHub pull requests Build Status Code Coverage Code Quality Documentation Status PyPi VERSION

A SEAMM plug-in for simple, quick minimization

Features

QuickMin provides quick, simple optimization of molecular structures using one of a number of forcefields. It is intended for small systems, with no more than about 300 atoms. Beyond that size it will be rather slow, but more importantly larger systems typically have many local minima, often close to each other energetically, so the concept of the minimum structure is not very useful.

QuickMin uses OpenBabel for the minimization. There are currently five forcefields available:

  1. GAFF – the general AMBER force field

  2. MMFF94 – the Merck molecular force field

  3. MMFF94s – the Merck molecular force field for energy minimization

  4. Ghemical

  5. UFF – Universal force field

The first four have parameters for organic and biomolecular systems, while UFF attempts to cover the entire periodic table with reasonable accuracy. The more specialized forcefields tend to be more accurate, roughly in the order listed (though the two MMFF94 are essentially similar). By default QuickMin will try each of the forcefields in the order given until it finds one that can handle the given molecule. You can specify the forcefield to use; however, if it does not have parameters for your molecule, QuickMin will throw an error.

Acknowledgements

This package was created with the molssi-seamm/cookiecutter-seamm-plugin tool, which is based on the excellent Cookiecutter.

Developed by the Molecular Sciences Software Institute (MolSSI), which receives funding from the National Science Foundation under award CHE-2136142.

History

2024.5.7 – Bugfix: Corrected sign on gradients.
  • OpenBabel calls “forces” “gradients”, so needed to take the negative to get the actual gradients.

2024.5.3 – Added single point energy and Results.json
  • Added control to allow a single point energy as well as optimization. This supports using QuickMin with e.g energy scans.

  • Standardized the name of the energy to simply “energy” to better support other plug-ins and codes understanding the results.

2023.11.15 – Bugfix: structure handling

Error putting the coordinates into a newly created configuration.

2023.10.30 – Enhanced structure handling.

Switched to standard handling of structures, which adds ability to name with the IUPAC name, InCHI, and InChIKey in addition to previous methods.

2023.1.14 – Changed documentation to new style and theme.

Switched the documentation to the MolSSI theme and diátaxis layout, though more work is needed.

2022.11.7 – Internal Release

Switching from LGTM code analysis to GitHub Actions using CodeQL, since LGTM is shutting down!

2022.10.23 – Properties added

Added a single property, ‘total energy#QuickMin#<forcefield>’, to store the final energy in the database. Also added ‘total energy’ as a result for tables or variables.

2022.10.22 – Documentation!

Got the documentation into reasonable shape.

2022.10.20 – Initial Release!

Provides quick minimization for smaller molecules, using OpenBabel. Probably reasonable for some few hundred atoms. Supports the following forcefields:

  1. GAFF

  2. MMFF94 & MMFF94s (which is optimized for minimization)

  3. Ghemical

  4. UFF

The default is the “best available” forcefield, which tries them in the order given above until it finds one that can handle the molecule.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

quickmin_step-2024.5.7.tar.gz (310.6 kB view hashes)

Uploaded Source

Built Distribution

quickmin_step-2024.5.7-py2.py3-none-any.whl (20.8 kB view hashes)

Uploaded Python 2 Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page