Changelog¤
Unreleased¤
Note
All of the changes here are deployed to our current environment, even though a release hasn't been made for them yet. If you want to have these updates in a personal environment you'll need to install the package from git.
Added:
- Hits obtained via DelayLineDetector.hits() can now optionally be restricted to hits reconstructed with a certain method. (#170)
- DldPulses can optionally enumerate PPL-only pulses using negative indices to stay compatible with PPL-unaware data. (#167)
- The
slowTrains
XGM property is available through XGM.slow_train_energy() (#162). - XGM.pulse_energy() can now take a
series=True
argument to return a 1D Series instead of a 2D DataArray (#162). - Data indexed by pulse or train can now be aligned with and added as additional columns to sparse DLD data (#166, #173).
- OpticalLaserDelay to obtain the time delays between FEL and optical laser pulses (#165).
- Empty trains can now optionally be included when determining constant pulse patterns via XrayPulses.is_constant_pattern() (#156).
- Check whether any pulse patterns are interleaved with
is_interleaved_with()
or directly SA1/SA3 withis_sa1_interleaved_with_sa3()
(#155). - Obtain MachinePulses from any other timeserver-based pulse components directly via
machine_pulses()
or get machine repetition rate directly frommachine_repetition_rate()
(#155). - A helper function named fit_gaussian() (#131).
- A new method Scan.split_by_steps() (#169).
- PumpProbePulses.pulse_mask now has an option to give a mask for only FEL or only pump laser pulses (#174).
- BadPixels flag values for interpreting masks in corrected detector data (#172).
Fixed:
- Sometimes an XGM will record the wrong number of pulses in its slow data
property, which would cause the pulse energy to not be retrieved properly. Now
the XGM will rely only on the fast data to find the number of pulses in
.pulse_energy()
(#153).
2024.1.1¤
Added:
- MachinePulses to investigate pulse pattern data beyond only X-rays and optical lasers (#138).
- Implemented Scan.bin_by_steps() and Scan.plot_bin_by_steps() to help with averaging data over scan steps (#124).
pulse_periods()
,pulse_repetition_rates()
andtrain_durations()
methods to obtain statistics about the pulses in all pulse pattern components (#114).extra.calibration
module to find and load calibration constants.
2024.1¤
Added:
- DelayLineDetector to access raw and reconstructed results from the offline delay line detector processing pipeline (#103).
- An XGM component to access XGM devices (#53).
- PumpProbePulses to combine X-ray and optical laser pulses in a single pattern (#24).
- The Scan component to automatically detect steps within a motor scan (#4).
- DldPulses to access pulse information saved during delay line detector event reconstruction (#42).
- The helper function imshow2 to provide good defaults when plotting images (#38).
Changed:
- The
get_
prefix was deprecated for some method names in the pulse pattern components (#106). - All methods in XrayPulses and OpticalLaserPulses now support labelled results and default to it (#40).
- Scantool's
__repr__()
functionality to print information was moved to Scantool.info() (#29).
2023.2¤
The initial release!
Added:
- A Scantool component for the EuXFEL scantool, in #2.
- Components for extracting the X-ray and optical laser pulse patterns: XrayPulses and OpticalLaserPulses in #5.
- A collection of utility functions.
- Sub-modules to forward EXtra-data, EXtra-geom, and karabo-bridge-py.