Release Notes for python-sscha v1.6.0
Overview
Version 1.6.0 includes improvements to the minimizer, new CLI functionality, enhanced ensemble loading capabilities, and better calculator compatibility.
Changes Since v1.5
New Features
- Improved Minimizer: Enhanced minimizer now uses
DiagonalizeSupercelland fixes hermitian symmetry issues for more stable convergence - Command Line Interface: Reintroduced CLI scripts for easier workflow automation
sscha- Main SSCHA command-line interfacesscha-plot-data- Plotting utility for SSCHA data
- One-Line Ensemble Loading: Added a convenience function to load ensembles with a single function call
- Enhanced Calculator Support: Modified calculator loading to accept CellConstructor calculators in addition to existing options
Improvements
- Symmetry Handling: Added the ability to provide symmetries by input and a new finalization method that respects molecular symmetries
- Thermodynamics Module: Added the missing thermodynamics module for better thermal property calculations
- Build System: Reverted setup to use Meson build system (dropped CMake approach) for better compatibility
Bug Fixes
- Hermitian Symmetry: Fixed hermitian symmetry issues in the minimizer that could affect convergence stability
- Module Imports: Fixed missing thermodynamics module import issues
Documentation
- Updated README.md with improved installation instructions
- Added Python SSCHA Installation Guide
Internal Changes
- Updated GitHub Actions workflow for testing
- Version bumped to 1.6.0 in pyproject.toml
Files Changed
Modules/Ensemble.py- Added one-line ensemble loading functionModules/Minimizer.py- Improved minimizer with DiagonalizeSupercell and hermitian symmetry fixesModules/SchaMinimizer.py- Updates for symmetry handlingModules/__init__.py- Added thermodynamics moduleModules/cli.py- New CLI module with plotting and main entry pointsModules/fourier_gradient.jl- Julia module updatesmeson.build- Build system updatespyproject.toml- Version bump and dependency updates
Contributors
- Lorenzo Monacelli
- Diego Martinez
- Various contributors from SSCHAcode team
Installation
pip install python-sscha==1.6.0Or for development:
pip install --no-build-isolation -e .Compatibility
- Python >= 3.8 (tested up to 3.13)
- Requires: numpy, ase, scipy, cellconstructor, spglib, matplotlib
- Optional: mpi4py for parallel execution