BayesWave ========= **A Bayesian algorithm designed to robustly distinguish gravitational wave signals from noise and instrumental glitches without relying on any prior assumptions of waveform morphology.** **BayesWave produces posterior probability distributions directly on gravitational wave signals and instrumental glitches, allowing robust, morphology-independent waveform reconstruction.** See `arXiv:1410.3835 `__ for an introduction to the BayesWave algorithm. *LSC/Virgo members*: See the `BayesWave wiki `__ for further info Citations --------- Citing the scientific publications that describe the algorithms ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ We request that publications and other work arising from use of this code cite the following: :: @ARTICLE{2015CQGra..32m5012C, author = {{Cornish}, Neil J. and {Littenberg}, Tyson B.}, title = "{Bayeswave: Bayesian inference for gravitational wave bursts and instrument glitches}", journal = {Classical and Quantum Gravity}, keywords = {General Relativity and Quantum Cosmology, Astrophysics - High Energy Astrophysical Phenomena, Astrophysics - Instrumentation and Methods for Astrophysics}, year = 2015, month = Jul, volume = {32}, eid = {135012}, pages = {135012}, doi = {10.1088/0264-9381/32/13/135012}, archivePrefix = {arXiv}, eprint = {1410.3835}, primaryClass = {gr-qc}, adsurl = {https://ui.adsabs.harvard.edu/#abs/2015CQGra..32m5012C}, adsnote = {Provided by the SAO/NASA Astrophysics Data System} } @article{PhysRevD.91.084034, title = {Bayesian inference for spectral estimation of gravitational wave detector noise}, author = {Littenberg, Tyson B. and Cornish, Neil J.}, journal = {Phys. Rev. D}, volume = {91}, issue = {8}, pages = {084034}, numpages = {13}, year = {2015}, month = {Apr}, publisher = {American Physical Society}, doi = {10.1103/PhysRevD.91.084034}, url = {https://link.aps.org/doi/10.1103/PhysRevD.91.084034} } Citing the BayesWave Software ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ We also request that software developed from this code respository refers the URL of this project and indicates the code version (via e.g., tag and/or git hash) used for development. Contact ------- At this time, while the software is free to use, we cannot guarentee any particular level of direct support. Interested individuals should direct questions to question@ligo.org and we will strive to provide what assistance we can. *LSC/Virgo members*: bayeswave@sympa.ligo.org, burst@ligo.org Installation and operation -------------------------- - `Minimal quick-start guide `__ - `Full Installation instructions `__ - `Running Analyses `__ Available Branches ------------------ There are two main branches (with corresponding singularity containers) in common use: - Master: the main branch with latest features, active development and little guarentee of 100% functionality. - Stable: functionally unchanged from O2. Should be considered the *reviewed, production-level* code. Older SVN branches and tags are also available. Functionality is not guarenteed, they have not been updated to work with the latest infrastructure and are preserved purely for posterity. Contributing ------------ Procedures for developing and contributing to this repository match those for `lalsuite `__. The contribution guide for lalsuite can be found `here `__ Documentation is most conveniently provided via markdown (.md) files in the repository itself. The page you are now reading is the ``README.md`` at the root of the master branch. All other documentation should live in ``doc``. **TLDR** - We use the fork/merge development model - Development projects should take place on feature branches (*NOT* adhoc sub-directories!) This eliminates conflicts, ensures the master branch is always useable (no one breaks the build etc) and means different features/branches are easily found, used and contributed to. So: 1. create your own fork of this repository 2. create a branch to develop some feature on the fork 3. make and commit changes 4. push that branch upstream 5. when development is complete, merge that branch's changes back into master Full details of how to do this can be found in the `lalsuite contribution guide `__ This is, first and foremost, a *source* repository. To reduce bloat and simplify development, data products and analysis-specific scripts/configuration files should really be hosted in separate repositories or archives which document those analyses. Repository Structure -------------------- This repository has been cloned from the original svn repository at `https://svn.ligo.caltech.edu/svn/bayeswave `__. Commit history, branches and tags have been preserved and non-source directories have been excised from the history. Some details of the svn->git transition can be found `here `__. The git master branch looks like: - ``src``: The main source directory. Includes all C code, header files and build tools - ``test``: Test scripts to check successful compilation and linking. - ``utils``: Python and bash utility scripts. - ``postprocess``: Python and bash post-processing (e.g., plots, webpages) scripts - ``BayesWavePipe``: A standalone python module for HTCondor workflow generation Note that different branches in the original svn do not share a uniform structure; if you cannot find the directory or file you're looking for, check you're on the correct branch. .. toctree:: :hidden: install quickstart running examples bayeswave-output releasing