qcparse


Nameqcparse JSON
Version 0.7.3 PyPI version JSON
download
home_pageNone
SummaryA package for parsing Quantum Chemistry program file outputs into structured qcio data objects.
upload_time2025-02-09 01:58:06
maintainerNone
docs_urlNone
authorColton Hicks
requires_python<4.0,>=3.9
licenseMIT
keywords
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # 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](https://github.com/coltonbh/qcio).

[![image](https://img.shields.io/pypi/v/qcparse.svg)](https://pypi.python.org/pypi/qcparse)
[![image](https://img.shields.io/pypi/l/qcparse.svg)](https://pypi.python.org/pypi/qcparse)
[![image](https://img.shields.io/pypi/pyversions/qcparse.svg)](https://pypi.python.org/pypi/qcparse)
[![Actions status](https://github.com/coltonbh/qcparse/workflows/Tests/badge.svg)](https://github.com/coltonbh/qcparse/actions)
[![Actions status](https://github.com/coltonbh/qcparse/workflows/Basic%20Code%20Quality/badge.svg)](https://github.com/coltonbh/qcparse/actions)
[![Ruff](https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/charliermarsh/ruff/main/assets/badge/v1.json)](https://github.com/charliermarsh/ruff)

`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](https://github.com/coltonbh/qcio) - Beautiful and user friendly data structures for quantum chemistry.
- [qcparse](https://github.com/coltonbh/qcparse) - A library for efficient parsing of quantum chemistry data into structured `qcio` objects and conversion of `qcio` input objects to program-native input files.
- [qcop](https://github.com/coltonbh/qcop) - A package for operating quantum chemistry programs using `qcio` standardized data structures. Compatible with `TeraChem`, `psi4`, `QChem`, `NWChem`, `ORCA`, `Molpro`, `geomeTRIC` and many more.
- [BigChem](https://github.com/mtzgroup/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](https://github.com/mtzgroup/chemcloud-server) and associated [Python client](https://github.com/mtzgroup/chemcloud-client) for exposing a BigChem cluster securely over the internet.

## ✨ Basic Usage

- Installation:

  ```sh
  python -m pip install qcparse
  ```

- Parse a file into a `SinglePointResults` object with a single line of code.

  ```python
  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 a `qcio.SinglePointResults` object. Run `dir(results)` inside a Python interpreter to see the various values you can access. A few prominent values are shown here as an example:

  ```python
  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:

  ```py
  with open("results.json", "w") as f:
      f.write(result.model_dumps_json())
  ```

- And read from disk like this:

  ```py
  from qcio import SinglePointResults

  results = SinglePointResults.open("results.json")
  ```

- You can also run `qcparse` from the command line like this:

  ```sh
  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](./CONTRIBUTING.md) 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](https://github.com/coltonbh/qcparse/issues/2).


            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "qcparse",
    "maintainer": null,
    "docs_url": null,
    "requires_python": "<4.0,>=3.9",
    "maintainer_email": null,
    "keywords": null,
    "author": "Colton Hicks",
    "author_email": "github@coltonhicks.com",
    "download_url": "https://files.pythonhosted.org/packages/e7/97/fd86195f927adef3cb5758e3bced8e23546f69d6b452938b49ee0f04fed2/qcparse-0.7.3.tar.gz",
    "platform": null,
    "description": "# qcparse\n\nA 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](https://github.com/coltonbh/qcio).\n\n[![image](https://img.shields.io/pypi/v/qcparse.svg)](https://pypi.python.org/pypi/qcparse)\n[![image](https://img.shields.io/pypi/l/qcparse.svg)](https://pypi.python.org/pypi/qcparse)\n[![image](https://img.shields.io/pypi/pyversions/qcparse.svg)](https://pypi.python.org/pypi/qcparse)\n[![Actions status](https://github.com/coltonbh/qcparse/workflows/Tests/badge.svg)](https://github.com/coltonbh/qcparse/actions)\n[![Actions status](https://github.com/coltonbh/qcparse/workflows/Basic%20Code%20Quality/badge.svg)](https://github.com/coltonbh/qcparse/actions)\n[![Ruff](https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/charliermarsh/ruff/main/assets/badge/v1.json)](https://github.com/charliermarsh/ruff)\n\n`qcparse` works in harmony with a suite of other quantum chemistry tools for fast, structured, and interoperable quantum chemistry.\n\n## The QC Suite of Programs\n\n- [qcio](https://github.com/coltonbh/qcio) - Beautiful and user friendly data structures for quantum chemistry.\n- [qcparse](https://github.com/coltonbh/qcparse) - A library for efficient parsing of quantum chemistry data into structured `qcio` objects and conversion of `qcio` input objects to program-native input files.\n- [qcop](https://github.com/coltonbh/qcop) - A package for operating quantum chemistry programs using `qcio` standardized data structures. Compatible with `TeraChem`, `psi4`, `QChem`, `NWChem`, `ORCA`, `Molpro`, `geomeTRIC` and many more.\n- [BigChem](https://github.com/mtzgroup/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.\n- `ChemCloud` - A [web application](https://github.com/mtzgroup/chemcloud-server) and associated [Python client](https://github.com/mtzgroup/chemcloud-client) for exposing a BigChem cluster securely over the internet.\n\n## \u2728 Basic Usage\n\n- Installation:\n\n  ```sh\n  python -m pip install qcparse\n  ```\n\n- Parse a file into a `SinglePointResults` object with a single line of code.\n\n  ```python\n  from qcparse import parse\n  # May pass a path or the contents of a file as string/bytes\n  results = parse(\"terachem\", \"/path/to/stdout.log\")\n  ```\n\n- The `results` object will be a `qcio.SinglePointResults` object. Run `dir(results)` inside a Python interpreter to see the various values you can access. A few prominent values are shown here as an example:\n\n  ```python\n  from qcparse import parse\n\n  results = parse(\"/path/to/tc.out\", \"terachem\")\n\n  results.energy\n  results.gradient # If a gradient calc\n  results.hessian # If a hessian calc\n\n  results.calcinfo_nmo # Number of molecular orbitals\n  ```\n\n- Parsed values can be written to disk like this:\n\n  ```py\n  with open(\"results.json\", \"w\") as f:\n      f.write(result.model_dumps_json())\n  ```\n\n- And read from disk like this:\n\n  ```py\n  from qcio import SinglePointResults\n\n  results = SinglePointResults.open(\"results.json\")\n  ```\n\n- You can also run `qcparse` from the command line like this:\n\n  ```sh\n  qcparse -h # Get help message for cli\n\n  qcparse terachem ./path/to/tc.out > results.json # Parse TeraChem stdout to json\n  ```\n\n## \ud83d\udcbb Contributing\n\nPlease see the [contributing guide](./CONTRIBUTING.md) for details on how to contribute new parsers to this project :)\n\nIf 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](https://github.com/coltonbh/qcparse/issues/2).\n\n",
    "bugtrack_url": null,
    "license": "MIT",
    "summary": "A package for parsing Quantum Chemistry program file outputs into structured qcio data objects.",
    "version": "0.7.3",
    "project_urls": {
        "Homepage": "https://github.com/coltonbh/qcparse",
        "Repository": "https://github.com/coltonbh/qcparse"
    },
    "split_keywords": [],
    "urls": [
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "dbfa4702c43c7392c9a73420007210fb7a6c9084574b5056eb6b5bb5db5bb569",
                "md5": "92ef964c0a0b95e30ddd9817c3628e64",
                "sha256": "656555b71c589569803706f1e0b335fcc3df4096fa183e5dc6bd977f24e3c93d"
            },
            "downloads": -1,
            "filename": "qcparse-0.7.3-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "92ef964c0a0b95e30ddd9817c3628e64",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": "<4.0,>=3.9",
            "size": 18659,
            "upload_time": "2025-02-09T01:58:02",
            "upload_time_iso_8601": "2025-02-09T01:58:02.771400Z",
            "url": "https://files.pythonhosted.org/packages/db/fa/4702c43c7392c9a73420007210fb7a6c9084574b5056eb6b5bb5db5bb569/qcparse-0.7.3-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "e797fd86195f927adef3cb5758e3bced8e23546f69d6b452938b49ee0f04fed2",
                "md5": "e2f83e6a1b67a8b98fd50de45739bd3a",
                "sha256": "a1143e817a7b45ff6c2dab37f9898dbf5197780b262c5e046968c04b9a6548e9"
            },
            "downloads": -1,
            "filename": "qcparse-0.7.3.tar.gz",
            "has_sig": false,
            "md5_digest": "e2f83e6a1b67a8b98fd50de45739bd3a",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": "<4.0,>=3.9",
            "size": 15071,
            "upload_time": "2025-02-09T01:58:06",
            "upload_time_iso_8601": "2025-02-09T01:58:06.645170Z",
            "url": "https://files.pythonhosted.org/packages/e7/97/fd86195f927adef3cb5758e3bced8e23546f69d6b452938b49ee0f04fed2/qcparse-0.7.3.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2025-02-09 01:58:06",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "coltonbh",
    "github_project": "qcparse",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "lcname": "qcparse"
}
        
Elapsed time: 1.31235s