Skip to main content

Mindless Molecule GENerator

Project description

Mindless Molecule Generator

CI Apache-2.0 Python Versions

mindlessgen is a Python-based program for semi-automated generation of "mindless" small molecules, as described here. The rule-based algorithm places atoms randomly within the coordinate space and applies several optimization, fragment detection, and sanity check steps. The program is mainly controlled via a TOML configuration file, see below for details.

Installation

[!IMPORTANT] xtb (see here) has to be available on your machine, either via a conda-forge installation, a release binary, or compiled from source. If post-processing with DFT is desired, also orca (see here) has to be available.

Non-development purposes

The project can be simply installed in an existing virtual environment (by, e.g., conda or mamba (see also here and here)) with

pip install .

A matching Python environment can be set up and activated via the following command using the tools above:

mamba create -n mindlessgen python=3.12
mamba activate mindlessgen

Development purposes

For working on the code of mindlessgen, the following setup is recommended:

mamba create -n mindlessgen python=3.12
mamba activate mindlessgen
pip install -e '.[dev]'

Thereby, all necessary development tools (e.g., ruff, mypy, tox, pytest, and pre-commit) are installed. Before start to make changes in the code, activate the pre-commit hooks via:

pre-commit install

Before pushing a commit to the repository, please run also the optional tests, which depend on external dependencies like xtb, via

pytest -vv --optional

Further information on how to contribute to this project can also be found in the contribution guidelines.

Usage

[!WARNING] mindlessgen may still be subject to API changes.

mindlessgen can be executed after installation in the desired environment via:

mindlessgen -h

This command displays all command line options in the terminal. In addition, all commands are accessible via the TOML configuration file. The template configuration file in the root directory of the repository contains comprehensive explanations for each of the available configuration keys. If its path is not given via -c/--config, the configuration file "mindlessgen.toml" is searched in the following paths in ascending order:

  1. Current working directory (e.g., $CWD)
  2. Home directory (e.g., $USER/)

The active configuration can be printed using --print-config.

When using the program for academic purposes, please cite:

J. Chem. Theory Comput. 2009, 5, 4, 993–1003

or in BibTeX format:

@article{doi:10.1021/ct800511q,
author = {Korth, Martin and Grimme, Stefan},
title = {“Mindless” DFT Benchmarking},
journal = {Journal of Chemical Theory and Computation},
volume = {5},
number = {4},
pages = {993-1003},
year = {2009},
doi = {10.1021/ct800511q},
note ={PMID: 26609608},
URL = {https://doi.org/10.1021/ct800511q},
eprint = {https://doi.org/10.1021/ct800511q}
}

One-page overview

One-pager overview

Acknowdledgements

T. Gasevic for creating an initial GitHub migration of the code and providing important adjustments to the workflow. S. Grimme and M. Korth for the original code written in Fortran associated to the publication in J. Chem. Theory Comput..

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

mindlessgen-0.4.0.tar.gz (2.1 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

mindlessgen-0.4.0-py3-none-any.whl (40.6 kB view details)

Uploaded Python 3

File details

Details for the file mindlessgen-0.4.0.tar.gz.

File metadata

  • Download URL: mindlessgen-0.4.0.tar.gz
  • Upload date:
  • Size: 2.1 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/5.1.1 CPython/3.12.6

File hashes

Hashes for mindlessgen-0.4.0.tar.gz
Algorithm Hash digest
SHA256 0aa9e15e12ab151422575edae028f178ae163df7746533c8e3d5af3695fefee7
MD5 11dfa8c25277029b8419262971c42019
BLAKE2b-256 d6c4f867d9c9c26dc233a69d50d189bbf8303ad5c00d26b4c88e78ae8a3a6d35

See more details on using hashes here.

File details

Details for the file mindlessgen-0.4.0-py3-none-any.whl.

File metadata

  • Download URL: mindlessgen-0.4.0-py3-none-any.whl
  • Upload date:
  • Size: 40.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/5.1.1 CPython/3.12.6

File hashes

Hashes for mindlessgen-0.4.0-py3-none-any.whl
Algorithm Hash digest
SHA256 b508c95deb4b1b6ec1450677adfd0c8b29e7340c5125c33834182d38771744e4
MD5 1af2b9497964003316bbaa70419b2720
BLAKE2b-256 a58f20c73e743765e35b4841ca7df7c9980d97993b84505647324e79f363a59c

See more details on using hashes here.

Supported by

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