Skip to main content

Companion workflow engine for xraylarch.

Project description

Hollowfoot

PyPI badge

A work-flow engine for performing analysis of experimental X-ray data using xraylarch and other domain-specific frameworks.

A hollowfoot analysis is:

Declarative: A typical analysis workflow in hollowfoot is best thought of as a series of steps to be performed on some underlying data. The analysis engine is responsible for executing the steps for you when needed.

Jupyter-first: Many analysis frameworks, like xraylarch, provide tools that are used as part of some larger analysis application. Hollowfoot aims to extend these tools so that they can be used as first-class objects in a jupyter notebook environment.

Documentation

Sphinx-generated documentation for this project can be found here: https://spc-group.github.io/hollowfoot/

Usage

An example workflow for XAFS analysis might look like:

import hollowfoot as hf

analysis = (
    XAFSAnalysis  # What kind of analysis are we doing?
        .from_aps_20bmb("my_data_folder/")  # Load data from disk
        .to_mu("mono-energy", "It", "I0", is_transmission=True)  # Apply reference correction
        .plot_mu()  # Plot all data sets together
        .merge()  # Merge data sets into a single group
        .fit_edge_jump()  # Do some normalization, etc
        .subtract_background()  # Convert from µ(E) to χ(E)
        .plot_mu()  # Plot the single, corrected dataset
    	.summarize()  # Print out a summary of the steps that have been taken
)

Notice how each line of the previous code snippet describes a concise step of analysis. These steps can be re-ordered or commented out, making for easy comparisons between analysis strategies.

Installation

The following will download the package and load it into the python environment.

$ pip install hollowfoot

Running the Tests


$ uv run --dev pytest

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

hollowfoot-0.3.0.tar.gz (618.7 kB view details)

Uploaded Source

Built Distribution

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

hollowfoot-0.3.0-py3-none-any.whl (8.1 kB view details)

Uploaded Python 3

File details

Details for the file hollowfoot-0.3.0.tar.gz.

File metadata

  • Download URL: hollowfoot-0.3.0.tar.gz
  • Upload date:
  • Size: 618.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.8.13

File hashes

Hashes for hollowfoot-0.3.0.tar.gz
Algorithm Hash digest
SHA256 fdb8b5a6cf061ba6db14da5f29e7228a8db2779278d3cc9b0eacc4f7bde6b473
MD5 5eef528a80cf5b6d19022fcfcf090dbf
BLAKE2b-256 0e98552156db4d51835d1154f62fbcb3e132181e2df8bdf51efc91b9768af4ef

See more details on using hashes here.

File details

Details for the file hollowfoot-0.3.0-py3-none-any.whl.

File metadata

  • Download URL: hollowfoot-0.3.0-py3-none-any.whl
  • Upload date:
  • Size: 8.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.8.13

File hashes

Hashes for hollowfoot-0.3.0-py3-none-any.whl
Algorithm Hash digest
SHA256 ff174db999d71a63c532fd702014c16d2dc03c355d42d2292e7ca1cb8a53dd41
MD5 78abe4f980eb6ce93c708aa02cdf38b9
BLAKE2b-256 331a6e4d0f3703d29554cb9b65a18dfc6baa080991b0e2bed62312b5ce0a36d3

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