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.3.2.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.3.2-py3-none-any.whl (40.5 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for mindlessgen-0.3.2.tar.gz
Algorithm Hash digest
SHA256 d150a49b833e2fc3a11586e3e3df4950547bf563d49d0ed8a49e67ce806c9a1b
MD5 2b7223370038948ce89b180694065d11
BLAKE2b-256 5ec835e7f7b8be017d97194aea4031d16169c06a54d5105b3587b22541f2e092

See more details on using hashes here.

File details

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

File metadata

  • Download URL: mindlessgen-0.3.2-py3-none-any.whl
  • Upload date:
  • Size: 40.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.12.5

File hashes

Hashes for mindlessgen-0.3.2-py3-none-any.whl
Algorithm Hash digest
SHA256 f23332134be13b0110133600d50b0b11be25ed30bd8038612db51ddf6c5d1d7f
MD5 c31ccc620afb2f95486ce5fc34b8450b
BLAKE2b-256 04bfb77f75cc03f944bf06e4c1a46d5f4865df0d5ed0de8c4ad0a6f0906b1372

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