Skip to main content

pyNexafs

pyNexafs is a comprehensive toolkit for NEXAFS[1] (or XANES[2]) data, and is built to the feature-rich standards of xraysoftmat, so you can trust ongoing stability and developement.

pypi zenodo Documentation Coverage Status pre-commit.ci status

PyTest Linting Documentation

Python SemVer Code style: black Ruff Code doc: numpydoc

Motivation

pyNexafs was designed to solve backwards-compatibility issues between (inevitably changing or upgraded) Synchrotron beamline configurations, and allow reproducable analysis (reduction, normalisation and fitting) of NEXAFS data. This is done by separating file parsing and NEXAFS (scan) handling.

Todo List

This repository is in a Beta development state. The following list maps the required features to be implemented before a full released.

  • ☑ Implement base classes for parsing and NEXAFS

  • ☑ Implement core normalisation wrappers

  • ☑ Implement support for Australian Synchrotron NEXAFS beamlines

  • ☑ Fix parser classes to be more flexible (multi-dimensional data) but allow/encourage overriding of to_scan method.

  • ☐ Ensure parser load method records the successful method signature.

  • ☐ Comprehensive mapping structure for NEXAFS data types (including accessors for a single scan, i.e. scan.drain, scan.flour or scan.PFY…)

  • ☐ Comprehensive readthedocs documentation.

  • ☐ Comprehensive (>90%) unit testing for core API and modules.

  • ☐ Functioning PyQt6 GUI

  • ☐ Unit testing for PyQt6 GUI

  • ☐ Generic NEXAFS file loader (two column)

This repository does not support EXAFS [3], which has a very similar measurement philosophy yet very distinct physics.

Footnotes

Metadata

Release files for pyNexafs 0.2.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for pyNexafs 0.2.0
File Size Uploaded
pynexafs-0.2.0.tar.gz 474.6 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for pyNexafs 0.2.0
File Interpreter ABI Platform
pynexafs-0.2.0-py3-none-any.whl Python 3 none any Details

Total release size: 963.1 kB

Release files / pynexafs-0.2.0.tar.gz

Download URL pynexafs-0.2.0.tar.gz
Size 474.6 kB
Tags Source
SHA-256 checksum
How to use checksums
c122b5fd8dec93924b5645de2117535e68891485a5047a356554de6ea1e6f3d8
BLAKE2b-256 checksum
How to use checksums
452337ec7b91d83c9cb7405a058286eff4e6c332108d1643677010bd1277b3a9
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.13.12

Release files / pynexafs-0.2.0-py3-none-any.whl

Download URL pynexafs-0.2.0-py3-none-any.whl
Size 488.5 kB
Tags Python 3
SHA-256 checksum
How to use checksums
91aa36cf93f0126597d1aca4d7ff0a6c4de55cca012ffab0935879e1f2ea0ff3
BLAKE2b-256 checksum
How to use checksums
106e87673ef30fe2728da520783132877be28b1d18bbb36ecf26c6a371984583
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.13.12

Release history Release notifications | RSS feed

This release

0.2.0 This release

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page