Skip to main content

escape

Event Synchronous Categorisation And Processing Environment

escape is a Python framework for event-based data analysis at free-electron laser (FEL) facilities. It pairs raw measurement arrays with pulse IDs and scan metadata, providing index-aligned arithmetic, scan-step aggregation, and scalable storage — designed for the data volumes and workflows typical at instruments like SwissFEL Bernina.

Core concepts

  • Array — wraps a data array together with a pulse-ID index and optional scan grouping. Index-aligned arithmetic between arrays is automatic: operations find common pulse IDs and align data before computing.
  • Scan — partitions an Array into sequential steps with parameter metadata (e.g. delay values). Exposes per-step statistics (nanmean, median, weighted_stat, …) directly.
  • Grid — maps scan steps onto an N-dimensional parameter grid, enabling multi-dimensional scans and 2D result arrays.
  • DataSet — named collection of Arrays backed by HDF5 (.esc.h5) or zarr (.esc.zarr) files for persistent storage.
  • escaped — decorator that lifts any NumPy/dask function to operate on Arrays with automatic index alignment.

Quick example

import escape as esc
import numpy as np

# Load a dataset
ds = esc.DataSet.load("run042.esc.h5")
sig  = ds["JF_signal"]
i0   = ds["I0_monitor"]
pump = ds["pump_on"]

# Normalize signal to I0 — pulse IDs aligned automatically
sig_norm = sig / i0

# Per-step median across the pump-probe scan
median_on  = sig_norm[pump].scan.nanmedian()
median_off = sig_norm[~pump].scan.nanmedian()

Installation

conda (recommended — reuses existing environment packages):

conda install -c conda-forge escape-fel

pip:

pip install escape-fel

Latest development version:

pip install git+https://github.com/htlemke/escape-fel

Documentation

Full documentation including user guide and API reference: escape-fel.readthedocs.io

Links

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

escape_fel-0.2.2.tar.gz (12.8 MB view details)

Uploaded Source

Built Distribution

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

escape_fel-0.2.2-py3-none-any.whl (3.6 MB view details)

Uploaded Python 3

File details

Details for the file escape_fel-0.2.2.tar.gz.

File metadata

  • Download URL: escape_fel-0.2.2.tar.gz
  • Upload date:
  • Size: 12.8 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for escape_fel-0.2.2.tar.gz
Algorithm Hash digest
SHA256 4a6c904fcace68f4caa5673c5278cd7899e3b2057ed257e699c73d187c2c4e42
MD5 7fbce1dd7f0d7164bc5ad75c40920e1e
BLAKE2b-256 964b9c0f47ddc3343e737404b5a7e9780257bba00da904fae014b57f6ff689d4

See more details on using hashes here.

Provenance

The following attestation bundles were made for escape_fel-0.2.2.tar.gz:

Publisher: publish.yml on htlemke/escape-fel

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file escape_fel-0.2.2-py3-none-any.whl.

File metadata

  • Download URL: escape_fel-0.2.2-py3-none-any.whl
  • Upload date:
  • Size: 3.6 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for escape_fel-0.2.2-py3-none-any.whl
Algorithm Hash digest
SHA256 9f7af779019c3d0a37b625087a1797e1f1eb18bd14530818b667d7d3c2db7b22
MD5 fa32caf89c596d15ddb025bf710fe7c6
BLAKE2b-256 b8b4a03d3926f108d24f9d505cf1533ecd375fda62f07815b7e3d4da0b6d19c5

See more details on using hashes here.

Provenance

The following attestation bundles were made for escape_fel-0.2.2-py3-none-any.whl:

Publisher: publish.yml on htlemke/escape-fel

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Release history Release notifications | RSS feed

0.2.8

2 files

0.2.7

2 files

0.2.6

2 files

0.2.5

2 files

0.2.4

2 files

0.2.3

2 files

This release

0.2.2 This release

2 files

0.2.1

2 files

0.2.0

2 files

0.1.4

2 files

0.1.2

2 files

0.1.1

2 files

0.0.1

3 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