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.3.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.3-py3-none-any.whl (3.6 MB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: escape_fel-0.2.3.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.3.tar.gz
Algorithm Hash digest
SHA256 b366223369a37d9e8c44a555cacb33dd700526168bd8e86f87e00c07cf5bb9de
MD5 89732de463c613de2e2dcb637273182e
BLAKE2b-256 84447f8b4da480d376bcaf64bb809730d2387f47802f98c715672997e02f7efa

See more details on using hashes here.

Provenance

The following attestation bundles were made for escape_fel-0.2.3.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.3-py3-none-any.whl.

File metadata

  • Download URL: escape_fel-0.2.3-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.3-py3-none-any.whl
Algorithm Hash digest
SHA256 df760bfc5563ff2d71d47a9ef6ac83042e0afaf55377212cdcf57108b81ad84f
MD5 927091f7a8ebc2dc7289b4173ef1ba92
BLAKE2b-256 823c25ce2450798181ec3a45e0696de0fb57b55b0304a1ad1e1d382601f94e4a

See more details on using hashes here.

Provenance

The following attestation bundles were made for escape_fel-0.2.3-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

This release

0.2.3 This release

2 files

0.2.2

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