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.6.tar.gz (18.0 MB 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.6-py3-none-any.whl (15.5 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for castepkit-0.0.6.tar.gz
Algorithm Hash digest
SHA256 0767e0c971a75e509c5796685c88ba4aa9fd2d51bba3291d276e72e91bf699be
MD5 2ccceec4fc68d130928ec0a77e99c978
BLAKE2b-256 6678d2d86ca2136fd899f5de892a94331c1f965714b989902a9785ecb4602a2f

See more details on using hashes here.

File details

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

File metadata

  • Download URL: castepkit-0.0.6-py3-none-any.whl
  • Upload date:
  • Size: 15.5 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.6-py3-none-any.whl
Algorithm Hash digest
SHA256 4669b7f9c166a1b02b94a51f19ee8789fad12716ce263d2ec01fccf263d0938b
MD5 e444b2d08b898424003fe2a3b6dc6caf
BLAKE2b-256 6c4f4b615d2b897f29b707fba1375cdc161d53ab984eeeff26b6752cbb32be4d

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