Skip to main content

Python crystal field theory modules

Project description

pycf is a collection of Python modules for crystal field theory and spin Hamiltonian calculations. It provides tools for setting up and fitting energy levels of rare-earth ions using crystal-field Hamiltonians, as well as utilities for working with spin Hamiltonians and transition intensities. The core library is implemented in C99 for performance, with Python/Cython wrappers for ease of use.

Status and Quality

CI Status Python Version Tests Passing

For detailed installation instructions, see INSTALL.md.

Branches

  • main — recommended for users who want stability. Updated when a development cycle reaches a tagged release.

  • devel — current integration branch. Track this if you want to follow ongoing work and try features before they land on main; expect occasional breakage.

  • Feature branches (feat/...) — in-progress work, opened for review via pull requests. Comment on them if you want to influence a feature before it merges into devel.

  • legacy — mirrors Sebastian Horvath’s original Bitbucket repository (https://bitbucket.org/sebastianhorvath/pycf/). Provided for historical reference; not actively developed.

By default git clone checks out main; pass -b devel (or git checkout devel after cloning) to follow the development branch.

Quick Start (Development)

git clone https://github.com/mikereidnz/pycf.git
cd pycf
python3 -m venv env
source env/bin/activate
pip install -e ".[test,examples]"
python -m pytest tests/ -q

Project Structure

  • cfl/ — C99 core library for setting up and fitting Hamiltonians.

  • pycf/ — Python/Cython wrappers

  • examples/ — End-to-end workflows for real materials

  • tests/ — Python and C unit tests

Documentation

  • INSTALL.md — Installation guide with platform-specific instructions

  • docs/legacy/ — Legacy technical documentation preserved for reference

  • examples/ — Material-specific usage examples

Authorship

Originally developed by Sebastian Horvath (sebastian.horvath@gmail.com). Currently maintained by Mike Reid (mike.reid@canterbury.ac.nz).

A legacy version is available at https://bitbucket.org/sebastianhorvath/pycf/ and also on the “legacy” branch of this repository.

License

GNU General Public License v3 (GPLv3)

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

pycf_crystalfield-0.2.0.tar.gz (3.4 MB view details)

Uploaded Source

File details

Details for the file pycf_crystalfield-0.2.0.tar.gz.

File metadata

  • Download URL: pycf_crystalfield-0.2.0.tar.gz
  • Upload date:
  • Size: 3.4 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for pycf_crystalfield-0.2.0.tar.gz
Algorithm Hash digest
SHA256 2a0c4daeb3919ce055dbea2d69c8c611ae45d550e8a269e9b0681dd2687cc74c
MD5 d066044ce70a65652454b7f4f0350c2a
BLAKE2b-256 752df7dc52f2d36dea1e9cba4dd8e6c2e80c7087f50e349e96e541866a261af5

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