Changelog¶
See Keep a Changelog. This project uses Semantic Versioning.
Unreleased¶
0.2.0 - 2026-08-28¶
This release includes improvements to tutorial and validation workflows, and adds JSON serialization for Displacements. The main breaking change is the decoupling of cross-section weighting into an explicit apply_weights step.
API and Data Model Changes¶
Decoupled cross-section weighting from intensity calculations: Intensity calculation functions now always compute unweighted spectra (dimensionless / cross-section-free intensity units).
Removed
apply_cross_sectionsboolean parameters from intensity calculation routines.Added explicit
abinslib.util.apply_weightsfunction. Callers are now responsible for applying neutron cross-sections to unweighted spectra when desired.Spectrum metadata (
symbols,masses) is used with Euphonic’sIsotopeDataprotocol to resolve isotope cross sections, avoiding the need to passCrystalobjects into intensity routines.Corrected units handling to ensure raw spectra are cross-section-free.
New Features¶
JSON Serialization: Added
abinslib.iomodule withJsonMixin: this providesto_json,from_json,to_json_file, andfrom_json_filemethods to classes that implementto_dictandfrom_dict.Includes and validates API version and class metadata on deserialization.
This functionality is added to the
Displacementsclass.
Sample Data Management: Added
abinslib.datamodule usingpoochto fetch sample and validation data on demand from machine-readable registries inabinslib.registries. This keeps the source repository light while making realistic data conveniently available for tutorials and validation.
Documentation & Tutorials¶
Converted Mantid validation benchmarks into executable Sphinx Gallery examples (
plot_validation.py) rendered directly in the online documentation.Added tutorials illustrating TOSCA INS simulation workflows.
Configured Sphinx documentation with
furotheme,sphinx-autoapi,myst-parser, and custom styling.
Maintenance & Workflows¶
Overhauled
dev/validationworkflows usingpixiand Snakemake for hashing and generating reference validation datasets.Updated repository URLs to
https://github.com/isisneutronmuon/abINS_liband documentation tohttps://isisneutronmuon.github.io/abINS_lib.Configured Ruff linting and docstring style enforcement across the repository.
0.1.0 - 2026-07-16¶
Initial release of
abinslib.Support for 1-D and 2-D almost-isotropic and isotropic incoherent inelastic neutron-scattering intensities from harmonic phonon modes.
Integration with Euphonic 2.0 and ResINS 0.1.