Skip to main content

Tools for processing outputs from CASTEP program.

Project description

CASTEPKIT

Python 3.9+ GPLv3 License

castepkit is a Python package that provides a unified CLI and programmatic interface for post-processing and analyzing output files from the CASTEP first-principles simulation software. It provides wrappers for multiple CASTEP auxiliary programs such as NewSHG_ZY-XTIPC.x, weighted_den.x, and supports seamless integration of additional tools like atom_cutting_impi_XTIPC, calculate_ome_impi_XTIPC, and more.


Features

  • Unified CLI for running various CASTEP-related post-processing executables
  • Configurable executable paths and MPI launch settings via a user config file
  • Modular architecture: easily extendable for additional tools
  • Compatible with Python 3.10+

Installation

Stable version (from PyPI):

pip install castepkit

Development version (from GitHub):

git clone https://github.com/yingxingcheng/castepkit
cd castepkit
pip install .

Editable mode for developers:

pip install -e .[dev,tests]

To run tests:

pip install .[tests]
pytest

User Configuration

You can configure executable names, MPI settings, and default parameters using a TOML config file:

Config path: Linux/macOS: ~/.config/castepkit/config.toml Windows: %APPDATA%\castepkit\config.toml

Example config.toml:

[executables]
shg = "/opt/bin/NewSHG_ZY-XTIPC.x"
weighted_den = "/opt/bin/weighted_den.x"

[mpirun]
enabled = true
nproc = 8

Example Usage

# Run SHG alone
castepkit-shg GaAs_Optics --scissors 0.8 --direction 111

# Run weighted_den.x for a single file
castepkit-dens run GaAs_Optics --input_file_suffix shg_weight_veocc

# Run for both veocc and veunocc weights
castepkit-dens ve GaAs_Optics

# Run full SHG pipeline + weighted density
castepkit-dens shg GaAs_Optics --scissors 0.8 --direction 111

License

castepkit is distributed under the terms of the GNU General Public License v3.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

castepkit-0.0.3.tar.gz (18.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

castepkit-0.0.3-py3-none-any.whl (13.8 kB view details)

Uploaded Python 3

File details

Details for the file castepkit-0.0.3.tar.gz.

File metadata

  • Download URL: castepkit-0.0.3.tar.gz
  • Upload date:
  • Size: 18.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.10.17

File hashes

Hashes for castepkit-0.0.3.tar.gz
Algorithm Hash digest
SHA256 2fe1e202b2a9f30ec1f87d2c64e7c6828db68f31765a5b702e4d2a47d887df77
MD5 ba0839a1022f999d217e493ac9f0a717
BLAKE2b-256 a213885faff7b9675f945a78f4d919dc33f4088e0dd0c016c7f52d6f8f51ed85

See more details on using hashes here.

File details

Details for the file castepkit-0.0.3-py3-none-any.whl.

File metadata

  • Download URL: castepkit-0.0.3-py3-none-any.whl
  • Upload date:
  • Size: 13.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.10.17

File hashes

Hashes for castepkit-0.0.3-py3-none-any.whl
Algorithm Hash digest
SHA256 2d024a78950de8f782cc263714794fd5dc222b241a3614a82da6244ba2321eba
MD5 3d13a5e51ec0227afe1ce108192fd8a4
BLAKE2b-256 e9f4a2705bc67e8023d895df5dd9e7c40755edd1eb71f3d18da23c31f154aa33

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page