A package for parsing Quantum Chemistry program file outputs into structured qcio data objects.
Project description
qcparse
A library for parsing Quantum Chemistry output files into structured data objects and converting structured input objects into program-native input files. Uses data structures from qcio.
qcparse
works in harmony with a suite of other quantum chemistry tools for fast, structured, and interoperable quantum chemistry.
The QC Suite of Programs
- qcio - Beautiful and user friendly data structures for quantum chemistry.
- qcparse - A library for efficient parsing of quantum chemistry data into structured
qcio
objects and conversion ofqcio
input objects to program-native input files. - qcop - A package for operating quantum chemistry programs using
qcio
standardized data structures. Compatible withTeraChem
,psi4
,QChem
,NWChem
,ORCA
,Molpro
,geomeTRIC
and many more. - BigChem - A distributed application for running quantum chemistry calculations at scale across clusters of computers or the cloud. Bring multi-node scaling to your favorite quantum chemistry program.
ChemCloud
- A web application and associated Python client for exposing a BigChem cluster securely over the internet.
✨ Basic Usage
-
Installation:
python -m pip install qcparse
-
Parse a file into a
SinglePointResults
object with a single line of code.from qcparse import parse # May pass a path or the contents of a file as string/bytes results = parse("terachem", "/path/to/stdout.log")
-
The
results
object will be aqcio.SinglePointResults
object. Rundir(results)
inside a Python interpreter to see the various values you can access. A few prominent values are shown here as an example:from qcparse import parse results = parse("/path/to/tc.out", "terachem") results.energy results.gradient # If a gradient calc results.hessian # If a hessian calc results.calcinfo_nmo # Number of molecular orbitals
-
Parsed values can be written to disk like this:
with open("results.json", "w") as f: f.write(result.model_dumps_json())
-
And read from disk like this:
from qcio import SinglePointResults results = SinglePointResults.open("results.json")
-
You can also run
qcparse
from the command line like this:qcparse -h # Get help message for cli qcparse terachem ./path/to/tc.out > results.json # Parse TeraChem stdout to json
💻 Contributing
Please see the contributing guide for details on how to contribute new parsers to this project :)
If there's data you'd like parsed from output files or want to support input files for a new program, please open an issue in this repo explaining the data items you'd like parsed and include an example output file containing the data, like this.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file qcparse-0.6.4.tar.gz
.
File metadata
- Download URL: qcparse-0.6.4.tar.gz
- Upload date:
- Size: 14.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/5.1.1 CPython/3.12.7
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 3db21e5b8dc3b46786ef1765e546958f43c9378cfd5127ee9bfcd473fceb2907 |
|
MD5 | 23cb4ff1d9c8d3f7252d9413ffec6ffe |
|
BLAKE2b-256 | 0b9f0f4f2767121c0351ead014aae4699a13fd430514caa5360ed2a3a55d3b12 |
File details
Details for the file qcparse-0.6.4-py3-none-any.whl
.
File metadata
- Download URL: qcparse-0.6.4-py3-none-any.whl
- Upload date:
- Size: 17.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/5.1.1 CPython/3.12.7
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 0904a8970e1ef2714f4d976f0af1b4a3402fca756d1003a181c67ae188daa164 |
|
MD5 | 644243259e511db146efa3d77815fe8a |
|
BLAKE2b-256 | 3ea6d946a980abb94f4667c8c3b714541c56540f839bf2cf8a8bfc8bf317228d |