ThermoScreening

PyPI version Supported Python versions License Build status Code coverage

ThermoScreening computes molecular thermochemistry and screens sets of molecules. It drives DFTB+ and GFN-xTB (or imports DFT results from ORCA, Gaussian, Turbomole and PySCF), runs geometry optimisation, Hessian and normal-mode analysis, and evaluates the ideal-gas thermochemistry – entropy, enthalpy, Gibbs free energy, heat capacity – with implicit solvation, quasi-RRHO, conformer ensembles, reaction/redox free energies, and transition-state kinetics.

from ase.build import molecule
from ThermoScreening.thermo.api import dftbplus_thermo
from ThermoScreening.calculator.dftbplus import dftb_3ob_parameters

thermo = dftbplus_thermo(molecule("H2O"), **dftb_3ob_parameters)
print(thermo.total_entropy("cal/(mol*K)"))   # ~45 cal/mol/K
print(thermo.total_gibbs_free_energy("H"))   # Hartree
$ thermo screen molecules/ --parameter-set 3ob --solvent water --quasi-rrho --jobs 4

New to ThermoScreening? Start with Installation and Usage.

Features

Engines

DFTB+ (3ob / mio), GFN-xTB via tblite, and the native xtb binary (open-shell radicals, charge, implicit solvation).

Or import DFT-quality results from ORCA, Gaussian, Turbomole (via cclib) and PySCF.

Configuration
Thermochemistry

Entropy, enthalpy, Gibbs free energy and heat capacity, validated against ASE IdealGasThermo and native xtb. GBSA/ALPB implicit solvation, spin polarisation, and Grimme’s quasi-RRHO entropy.

Usage
Reactions & redox

Reaction free energies, one-electron reduction potentials, and a parallel three-state workflow with physical reference calibration and provenance.

Usage
Kinetics

Transition-state thermochemistry, Eyring rate constants, and a Wigner tunneling correction from a saddle point’s imaginary mode.

Usage
Batch screening

Screen a directory or CSV manifest with local processes or HPC job arrays, per-molecule error isolation, validated collection, --resume, and ranking by Gibbs free energy.

Usage
Conformers & ensembles

Generate conformers from SMILES (RDKit ETKDG) and combine them into Boltzmann-weighted ensemble thermochemistry.

Usage

Indices