Skip to main content

A package for processing and analysing NEXAFS data.

Project description

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

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

pynexafs-0.1.0.tar.gz (467.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

pynexafs-0.1.0-py3-none-any.whl (480.6 kB view details)

Uploaded Python 3

File details

Details for the file pynexafs-0.1.0.tar.gz.

File metadata

  • Download URL: pynexafs-0.1.0.tar.gz
  • Upload date:
  • Size: 467.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.3

File hashes

Hashes for pynexafs-0.1.0.tar.gz
Algorithm Hash digest
SHA256 b452f7bd6227c2ab60f31eaaeda0863875d6f92b34feb5dd1308da2cf47391f5
MD5 061643064b3c6df519c5dc5358fe6d1f
BLAKE2b-256 5ac4c3d43f591914b820987ed275cf8f342a02ccd812bbd386e382f55392a7df

See more details on using hashes here.

File details

Details for the file pynexafs-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: pynexafs-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 480.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.3

File hashes

Hashes for pynexafs-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 a8efccd65ef2e704d244807fe4c01bae0abe34b8aa73d7ca134cd7063c40c122
MD5 303a3fb26499f226ed08ba105e7686c0
BLAKE2b-256 53530c92bfe6909cae535772922698001096b6a40f4e6997581c735c6dee1525

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