Skip to main content

A package for calculating QED scores, molecular descriptors, and optimized geometry descriptors for libraries of small molecules.

Project description

molmetrics

GitHub Actions Build Status codecov PyPI version

A package for calculating QED scores, molecular descriptors, and optimized geometry descriptors for libraries of small molecules.

Installation

You can install the latest release of molmetrics from PyPI using pip:

pip install molmetrics

For the best experience, it is recommended to use a virtual environment (such as venv or conda).

Conda environment (recommended for reproducibility)

A sample conda environment file is provided at devtools/conda-envs/test_env.yaml. To create and activate the environment:

conda env create -f devtools/conda-envs/test_env.yaml
conda activate molmetrics-test

This will install all required dependencies for development and testing.

Command line options

    -h, --help            show this help message and exit
    -d DIRECTORY, --directory DIRECTORY
                        Path to a directory containing input files (.sdf, .csv, .xlsx, .pkl).
    -f FILE [FILE ...], --file FILE [FILE ...]
                        Path(s) to input file(s) (.sdf, .csv, .xlsx, .pkl). Example: -f file1.sdf file2.csv
    -o OUT, --out OUT     Path to output directory. (Default=directory of input file)
    -c COLUMN, --column COLUMN
                        Name/substring of column containing SMILES strings. (Default=SMILES)
    -s [SUBSTRUCTURES ...], --substructures [SUBSTRUCTURES ...]
                        Provide SMARTS substructure to remove before calculating properties. Use 'diazirine_handle' to
                        remove diazarne FFF handles. (Default=None)
    -p, --properties      Adds QED properties to outputs. (Default=False)
    -md, --moldescriptors
                        Adds selected molecular descriptors to outputs. (Default=False)
    -g, --geometry        Adds NPR1, NPR2, and geometry descriptor to outputs. NOTE: This feature is resource intensive,
                        using the --conformers argument to decrease the required resources. (Default=False)
    -rs RANDOM_SEED, --random_seed RANDOM_SEED
                        Random seed for ETKDGv3 conformer generation. (Default=1789)
    -ft FORCE_TOLERANCE, --force_tolerance FORCE_TOLERANCE
                        Optimizer force tolerance for ETKDGv3 conformer optimization. Use 0.0135 for faster
                        performance. (Default=0.001)
    -pt PRUNE_THRESH, --prune_thresh PRUNE_THRESH
                        RMSD (Å) threshold for filtering conformers during ETKDGv3 generation. Conformers below this
                        threshold are discarded to reduce redundancy. (Default=0.1)
    -cf NUM_CONFORMERS, --num_conformers NUM_CONFORMERS
                        Number of conformers to generate using ETKDGv3. (Default=1000)
    -er ENERGY_RANGE, --energy_range ENERGY_RANGE
                        Energy range in kcal/mol for Boltzmann averaging. (Default=3.0)
    -ni, --no_img         Include 3D molecule images from the output XLSX. (Default=False)

Output files

Molmetrics generates 4 output files.

    XXX_qed.xlsx        # Spreadsheet of all molecular properties calculated with 2D and 3D molecular visualizations.
    XXX_qed.html        # Spreadsheet of all molecular properties calculated with 2D and 3D molecular visualizations.
    XXX_conformers.pkl  # Saved RDKIT mol objects with embedded and optimized conformers.
    XXX_qed.sdf         # Optimized conformer of molecule with embedded molecular properties.

Copyright

Copyright (c) 2025, Seth D. Veenbaas

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

molmetrics-1.0.0.tar.gz (21.6 kB view details)

Uploaded Source

Built Distribution

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

molmetrics-1.0.0-py3-none-any.whl (22.2 kB view details)

Uploaded Python 3

File details

Details for the file molmetrics-1.0.0.tar.gz.

File metadata

  • Download URL: molmetrics-1.0.0.tar.gz
  • Upload date:
  • Size: 21.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for molmetrics-1.0.0.tar.gz
Algorithm Hash digest
SHA256 e538f06aa74068f59d985febed5bb3a1de2cccd3db55593a942af2ed75f2d9be
MD5 3e8d9d2cadbcc6f51e4ce36116eae04d
BLAKE2b-256 bc7726c463673f2edc44fbe799392ed33b18c2f2623b11e315ba869b85b041c5

See more details on using hashes here.

Provenance

The following attestation bundles were made for molmetrics-1.0.0.tar.gz:

Publisher: publish.yaml on Weeks-UNC/molmetrics

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file molmetrics-1.0.0-py3-none-any.whl.

File metadata

  • Download URL: molmetrics-1.0.0-py3-none-any.whl
  • Upload date:
  • Size: 22.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for molmetrics-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 b43e499224c110abfec142cab5495626f1f87b5c5df434f7f049e51b35d7c2b5
MD5 9b6ab533b5ed2f8a9d0544c87eeb9864
BLAKE2b-256 a33d42910a2463208b2715c50eb2a2f0d8265ba964765e77df1c6c60ea637aa1

See more details on using hashes here.

Provenance

The following attestation bundles were made for molmetrics-1.0.0-py3-none-any.whl:

Publisher: publish.yaml on Weeks-UNC/molmetrics

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

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