Recent Releases of PyFstat
PyFstat - v2.3.0
This is the v2.3.0 release of PyFstat, a python package for gravitational-wave data analysis with the F-statistic, dated 28/05/2025.
This release enables support for python 3.13 (so now we support versions 3.9 to 3.13) and for numpy >=2.0.
Scientific Software - Peer-reviewed
- Python
Published by dbkeitel about 1 year ago
PyFstat - v2.3.0rc2
This is a pre-release for the v2.3.0 version of PyFstat, a python package for gravitational-wave data analysis with the F-statistic, dated 28/05/2025.
This release enables support for python 3.13 and for numpy >=2.0.
For a list of known issues, or to report any problems, please see: https://github.com/PyFstat/PyFstat/issues
Scientific Software - Peer-reviewed
- Python
Published by dbkeitel about 1 year ago
PyFstat - v2.3.0rc1
This is a pre-release for the v2.3.0 version of PyFstat, a python package for gravitational-wave data analysis with the F-statistic, dated 14/05/2025.
This is a maintenance release that simply enables support for numpy >=2.0 (removing the dependency version pin we had before.)
For a list of known issues, or to report any problems, please see: https://github.com/PyFstat/PyFstat/issues
Scientific Software - Peer-reviewed
- Python
Published by dbkeitel about 1 year ago
PyFstat - v2.2.1
This is the v2.2.1 release of PyFstat, a python package for gravitational-wave data analysis with the F-statistic, dated 24/02/2025.
This release supports python versions from 3.9 to 3.12. Python 3.13 support is pending on our key dependency LALSuite adopting it.
From the changelog:
- Fixed some detection statistic / output values corner cases.
- E.g. in case the user wants twoFX (via singleFstats option), but not BSGL.
- This includes fixes for regressions in 2.2.0.
- Added t0_MP and tau_MP max-posterior estimates in transient outputs, following lalpulsar conventions.
- Correspondingly, renamed the max-likelihood values to t0_ML and tau_ML.
- Added support for BtSG detection statistic in SearchOverGridFile.
- Improved logging of grid search classes.
- Added utils.translate_keys_to_lal() function.
For a list of known issues, or to report any problems, please see: https://github.com/PyFstat/PyFstat/issues
Scientific Software - Peer-reviewed
- Python
Published by dbkeitel over 1 year ago
PyFstat - v2.2.0
This is the v2.2.0 release of PyFstat, a python package for gravitational-wave data analysis with the F-statistic, dated 08/01/2025.
This release supports python versions from 3.9 to 3.12. Python 3.13 support is pending on our key dependency LALSuite adopting it.
From the changelog:
- Changed the core F-stat functions to alternatively take parameter-space points as dictionaries.
The old individual arguments are still supported, but deprecated and will be removed in a future version.
- Added new function utils.plot_spectrogram.
- Added support for spindown orders >3 in Writer and search classes (up to lalpulsar.PULSAR_MAX_SPINS).
- Added SearchOverGridFile class that can read a grid file following the format of lalpulsar_ComputeFStatistic_v2.
- Some internal refactoring of code between mcmc, grid and core classes.
- Updated various dependencies, mostly for developers.
- Pinned chainconsumer dependency to <1.0.
- Added codespell to pre-commit hooks.
- Fixed some deprecations and code-formatting issues.
- Extended tests.
- Changed tutorial notebooks plotting from pcolorfast to pcolormesh.
For a list of known issues, or to report any problems, please see: https://github.com/PyFstat/PyFstat/issues
Scientific Software - Peer-reviewed
- Python
Published by dbkeitel over 1 year ago
PyFstat - v2.1.0
This is the v2.1.0 release of PyFstat, a python package for gravitational-wave data analysis with the F-statistic, dated 04/07/2024.
This is a maintenance release for updating python and numpy compatibility and fixing minor bugs. This release now supports python versions from 3.9 to 3.12 (python 3.8 no longer supported).
From the changelog: - Dropped python 3.8 support. - Enabled python 3.12 support. - Enabled support for numpy >=1.24.0 as long as it's still <2.0. - Fixed binder notebooks. - Fixes to some MCMC plotting methods in case of returning fig and axes (rather than saving to files). - Fix for transient parameters in getpredictfstatparametersfrom_dict(). - for developers: upgraded to black 24 style, refactored and updated the github actions.
For a list of known issues, or to report any problems, please see: https://github.com/PyFstat/PyFstat/issues
Scientific Software - Peer-reviewed
- Python
Published by dbkeitel almost 2 years ago
PyFstat - v2.1.0rc1
This is a pre-release for the v2.1.0 release of PyFstat, a python package for gravitational-wave data analysis with the F-statistic, dated 03/07/2024.
This is a maintenance release for updating python and numpy compatibility and fixing minor bugs. This release now supports python versions from 3.9 to 3.12 (python 3.8 no longer supported).
From the changelog: - Dropped python 3.8 support. - Enabled python 3.12 support. - Enabled support for numpy >=1.24.0 as long as it's still <2.0. - Fixed binder notebooks. - Fixes to some MCMC plotting methods in case of returning fig and axes (rather than saving to files). - Fix for transient parameters in getpredictfstatparametersfrom_dict(). - for developers: upgraded to black 24 style, refactored and updated the github actions.
For a list of known issues, or to report any problems, please see: https://github.com/PyFstat/PyFstat/issues
Scientific Software - Peer-reviewed
- Python
Published by dbkeitel almost 2 years ago
PyFstat - v2.0.2
This is the v2.0.2 release of PyFstat, a python package for gravitational-wave data analysis with the F-statistic, dated 12/10/2023.
This release supports python versions from 3.8 to 3.11.
From the changelog: - Pinned to python<3.12 until more dependencies are updated and a few things fixed on our end.
For a list of known issues, or to report any problems, please see: https://github.com/PyFstat/PyFstat/issues
Scientific Software - Peer-reviewed
- Python
Published by dbkeitel over 2 years ago
PyFstat - v2.0.1
This is the v2.0.1 release of PyFstat, a python package for gravitational-wave data analysis with the F-statistic, dated 11/10/2023.
This release supports python versions from 3.8 to 3.11.
From the changelog: - Fixed compatibility with matplotlib=3.8 and bumped minimum requirement to >=3.3. - Fixed pulling in ephemerides via lalpulsar optional dependency. - Fixed line simulation in "generating noise" tutorial. - Fixed some type checks to conform to flake8>=1.7 standards. - PyPI uploads now done using "trusted publishing" (OIDC).
For a list of known issues, or to report any problems, please see: https://github.com/PyFstat/PyFstat/issues
Scientific Software - Peer-reviewed
- Python
Published by dbkeitel over 2 years ago
PyFstat - v2.0.1rc1
This is a pre-release for the v2.0.1 release of PyFstat, a python package for gravitational-wave data analysis with the F-statistic, dated 11/10/2023. This is mainly for testing an updated PyPI uploading procedure.
Scientific Software - Peer-reviewed
- Python
Published by dbkeitel over 2 years ago
PyFstat - v2.0.0
This is the v2.0.0 release of PyFstat, a python package for gravitational-wave data analysis with the F-statistic, dated 18/04/2023.
This release supports python versions from 3.8 to 3.11.
This is a major release of PyFstat in the sense that users will likely have to make some changes to the way they call it, but mostly just regarding class instance labels / file naming.
From the changelog:
- Mainly, we follow the recent lalpulsar upgrade to v3 of the SFT file format specification (see https://dcc.ligo.org/T040164-v2/public and note the v2 in the URL is not a typo, this file version describes both the v2 and v3 specifications).
- We now require lalsuite>=7.13.
- The file format update itself is fully backwards compatible: the only change is including window information in the header, which however reuses existing padding bytes, and hence does not affect compatibility.
- The file naming convention however has become more restrictive: SFT files, and hence label arguments for Writer and derived classes, now may only contain ASCII alphanumerical characters, which specifically makes the old PyFstat habit of using underscores illegal. We suggest CamelCase instead.
- Instead of SFTWindowBeta, one must now use SFTWindowParam.
- noiseSFTs no longer requires SFTWindow[Beta/Param], only if a window specification cannot be read from the headers of input SFTs.
- Fixed an error that prevented one parameter to be printed in search output file header comments.
- Fixed compatibility with corner=2.2.2.
- Removed utils.get_lal_exec(), now always expect executables to be named lalpulsar_. (Old LALSuite versions with lalapps_ CW executables are quite outdated by now.)
- Removed deprecated prior formats in InjectionParametersGenerator class.
- Transient F-stat GPU implementation:
- Introduced F-stat condition number check, with threshold equivalent to defaults of XLALComputeAntennaPatternSqrtDeterminant() and estimateAntennaPatternConditionNumber().
- Now falls back to F=2 (2F=4) if Ddinv=0, also equivalent to lalpulsar.
- Added unit tests.
- Improved CUDA device info logging.
- For developers: updated coding style to black 23.1.0 rules (mostly newlines policy).
For a list of known issues, or to report any problems, please see: https://github.com/PyFstat/PyFstat/issues
Scientific Software - Peer-reviewed
- Python
Published by dbkeitel about 3 years ago
PyFstat - v1.19.1
This is the v1.19.1 release of PyFstat, a python package for gravitational-wave data analysis with the F-statistic, dated 19/12/2022.
This release supports python versions from 3.8 to 3.11.
The only change since v1.19.0 is that we've pinned, until further notice, to numpy<1.24.0 to avoid incompatibility with ptemcee.
Previous changes, from the changelog of v1.19.0:
- LALSuite is introducing an SFT specification and filename update
- see https://dcc.ligo.org/T040164-v2/public
- This version of PyFstat is pinned to
lalsuite<=7.11(orlalpulsar<6.0) so that it is ensured to keep working with the old convention. - Next PyFstat release will adapt to the LALSuite changes.
- Added
get_official_sft_filename()utility function to ease migration.
- Improvements to
injection_parametersmodule with new priors logic (see documentation); old input style still supported for now but deprecated. Writer: improved timestamps handling: support 1-column format (without nanoseconds), which has been the LALPulsar default for a while.- Changed
ComputeFstat.write_atoms_to_file()method to use consistent%%comment markers. - Fixed segfault in
get_semicoherent_single_IFO_twoFs()with recent LALSuite (need to properly copy FstatAtomVector struct). - Fixed
TransientGridSearchwhen not setting any actual transient parameters. - Added (h0,cosi)<->(aplus,across) functions to
utils.converting. - Added
utils.atomsubmodule with tools related to F-stat atoms. utils.get_sft_as_arrays()now user-accessibleWriter: warning about inferring parameters (innoiseSFTs is not Nonecase) downgraded to info message- improvements to documentation and test suite
For a list of known issues, or to report any problems, please see: https://github.com/PyFstat/PyFstat/issues
Scientific Software - Peer-reviewed
- Python
Published by dbkeitel over 3 years ago
PyFstat - v1.19.0
This is the v1.19.0 release of PyFstat, a python package for gravitational-wave data analysis with the F-statistic, dated 01/12/2022.
This release supports python versions from 3.8 to 3.11.
From the changelog:
- LALSuite is introducing an SFT specification and filename update
- see https://dcc.ligo.org/T040164-v2/public
- This version of PyFstat is pinned to
lalsuite<=7.11(orlalpulsar<6.0) so that it is ensured to keep working with the old convention. - Next PyFstat release will adapt to the LALSuite changes.
- Added
get_official_sft_filename()utility function to ease migration.
- Improvements to
injection_parametersmodule with new priors logic (see documentation); old input style still supported for now but deprecated. Writer: improved timestamps handling: support 1-column format (without nanoseconds), which has been the LALPulsar default for a while.- Changed
ComputeFstat.write_atoms_to_file()method to use consistent%%comment markers. - Fixed segfault in
get_semicoherent_single_IFO_twoFs()with recent LALSuite (need to properly copy FstatAtomVector struct). - Fixed
TransientGridSearchwhen not setting any actual transient parameters. - Added (h0,cosi)<->(aplus,across) functions to
utils.converting. - Added
utils.atomsubmodule with tools related to F-stat atoms. utils.get_sft_as_arrays()now user-accessibleWriter: warning about inferring parameters (innoiseSFTs is not Nonecase) downgraded to info message- improvements to documentation and test suite
For a list of known issues, or to report any problems, please see: https://github.com/PyFstat/PyFstat/issues
Scientific Software - Peer-reviewed
- Python
Published by dbkeitel over 3 years ago
PyFstat - v1.18.1
This is the v1.18.1 release of PyFstat, a python package for gravitational-wave data analysis with the F-statistic, dated 03/10/2022.
This release supports python versions from 3.8 to 3.10.
From the changelog:
- fixed finalizer setup for calling
ComputeFstatand its children in context-manager mode - reverted "walrus operators" (
:=) and use ofLiteraltyping checks to facilitatepython 3.7backwards compatibility (not officially supported from release, but can be easily restored on branches / local clones) - lalsuite-from-source install instructions no longer included in README, now live on wiki
- fixed logging use in examples
- improved testing of tutorial notebooks
For a list of known issues, or to report any problems, please see: https://github.com/PyFstat/PyFstat/issues
Scientific Software - Peer-reviewed
- Python
Published by dbkeitel over 3 years ago
PyFstat - v1.18.0
This is the v1.18.0 release of PyFstat, a python package for gravitational-wave data analysis with the F-statistic, dated 06/09/2022.
This release supports python versions from 3.8 to 3.10.
From the changelog:
- refurbished logging system:
- on
import.pyfstat, stdout logging at INFO level is activated unless there are already handlers attached to the root logger - recommended to further call
pyfstat.set_up_loggerand define an output log file, as demonstrated in our examples - see https://pyfstat.readthedocs.io/en/v1.18.0/pyfstat.html#module-pyfstat.logging for details
- removed the last global argparse options
--quiteand--verbose, along with the remainders of thehelper_functions.set_up_command_line_arguments()function. Please usepyfstat.set_up_loggerinstead to determine verbosity level. - tests now by default print all >=WARNING messages even for passing cases and full >=INFO for failing cases
- improved handling of LALSuite executables through
run_commandline- better stderr/stdout capture
- return is now either a
subprocess.CompletedProcessobject orNone - default is now
return_output=False log_levelargument removed (please usepyfstat.set_up_loggerinstead)
- capture and handling of output from SWIG-wrapped LALSuite functions likely to be further improved in future versions
- on
- refactored
helper_functionsmodule intoutilssubpackage with multiple source files;- user can access all functions directly as
utils.some_functionwithout worrying about the level one further down - moved
matplotlibsetup into newutils.safe_X_less_plt() - removed deprecated/unused helper functions:
get_peak_valuesget_comb_valuesget_sft_array
- user can access all functions directly as
- can install with
NO_LALSUITE_FROM_PYPIenvironment variable, e.g. to avoid duplication of dependencies from conda and pip (now used this way in recommendedpyfstat-dev.yml) - removed
peakutilsdependency - optional
[dev]set of dependencies now also includesdocsdependencies - added
sphinx_autodoc_typehintstodocsdependencies and updated pinned versions of other sphinx packages DetectorStates: fixed passing plain lists as values of atimestampsdict
For a list of known issues, or to report any problems, please see: https://github.com/PyFstat/PyFstat/issues
Scientific Software - Peer-reviewed
- Python
Published by dbkeitel over 3 years ago
PyFstat - v1.17.0
This is the v1.17.0 release of PyFstat, a python package for gravitational-wave data analysis with the F-statistic, dated 26/08/2022.
This release supports python versions from 3.8 to 3.10. We no longer support python 3.7 as of this release, as there are no recent LALSuite releases for it any more.
From the changelog:
- dropped dependency on
lalappsand now requiringlalpulsar>=5.0.0instead, where LALSuite executables now live (corresponding tolalsuite>=7.7)- there is a
get_lal_exec()helper function to still allow running on old installations where the executables live inlalapps - removed most of the old package-level hardcoded
argparseoptions, this should reduce conflicts when users import it in their own caller scripts: --cleanto be given as an argument to supporting classes-Nto be given as class argumentnum_threadsto the one classFrequencyModulatedArtifactWriterthat supported it--setup-onlyand--no-template-countingto be given as class arguments to the (now deprecated)MCMCFollowUpSearch--no-interactivewas not supported anywhere- LaTeX no longer enabled for plotting by default
- removed
bashplotlibdependency and SFT timestamps ASCII art - removed fallbacks in case
tqdmis not available, which is a dependency anyway snrclass: fixed behaviour when instantiating with a dictionary of timestamps- removed old backwards compatibility code from
FrequencyModulatedArtifactWriter - developers: updated pre-commit hooks
- there is a
For a list of known issues, or to report any problems, please see: https://github.com/PyFstat/PyFstat/issues
Scientific Software - Peer-reviewed
- Python
Published by dbkeitel almost 4 years ago
PyFstat - v1.17.0rc1
This is a pre-release for the v1.17.0 release of PyFstat, a python package for gravitational-wave data analysis with the F-statistic, dated 26/08/2022.
This release supports python versions from 3.8 to 3.10. We no longer support python 3.7 as of this release, as there are no recent LALSuite releases for it any more.
From the changelog:
- dropped dependency on
lalappsand now requiringlalpulsar>=5.0.0instead, where LALSuite executables now live (corresponding tolalsuite>=7.7)- there is a
get_lal_exec()helper function to still allow running on old installations where the executables live inlalapps - removed most of the old package-level hardcoded
argparseoptions, this should reduce conflicts when users import it in their own caller scripts: --cleanto be given as an argument to supporting classes-Nto be given as class argumentnum_threadsto the one classFrequencyModulatedArtifactWriterthat supported it--setup-onlyand--no-template-countingto be given as class arguments to the (now deprecated)MCMCFollowUpSearch--no-interactivewas not supported anywhere- LaTeX no longer enabled for plotting by default
- removed
bashplotlibdependency and SFT timestamps ASCII art - removed fallbacks in case
tqdmis not available, which is a dependency anyway snrclass: fixed behaviour when instantiating with a dictionary of timestamps- removed old backwards compatibility code from
FrequencyModulatedArtifactWriter - developers: updated pre-commit hooks
- there is a
For a list of known issues, or to report any problems, please see: https://github.com/PyFstat/PyFstat/issues
Scientific Software - Peer-reviewed
- Python
Published by dbkeitel almost 4 years ago
PyFstat - v1.16.0
This is the v1.16.0 release of PyFstat, a python package for gravitational-wave data analysis with the F-statistic, dated 25/07/2022.
This release supports python versions from 3.7 to 3.10.
From the changelog:
- include local versions of autocorr functions from
ptemceeto restore compatibility withnumpy>=1.23.0 Writer: remove deprecatedtimestampsFilesoption, please use the more generaltimestampsinstead- added
BtSGoption to transient searches (transient Bayes factor from PGM2011) pyTransientFstatMapis now available viaimport pyfstat- some refactoring of internal detection statistics functions
- use of
lalapps_tconvertreplaced by newgps_to_datestr_utc()helper function (which usesXLALGPSToUTCanddatetime) - fix CUDA context detaching at garbage collection time for
ComputeFstatandTransientGridSearchclasses- using
weakref - should not require any caller code changes in standard use cases
- but if user wants to initiate more than one such object from one session/script, these should be used in context manager style (
with ComputeFstat asetc)
- using
- remove redundant complex entries from output of
tcw_fstat_map_funcs.reshape_FstatAtomsVector() - streamline installation instructions for developers and remove single-use helper bash scripts
For a list of known issues, or to report any problems, please see: https://github.com/PyFstat/PyFstat/issues
Scientific Software - Peer-reviewed
- Python
Published by dbkeitel almost 4 years ago
PyFstat - v1.15.0
This is the v1.15.0 release of PyFstat, a python package for gravitational-wave data analysis with the F-statistic, dated 27/06/2022.
This release supports python versions from 3.7 to 3.10.
From the changelog:
- pin
numpy<1.23.0to work aroundptemceeincompatibility pyfstat.__version__now reported with the leadingvstripped out (e.g. just1.15.0)- added new method
compute_h0_from_snr2()toSignalToNoiseRatioclass init_transient_fstat_map_features()now is stricter about feature name strings- added tutorial notebooks to binder
- improved installation instructions
For a list of known issues, or to report any problems, please see: https://github.com/PyFstat/PyFstat/issues
Scientific Software - Peer-reviewed
- Python
Published by dbkeitel almost 4 years ago
PyFstat - v1.14.1
This is the v1.14.1 release of PyFstat, a python package for gravitational-wave data analysis with the F-statistic, dated 12/05/2022.
This release supports python versions from 3.7 to 3.10.
From the changelog:
- fixed
phi0argument name tophiinSignalToNoiseRatio.compute_snr2()function to match conventions elsewhere - fixed syntax error in
Writerwhen both timestamps and detector names are given - added new set of intro notebooks in
examples/tutorials
For a list of known issues, or to report any problems, please see: https://github.com/PyFstat/PyFstat/issues
Scientific Software - Peer-reviewed
- Python
Published by dbkeitel about 4 years ago
PyFstat - v1.14.0
This is the v1.14.0 release of PyFstat, a python package for gravitational-wave data analysis with the F-statistic, dated 31/03/2022.
This release supports python versions from 3.7 to 3.10.
From the changelog:
- new dependencies:
attr(core),flaky(for tests only) - removed deprecated option to use
$LALPULSAR_DATADIRfor ephemerides - added
SignalToNoiseRatioclass (equivalent tolalapps_PredictFstat) andDetectorStateshelper class in newsnrmodule InjectionParametersGeneratorand its children moved to separate moduleinjection_parametersWriter(and its children) now acceptstimestampsas a list, dict over detectors, or comma-separated string of files per detector (timestampsFilesinput is now deprecated)- some simplifications to
Writerinternal methods - for developers:
- test suite now split up by module, full suite can now be run with
pytest tests/ - flaky MCMC tests will be rerun 3 times if needed
- now enforcing
isortimport ordering style and some other simple pre-commit-hook rules
- test suite now split up by module, full suite can now be run with
For a list of known issues, or to report any problems, please see: https://github.com/PyFstat/PyFstat/issues
Scientific Software - Peer-reviewed
- Python
Published by dbkeitel about 4 years ago
PyFstat - v1.14.0.rc1
This is the v1.14.0rc1 release of PyFstat, a python package for gravitational-wave data analysis with the F-statistic, dated 29/03/2022. This is a test release (release candidate) to test updates to our dependencies and tests setup.
This release supports python versions from 3.7 to 3.10.
From the changelog:
- new dependencies:
attr(core),flaky(for tests only) - removed deprecated option to use
$LALPULSAR_DATADIRfor ephemerides - added
SignalToNoiseRatioclass (equivalent tolalapps_PredictFstat) andDetectorStateshelper class in newsnrmodule InjectionParametersGeneratorand its children moved to separate moduleinjection_parametersWriter(and its children) now acceptstimestampsas a list, dict over detectors, or comma-separated string of files per detector (timestampsFilesinput is now deprecated)- some simplifications to
Writerinternal methods - for developers:
- test suite now split up by module, full suite can now be run with
pytest tests/ - flaky MCMC tests will be rerun 3 times if needed
- now enforcing
isortimport ordering style and some other simple pre-commit-hook rules
- test suite now split up by module, full suite can now be run with
For a list of known issues, or to report any problems, please see: https://github.com/PyFstat/PyFstat/issues
Scientific Software - Peer-reviewed
- Python
Published by dbkeitel about 4 years ago
PyFstat - v1.13.1
This is the v1.13.1 release of PyFstat, a python package for gravitational-wave data analysis with the F-statistic, dated 15/02/2022.
This release supports python versions from 3.7 to 3.10.
From the changelog:
- add new helper function
get_sft_as_arrays() - deprecate
get_sft_array() - the new one supports multiple IFOs and returns full complex amplitude info
- note that the order of returned values is different
For a list of known issues, or to report any problems, please see: https://github.com/PyFstat/PyFstat/issues
Scientific Software - Peer-reviewed
- Python
Published by dbkeitel over 4 years ago
PyFstat - v1.13.0
This is the v1.13.0 release of PyFstat, a python package for gravitational-wave data analysis with the F-statistic, dated 01/02/2022.
This release supports python versions from 3.7 to 3.10.
From the changelog:
- now tested for python 3.10
- simpler handling of ephemerides files:
- lalsuite >= 7.2.0 (lalpulsar >= 3.1.1) now includes a sufficient minimal set by default and has gotten much better at resolving default paths
- no manual setup should be required any more for
pipinstalls - remove download script
- deprecate using
$LALPULSAR_DATADIR
- bump LALSuite version requirements correspondingly
Writerclasses: fix bug with spurious expected filename mismatch if givennoiseSFTsincluding multiple frequency-segmented SFTsGridSearchnow hasgenerate_loudest()method like MCMC classes- fix some deprecation warnings
For a list of known issues, or to report any problems, please see: https://github.com/PyFstat/PyFstat/issues
Scientific Software - Peer-reviewed
- Python
Published by dbkeitel over 4 years ago
PyFstat - v1.12.1
This is the v1.12.1 release of PyFstat, a python package for gravitational-wave data analysis with the F-statistic, dated 04/12/2021.
Compared with v1.12.0, this only adds a backwards compatibility workaround for lalapps 7.3.0 in FrequencyModulatedArtifactWriter to fix running with conda dependencies. (v1.12.0 wasn't successfully shipped through conda-forge.)
This release supports python versions from 3.7 to 3.9: python 3.6 is no longer supported. If you cannot upgrade from python 3.6, the last PyFstat version supporting it is v1.11.6, working with LALSuite versions <=7.0.
From the v1.12.0 changelog:
- drop python 3.6 support
- require LALSuite >= 7.1
- no longer pinning numpy
- resolved various deprecation warnings
- follow updated "narrowband" SFT file name convention from lalapps_splitSFTs
- new
timestampsFilesoption forWriterclasses - new
allowedMismatchFromSFTLengthoption for core and MCMC classes - new
singleFstatsoption forComputeFstatand derived classes - new
randSeedoption forComputeFstatand derived classes for reproducible on-the-fly Gaussian noise generation - fix data-from-disk reuse in
LineWriterand some internal cleanup toWriterand derived classes in general
For a list of known issues, or to report any problems, please see: https://github.com/PyFstat/PyFstat/issues
Scientific Software - Peer-reviewed
- Python
Published by dbkeitel over 4 years ago
PyFstat - v1.12.0
This is the v1.12.0 release of PyFstat, a python package for gravitational-wave data analysis with the F-statistic, dated 03/12/2021.
This release supports python versions from 3.7 to 3.9. I.e. this is the first release to drop python 3.6 support. If you cannot upgrade from python 3.6, the last PyFstat version supporting it is v1.11.6, working with LALSuite versions <=7.0.
From the changelog:
- drop python 3.6 support
- require LALSuite >= 7.1
- no longer pinning numpy
- resolved various deprecation warnings
- follow updated "narrowband" SFT file name convention from lalapps_splitSFTs
- new
timestampsFilesoption forWriterclasses - new
allowedMismatchFromSFTLengthoption for core and MCMC classes - new
singleFstatsoption forComputeFstatand derived classes - new
randSeedoption forComputeFstatand derived classes for reproducible on-the-fly Gaussian noise generation - fix data-from-disk reuse in
LineWriterand some internal cleanup toWriterand derived classes in general
For a list of known issues, or to report any problems, please see: https://github.com/PyFstat/PyFstat/issues
Scientific Software - Peer-reviewed
- Python
Published by dbkeitel over 4 years ago
PyFstat - v1.11.6
This is the v1.11.6 release of PyFstat, a python package for gravitational-wave data analysis with the F-statistic, dated 14/04/2021.
This release supports python versions from 3.6 to 3.9.
From the changelog:
- new reference paper for PyFstat: https://doi.org/10.21105/joss.03000
- all requirements are now handled through setup.py, e.g. instead of
pip install -r requirements.txtand manually installing optional dependencies, just usepip install pyfstat[optionalpackage] - improved formatting of MCMC corner plots
- extended cumulative 2F plots for the transient case
- ComputeFstat.getsemicoherenttwoF() now returns its value
- minor internal cleanups
- test coverage improvements
For a list of known issues, or to report any problems, please see: https://github.com/PyFstat/PyFstat/issues
Scientific Software - Peer-reviewed
- Python
Published by dbkeitel about 5 years ago
PyFstat - v1.11.6rc1
This is the v1.11.6rc1 release of PyFstat, a python package for gravitational-wave data analysis with the F-statistic, dated 14/04/2021. This is a test release (release candidate) to test changes in dependency handling.
This release requires at least python 3.6; python 3.9 is now also fully supported.
Scientific Software - Peer-reviewed
- Python
Published by dbkeitel about 5 years ago
PyFstat - v1.11.5
This is the v1.11.5 release of PyFstat, a python package for gravitational-wave data analysis with the F-statistic, dated 02/04/2021.
This release supports python versions from 3.6 to 3.9.
From the changelog:
- PyPI source tarball for v1.11.4 didn't include files needed to build conda package
- improved codecov setup
- no actual changes to package
For a list of known issues, or to report any problems, please see: https://github.com/PyFstat/PyFstat/issues
Scientific Software - Peer-reviewed
- Python
Published by dbkeitel about 5 years ago
PyFstat - v1.11.5.rc2
This is the v1.11.5rc2 release of PyFstat, a python package for gravitational-wave data analysis with the F-statistic, dated 02/04/2021. This is a test release (release candidate) to test changes in PyPI sdist upload.
This release requires at least python 3.6; python 3.9 is now also fully supported.
Scientific Software - Peer-reviewed
- Python
Published by dbkeitel about 5 years ago
PyFstat - v1.11.5.rc1
This is the v1.11.5rc1 release of PyFstat, a python package for gravitational-wave data analysis with the F-statistic, dated 01/04/2021. This is a test release (release candidate) to test changes in PyPI sdist upload.
This release requires at least python 3.6; python 3.9 is now also fully supported.
Scientific Software - Peer-reviewed
- Python
Published by dbkeitel about 5 years ago
PyFstat - v1.11.4
This is the v1.11.4 release of PyFstat, a python package for gravitational-wave data analysis with the F-statistic, dated 31/03/2021.
This release requires at least python 3.6; python 3.9 is now also fully supported.
From the changelog:
- python 3.9 now supported
- improvements to documentation and examples
- for developers: flake8-docstrings and flake8-executable rules now enforced
- added a codemeta.json file
- started tracking test coverage with codecov
For a list of known issues, or to report any problems, please see: https://github.com/PyFstat/PyFstat/issues
Scientific Software - Peer-reviewed
- Python
Published by dbkeitel about 5 years ago
PyFstat - v1.11.3
This is the v1.11.3 release of PyFstat, a python package for gravitational-wave data analysis with the F-statistic, dated 16/02/2021.
This release requires at least python 3.6.
From the changelog:
- added LineWriter class for simulating unmodulated noise artifacts
For a list of known issues, or to report any problems, please see: https://github.com/PyFstat/PyFstat/issues
Scientific Software - Peer-reviewed
- Python
Published by dbkeitel over 5 years ago
PyFstat - v1.11.2
This is the v1.11.2 release of PyFstat, a python package for gravitational-wave data analysis with the F-statistic, dated 12/02/2021.
This release requires at least python 3.6.
From the changelog:
- pinned numpy dependency to <1.20 to fix incompatibility with lalsuite 6.81
- updated ephemerides instructions and citation requests in README
- fixed FrequencyModulatedArtifactWriter class
For a list of known issues, or to report any problems, please see: https://github.com/PyFstat/PyFstat/issues
Scientific Software - Peer-reviewed
- Python
Published by dbkeitel over 5 years ago
PyFstat - v1.11.1
This is the v1.11.1 release of PyFstat, a python package for gravitational-wave data analysis with the F-statistic, dated 26/01/2021.
This release requires at least python 3.6.
From the changelog:
- matplotlib will no longer be automatically forced to
agg, but only ifenv["DISPLAY"]is not set - improved default scaling of MCMC corner plots
- fixed missing unit for
tpbinary parameter in MCMC default plot labels
For a list of known issues, or to report any problems, please see: https://github.com/PyFstat/PyFstat/issues
Scientific Software - Peer-reviewed
- Python
Published by dbkeitel over 5 years ago
PyFstat - v1.11.0
This is the v1.11.0 release of PyFstat, a python package for gravitational-wave data analysis with the F-statistic, dated 20/01/2021.
This release requires at least python 3.6.
From the changelog:
- LALSuite >= 6.80 now required
- simplified calls to F-stat prediction
- Writer:
- internal cleanup of sftfilenames vs sftfilepath
- SFTs are validated at end of
run_makefakedata()
- core and search classes: improved and fixed non-standard detection statistics
- fixed basic twoFX and BSGL computation logic for transient and semicoherent cases, generalized to Ndet>2
- reorganised methods for these computations
- additional results are stored as class attributes
- for transients, the detection statistic is now called explicitly
maxTwoF
- grid classes now initiate their
.searchobject at instantiation instead of at firstrun()call
For a list of known issues, or to report any problems, please see: https://github.com/PyFstat/PyFstat/issues
Scientific Software - Peer-reviewed
- Python
Published by dbkeitel over 5 years ago
PyFstat - v1.10.1
This is the v1.10.1 release of PyFstat, a python package for gravitational-wave data analysis with the F-statistic, dated 20/01/2021.
This release requires at least python 3.6.
From the changelog:
- bugfix for MCMCSearch.plot_prior_posterior()
KNOWN ISSUE: implementation of line-robust statistic BSGL will be overhauled in the next major release.
For a list of other known issues, or to report any problems, please see: https://github.com/PyFstat/PyFstat/issues
Scientific Software - Peer-reviewed
- Python
Published by dbkeitel over 5 years ago
PyFstat - v1.10.0
This is the v1.10.0 release of PyFstat, a python package for gravitational-wave data analysis with the F-statistic, dated 08/01/2021.
This release requires at least python 3.6.
From the changelog:
- documentation now available from https://pyfstat.readthedocs.io
- and examples can be run on https://mybinder.org/v2/gh/PyFstat/PyFstat/master
- still being improved
- added
gridcornermodule for plotting GridSearch results - removed the specialist grid-based classes which were deprecated in 1.9.0
- internal changes to search classes
- should ideally not change anything for standard CW use cases
- but fix some corner cases and make for more robustness
- made tstart,tend optional in
get_fullycoherent_twoF() - adapted most high-level search classes to this change
- grid searches now internally use named-column ndarrays
- some cleanup to keys storage in MCMC classes
- changed
helper_functions.get_doppler_params_output_format()to return dict - fixed sorting of output fmt specifiers for both MCMC and grid classes
- changed
GridSearch.inititate_search_object()to internal method_initiate_search_object()
- line-robust statistics are now always stored and returned as log10BSGL (for consistency with LALSuite)
- made various class methods private that had no obvious end-user use case
MCMCSearch.run(): initiate search object before checking for old dataMCMCGlitchSearch.plot_cumulative_max(): add savefig option (defaults to false)GridSearch.plot_2D(): renamendsaveoption tosavefigfor consistency with other plotting functions- removed unused
ComputeFstat.get_full_CFSv2_output() - removed unused helper functions:
compute_P_twoFstarcheck()compute_pstar()twoFDMoffThreshold()
- new example
other_examples/PyFstat_example_spectrogram.py - some improvements to tests and examples
- KNOWN ISSUES: implementation of line-robust statistic BSGL will need to be overhauled
For a list of other known issues, or to report any problems, please see: https://github.com/PyFstat/PyFstat/issues
Scientific Software - Peer-reviewed
- Python
Published by dbkeitel over 5 years ago
PyFstat - v1.9.0
This is the v1.9.0 release of PyFstat, a python package for gravitational-wave data analysis with the F-statistic, dated 30/10/2020.
This release requires at least python 3.6.
From the changelog:
- new class InjectionParametersGenerator
- draws dicts of parameters from arbitrary priors
- can then be directly passed e.g. to Writer as **params
- and derived AllSkyInjectionParametersGenerator
- deprecate various grid-based specialist classes:
- these were all more or less unmaintained since a long time
- SliceGridSearch
- GridUniformPriorSearch
- SlidingWindow
- FrequencySlidingWindow
- EarthTest
- DMoffNOSPIN
- will be removed in next version unless users speak up
For a list of known issues, or to report any problems, please see: https://github.com/PyFstat/PyFstat/issues
Scientific Software - Peer-reviewed
- Python
Published by dbkeitel over 5 years ago
PyFstat - v1.8.0
This is the v1.8.0 release of PyFstat, a python package for gravitational-wave data analysis with the F-statistic, dated 13/10/2020.
This release requires at least python 3.6.
From the changelog: - big overhaul of cumulative twoF calculations and plotting - Writer: fix expected sftfilepattern in multi-IFO and custom-TSFT cases - fixed internal consistency of parameter names: - Freq->F0 and phi0->phi for all PyFstat classes/functions - consistent conversion to lalappas arguments - fixed parsing of injectSqrtSX and assumeSqrtSX arguments - helperfunctions.predictfstat() no longer takes **kwargs - new instructions and helpful scripts for setting up developer environments (venv or conda) - various improvements to test suite
For a list of known issues, or to report any problems, please see: https://github.com/PyFstat/PyFstat/issues
Scientific Software - Peer-reviewed
- Python
Published by dbkeitel over 5 years ago
PyFstat - v1.7.3
This is the v1.7.3 release of PyFstat, a python package for gravitational-wave data analysis with the F-statistic, dated 21/09/2020.
This release requires at least python 3.6.
From the changelog: - GridSearch: will now always include the end point in each 1D parameter points array - restored MCMCSearch.plot_chainconsumer() to a workable state - optional dependency checked and documented more cleanly - the injections parameter option for this is actually called "truth" not "truths - fixed checks of injection parameter keys for other MCMC plotting functions
For a list of known issues, or to report any problems, please see: https://github.com/PyFstat/PyFstat/issues
Scientific Software - Peer-reviewed
- Python
Published by dbkeitel over 5 years ago
PyFstat - v1.7.2
This is the v1.7.2 release of PyFstat, a python package for gravitational-wave data analysis with the F-statistic, dated 18/09/2020.
This release requires at least python 3.6.
From the changelog: - improved GridSearch.checkolddataisokaytouse() - minor logging improvements for Writer, GridSearch, TransientGridSearch - new binarymcmcvs_grid example - minor improvements to tests and other examples
For a list of known issues, or to report any problems, please see: https://github.com/PyFstat/PyFstat/issues
Scientific Software - Peer-reviewed
- Python
Published by dbkeitel over 5 years ago
PyFstat - v1.7.1
This is the v1.7.1 release of PyFstat, a python package for gravitational-wave data analysis with the F-statistic, dated 16/09/2020.
This release requires at least python 3.6.
From the changelog: - LALSuite 6.76 now required - predictfstat() helper function made more flexible - Writer: fixed checkcacheddataokaytouse() for multiple IFOs - MCMCSearch and derived classes now store sampler as an attribute - fixes to MCMC plotting - proper scaling of injection parameters in walker plots - proper display of prior (not logprior) in prior_posterior comparisons - consistently close figure objects after saving - all classes now announce their creation to the logger - flake8 compliance - code style now complying to stricter black 20.8b standards - improvements to examples
For a list of known issues, or to report any problems, please see: https://github.com/PyFstat/PyFstat/issues
Scientific Software - Peer-reviewed
- Python
Published by dbkeitel over 5 years ago
PyFstat - v1.7.0
This is the v1.7.0 release of PyFstat, a python package for gravitational-wave data analysis with the F-statistic, dated 31/08/2020.
This release requires at least python 3.6.
From the changelog: - Writer: fix binary tp handling and clean up injection parameter parsing - MCMCSearch plotting improvements: - add injection parameters through "truths" kwarg - F->2F fixes - fix failures for single-parameter posteriors - removed unused Bunch class - refactored some core functions into BaseSearchClass methods or moved to helperfunctions - removed deprecated options/functions: - ComputeFstat option estimatecoveringband - Writer options minStartTime, maxStartTime - MCMCSearch.getmedian_stds() - new internal class SearchForSignalWithJump which SemiCoherentGlitchSearch and GlitchWriter inherit from
Scientific Software - Peer-reviewed
- Python
Published by dbkeitel over 5 years ago
PyFstat - v1.6.0
This is the v1.6.0 release of PyFstat, a python package for gravitational-wave data analysis with the F-statistic, dated 19/08/2020.
This release requires at least python 3.6.
From the changelog: - Writer classes, including several backwards-incompatbile changes: - removed lots of default values where there isn't really a logical "default"; e.g. detectors and signal parameters now always need to be explicitly set. - more flexible setup getting info from noiseSFTs (tstart, duration now optional and used as constraints) - can now auto-estimate SFT frequency band if not set by user (assuming a single-template search) - added manual ephemerides options - removed addnoise option, same behaviour can still be controlled through options sqrtSX or noiseSFTs - no .cff file generated any more if h0==0 (no signal) - verbose option for makecff() and makedata() methods - clearer error messages in many cases - ComputeFstat, SemiCoherentSearch and derived classes: - fixed internal maxStartTime default if not set by user - by that, fixed the SemiCoherentSearch segments auto-setup - added Tsft as user option - clearer error and logging messages - improved helperfunctions.getsftarray() - extended, cleaned up and further modularised test suite - updated examples to changes in Writer and other classes
Scientific Software - Peer-reviewed
- Python
Published by dbkeitel almost 6 years ago
PyFstat - v1.5.2
This is the v1.5.2 release of PyFstat, a python package for gravitational-wave data analysis with the F-statistic, dated 06/08/2020.
This release requires at least python 3.6.
From the changelog: - fixed semi-coherent search bug introduced in 1.5.0: - last segment was always skipped due to off-by-one error in segment boundary calculation. - MCMC searches: - extended printsummary() with new getsummarystats() helper and deprecated getmedian_stds() - fixes to some of the more exotic prior types. - Extended MCMC test coverage.
Scientific Software - Peer-reviewed
- Python
Published by dbkeitel almost 6 years ago
PyFstat -
This is the v1.5.1 release of PyFstat, a python package for gravitational wave analysis with the F-statistic, dated 30/07/2020.
This release requires at least python 3.6.
Note that v1.5.0 was not available from PyPI due to a typo in the release tag. Hence, v1.5.1 is the first "proper" release of the 1.5.x series. The only change in v1.5.1 over v1.5.0 is that the citation guidance in the README has been updated to point to the new Zenodo DOI 10.5281/zenodo.3967045 (which became necessary to automate uploads to that repository).
From the changelog for v1.5.0 since the previous version (v1.4.2): - new default coverage band behaviour for all search classes: - estimate from search ranges (GridSearch) or prior (MCMCSearch) unless minCoverFreq, maxCoverFreq set - negative values can be used to reproduce old default of setting from SFT width - explicit option estimatecoveringband deprecated - semicoherent searches: - sped up by only calling ComputeTransientFstatMap once per point - BSGL now computed from summed F-stats, not for each segment - per-segment results now stored in attribute twoFpersegment instead of detstatpersegment - MCMC searches: save twoF for each sample to .dat file - Writer: - options minStartTime, maxStartTime deprecated - always use tstart, duration for actual data range - and use transientStartTime, transientTau for transients - transient-on-GPU output file writing fix - examples: - all output now goes to a directory "PyFstatexampledata" - added mcmcvsgridsimple_example
Scientific Software - Peer-reviewed
- Python
Published by dbkeitel almost 6 years ago
PyFstat - PyFstat release v1.5.0
This is the v.1.5.0 release of PyFstat, a python package for gravitational wave analysis with the F-statistic, dated 30/07/2020.
This release requires at least python 3.6.
From the changelog since the previous version (v1.4.2): - new default coverage band behaviour for all search classes: - estimate from search ranges (GridSearch) or prior (MCMCSearch) unless minCoverFreq, maxCoverFreq set - negative values can be used to reproduce old default of setting from SFT width - explicit option estimatecoveringband deprecated - semicoherent searches: - sped up by only calling ComputeTransientFstatMap once per point - BSGL now computed from summed F-stats, not for each segment - per-segment results now stored in attribute twoFpersegment instead of detstatpersegment - MCMC searches: save twoF for each sample to .dat file - Writer: - options minStartTime, maxStartTime deprecated - always use tstart, duration for actual data range - and use transientStartTime, transientTau for transients - transient-on-GPU output file writing fix - examples: - all output now goes to a directory "PyFstatexampledata" - added mcmcvsgridsimple_example
Scientific Software - Peer-reviewed
- Python
Published by dbkeitel almost 6 years ago
PyFstat - PyFstat release v1.4.2
PyFstat v.1.4.2 released 14/07/2020.
From the changelog:
- small fixes to search classes:
- getmaxtwoF() fixed for TransientGridSearch
- fix column header format for per-Doppler-point transient Fmn output files
- fixed regexp deprecation warning
- throw warning if using MCMCSearch.generate_loudest() called for transients
Also, if all goes well, this should become the first release automatically pushed to PyPI. :1stplacemedal: :tada:
Scientific Software - Peer-reviewed
- Python
Published by dbkeitel almost 6 years ago