Releases: StingraySoftware/stingray
Releases · StingraySoftware/stingray
v2.3.2
What's Changed
- Make it work with new numpy by @matteobachetti in #972
Full Changelog: v2.3.1...v2.3.2
Bugfix release v2.3.1
What's Changed
- Fix numba functions in intrinsic coherence by @matteobachetti in #970
Stingray v. 2.3.0
New Features
- Added
summed_flagtopower_confidence_limits, to make it work
with averaged powers too.
(#952) - Add function to save spectra in Xspec-compatible format
(#957) - Add possibility to save to Xspec format for covariance/variability
spectra
(#963) - Improve treatment of coherence
(#965)
Bug Fixes
- Fixed EventList.read to properly pass
**kwargs.
(#950) - Fixed an error in
power_confidence_limitsthat led to
systematically narrower confidence intervals.
(#951) - Fixed uncertainty propogation error in
Lightcurve.rebin()
(#953) - Fixed convergence issues in
power_upper_limitfor summed powers
and low count rates by replacingminimizewithbrentq.
(#954) - Fix initialization of
countrate_errif errors are Poisson
(#958) - Fix array_attrs property of
Lightcurve
(#959) - Speedup and improve robustness of
fill_bad_time_intervals
(#968)
v2.2.10
What's Changed
- Update xselect.mdb by @matteobachetti in #939
- Allow loading of remote files, avoid extra loading of FITS files by @matteobachetti in #940
- Fix numba valuerror by @matteobachetti in #947
- Fix power upper limit by @yashbhargava1992 in #946
Full Changelog: v2.2.9...v2.2.10
Stingray v2.2
This release accompanies the review of Stingray from pyOpenSci. As such, it contains some internal changes that were driven by the review together with some new addition.
New Features
- Introduce FITSReader class for lazy-loading of event lists
(#834) - Add a compute_rms function to LombScarglePowerspectrum
(#828) - Implement the shift-and-add technique for QPOs and other
varying power spectral features
(#849)
Bug Fixes
- The
fold_eventsfunction now checks if the keyword arguments
kwargsare in the list of optional parameters. If
any unidentified keys are present, it raises a
ValueError. This fix ensures that the function only
accepts valid optional parameters and provides a clear error message
for unsupported keys.
(#837)
Internal Changes
Release 2.1
v2.1 (2024-05-29)
New Features
- Add function to calibrate event lists based on RMF file (#804)
- Speed up computation of pds for large arrays (#808)
- Add support for XTE science event data (#816)
- A friendlier API for the non-paralyzable dead time model model (#800)
Bug Fixes
- Fix issue when setting a property from a FITS file read (#814)
- Fix case when analyze_segments has an invalid segment (#822)
- Substitute
np.asarraywithnp.asanyarrayeverywhere, to avoid copying memory maps into memory if possible (#824)
Internal Changes
Stingray Version 2.0
v2.0 (2024-03-13)
New Features
- Power colors à la Heil et al. 2015
(#780) - Calculate colors and intensities on a segment-by-segment basis in
event lists
(#781) - A function to randomize data in small bad time intervals
(#782) - The Lomb Scargle Fourier Transform (fast and slow versions) and the
correspondingLombScargleCrossspectrum{.interpreted-text
role="class"} andLombScarglePowerspectrum{.interpreted-text
role="class"}
(#737) - A JAX implementation of the Gaussian Process tool by Hubener et
al for QPO detection and
parameter analysis.
(#739) - Extend join operation for events to arbitrary array attributes, not
just pi and energy
(#742) - Allow the creation of empty light curves.
(#745) - Make StingrayTimeseries into a generalized light curve, with a less
strict naming but implementing much of the underlying computing
useful for Lightcurve as well.
(#754) - Our fast implementation of histograms is now safer (failing safely
to the equivalent numpy histogram functions), more consistent
(ranges moved to range, for consistency with numpy), and accept
complex weights as well!
(#764)
Bug Fixes
- When rms is low, the calculation in compute_rms often gave
[NaN]{.title-ref}. We now check for this situation and give 0 with
an uncertainty as a result.
(#736) - Eliminates deprecated call to
[enable_deprecations_as_warnings]{.title-ref}, and contextually,
changes the code to be much more robust in catching harmful
warnings.
(#738) - Changes Crossspectrum.plot() function to plot the actual real and
imaginary parts instead of their absolute values.
(#747) - Make commits marked as [docs only] skip all CI but the docs build
(#749) - Update tstart and tseg when using Lightcurve.truncate()
(#753) - Changed list comprehension to generator expression to reduce memory
usage.
(#756) - Fix a bug with segment sizes not exact multiples of dt when dealing
with light curves
(#760) - Fix a bug when light curve segments contain complex values
(#760) - Crossspectrum had "real" as default value. This meant that, for
example, lags could not be calculated. Now the default value is
"all", as it should be.
(#762) - Fix plotting of spectra, avoiding the plot of imaginary parts of
real numbers
(#763) - Various bugfixes in [gti.py]{.title-ref}, and a new function to
interpret the mix of multiple GTIs.
(#774) - Fixed subcs duplication by adding a check in the for loop that
copies the attributes from table's meta items.
(#776) - Various bug fixes in DynamicalPowerspectrum, on event loading and
time rebinning
(#779) - Fix issue with the Poisson noise calculation in lag spectra, that
produced NaN errors under some conditions
(#789) - Fix rms computation and error bars
(#792) - Fix issue with
Powerspectrumof a single light curve
(#663) - Fix nphots estimate in accelsearch, that lead to an underestimation
of the power of candidates
(#807)
Breaking Changes
- Eliminate deprecated
format_keyword from read and write methods.
(#729) - Remove legacy interface and obsolete large data machinery.
(#755) - Eliminate deprecated
white_noise_levelkeyword fromcompute_rms.
(#792)
Internal Changes
Stingray 2.0.0, release candidate 1
New Features
- Power colors à la Heil et al. 2015
(#780) - Calculate colors and intensities on a segment-by-segment basis in
event lists
(#781) - A function to randomize data in small bad time intervals
(#782) - The Lomb Scargle Fourier Transform (fast and slow versions) and the
correspondingLombScargleCrossspectrum{.interpreted-text
role="class"} andLombScarglePowerspectrum{.interpreted-text
role="class"}
(#737) - A JAX implementation of the Gaussian Process tool by Hubener et
al for QPO detection and
parameter analysis.
(#739) - Extend join operation for events to arbitrary array attributes, not
just pi and energy
(#742) - Allow the creation of empty light curves.
(#745) - Make StingrayTimeseries into a generalized light curve, with a less
strict naming but implementing much of the underlying computing
useful for Lightcurve as well.
(#754) - Our fast implementation of histograms is now safer (failing safely
to the equivalent numpy histogram functions), more consistent
(ranges moved to range, for consistency with numpy), and accept
complex weights as well!
(#764)
Bug Fixes
- When rms is low, the calculation in compute_rms often gave
[NaN]{.title-ref}. We now check for this situation and give 0 with
an uncertainty as a result.
(#736) - Eliminates deprecated call to
[enable_deprecations_as_warnings]{.title-ref}, and contextually,
changes the code to be much more robust in catching harmful
warnings.
(#738) - Changes Crossspectrum.plot() function to plot the actual real and
imaginary parts instead of their absolute values.
(#747) - Make commits marked as [docs only] skip all CI but the docs build
(#749) - Update tstart and tseg when using Lightcurve.truncate()
(#753) - Changed list comprehension to generator expression to reduce memory
usage.
(#756) - Fix a bug with segment sizes not exact multiples of dt when dealing
with light curves
(#760) - Fix a bug when light curve segments contain complex values
(#760) - Crossspectrum had "real" as default value. This meant that, for
example, lags could not be calculated. Now the default value is
"all", as it should be.
(#762) - Fix plotting of spectra, avoiding the plot of imaginary parts of
real numbers
(#763) - Various bugfixes in [gti.py]{.title-ref}, and a new function to
interpret the mix of multiple GTIs.
(#774) - Fixed subcs duplication by adding a check in the for loop that
copies the attributes from table's meta items.
(#776) - Various bug fixes in DynamicalPowerspectrum, on event loading and
time rebinning
(#779) - Fix issue with the Poisson noise calculation in lag spectra, that
produced NaN errors under some conditions
(#789) - Fix rms computation and error bars
(#792)
Breaking Changes
- Eliminate deprecated
format_keyword from read and write methods.
(#729) - Remove legacy interface and obsolete large data machinery.
(#755) - Eliminate deprecated
white_noise_levelkeyword fromcompute_rms.
(#792)
Internal Changes
Version 1.1.2
New Features
- Phase Dispersion Minimization as a method to search for periodic
signals in data is now implemented in thestingray.pulse
submodule. To use it, you can use thephase_dispersion_search
function instingray.pulse.search. The accompanying statistical
tests are located in thestingray.statsmodule, under
phase_dispersion_probability,phase_dispersion_logprobability
andphase_dispersion_detection_level.
(#716) - Add is_sorted function, to test if an array is sorted.
(#723) - Check if invalid data are inside GTIs, and warn or raise exception
accordingly
(#730)
Bug Fixes
- The method apply_gtis of the class Lightcurve is applied to all the
attributes of the class Lightcurve. This works for both inplace=True
and inplace=False
(#712) - Avoid allocation of an unneeded square matrix to improve memory
management in_als(fix Issue 724)
(#725) - Fix Issue #726 -- Loading events without fmt keyword crashes
(#727)
Documentation
- Reordered information about contributions with new
blackand
towncrierprocedures
(#721)
Internal Changes
- Using towncrier to generate
the changelogs.
(#697) - Added stingray's logo in the documentation's favicon and top bar.
(#707) - Improved contributing workflow by appending
blackcodestyle
configuration topyproject.tomland ignoring PEP-8 non-compliant
E203,W503inflake8.
(#715) - Added a scrollbar to sidebarwrapper
(#718) - Simplify numba mocking code, and possibly improve code coverage
estimate
(#731)
v1.1
v1.1 (2022-10-02)
Bug fixes
- IMPORTANT: Fixed sign of time lags, which were calculated using the interest band as the reference.
- Fixed an issue when the fractional exposure in FITS light curves is slightly >1 (as sometimes happens in NICER data)
New
- Implemented the
bexvarvariability estimation method (Bayesian excess variance) for light curves.
Improvements
- A less confusing default value of
segment_sizeinZsearches