Psi Phi Package
Do you need RDKit? Do you need quantum chemistry? We got you. This package is a simple bridge between RDKit and quantum chemistry (QC) packages that lack Python interfaces.
Current version has calculator wrappers for
- GAMESS
- Gaussian
- MNDO
- MOPAC
- Orca
- xTB
Example
Assume all codesnippets below are using RDKit molecule objs.
molecule = Chem.MolFromSmiles("O")
Chem.AddHydrogens(molecule)
AllChem.UFFOptimizeMolecule(molecule)
The simple usage is to make an instance of a QC software. For example, using the popular package xTB, you can define the amount of cores to allocate and the exact path to the executable.
from ppqm import XtbCalculator
xtb = XtbCalculator(cmd="xtb", cores=4)
The format for running calculations are based on Python dictionaries, which are translated into the right format. So for example running a GFN2 optimization in water, the input would be
# Define the calculation
optimize_options = {
"gfn": 2,
"alpb": "h2o",
"opt": None,
}
# Run the calculation
results = xtb.calculate(molecule, optimize_options)
# Results is a List of Dict properties
for i, propeties in enumerate(results):
print(f"Conformer {i} properties: {properties}")
For more documentation by example, checkout the notebooks/ directory.
Contributions
Fork, branch and use pre-commit.
Other code bases
"is this the first python wrapper for quantum chemistry?" No, check the others and find the one right for your project. Know one, not on the list? Add it. In alphabetic order.
Future work
- Separation of concern. The ppqm package should adapt to using
cclibor similar to collect quantum output.
Metadata
Release files for ppqm 0.1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| ppqm-0.1.0.tar.gz | 55.3 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| ppqm-0.1.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 122.2 kB
Release files / ppqm-0.1.0.tar.gz
| Download URL | ppqm-0.1.0.tar.gz |
|---|---|
| Size | 55.3 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
2dc1af04c77de4d62b10e8f3036e0f389284b1ba783dab822cc3b952ddf9b896
|
|
BLAKE2b-256 checksum How to use checksums |
0b826b75326376662309d76725b4f503ac1d7fafbebdd9e0d81125a519eb85ec
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.12.13
|
Release files / ppqm-0.1.0-py3-none-any.whl
| Download URL | ppqm-0.1.0-py3-none-any.whl |
|---|---|
| Size | 66.9 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
caee4e8550724d27b2338044cedcfa2312c88bd1e7d506b2d680fd4a7d73a220
|
|
BLAKE2b-256 checksum How to use checksums |
1cb231428fc30ab0d933e348a4536ee5a52ccd36550bd28c9dfac69054c74c36
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.12.13
|