# ThotPy v5.5.1
## IMPORTANT NOTICE
ThotPy has been imported to [Aton](https://github.com/pablogila/Aton/). All the development will continue in the Aton repo. This ThotPy repo is only left for retrocompatibility and will not be updated.
# ThotPy (Legacy)
Welcome to the **T**ext en**H**ancement & **O**ptimization for scien**T**ific research with **Py**thon; or just **ThotPy**, as the modern incarnation of the ancient Egyptian god of writing and wisdom, [Thot](https://en.wikipedia.org/wiki/Thoth).
This Python3 package allows you to easily create, edit and analyse all kinds of text files, with a special focus on *ab-initio* calculations. In particular, it contains interfaces for [Quantum ESPRESSO](https://www.quantum-espresso.org/), [Phonopy](https://phonopy.github.io/phonopy/) and [CASTEP](https://castep-docs.github.io/castep-docs/).
Check the [full documentation online](https://pablogila.github.io/ThotPy/).
# Installation
As always, it is recommended to install your packages in a virtual environment:
```bash
python3 -m venv .venv
source .venv/bin/activate
```
## With pip
The fastest way to install ThotPy is to use pip:
```bash
pip install thotpy
```
## From source
Optionally, you can install ThotPy from the [GitHub repository](https://github.com/pablogila/ThotPy/).
Like its ancient Egyptian counterpart, ThotPy is *married* to [MaatPy](https://github.com/pablogila/MaatPy), another Python package with useful physico-chemical definitions and spectral analysis tools. Pip automatically installs MaatPy as a dependency, but it must be installed before you can build from source.
To install the dependencies:
```bash
pip install pandas maatpy
```
Then clone the repository or download the [latest stable release](https://github.com/pablogila/ThotPy/tags) as a ZIP, unzip it, and run inside the `ThotPy/` directory:
```bash
pip install .
```
# Documentation
Check the [full ThotPy documentation online](https://pablogila.github.io/ThotPy/).
An offline version of the documentation is available in `docs/thotpy.html`.
Code examples are included in the `examples/` folder.
## Submodules
ThotPy contains the following submodules for general text operations:
- [file](https://pablogila.github.io/ThotPy/thotpy/file.html). Manipulate files.
- [find](https://pablogila.github.io/ThotPy/thotpy/find.html). Search for specific content in a text file.
- [text](https://pablogila.github.io/ThotPy/thotpy/text.html). Manipulate text files.
- [extract](https://pablogila.github.io/ThotPy/thotpy/extract.html). Extract data from raw text strings.
- [call](https://pablogila.github.io/ThotPy/thotpy/call.html). Run bash scripts and related.
Along with the [core](https://pablogila.github.io/ThotPy/thotpy/core.html) submodule with common utilities.
## Interfaces for ab-initio codes
The following interfaces for *ab-initio* codes are included:
- [qe](https://pablogila.github.io/ThotPy/thotpy/qe.html). Interface for [Quantum ESPRESSO](https://www.quantum-espresso.org/) calculations.
- [phonopy](https://pablogila.github.io/ThotPy/thotpy/phonopy.html). Interface for [Phonopy](https://phonopy.github.io/phonopy/) calculations.
- [castep](https://pablogila.github.io/ThotPy/thotpy/castep.html) Interface for [CASTEP](https://castep-docs.github.io/castep-docs/) calculations.
# Contributing
If you are interested in opening an issue or a pull request, please feel free to do so on [GitHub](https://github.com/pablogila/ThotPy/).
For major changes, please get in touch first to discuss the details.
## Code style
Please try to follow some general guidelines:
- Use a code style consistent with the rest of the project.
- Include docstrings to document new additions.
- Include tests for new features or modifications.
- Arrange function arguments by order of relevance. Most implemented functions follow something similar to `function(file, key/s, value/s, optional)`.
## Testing with PyTest
If you are modifying the source code, you should run the automated tests of the `tests/` folder to check that everything works as intended.
To do so, first install PyTest in your environment,
```bash
pip install pytest
```
And then run PyTest inside the `ThotPy/` directory,
```bash
pytest -vv
```
## Compiling the documentation
The documentation can be compiled automatically to `docs/thotpy.html` with [pdoc](https://pdoc.dev/) and ThotPy itself, by running:
```shell
python3 makedocs.py
```
# License
Copyright (C) 2024 Pablo Gila-Herranz
This program is free software: you can redistribute it and/or modify
it under the terms of the **GNU Affero General Public License** as published
by the Free Software Foundation, either version **3** of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
See the attached GNU Affero General Public License for more details.
Raw data
{
"_id": null,
"home_page": null,
"name": "thotpy",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3",
"maintainer_email": null,
"keywords": "python, thot, thotpy, thoth, thothpy, text, inputmaker, DFT, Density Functional Theory, MD, Molecular Dynamics, ab-initio, Quantum ESPRESSO, Phonopy",
"author": "Pablo Gila-Herranz",
"author_email": "pgila001@ikasle.ehu.eus",
"download_url": "https://files.pythonhosted.org/packages/c3/47/5d0b53e8e0fba95cbdce22f9626cff5d7df89115c820603a8921683f5b92/thotpy-5.5.1.tar.gz",
"platform": null,
"description": "# ThotPy v5.5.1\n\n## IMPORTANT NOTICE\n\nThotPy has been imported to [Aton](https://github.com/pablogila/Aton/). All the development will continue in the Aton repo. This ThotPy repo is only left for retrocompatibility and will not be updated.\n\n\n# ThotPy (Legacy)\n\nWelcome to the **T**ext en**H**ancement & **O**ptimization for scien**T**ific research with **Py**thon; or just **ThotPy**, as the modern incarnation of the ancient Egyptian god of writing and wisdom, [Thot](https://en.wikipedia.org/wiki/Thoth). \n\nThis Python3 package allows you to easily create, edit and analyse all kinds of text files, with a special focus on *ab-initio* calculations. In particular, it contains interfaces for [Quantum ESPRESSO](https://www.quantum-espresso.org/), [Phonopy](https://phonopy.github.io/phonopy/) and [CASTEP](https://castep-docs.github.io/castep-docs/). \n\nCheck the [full documentation online](https://pablogila.github.io/ThotPy/). \n\n\n# Installation\n\nAs always, it is recommended to install your packages in a virtual environment: \n```bash\npython3 -m venv .venv\nsource .venv/bin/activate\n```\n\n## With pip\n\nThe fastest way to install ThotPy is to use pip: \n```bash\npip install thotpy\n```\n\n## From source\n\nOptionally, you can install ThotPy from the [GitHub repository](https://github.com/pablogila/ThotPy/). \n\nLike its ancient Egyptian counterpart, ThotPy is *married* to [MaatPy](https://github.com/pablogila/MaatPy), another Python package with useful physico-chemical definitions and spectral analysis tools. Pip automatically installs MaatPy as a dependency, but it must be installed before you can build from source. \nTo install the dependencies: \n```bash\npip install pandas maatpy\n```\n\nThen clone the repository or download the [latest stable release](https://github.com/pablogila/ThotPy/tags) as a ZIP, unzip it, and run inside the `ThotPy/` directory: \n```bash\npip install .\n```\n\n\n# Documentation\n\nCheck the [full ThotPy documentation online](https://pablogila.github.io/ThotPy/). \nAn offline version of the documentation is available in `docs/thotpy.html`. \nCode examples are included in the `examples/` folder. \n\n## Submodules\n\nThotPy contains the following submodules for general text operations: \n- [file](https://pablogila.github.io/ThotPy/thotpy/file.html). Manipulate files.\n- [find](https://pablogila.github.io/ThotPy/thotpy/find.html). Search for specific content in a text file.\n- [text](https://pablogila.github.io/ThotPy/thotpy/text.html). Manipulate text files.\n- [extract](https://pablogila.github.io/ThotPy/thotpy/extract.html). Extract data from raw text strings.\n- [call](https://pablogila.github.io/ThotPy/thotpy/call.html). Run bash scripts and related.\n\nAlong with the [core](https://pablogila.github.io/ThotPy/thotpy/core.html) submodule with common utilities.\n\n## Interfaces for ab-initio codes\n\nThe following interfaces for *ab-initio* codes are included:\n- [qe](https://pablogila.github.io/ThotPy/thotpy/qe.html). Interface for [Quantum ESPRESSO](https://www.quantum-espresso.org/) calculations.\n- [phonopy](https://pablogila.github.io/ThotPy/thotpy/phonopy.html). Interface for [Phonopy](https://phonopy.github.io/phonopy/) calculations.\n- [castep](https://pablogila.github.io/ThotPy/thotpy/castep.html) Interface for [CASTEP](https://castep-docs.github.io/castep-docs/) calculations.\n\n\n# Contributing\n\nIf you are interested in opening an issue or a pull request, please feel free to do so on [GitHub](https://github.com/pablogila/ThotPy/). \nFor major changes, please get in touch first to discuss the details. \n\n## Code style\n\nPlease try to follow some general guidelines: \n- Use a code style consistent with the rest of the project. \n- Include docstrings to document new additions. \n- Include tests for new features or modifications. \n- Arrange function arguments by order of relevance. Most implemented functions follow something similar to `function(file, key/s, value/s, optional)`. \n\n## Testing with PyTest\n\nIf you are modifying the source code, you should run the automated tests of the `tests/` folder to check that everything works as intended.\nTo do so, first install PyTest in your environment,\n```bash\npip install pytest\n```\n\nAnd then run PyTest inside the `ThotPy/` directory,\n```bash\npytest -vv\n```\n\n## Compiling the documentation\n\nThe documentation can be compiled automatically to `docs/thotpy.html` with [pdoc](https://pdoc.dev/) and ThotPy itself, by running:\n```shell\npython3 makedocs.py\n```\n\n\n# License\n\nCopyright (C) 2024 Pablo Gila-Herranz \nThis program is free software: you can redistribute it and/or modify\nit under the terms of the **GNU Affero General Public License** as published\nby the Free Software Foundation, either version **3** of the License, or\n(at your option) any later version. \nThis program is distributed in the hope that it will be useful,\nbut WITHOUT ANY WARRANTY; without even the implied warranty of\nMERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. \nSee the attached GNU Affero General Public License for more details. \n\n",
"bugtrack_url": null,
"license": "AGPL-3.0",
"summary": "The Text enHancement & Optimization for scienTific research with Python, or just ThothPy, allows you to create, modify and analyze all kinds of text files, with a special focus on (but not limited to) ab-initio calculations.",
"version": "5.5.1",
"project_urls": null,
"split_keywords": [
"python",
" thot",
" thotpy",
" thoth",
" thothpy",
" text",
" inputmaker",
" dft",
" density functional theory",
" md",
" molecular dynamics",
" ab-initio",
" quantum espresso",
" phonopy"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "f4dba592f9a9d71aba1156234dedd040d49f3de65561503372e7dc3f7abef16b",
"md5": "a206a315d071123a4e409c1548c460f9",
"sha256": "61d9a7286b613882ca7c77eb8145071c474e80739c7305ea51d3cdd899892c97"
},
"downloads": -1,
"filename": "thotpy-5.5.1-py3-none-any.whl",
"has_sig": false,
"md5_digest": "a206a315d071123a4e409c1548c460f9",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3",
"size": 40551,
"upload_time": "2025-01-07T16:24:45",
"upload_time_iso_8601": "2025-01-07T16:24:45.728369Z",
"url": "https://files.pythonhosted.org/packages/f4/db/a592f9a9d71aba1156234dedd040d49f3de65561503372e7dc3f7abef16b/thotpy-5.5.1-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "c3475d0b53e8e0fba95cbdce22f9626cff5d7df89115c820603a8921683f5b92",
"md5": "d2c7a746e974d15eb85355e9f128598b",
"sha256": "89a00ee93964762544c07ba3e7423ad23455edcdbb1b62e1512398e7001467fb"
},
"downloads": -1,
"filename": "thotpy-5.5.1.tar.gz",
"has_sig": false,
"md5_digest": "d2c7a746e974d15eb85355e9f128598b",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3",
"size": 43300,
"upload_time": "2025-01-07T16:24:48",
"upload_time_iso_8601": "2025-01-07T16:24:48.898457Z",
"url": "https://files.pythonhosted.org/packages/c3/47/5d0b53e8e0fba95cbdce22f9626cff5d7df89115c820603a8921683f5b92/thotpy-5.5.1.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2025-01-07 16:24:48",
"github": false,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"lcname": "thotpy"
}