Skip to main content

A library of QSAR descriptors calculation using ORCA script

Project description

ORCA Descriptors

A Python library for automatic calculation of quantum chemical descriptors for QSAR analysis using ORCA quantum chemistry software.

Installation

Using pip

pip install orca-descriptors

Using Poetry (development)

poetry install

Usage

As a Python Library

from orca_descriptors import Orca
from rdkit.Chem import MolFromSmiles, AddHs

# Initialize ORCA calculator
orca = Orca(
    script_path="orca",
    functional="PBE0",
    basis_set="def2-SVP",
    method_type="Opt",
    dispersion_correction="D3BJ",
    solvation_model="COSMO(Water)",
    n_processors=8,
)

# Create molecule from SMILES using RDKit
mol = AddHs(MolFromSmiles("C1=CC=CC=C1"))

# Calculate descriptors
homo = orca.homo_energy(mol)
lumo = orca.lumo_energy(mol)
gap = orca.gap_energy(mol)

As a Command-Line Utility

After installation, you can use orca_descriptors as a command-line tool:

Run Benchmark

Calibrate time estimation by running a benchmark calculation. The benchmark uses benzene (C1=CC=CC=C1) as a standard test molecule for machine calibration:

orca_descriptors run_benchmark

Estimate Calculation Time

Estimate calculation time for a molecule without running the actual calculation:

orca_descriptors approximate_time --molecule C1=CC=CC=C1

Automatic Parameter Scaling: The time estimation automatically scales benchmark data for different parameters (number of processors, functional, basis set). You don't need to re-run the benchmark if you change these parameters - the system will automatically recalculate the estimated time based on the existing benchmark data.

For example:

  • If benchmark was run with 1 processor, estimation for 4 processors will automatically account for parallel efficiency
  • If benchmark used def2-SVP, estimation for def2-TZVP will scale based on basis set size (O(N^3.5) scaling)
  • Different functionals are scaled based on their relative computational costs

Available Parameters

All parameters from the Orca class are available as command-line arguments:

  • --script_path: Path to ORCA executable (default: 'orca')
  • --working_dir: Working directory for calculations (default: current directory)
  • --output_dir: Directory for output files (default: current directory)
  • --functional: DFT functional (default: PBE0)
  • --basis_set: Basis set (default: def2-SVP)
  • --method_type: Calculation type: Opt, SP, or Freq (default: Opt)
  • --dispersion_correction: Dispersion correction, e.g., D3BJ (default: D3BJ). Use 'None' to disable.
  • --solvation_model: Solvation model, e.g., 'COSMO(Water)' (default: None). Use 'None' to disable.
  • --n_processors: Number of processors (default: 1)
  • --max_scf_cycles: Maximum SCF cycles (default: 100)
  • --scf_convergence: SCF convergence threshold (default: 1e-6)
  • --charge: Molecular charge (default: 0)
  • --multiplicity: Spin multiplicity (default: 1)
  • --cache_dir: Directory for caching results (default: output_dir/.orca_cache)
  • --log_level: Logging level: DEBUG, INFO, WARNING, ERROR (default: INFO)
  • --max_wait: Maximum time to wait for output file creation in seconds (default: 300)

Example Commands

# Run benchmark with custom parameters (uses benzene as standard test molecule)
orca_descriptors run_benchmark \
    --functional PBE0 \
    --basis_set def2-SVP \
    --n_processors 4 \
    --working_dir ./calculations

# Estimate time for optimization calculation
orca_descriptors approximate_time \
    --molecule CCO \
    --method_type Opt \
    --n_opt_steps 20 \
    --functional PBE0 \
    --basis_set def2-TZVP \
    --n_processors 8

Requirements

  • Python >= 3.10
  • ORCA 6.0.1 installed and available in PATH
  • RDKit >= 2023.0.0

License

See LICENSE.md

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

orca_descriptors-0.1.0.tar.gz (22.3 kB view details)

Uploaded Source

Built Distribution

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

orca_descriptors-0.1.0-py3-none-any.whl (25.6 kB view details)

Uploaded Python 3

File details

Details for the file orca_descriptors-0.1.0.tar.gz.

File metadata

  • Download URL: orca_descriptors-0.1.0.tar.gz
  • Upload date:
  • Size: 22.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for orca_descriptors-0.1.0.tar.gz
Algorithm Hash digest
SHA256 a38bbd0e304477dd1eb9c41e4cc401b58d24e653d8e63bacf12ca03d8ed0cb53
MD5 64c61fa6c609379d23392eea330eb601
BLAKE2b-256 709f37db173a24e6731e4b7ea3a2137d0f45593069f0acf27df8edc0ddfd9969

See more details on using hashes here.

Provenance

The following attestation bundles were made for orca_descriptors-0.1.0.tar.gz:

Publisher: publish.yml on MassonNN/orca_descriptors

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

File details

Details for the file orca_descriptors-0.1.0-py3-none-any.whl.

File metadata

File hashes

Hashes for orca_descriptors-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 ece776c83ce9b546cfbd7bc667c62de0451c8c125a990a0dcf02d2116d0f32f8
MD5 3ffb30fb746d6f113816afe2dd8fc466
BLAKE2b-256 a9772e942913df0d2552212f1a83166719de79a6f69bc6246768cd7be2af2dd5

See more details on using hashes here.

Provenance

The following attestation bundles were made for orca_descriptors-0.1.0-py3-none-any.whl:

Publisher: publish.yml on MassonNN/orca_descriptors

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