Packaging
- Sella is now pure Python. The Cython extensions (
force_match,utilities.blas,utilities.math) have been replaced with portable Python implementations. Releases ship a singlepy3-none-anywheel instead of per-platform compiled wheels, and installing no longer requires a C compiler.
Requirements
- Minimum ASE is now 3.26.0 (was 3.22). Sella's IRC logging uses the flat-gradient
Optimizer.logAPI introduced in ASE 3.26; older ASE releases fail or hang. Users on ASE < 3.26 should stay on Sella 2.5.0. - Minimum Python is now 3.9 (was 3.8). Tested on 3.9 through 3.13.
Features
configure_computeandset_cpu_threadsfor controlling thread and compute settings- Optional GPU acceleration for large linear-algebra operations when PyTorch with CUDA is present (PyTorch is not required; falls back to CPU)
hessian_progressoption to log Hessian diagonalization progress- Accepted trajectory frame IDs are now recorded in the log
exact_geodesicoption for the guess Hessian- Refactored optimizer steps and trust-region control; hardened PES, cell-optimization, and internal-coordinate construction
Fixes
- Fix constrained IRC force projection
- Fix guess Hessian projector; revert
rho_inc - Apply IRC first-step guard on ASE >= 3.28 via
gradient_converged - Don't create the JAX compilation cache in the home directory when another path is given; an unwritable home no longer breaks import
- PyPI metadata now includes project URLs and the supported Python versions
Full changelog: v2.5.0...v2.6.0