PycWB 0.30.0__tar.gz → 0.30.1__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (497) hide show
  1. {pycwb-0.30.0 → pycwb-0.30.1}/PKG-INFO +1 -1
  2. {pycwb-0.30.0 → pycwb-0.30.1}/PycWB.egg-info/PKG-INFO +1 -1
  3. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/_version.py +3 -3
  4. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/constants/detectors.py +45 -15
  5. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/constants/user_parameters_schema.py +22 -2
  6. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/modules/cwb_conversions/series.py +1 -1
  7. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/modules/data_conditioning/whitening_mesa.py +62 -23
  8. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/workflow/subflow/postprocess_and_plots.py +3 -3
  9. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/workflow/subflow/process_job_segment.py +1 -0
  10. {pycwb-0.30.0 → pycwb-0.30.1}/.gitignore +0 -0
  11. {pycwb-0.30.0 → pycwb-0.30.1}/.gitlab-ci.yml +0 -0
  12. {pycwb-0.30.0 → pycwb-0.30.1}/.readthedocs.yaml +0 -0
  13. {pycwb-0.30.0 → pycwb-0.30.1}/LICENSE +0 -0
  14. {pycwb-0.30.0 → pycwb-0.30.1}/MANIFEST.in +0 -0
  15. {pycwb-0.30.0 → pycwb-0.30.1}/Makefile +0 -0
  16. {pycwb-0.30.0 → pycwb-0.30.1}/PycWB.egg-info/SOURCES.txt +0 -0
  17. {pycwb-0.30.0 → pycwb-0.30.1}/PycWB.egg-info/dependency_links.txt +0 -0
  18. {pycwb-0.30.0 → pycwb-0.30.1}/PycWB.egg-info/requires.txt +0 -0
  19. {pycwb-0.30.0 → pycwb-0.30.1}/PycWB.egg-info/top_level.txt +0 -0
  20. {pycwb-0.30.0 → pycwb-0.30.1}/README.md +0 -0
  21. {pycwb-0.30.0 → pycwb-0.30.1}/benchmark/README.md +0 -0
  22. {pycwb-0.30.0 → pycwb-0.30.1}/benchmark/io_performance/README.md +0 -0
  23. {pycwb-0.30.0 → pycwb-0.30.1}/benchmark/io_performance/data_gen.py +0 -0
  24. {pycwb-0.30.0 → pycwb-0.30.1}/benchmark/io_performance/parquet_perf.py +0 -0
  25. {pycwb-0.30.0 → pycwb-0.30.1}/benchmark/io_performance/parquet_read_perf.py +0 -0
  26. {pycwb-0.30.0 → pycwb-0.30.1}/benchmark/io_performance/read_pref.py +0 -0
  27. {pycwb-0.30.0 → pycwb-0.30.1}/benchmark/likelihood/README.md +0 -0
  28. {pycwb-0.30.0 → pycwb-0.30.1}/benchmark/likelihood/data_generator.py +0 -0
  29. {pycwb-0.30.0 → pycwb-0.30.1}/benchmark/likelihood/perf_cuda.py +0 -0
  30. {pycwb-0.30.0 → pycwb-0.30.1}/benchmark/likelihood/performance_test_dpf.py +0 -0
  31. {pycwb-0.30.0 → pycwb-0.30.1}/benchmark/likelihood/performance_test_opt_sky.py +0 -0
  32. {pycwb-0.30.0 → pycwb-0.30.1}/benchmark/likelihood/user_parameters_injection.yaml +0 -0
  33. {pycwb-0.30.0 → pycwb-0.30.1}/benchmark/supercluster/README.md +0 -0
  34. {pycwb-0.30.0 → pycwb-0.30.1}/benchmark/supercluster/generate_data.py +0 -0
  35. {pycwb-0.30.0 → pycwb-0.30.1}/benchmark/supercluster/generate_data_2.py +0 -0
  36. {pycwb-0.30.0 → pycwb-0.30.1}/benchmark/supercluster/performance_supercluster.py +0 -0
  37. {pycwb-0.30.0 → pycwb-0.30.1}/benchmark/supercluster/user_parameters_injection.yaml +0 -0
  38. {pycwb-0.30.0 → pycwb-0.30.1}/bin/pycwb +0 -0
  39. {pycwb-0.30.0 → pycwb-0.30.1}/bin/pycwb_search +0 -0
  40. {pycwb-0.30.0 → pycwb-0.30.1}/bin/pycwb_show +0 -0
  41. {pycwb-0.30.0 → pycwb-0.30.1}/cwb-core/Biorthogonal.cc +0 -0
  42. {pycwb-0.30.0 → pycwb-0.30.1}/cwb-core/Biorthogonal.hh +0 -0
  43. {pycwb-0.30.0 → pycwb-0.30.1}/cwb-core/CMakeLists.txt +0 -0
  44. {pycwb-0.30.0 → pycwb-0.30.1}/cwb-core/Daubechies.cc +0 -0
  45. {pycwb-0.30.0 → pycwb-0.30.1}/cwb-core/Daubechies.hh +0 -0
  46. {pycwb-0.30.0 → pycwb-0.30.1}/cwb-core/FourierCoefficients.icc +0 -0
  47. {pycwb-0.30.0 → pycwb-0.30.1}/cwb-core/Haar.cc +0 -0
  48. {pycwb-0.30.0 → pycwb-0.30.1}/cwb-core/Haar.hh +0 -0
  49. {pycwb-0.30.0 → pycwb-0.30.1}/cwb-core/LineFilter.cc +0 -0
  50. {pycwb-0.30.0 → pycwb-0.30.1}/cwb-core/LineFilter.hh +0 -0
  51. {pycwb-0.30.0 → pycwb-0.30.1}/cwb-core/Makefile +0 -0
  52. {pycwb-0.30.0 → pycwb-0.30.1}/cwb-core/Meyer.cc +0 -0
  53. {pycwb-0.30.0 → pycwb-0.30.1}/cwb-core/Meyer.hh +0 -0
  54. {pycwb-0.30.0 → pycwb-0.30.1}/cwb-core/Symlet.cc +0 -0
  55. {pycwb-0.30.0 → pycwb-0.30.1}/cwb-core/Symlet.hh +0 -0
  56. {pycwb-0.30.0 → pycwb-0.30.1}/cwb-core/SymmArray.cc +0 -0
  57. {pycwb-0.30.0 → pycwb-0.30.1}/cwb-core/SymmArray.hh +0 -0
  58. {pycwb-0.30.0 → pycwb-0.30.1}/cwb-core/SymmArraySSE.cc +0 -0
  59. {pycwb-0.30.0 → pycwb-0.30.1}/cwb-core/SymmArraySSE.hh +0 -0
  60. {pycwb-0.30.0 → pycwb-0.30.1}/cwb-core/SymmObjArray.cc +0 -0
  61. {pycwb-0.30.0 → pycwb-0.30.1}/cwb-core/SymmObjArray.hh +0 -0
  62. {pycwb-0.30.0 → pycwb-0.30.1}/cwb-core/WDM.cc +0 -0
  63. {pycwb-0.30.0 → pycwb-0.30.1}/cwb-core/WDM.hh +0 -0
  64. {pycwb-0.30.0 → pycwb-0.30.1}/cwb-core/WDMOverlap.cc +0 -0
  65. {pycwb-0.30.0 → pycwb-0.30.1}/cwb-core/WDMOverlap.hh +0 -0
  66. {pycwb-0.30.0 → pycwb-0.30.1}/cwb-core/WaveDWT.cc +0 -0
  67. {pycwb-0.30.0 → pycwb-0.30.1}/cwb-core/WaveDWT.hh +0 -0
  68. {pycwb-0.30.0 → pycwb-0.30.1}/cwb-core/Wavelet.cc +0 -0
  69. {pycwb-0.30.0 → pycwb-0.30.1}/cwb-core/Wavelet.hh +0 -0
  70. {pycwb-0.30.0 → pycwb-0.30.1}/cwb-core/alm.hh +0 -0
  71. {pycwb-0.30.0 → pycwb-0.30.1}/cwb-core/build.sh +0 -0
  72. {pycwb-0.30.0 → pycwb-0.30.1}/cwb-core/cluster.cc +0 -0
  73. {pycwb-0.30.0 → pycwb-0.30.1}/cwb-core/cluster.hh +0 -0
  74. {pycwb-0.30.0 → pycwb-0.30.1}/cwb-core/cmake/FindHealpix.cmake +0 -0
  75. {pycwb-0.30.0 → pycwb-0.30.1}/cwb-core/cmake/FindeBBH.cmake +0 -0
  76. {pycwb-0.30.0 → pycwb-0.30.1}/cwb-core/cmake/install_function.cmake +0 -0
  77. {pycwb-0.30.0 → pycwb-0.30.1}/cwb-core/constants.hh +0 -0
  78. {pycwb-0.30.0 → pycwb-0.30.1}/cwb-core/detector.cc +0 -0
  79. {pycwb-0.30.0 → pycwb-0.30.1}/cwb-core/detector.hh +0 -0
  80. {pycwb-0.30.0 → pycwb-0.30.1}/cwb-core/injection.cc +0 -0
  81. {pycwb-0.30.0 → pycwb-0.30.1}/cwb-core/injection.hh +0 -0
  82. {pycwb-0.30.0 → pycwb-0.30.1}/cwb-core/lossy.cc +0 -0
  83. {pycwb-0.30.0 → pycwb-0.30.1}/cwb-core/lossy.hh +0 -0
  84. {pycwb-0.30.0 → pycwb-0.30.1}/cwb-core/monster.cc +0 -0
  85. {pycwb-0.30.0 → pycwb-0.30.1}/cwb-core/monster.hh +0 -0
  86. {pycwb-0.30.0 → pycwb-0.30.1}/cwb-core/netcluster.cc +0 -0
  87. {pycwb-0.30.0 → pycwb-0.30.1}/cwb-core/netcluster.hh +0 -0
  88. {pycwb-0.30.0 → pycwb-0.30.1}/cwb-core/netevent.cc +0 -0
  89. {pycwb-0.30.0 → pycwb-0.30.1}/cwb-core/netevent.hh +0 -0
  90. {pycwb-0.30.0 → pycwb-0.30.1}/cwb-core/netpixel.cc +0 -0
  91. {pycwb-0.30.0 → pycwb-0.30.1}/cwb-core/netpixel.hh +0 -0
  92. {pycwb-0.30.0 → pycwb-0.30.1}/cwb-core/network.cc +0 -0
  93. {pycwb-0.30.0 → pycwb-0.30.1}/cwb-core/network.hh +0 -0
  94. {pycwb-0.30.0 → pycwb-0.30.1}/cwb-core/pycwb.hh +0 -0
  95. {pycwb-0.30.0 → pycwb-0.30.1}/cwb-core/rdfr.cc +0 -0
  96. {pycwb-0.30.0 → pycwb-0.30.1}/cwb-core/rdfr.hh +0 -0
  97. {pycwb-0.30.0 → pycwb-0.30.1}/cwb-core/readframe.cc +0 -0
  98. {pycwb-0.30.0 → pycwb-0.30.1}/cwb-core/readframe.hh +0 -0
  99. {pycwb-0.30.0 → pycwb-0.30.1}/cwb-core/readfrfile.cc +0 -0
  100. {pycwb-0.30.0 → pycwb-0.30.1}/cwb-core/readfrfile.hh +0 -0
  101. {pycwb-0.30.0 → pycwb-0.30.1}/cwb-core/regression.cc +0 -0
  102. {pycwb-0.30.0 → pycwb-0.30.1}/cwb-core/regression.hh +0 -0
  103. {pycwb-0.30.0 → pycwb-0.30.1}/cwb-core/skycoord.hh +0 -0
  104. {pycwb-0.30.0 → pycwb-0.30.1}/cwb-core/skymap.cc +0 -0
  105. {pycwb-0.30.0 → pycwb-0.30.1}/cwb-core/skymap.hh +0 -0
  106. {pycwb-0.30.0 → pycwb-0.30.1}/cwb-core/sseries.cc +0 -0
  107. {pycwb-0.30.0 → pycwb-0.30.1}/cwb-core/sseries.hh +0 -0
  108. {pycwb-0.30.0 → pycwb-0.30.1}/cwb-core/time.cc +0 -0
  109. {pycwb-0.30.0 → pycwb-0.30.1}/cwb-core/time.hh +0 -0
  110. {pycwb-0.30.0 → pycwb-0.30.1}/cwb-core/wat.hh +0 -0
  111. {pycwb-0.30.0 → pycwb-0.30.1}/cwb-core/watasm.S +0 -0
  112. {pycwb-0.30.0 → pycwb-0.30.1}/cwb-core/watasm_elf64.o +0 -0
  113. {pycwb-0.30.0 → pycwb-0.30.1}/cwb-core/watavx.hh +0 -0
  114. {pycwb-0.30.0 → pycwb-0.30.1}/cwb-core/watbranch.in +0 -0
  115. {pycwb-0.30.0 → pycwb-0.30.1}/cwb-core/watfun.hh +0 -0
  116. {pycwb-0.30.0 → pycwb-0.30.1}/cwb-core/wathash.in +0 -0
  117. {pycwb-0.30.0 → pycwb-0.30.1}/cwb-core/watplot.cc +0 -0
  118. {pycwb-0.30.0 → pycwb-0.30.1}/cwb-core/watplot.hh +0 -0
  119. {pycwb-0.30.0 → pycwb-0.30.1}/cwb-core/watsse.hh +0 -0
  120. {pycwb-0.30.0 → pycwb-0.30.1}/cwb-core/wattag.in +0 -0
  121. {pycwb-0.30.0 → pycwb-0.30.1}/cwb-core/waturl.in +0 -0
  122. {pycwb-0.30.0 → pycwb-0.30.1}/cwb-core/watversion.hh.in +0 -0
  123. {pycwb-0.30.0 → pycwb-0.30.1}/cwb-core/wavearray.cc +0 -0
  124. {pycwb-0.30.0 → pycwb-0.30.1}/cwb-core/wavearray.hh +0 -0
  125. {pycwb-0.30.0 → pycwb-0.30.1}/cwb-core/wavecomplex.cc +0 -0
  126. {pycwb-0.30.0 → pycwb-0.30.1}/cwb-core/wavecomplex.hh +0 -0
  127. {pycwb-0.30.0 → pycwb-0.30.1}/cwb-core/wavecor.cc +0 -0
  128. {pycwb-0.30.0 → pycwb-0.30.1}/cwb-core/wavecor.hh +0 -0
  129. {pycwb-0.30.0 → pycwb-0.30.1}/cwb-core/wavefft.cc +0 -0
  130. {pycwb-0.30.0 → pycwb-0.30.1}/cwb-core/wavefft.hh +0 -0
  131. {pycwb-0.30.0 → pycwb-0.30.1}/cwb-core/wavelet_LinkDef.h +0 -0
  132. {pycwb-0.30.0 → pycwb-0.30.1}/cwb-core/wavelinefilter.cc +0 -0
  133. {pycwb-0.30.0 → pycwb-0.30.1}/cwb-core/wavelinefilter.hh +0 -0
  134. {pycwb-0.30.0 → pycwb-0.30.1}/cwb-core/waverdc.cc +0 -0
  135. {pycwb-0.30.0 → pycwb-0.30.1}/cwb-core/waverdc.hh +0 -0
  136. {pycwb-0.30.0 → pycwb-0.30.1}/cwb-core/wseries.cc +0 -0
  137. {pycwb-0.30.0 → pycwb-0.30.1}/cwb-core/wseries.hh +0 -0
  138. {pycwb-0.30.0 → pycwb-0.30.1}/cwb-core/wslice.hh +0 -0
  139. {pycwb-0.30.0 → pycwb-0.30.1}/docs/0.installation_guide.md +0 -0
  140. {pycwb-0.30.0 → pycwb-0.30.1}/docs/1.initialisation_guide.md +0 -0
  141. {pycwb-0.30.0 → pycwb-0.30.1}/docs/2.test_interactive_multistages_2G_analysis.md +0 -0
  142. {pycwb-0.30.0 → pycwb-0.30.1}/docs/3.run_pycwb_with_yaml_config.md +0 -0
  143. {pycwb-0.30.0 → pycwb-0.30.1}/docs/4.py_cwb_inet_2G.md +0 -0
  144. {pycwb-0.30.0 → pycwb-0.30.1}/docs/5.cwb2G_analyse.md +0 -0
  145. {pycwb-0.30.0 → pycwb-0.30.1}/docs/6.wat_codes_notes.md +0 -0
  146. {pycwb-0.30.0 → pycwb-0.30.1}/docs/Makefile +0 -0
  147. {pycwb-0.30.0 → pycwb-0.30.1}/docs/diagram.py +0 -0
  148. {pycwb-0.30.0 → pycwb-0.30.1}/docs/make.bat +0 -0
  149. {pycwb-0.30.0 → pycwb-0.30.1}/docs/source/_static/.keep +0 -0
  150. {pycwb-0.30.0 → pycwb-0.30.1}/docs/source/_templates/.keep +0 -0
  151. {pycwb-0.30.0 → pycwb-0.30.1}/docs/source/conf.py +0 -0
  152. {pycwb-0.30.0 → pycwb-0.30.1}/docs/source/credit.rst +0 -0
  153. {pycwb-0.30.0 → pycwb-0.30.1}/docs/source/index.rst +0 -0
  154. {pycwb-0.30.0 → pycwb-0.30.1}/docs/source/install.rst +0 -0
  155. {pycwb-0.30.0 → pycwb-0.30.1}/docs/source/mod_cwb.rst +0 -0
  156. {pycwb-0.30.0 → pycwb-0.30.1}/docs/source/package.rst +0 -0
  157. {pycwb-0.30.0 → pycwb-0.30.1}/docs/source/schema.rst +0 -0
  158. {pycwb-0.30.0 → pycwb-0.30.1}/docs/source/tutorial_batch_inj.rst +0 -0
  159. {pycwb-0.30.0 → pycwb-0.30.1}/docs/source/tutorial_customized_wf_gen.rst +0 -0
  160. {pycwb-0.30.0 → pycwb-0.30.1}/docs/source/tutorial_injection.rst +0 -0
  161. {pycwb-0.30.0 → pycwb-0.30.1}/docs/source/tutorial_multi_injection.rst +0 -0
  162. {pycwb-0.30.0 → pycwb-0.30.1}/docs/source/tutorial_search.rst +0 -0
  163. {pycwb-0.30.0 → pycwb-0.30.1}/docs/source/tutorials.rst +0 -0
  164. {pycwb-0.30.0 → pycwb-0.30.1}/docs/source/workflow.png +0 -0
  165. {pycwb-0.30.0 → pycwb-0.30.1}/envs/Dockerfile +0 -0
  166. {pycwb-0.30.0 → pycwb-0.30.1}/envs/environment.yml +0 -0
  167. {pycwb-0.30.0 → pycwb-0.30.1}/envs/mamba/Dockerfile +0 -0
  168. {pycwb-0.30.0 → pycwb-0.30.1}/examples/GW190521_search/README.md +0 -0
  169. {pycwb-0.30.0 → pycwb-0.30.1}/examples/GW190521_search/user_parameters.yaml +0 -0
  170. {pycwb-0.30.0 → pycwb-0.30.1}/examples/autoencoder/pycwb_injection.ipynb +0 -0
  171. {pycwb-0.30.0 → pycwb-0.30.1}/examples/autoencoder/user_parameters_injection.yaml +0 -0
  172. {pycwb-0.30.0 → pycwb-0.30.1}/examples/batch_injection/generate_parameters.py +0 -0
  173. {pycwb-0.30.0 → pycwb-0.30.1}/examples/batch_injection/pycbc_inject/hyperbolicTD/__init__.py +0 -0
  174. {pycwb-0.30.0 → pycwb-0.30.1}/examples/batch_injection/pycbc_inject/hyperbolicTD/parameters.py +0 -0
  175. {pycwb-0.30.0 → pycwb-0.30.1}/examples/batch_injection/pycbc_inject/hyperbolicTD/waveform.py +0 -0
  176. {pycwb-0.30.0 → pycwb-0.30.1}/examples/batch_injection/pycwb_injection.py +0 -0
  177. {pycwb-0.30.0 → pycwb-0.30.1}/examples/batch_injection/user_parameters_injection.yaml +0 -0
  178. {pycwb-0.30.0 → pycwb-0.30.1}/examples/benchmark/DQ/H1_cat0.txt +0 -0
  179. {pycwb-0.30.0 → pycwb-0.30.1}/examples/benchmark/DQ/H1_cat1.txt +0 -0
  180. {pycwb-0.30.0 → pycwb-0.30.1}/examples/benchmark/DQ/H1_cat2.txt +0 -0
  181. {pycwb-0.30.0 → pycwb-0.30.1}/examples/benchmark/DQ/H1_cat4.txt +0 -0
  182. {pycwb-0.30.0 → pycwb-0.30.1}/examples/benchmark/DQ/L1_cat0.txt +0 -0
  183. {pycwb-0.30.0 → pycwb-0.30.1}/examples/benchmark/DQ/L1_cat1.txt +0 -0
  184. {pycwb-0.30.0 → pycwb-0.30.1}/examples/benchmark/DQ/L1_cat2.txt +0 -0
  185. {pycwb-0.30.0 → pycwb-0.30.1}/examples/benchmark/DQ/L1_cat4.txt +0 -0
  186. {pycwb-0.30.0 → pycwb-0.30.1}/examples/benchmark/input/OPBM.period +0 -0
  187. {pycwb-0.30.0 → pycwb-0.30.1}/examples/benchmark/input/OPBM_H1.frames +0 -0
  188. {pycwb-0.30.0 → pycwb-0.30.1}/examples/benchmark/input/OPBM_L1.frames +0 -0
  189. {pycwb-0.30.0 → pycwb-0.30.1}/examples/benchmark/pycwb_mdc.py +0 -0
  190. {pycwb-0.30.0 → pycwb-0.30.1}/examples/benchmark/user_parameters_mdc.yaml +0 -0
  191. {pycwb-0.30.0 → pycwb-0.30.1}/examples/colab/notebook_updated/pycWB_GW150914_VScode_adapted.ipynb +0 -0
  192. {pycwb-0.30.0 → pycwb-0.30.1}/examples/colab/pycWB_GW150914.ipynb +0 -0
  193. {pycwb-0.30.0 → pycwb-0.30.1}/examples/data_injection/README.md +0 -0
  194. {pycwb-0.30.0 → pycwb-0.30.1}/examples/data_injection/injection_parameters.py +0 -0
  195. {pycwb-0.30.0 → pycwb-0.30.1}/examples/data_injection/user_parameters.yaml +0 -0
  196. {pycwb-0.30.0 → pycwb-0.30.1}/examples/gwosc/user_parameters.yaml +0 -0
  197. {pycwb-0.30.0 → pycwb-0.30.1}/examples/injection/pycwb_injection.ipynb +0 -0
  198. {pycwb-0.30.0 → pycwb-0.30.1}/examples/injection/user_parameters_injection.yaml +0 -0
  199. {pycwb-0.30.0 → pycwb-0.30.1}/examples/injection/wdmXTalk/OverlapCatalog16-1024.bin +0 -0
  200. {pycwb-0.30.0 → pycwb-0.30.1}/examples/lvk_sep_2023/demo.ipynb +0 -0
  201. {pycwb-0.30.0 → pycwb-0.30.1}/examples/lvk_sep_2023/user_parameters.yaml +0 -0
  202. {pycwb-0.30.0 → pycwb-0.30.1}/examples/multiple_injection/pycwb_injection.py +0 -0
  203. {pycwb-0.30.0 → pycwb-0.30.1}/examples/multiple_injection/user_parameters_injection.yaml +0 -0
  204. {pycwb-0.30.0 → pycwb-0.30.1}/examples/new_injection_infra_with_LHV/README.md +0 -0
  205. {pycwb-0.30.0 → pycwb-0.30.1}/examples/new_injection_infra_with_LHV/analyze_events.ipynb +0 -0
  206. {pycwb-0.30.0 → pycwb-0.30.1}/examples/new_injection_infra_with_LHV/injection_parameters.py +0 -0
  207. {pycwb-0.30.0 → pycwb-0.30.1}/examples/new_injection_infra_with_LHV/input/LIGO_zero_det_HP.txt +0 -0
  208. {pycwb-0.30.0 → pycwb-0.30.1}/examples/new_injection_infra_with_LHV/input/aligo_O4high.txt +0 -0
  209. {pycwb-0.30.0 → pycwb-0.30.1}/examples/new_injection_infra_with_LHV/input/avirgo_O4high_NEW.txt +0 -0
  210. {pycwb-0.30.0 → pycwb-0.30.1}/examples/new_injection_infra_with_LHV/user_parameters.yaml +0 -0
  211. {pycwb-0.30.0 → pycwb-0.30.1}/examples/new_injection_infra_with_gaussian_noise/README.md +0 -0
  212. {pycwb-0.30.0 → pycwb-0.30.1}/examples/new_injection_infra_with_gaussian_noise/injection_parameters.py +0 -0
  213. {pycwb-0.30.0 → pycwb-0.30.1}/examples/new_injection_infra_with_gaussian_noise/user_parameters.yaml +0 -0
  214. {pycwb-0.30.0 → pycwb-0.30.1}/examples/new_injection_infra_with_real_data/README.md +0 -0
  215. {pycwb-0.30.0 → pycwb-0.30.1}/examples/new_injection_infra_with_real_data/injection_parameters.py +0 -0
  216. {pycwb-0.30.0 → pycwb-0.30.1}/examples/new_injection_infra_with_real_data/user_parameters.yaml +0 -0
  217. {pycwb-0.30.0 → pycwb-0.30.1}/examples/new_injection_infra_with_sky_patch/README.md +0 -0
  218. {pycwb-0.30.0 → pycwb-0.30.1}/examples/new_injection_infra_with_sky_patch/analyze_events.ipynb +0 -0
  219. {pycwb-0.30.0 → pycwb-0.30.1}/examples/new_injection_infra_with_sky_patch/injection_parameters.py +0 -0
  220. {pycwb-0.30.0 → pycwb-0.30.1}/examples/new_injection_infra_with_sky_patch/input/aligo_O4high.txt +0 -0
  221. {pycwb-0.30.0 → pycwb-0.30.1}/examples/new_injection_infra_with_sky_patch/user_parameters.yaml +0 -0
  222. {pycwb-0.30.0 → pycwb-0.30.1}/examples/pyseobnr_injection/generate_parameters.py +0 -0
  223. {pycwb-0.30.0 → pycwb-0.30.1}/examples/pyseobnr_injection/user_parameters_injection.yaml +0 -0
  224. {pycwb-0.30.0 → pycwb-0.30.1}/examples/pyseobnr_injection/waveform_model/__init__.py +0 -0
  225. {pycwb-0.30.0 → pycwb-0.30.1}/examples/pyseobnr_injection/waveform_model/waveform.py +0 -0
  226. {pycwb-0.30.0 → pycwb-0.30.1}/examples/sine_gaussian_injection/README.md +0 -0
  227. {pycwb-0.30.0 → pycwb-0.30.1}/examples/sine_gaussian_injection/injection_parameters.py +0 -0
  228. {pycwb-0.30.0 → pycwb-0.30.1}/examples/sine_gaussian_injection/user_parameters.yaml +0 -0
  229. {pycwb-0.30.0 → pycwb-0.30.1}/examples/waveform_reconstruction/reconstruct_waveform_from_cluster.ipynb +0 -0
  230. {pycwb-0.30.0 → pycwb-0.30.1}/examples/white_noise_burst_injection/README.md +0 -0
  231. {pycwb-0.30.0 → pycwb-0.30.1}/examples/white_noise_burst_injection/injection_parameters.py +0 -0
  232. {pycwb-0.30.0 → pycwb-0.30.1}/examples/white_noise_burst_injection/user_parameters.yaml +0 -0
  233. {pycwb-0.30.0 → pycwb-0.30.1}/prototypes/cwb_core/coherence.cc +0 -0
  234. {pycwb-0.30.0 → pycwb-0.30.1}/prototypes/cwb_core/coherence.hh +0 -0
  235. {pycwb-0.30.0 → pycwb-0.30.1}/prototypes/cwb_core/likelihood.cc +0 -0
  236. {pycwb-0.30.0 → pycwb-0.30.1}/prototypes/cwb_core/likelihood.hh +0 -0
  237. {pycwb-0.30.0 → pycwb-0.30.1}/prototypes/dag/dag.py +0 -0
  238. {pycwb-0.30.0 → pycwb-0.30.1}/prototypes/dag/dask-prefect.py +0 -0
  239. {pycwb-0.30.0 → pycwb-0.30.1}/prototypes/dag/prefect_test.py +0 -0
  240. {pycwb-0.30.0 → pycwb-0.30.1}/prototypes/messenger/__init__.py +0 -0
  241. {pycwb-0.30.0 → pycwb-0.30.1}/prototypes/messenger/server.py +0 -0
  242. {pycwb-0.30.0 → pycwb-0.30.1}/prototypes/messenger/visualizition.py +0 -0
  243. {pycwb-0.30.0 → pycwb-0.30.1}/prototypes/messenger-web-interface/.eslintrc.cjs +0 -0
  244. {pycwb-0.30.0 → pycwb-0.30.1}/prototypes/messenger-web-interface/.gitignore +0 -0
  245. {pycwb-0.30.0 → pycwb-0.30.1}/prototypes/messenger-web-interface/.prettierrc.json +0 -0
  246. {pycwb-0.30.0 → pycwb-0.30.1}/prototypes/messenger-web-interface/README.md +0 -0
  247. {pycwb-0.30.0 → pycwb-0.30.1}/prototypes/messenger-web-interface/index.html +0 -0
  248. {pycwb-0.30.0 → pycwb-0.30.1}/prototypes/messenger-web-interface/package-lock.json +0 -0
  249. {pycwb-0.30.0 → pycwb-0.30.1}/prototypes/messenger-web-interface/package.json +0 -0
  250. {pycwb-0.30.0 → pycwb-0.30.1}/prototypes/messenger-web-interface/public/favicon.ico +0 -0
  251. {pycwb-0.30.0 → pycwb-0.30.1}/prototypes/messenger-web-interface/src/App.vue +0 -0
  252. {pycwb-0.30.0 → pycwb-0.30.1}/prototypes/messenger-web-interface/src/assets/base.css +0 -0
  253. {pycwb-0.30.0 → pycwb-0.30.1}/prototypes/messenger-web-interface/src/assets/cwb_icon_modern_blue_alfa.png +0 -0
  254. {pycwb-0.30.0 → pycwb-0.30.1}/prototypes/messenger-web-interface/src/assets/main.css +0 -0
  255. {pycwb-0.30.0 → pycwb-0.30.1}/prototypes/messenger-web-interface/src/assets/style.css +0 -0
  256. {pycwb-0.30.0 → pycwb-0.30.1}/prototypes/messenger-web-interface/src/components/HelloWorld.vue +0 -0
  257. {pycwb-0.30.0 → pycwb-0.30.1}/prototypes/messenger-web-interface/src/components/TheWelcome.vue +0 -0
  258. {pycwb-0.30.0 → pycwb-0.30.1}/prototypes/messenger-web-interface/src/components/WelcomeItem.vue +0 -0
  259. {pycwb-0.30.0 → pycwb-0.30.1}/prototypes/messenger-web-interface/src/components/__tests__/HelloWorld.spec.js +0 -0
  260. {pycwb-0.30.0 → pycwb-0.30.1}/prototypes/messenger-web-interface/src/components/icons/IconCommunity.vue +0 -0
  261. {pycwb-0.30.0 → pycwb-0.30.1}/prototypes/messenger-web-interface/src/components/icons/IconDocumentation.vue +0 -0
  262. {pycwb-0.30.0 → pycwb-0.30.1}/prototypes/messenger-web-interface/src/components/icons/IconEcosystem.vue +0 -0
  263. {pycwb-0.30.0 → pycwb-0.30.1}/prototypes/messenger-web-interface/src/components/icons/IconSupport.vue +0 -0
  264. {pycwb-0.30.0 → pycwb-0.30.1}/prototypes/messenger-web-interface/src/components/icons/IconTooling.vue +0 -0
  265. {pycwb-0.30.0 → pycwb-0.30.1}/prototypes/messenger-web-interface/src/main.js +0 -0
  266. {pycwb-0.30.0 → pycwb-0.30.1}/prototypes/messenger-web-interface/src/router/index.js +0 -0
  267. {pycwb-0.30.0 → pycwb-0.30.1}/prototypes/messenger-web-interface/src/stores/counter.js +0 -0
  268. {pycwb-0.30.0 → pycwb-0.30.1}/prototypes/messenger-web-interface/src/views/drawflow.vue +0 -0
  269. {pycwb-0.30.0 → pycwb-0.30.1}/prototypes/messenger-web-interface/src/views/nodes/node1.vue +0 -0
  270. {pycwb-0.30.0 → pycwb-0.30.1}/prototypes/messenger-web-interface/src/views/nodes/node2.vue +0 -0
  271. {pycwb-0.30.0 → pycwb-0.30.1}/prototypes/messenger-web-interface/src/views/nodes/node3.vue +0 -0
  272. {pycwb-0.30.0 → pycwb-0.30.1}/prototypes/messenger-web-interface/src/views/nodes/nodeHeader.vue +0 -0
  273. {pycwb-0.30.0 → pycwb-0.30.1}/prototypes/messenger-web-interface/vite.config.js +0 -0
  274. {pycwb-0.30.0 → pycwb-0.30.1}/prototypes/performance/numba_test.py +0 -0
  275. {pycwb-0.30.0 → pycwb-0.30.1}/prototypes/performance/taichi_test.py +0 -0
  276. {pycwb-0.30.0 → pycwb-0.30.1}/prototypes/pp_workflow/simple.yaml +0 -0
  277. {pycwb-0.30.0 → pycwb-0.30.1}/prototypes/pp_workflow/simple_module.yaml +0 -0
  278. {pycwb-0.30.0 → pycwb-0.30.1}/prototypes/pp_workflow/workflow.yaml +0 -0
  279. {pycwb-0.30.0 → pycwb-0.30.1}/prototypes/search.yaml +0 -0
  280. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/__init__.py +0 -0
  281. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/cli/__init__.py +0 -0
  282. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/cli/batch_runner.py +0 -0
  283. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/cli/batch_setup.py +0 -0
  284. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/cli/flow.py +0 -0
  285. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/cli/get_external_modules.py +0 -0
  286. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/cli/gwosc.py +0 -0
  287. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/cli/gwosc_data.py +0 -0
  288. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/cli/merge_catalog.py +0 -0
  289. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/cli/post_process.py +0 -0
  290. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/cli/run.py +0 -0
  291. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/cli/server.py +0 -0
  292. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/cli/xtalk.py +0 -0
  293. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/config/__init__.py +0 -0
  294. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/config/config.py +0 -0
  295. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/constants/__init__.py +0 -0
  296. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/constants/physics_constants.py +0 -0
  297. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/constants/project_constants.py +0 -0
  298. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/modules/__init__.py +0 -0
  299. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/modules/autoencoder/__init__.py +0 -0
  300. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/modules/autoencoder/autoencoder.py +0 -0
  301. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/modules/autoencoder/cwb_autoencoder.py +0 -0
  302. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/modules/autoencoder/module.yaml +0 -0
  303. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/modules/catalog/__init__.py +0 -0
  304. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/modules/catalog/catalog.py +0 -0
  305. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/modules/catalog/module.yaml +0 -0
  306. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/modules/coherence/__init__.py +0 -0
  307. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/modules/coherence/coherence.py +0 -0
  308. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/modules/coherence/coherence_lite.py +0 -0
  309. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/modules/coherence/module.yaml +0 -0
  310. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/modules/condor/__init__.py +0 -0
  311. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/modules/condor/condor.py +0 -0
  312. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/modules/condor/module.yaml +0 -0
  313. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/modules/cwb_conversions/__init__.py +0 -0
  314. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/modules/cwb_conversions/cluster.py +0 -0
  315. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/modules/cwb_conversions/detector.py +0 -0
  316. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/modules/cwb_conversions/module.yaml +0 -0
  317. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/modules/cwb_conversions/pixel.py +0 -0
  318. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/modules/cwb_conversions/sparse_series.py +0 -0
  319. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/modules/cwb_xgboost/__init__.py +0 -0
  320. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/modules/cwb_xgboost/config.py +0 -0
  321. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/modules/cwb_xgboost/cwb_xgboost.py +0 -0
  322. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/modules/cwb_xgboost/module.yaml +0 -0
  323. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/modules/cwb_xgboost/prediction.py +0 -0
  324. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/modules/cwb_xgboost/read_data.py +0 -0
  325. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/modules/cwb_xgboost/training.py +0 -0
  326. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/modules/cwb_xgboost/utils.py +0 -0
  327. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/modules/data_conditioning/__init__.py +0 -0
  328. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/modules/data_conditioning/data_conditioning.py +0 -0
  329. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/modules/data_conditioning/module.yaml +0 -0
  330. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/modules/data_conditioning/regression.py +0 -0
  331. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/modules/data_conditioning/whitening_cwb.py +0 -0
  332. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/modules/energy_threshold/__init__.py +0 -0
  333. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/modules/energy_threshold/threshold.py +0 -0
  334. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/modules/external_module_manager/__init__.py +0 -0
  335. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/modules/external_module_manager/config_schema.py +0 -0
  336. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/modules/external_module_manager/manager.py +0 -0
  337. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/modules/external_module_manager/test/sample_config.yaml +0 -0
  338. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/modules/external_module_manager/test/test.ipynb +0 -0
  339. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/modules/gracedb/__init__.py +0 -0
  340. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/modules/gracedb/gracedb.py +0 -0
  341. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/modules/gracedb/module.yaml +0 -0
  342. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/modules/gracedb/test_gracedb.py +0 -0
  343. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/modules/gwosc/__init__.py +0 -0
  344. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/modules/gwosc/gwosc.py +0 -0
  345. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/modules/gwosc/utils.py +0 -0
  346. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/modules/injection/__init__.py +0 -0
  347. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/modules/injection/distribution_utils.py +0 -0
  348. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/modules/injection/inj_generators.py +0 -0
  349. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/modules/injection/injection.py +0 -0
  350. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/modules/injection/module.yaml +0 -0
  351. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/modules/injection/par_generator.py +0 -0
  352. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/modules/injection/scripts/injection_module_test.ipynb +0 -0
  353. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/modules/injection/scripts/injection_parameters.py +0 -0
  354. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/modules/injection/sky_distribution.py +0 -0
  355. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/modules/injection/tests/__init__.py +0 -0
  356. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/modules/injection/tests/test_injection.py +0 -0
  357. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/modules/injection/wf_generator.py +0 -0
  358. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/modules/job_segment/__init__.py +0 -0
  359. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/modules/job_segment/dq_segment.py +0 -0
  360. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/modules/job_segment/frame.py +0 -0
  361. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/modules/job_segment/job_segment.py +0 -0
  362. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/modules/job_segment/module.yaml +0 -0
  363. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/modules/job_segment/plots.py +0 -0
  364. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/modules/job_segment/super_lag.py +0 -0
  365. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/modules/job_segment/test_job_segment.py +0 -0
  366. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/modules/likelihood/__init__.py +0 -0
  367. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/modules/likelihood/likelihood.py +0 -0
  368. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/modules/likelihood/module.yaml +0 -0
  369. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/modules/likelihoodWP/__init__.py +0 -0
  370. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/modules/likelihoodWP/dpf.py +0 -0
  371. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/modules/likelihoodWP/dpf_cython.pyx +0 -0
  372. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/modules/likelihoodWP/likelihood.py +0 -0
  373. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/modules/likelihoodWP/sky_stat.py +0 -0
  374. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/modules/likelihoodWP/typing.py +0 -0
  375. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/modules/likelihoodWP/utils.py +0 -0
  376. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/modules/logger/__init__.py +0 -0
  377. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/modules/logger/logger.py +0 -0
  378. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/modules/logger/module.yaml +0 -0
  379. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/modules/multi_resolution_wdm/__init__.py +0 -0
  380. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/modules/multi_resolution_wdm/module.yaml +0 -0
  381. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/modules/multi_resolution_wdm/wdm.py +0 -0
  382. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/modules/plot/__init__.py +0 -0
  383. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/modules/plot/cluster_statistics.py +0 -0
  384. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/modules/plot/event.py +0 -0
  385. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/modules/plot/module.yaml +0 -0
  386. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/modules/plot/spectrogram.py +0 -0
  387. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/modules/plot/waveform.py +0 -0
  388. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/modules/plot_data_quality/__init__.py +0 -0
  389. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/modules/plot_data_quality/module.yaml +0 -0
  390. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/modules/plot_data_quality/plot.py +0 -0
  391. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/modules/plot_map/__init__.py +0 -0
  392. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/modules/plot_map/module.yaml +0 -0
  393. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/modules/plot_map/world_map.py +0 -0
  394. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/modules/qveto/__init__.py +0 -0
  395. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/modules/qveto/qveto.py +0 -0
  396. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/modules/qveto/qveto_ext.py +0 -0
  397. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/modules/qveto/utils.py +0 -0
  398. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/modules/read_data/__init__.py +0 -0
  399. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/modules/read_data/data_check.py +0 -0
  400. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/modules/read_data/data_find.py +0 -0
  401. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/modules/read_data/mdc.py +0 -0
  402. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/modules/read_data/module.yaml +0 -0
  403. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/modules/read_data/read_data.py +0 -0
  404. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/modules/read_data/tests/__init__.py +0 -0
  405. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/modules/read_data/tests/test_mdc.py +0 -0
  406. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/modules/reconstruction/__init__.py +0 -0
  407. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/modules/reconstruction/getMRAwaveform.py +0 -0
  408. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/modules/reconstruction/module.yaml +0 -0
  409. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/modules/report/__init__.py +0 -0
  410. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/modules/report/continues_poisson.py +0 -0
  411. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/modules/report/far_rho.py +0 -0
  412. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/modules/report/read_results.py +0 -0
  413. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/modules/report/report.py +0 -0
  414. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/modules/slurm/__init__.py +0 -0
  415. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/modules/slurm/module.yaml +0 -0
  416. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/modules/slurm/slurm.py +0 -0
  417. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/modules/sparse_series/__init__.py +0 -0
  418. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/modules/sparse_series/module.yaml +0 -0
  419. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/modules/sparse_series/sparse_table.py +0 -0
  420. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/modules/statistics/__init__.py +0 -0
  421. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/modules/statistics/eff.py +0 -0
  422. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/modules/statistics/eff_plot.py +0 -0
  423. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/modules/statistics/merge.py +0 -0
  424. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/modules/statistics/sigmoid_fit.py +0 -0
  425. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/modules/super_cluster/__init__.py +0 -0
  426. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/modules/super_cluster/module.yaml +0 -0
  427. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/modules/super_cluster/sub_net_cut.py +0 -0
  428. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/modules/super_cluster/super_cluster.py +0 -0
  429. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/modules/super_cluster/supercluster.py +0 -0
  430. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/modules/super_cluster/utils.py +0 -0
  431. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/modules/supercluster_naive/__init__.py +0 -0
  432. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/modules/supercluster_naive/supercluster2.py +0 -0
  433. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/modules/superlag/__init__.py +0 -0
  434. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/modules/superlag/module.yaml +0 -0
  435. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/modules/superlag/superlag.py +0 -0
  436. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/modules/web_viewer/__init__.py +0 -0
  437. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/modules/web_viewer/create.py +0 -0
  438. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/modules/web_viewer/module.yaml +0 -0
  439. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/modules/workflow_utils/__init__.py +0 -0
  440. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/modules/workflow_utils/job_setup.py +0 -0
  441. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/modules/xtalk/__init__.py +0 -0
  442. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/modules/xtalk/monster.py +0 -0
  443. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/modules/xtalk/monster_old.py +0 -0
  444. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/modules/xtalk/type.py +0 -0
  445. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/modules/xtalk/xtalk_data.py +0 -0
  446. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/post_production/__init__.py +0 -0
  447. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/post_production/workflow.py +0 -0
  448. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/prefect_flow/__init__.py +0 -0
  449. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/prefect_flow/pycwb_flow.py +0 -0
  450. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/prefect_flow/tasks/__init__.py +0 -0
  451. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/prefect_flow/tasks/builtin.py +0 -0
  452. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/types/__init__.py +0 -0
  453. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/types/data_quality_file.py +0 -0
  454. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/types/detector.py +0 -0
  455. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/types/job.py +0 -0
  456. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/types/network.py +0 -0
  457. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/types/network_cluster.py +0 -0
  458. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/types/network_event.py +0 -0
  459. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/types/network_pixel.py +0 -0
  460. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/types/sparse_series.py +0 -0
  461. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/types/time_frequency_series.py +0 -0
  462. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/types/time_series.py +0 -0
  463. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/types/wdm.py +0 -0
  464. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/types/wdm_xtalk.py +0 -0
  465. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/utils/__init__.py +0 -0
  466. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/utils/async_write.py +0 -0
  467. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/utils/check_ROOT.py +0 -0
  468. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/utils/conversions/__init__.py +0 -0
  469. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/utils/conversions/timeseries.py +0 -0
  470. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/utils/dataclass_object_io.py +0 -0
  471. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/utils/dep_check.py +0 -0
  472. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/utils/generate_params_table.py +0 -0
  473. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/utils/image.py +0 -0
  474. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/utils/module.py +0 -0
  475. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/utils/network.py +0 -0
  476. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/utils/parser.py +0 -0
  477. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/utils/skymap_coord.py +0 -0
  478. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/utils/yaml_helper.py +0 -0
  479. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/vendor/__init__.py +0 -0
  480. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/vendor/autoencoder/__init__.py +0 -0
  481. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/vendor/autoencoder/cwb_autoencoder.h5 +0 -0
  482. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/vendor/example.yaml +0 -0
  483. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/vendor/lib/__init__.py +0 -0
  484. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/vendor/template/gwosc/user_parameters.yaml +0 -0
  485. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/vendor/web_viewer/event_dump.html +0 -0
  486. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/vendor/web_viewer/styles.css +0 -0
  487. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/vendor/web_viewer/viewer.html +0 -0
  488. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/workflow/__init__.py +0 -0
  489. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/workflow/batch.py +0 -0
  490. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/workflow/merge.py +0 -0
  491. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/workflow/run.py +0 -0
  492. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/workflow/subflow/__init__.py +0 -0
  493. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/workflow/subflow/fake_processor.py +0 -0
  494. {pycwb-0.30.0 → pycwb-0.30.1}/pycwb/workflow/subflow/prepare_job_runs.py +0 -0
  495. {pycwb-0.30.0 → pycwb-0.30.1}/pyproject.toml +0 -0
  496. {pycwb-0.30.0 → pycwb-0.30.1}/setup.cfg +0 -0
  497. {pycwb-0.30.0 → pycwb-0.30.1}/setup.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: PycWB
3
- Version: 0.30.0
3
+ Version: 0.30.1
4
4
  Summary: A Python package for coherent gravitational wave burst analysis
5
5
  Home-page: https://git.ligo.org/yumeng.xu/pycwb
6
6
  Author-email: The PycWB team <yumeng.xu@ligo.org>
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: PycWB
3
- Version: 0.30.0
3
+ Version: 0.30.1
4
4
  Summary: A Python package for coherent gravitational wave burst analysis
5
5
  Home-page: https://git.ligo.org/yumeng.xu/pycwb
6
6
  Author-email: The PycWB team <yumeng.xu@ligo.org>
@@ -28,7 +28,7 @@ version_tuple: VERSION_TUPLE
28
28
  commit_id: COMMIT_ID
29
29
  __commit_id__: COMMIT_ID
30
30
 
31
- __version__ = version = '0.30.0'
32
- __version_tuple__ = version_tuple = (0, 30, 0)
31
+ __version__ = version = '0.30.1'
32
+ __version_tuple__ = version_tuple = (0, 30, 1)
33
33
 
34
- __commit_id__ = commit_id = 'g93b86f797'
34
+ __commit_id__ = commit_id = 'ge6efcc9ce'
@@ -38,11 +38,29 @@ DETECTORS = {
38
38
  "elevation": 51.884,
39
39
  "x": {
40
40
  "alt": 0.00000000000,
41
- "az": 0.33916285222
41
+ "az": 0.33916285222,
42
+ "midpoint": 1500.00000000000
42
43
  },
43
44
  "y": {
44
45
  "alt": 0.00000000000,
45
- "az": 5.05155183261
46
+ "az": 5.05155183261,
47
+ "midpoint": 1500.00000000000
48
+ }
49
+ },
50
+ "I1": {
51
+ "name": "LIO_4k",
52
+ "lat": 0.24841853020,
53
+ "lon": 1.33401332494,
54
+ "elevation": 0.0,
55
+ "x": {
56
+ "alt": 0.00000000000,
57
+ "az": 1.57079637051,
58
+ "midpoint": 2000.00000000000
59
+ },
60
+ "y": {
61
+ "alt": 0.00000000000,
62
+ "az": 0.00000000000,
63
+ "midpoint": 2000.00000000000
46
64
  }
47
65
  },
48
66
  "G1": {
@@ -52,11 +70,13 @@ DETECTORS = {
52
70
  "elevation": 114.425,
53
71
  "x": {
54
72
  "alt": 0.00000000000,
55
- "az": 1.19360100484
73
+ "az": 1.19360100484,
74
+ "midpoint": 300.00000000000
56
75
  },
57
76
  "y": {
58
77
  "alt": 0.00000000000,
59
- "az": 5.83039279401
78
+ "az": 5.83039279401,
79
+ "midpoint": 300.00000000000
60
80
  }
61
81
  },
62
82
  "E1": {
@@ -66,11 +86,13 @@ DETECTORS = {
66
86
  "elevation": 51.884,
67
87
  "x": {
68
88
  "alt": 0.00000000000,
69
- "az": 0.33916285222
89
+ "az": 0.33916285222,
90
+ "midpoint": 5000.00000000000
70
91
  },
71
92
  "y": {
72
93
  "alt": 0.00000000000,
73
- "az": 5.57515060820
94
+ "az": 5.57515060820,
95
+ "midpoint": 5000.00000000000
74
96
  }
75
97
  },
76
98
  "E2": {
@@ -80,11 +102,13 @@ DETECTORS = {
80
102
  "elevation": 59.735,
81
103
  "x": {
82
104
  "alt": 0.00000000000,
83
- "az": 4.52795305701
105
+ "az": 4.52795305701,
106
+ "midpoint": 5000.00000000000
84
107
  },
85
108
  "y": {
86
109
  "alt": 0.00000000000,
87
- "az": 3.48075550581
110
+ "az": 3.48075550581,
111
+ "midpoint": 5000.00000000000
88
112
  }
89
113
  },
90
114
  "E3": {
@@ -94,11 +118,13 @@ DETECTORS = {
94
118
  "elevation": 59.727,
95
119
  "x": {
96
120
  "alt": 0.00000000000,
97
- "az": 2.43355795462
121
+ "az": 2.43355795462,
122
+ "midpoint": 5000.00000000000
98
123
  },
99
124
  "y": {
100
125
  "alt": 0.00000000000,
101
- "az": 1.38636040342
126
+ "az": 1.38636040342,
127
+ "midpoint": 5000.00000000000
102
128
  }
103
129
  },
104
130
  "E0": {
@@ -108,11 +134,13 @@ DETECTORS = {
108
134
  "elevation": 59.727,
109
135
  "x": {
110
136
  "alt": 0.00000000000,
111
- "az": 0.00000000000
137
+ "az": 0.00000000000,
138
+ "midpoint": 0.00000000000
112
139
  },
113
140
  "y": {
114
141
  "alt": 0.00000000000,
115
- "az": 0.00000000000
142
+ "az": 0.00000000000,
143
+ "midpoint": 0.00000000000
116
144
  }
117
145
  },
118
146
  "K1": {
@@ -122,11 +150,13 @@ DETECTORS = {
122
150
  "elevation": 414.181,
123
151
  "x": {
124
152
  "alt": 0.0031414,
125
- "az": 1.054113
153
+ "az": 1.054113,
154
+ "midpoint": 1513.2535
126
155
  },
127
156
  "y": {
128
157
  "alt": -0.0036270,
129
- "az": -0.5166798
158
+ "az": -0.5166798,
159
+ "midpoint": 1511.611
130
160
  }
131
161
  }
132
- }
162
+ }
@@ -45,6 +45,11 @@ schema = {
45
45
  "default": False,
46
46
  "cwb": False
47
47
  },
48
+ "save_waveform_format": {
49
+ "enum": ["txt", "hdf"],
50
+ "description": "format to save waveform from triggers, options are: 'txt' and 'hdf'",
51
+ "default": "hdf"
52
+ },
48
53
  "plot_waveform": {
49
54
  "type": "boolean",
50
55
  "description": "plot waveform from triggers",
@@ -584,12 +589,12 @@ schema = {
584
589
  },
585
590
  "whiteWindow": {
586
591
  "type": "number",
587
- "description": "[sec] time window dT. if = 0 - dT=T, where T is segment duration",
592
+ "description": "[sec] time window dT. if = 0 - dT=T, where T is segment duration. If whiteMethod='mesa', controls the MESA nRMS estimate (no values other than 60 have been tested in this context)",
588
593
  "default": 60.
589
594
  },
590
595
  "whiteStride": {
591
596
  "type": "number",
592
- "description": "[sec] noise sampling time stride",
597
+ "description": "[sec] noise sampling time stride. If whiteMethod='mesa', controls the MESA nRMS estimate (no values other than 20 have been tested in this context)",
593
598
  "default": 20.
594
599
  },
595
600
  "mesaSolver": {
@@ -602,6 +607,21 @@ schema = {
602
607
  "description": "Maximum Autoregressive order for the Lenvinson Recursion",
603
608
  "default": 800.
604
609
  },
610
+ "mesaHalfSeg": {
611
+ "type": "number",
612
+ "description": "half - 1 size of the number of PSD over which the median over which the median is computed. If < 1, no median is applied",
613
+ "default": 4
614
+ },
615
+ "mesaWindow": {
616
+ "type": "number",
617
+ "description": "window length [sec] used to compute MESA PSD estimates",
618
+ "default": 15
619
+ },
620
+ "mesaStride": {
621
+ "type": "number",
622
+ "description": "stride length [sec] between two consecutive MESA PSD estimates. Should be mesaWindow / 3",
623
+ "default": 5
624
+ },
605
625
  "whiteMethod": {
606
626
  "type": "string",
607
627
  "description": "Sets what type of whitening has to be used. if 'wavelet' WDM time-frequency domain is applied. if 'mesa', it whitens with a PSD estimate given by mesa in the frequency domain. If 'mixed', the whitening is performed in time frequency domain but the nRMS is substitued with a MESA estimate for the coefficients",
@@ -166,7 +166,7 @@ def WSeries_to_matrix(w):
166
166
  :rtype: np.array
167
167
  """
168
168
  matrix = list()
169
- for n in range(w.maxLayer()):
169
+ for n in range(w.maxLayer() + 1):
170
170
  a = ROOT.wavearray(np.double)()
171
171
  w.getLayer(a, n)
172
172
  matrix.append(np.asarray(a))
@@ -38,9 +38,9 @@ def whitening_mesa(config, h):
38
38
  wdm_white = WDM(layers_white, layers_white, config.WDM_beta_order, config.WDM_precision)
39
39
  wdmFlen = wdm_white.m_H / config.rateANA
40
40
 
41
- if config.whiteStride != config.whiteWindow / 3:
42
- logger.warning('Value of whiteStride in config must be one third of whiteWindow. It will be changed in the analysis')
43
- config.whiteStride = config.whiteWindow / 3
41
+ if config.mesaStride != config.mesaWindow / 3:
42
+ logger.warning('Value of mesa Stide in config must be one third of mesa Window. It will be changed in the analysis')
43
+ config.mesaStride = config.mesaWindow / 3
44
44
  #Sampling variables
45
45
  sampling_rate = config.inRate / (2 ** config.levelR)
46
46
  Ny = .5 * sampling_rate #The Nyquist frequency
@@ -62,8 +62,8 @@ def whitening_mesa(config, h):
62
62
 
63
63
  #Initialise whitening
64
64
  M = MESA()
65
- stride = int(config.whiteStride * sampling_rate)
66
- window = int(config.whiteWindow * sampling_rate)
65
+ stride = int(config.mesaStride * sampling_rate)
66
+ window = int(config.mesaWindow * sampling_rate)
67
67
 
68
68
  psds = []
69
69
  h_white = h.copy()
@@ -74,9 +74,15 @@ def whitening_mesa(config, h):
74
74
  M.solve(h[start:start+ window], method = config.mesaSolver, m = config.mesaOrder)
75
75
  f, psd = M.spectrum(1 / sampling_rate)
76
76
  psds.append(psd)
77
-
77
+
78
+ #Smooth the PSDs estimates with a rolling median filter
79
+ if config.mesaHalfSeg > 0:
80
+ logger.info(f"Smoothing PSDs estimates with rolling median filter over {config.mesaHalfSeg * 2 + 1} segments")
81
+ psds = rolling_median(np.array(psds), half_size = config.mesaHalfSeg)
82
+
78
83
  #reindex psds to exclude possibly-glitch-contaminated estimates
79
84
  if config.mesaReindex:
85
+ logger.warning("Reindexing PSDs estimates with Isolation Forest to exclude possible glitch contamination. To disable set mesaReindex to False in config file")
80
86
  psds = reindex_psds(np.array(psds), f)
81
87
 
82
88
  W = planck_taper_window(window)
@@ -98,7 +104,7 @@ def whitening_mesa(config, h):
98
104
  h_white[start + stride:stop-stride] = h_w[stride:-stride]
99
105
  del(h_tmp)
100
106
  del(h_w)
101
- edge = int(config.segEdge * sampling_rate)
107
+
102
108
  #Initialize TF map
103
109
  tf_map = ROOT.WSeries(np.double)(convert_to_wavearray(h[:stop]), wdm_white.wavelet)
104
110
  tf_map.Forward()
@@ -114,31 +120,62 @@ def whitening_mesa(config, h):
114
120
  #Compute effective whitening filter
115
121
  nRMS_matrix = WSeries_to_matrix(tf_map) / WSeries_to_matrix(tf_map_white)
116
122
 
117
-
118
- #Compute the nRMS taking the median over 20 second segments and convert to array
123
+ #Compute the nRMS taking the median over "whiteStride" seconds segments and convert to array
119
124
  data_per_batch = int(config.whiteStride // wdm_dt)
120
- nRMS_reshaped = nRMS_matrix.reshape(int(Ny / wdm_df),-1,data_per_batch)
121
- #set nRMS = 1 for f <= 16
125
+ nRMS_reshaped = nRMS_matrix.reshape(int(Ny / wdm_df)+1,-1,data_per_batch)
122
126
  nRMS_reshaped[:int(16 / wdm_df) + 1] = 1
127
+
123
128
  #Compute the nRMS as the median over the segments ignoring nans if present
124
129
  nRMS = np.sqrt(np.nanmedian(nRMS_reshaped ** 2, axis = 2))
125
-
126
- #add 1 as last frequency bin for compatibility
127
- n_segments = nRMS_reshaped.shape[1]
128
- nRMS = np.vstack((nRMS,np.ones((1,n_segments)))).reshape(-1, order = 'F')
129
- nRMS = generate_nrms_wseries(config, h, nRMS)
130
-
131
- #nRMS = _convert_numpy_nrms_to_wseries(nRMS, h.start_time, sampling_rate, n_segments, wdm_white.wavelet)
130
+ nRMS = generate_nrms_wseries(config, h, nRMS.reshape(-1, order = 'F'))
131
+
132
+ #Convert to tf map types
132
133
  tf_map_whitened = ROOT.WSeries(np.double)(convert_to_wavearray(h_white), wdm_white.wavelet)
133
134
  tf_map_whitened.w_mode = 1 #Change w_mode to 1 for compatibility with "Network.cc"
134
-
135
135
  tf_map_whitened = convert_wseries_to_time_frequency_series(tf_map_whitened)
136
136
  n_rms = convert_wseries_to_time_frequency_series(nRMS)
137
-
138
137
 
139
138
  return tf_map_whitened, n_rms
140
139
 
141
140
 
141
+ def rolling_median(psds, half_size):
142
+ """
143
+ Smooths the PSDs estimates with a rolling median filter
144
+
145
+ Parameters:
146
+ ----------
147
+ psds: np.ndarray (N_segments, N_frequencies)
148
+ array containing all the PSDs estimates
149
+ half_size: int, optional
150
+ Half size of the rolling median window. The number of segments is The default is 2 * half_size + 1.
151
+ Default value is 4
152
+ """
153
+
154
+ out = np.empty_like(psds)
155
+ N = psds.shape[0]
156
+
157
+ for i in range(N):
158
+ #Define left and right edges of the rolling median window
159
+ left = i - half_size
160
+ right = i + half_size + 1
161
+
162
+ # If we run off the left edge, extend to the right to compensate
163
+ if left < 0:
164
+ deficit = -left
165
+ left = 0
166
+ right = min(N, right + deficit)
167
+
168
+ # If we run off the right edge, extend to the left to compensate
169
+ if right > N:
170
+ deficit = right - N
171
+ right = N
172
+ left = max(0, left - deficit)
173
+
174
+ out[i] = np.median(psds[int(left):int(right)], axis=0)
175
+
176
+ return out
177
+
178
+
142
179
  def reindex_psds(psds, f):
143
180
  """
144
181
  Uses Isolation Forest to exclude PSDs estimates with a too large deviation from the median to exclude glitch contamination
@@ -160,7 +197,7 @@ def reindex_psds(psds, f):
160
197
  dist_lf = np.mean((np.log(psds[:,mask_lf] / psd_median[mask_lf])) ** 2, axis = 1) ** .5
161
198
  dist_hf = np.mean((np.log(psds[:,mask_hf] / psd_median[mask_hf])) ** 2, axis = 1) ** .5
162
199
  dist = np.stack([dist_lf, dist_hf], axis = 1)
163
- predictions = IsolationForest(n_estimators = 100).fit_predict(dist)
200
+ predictions = IsolationForest(n_estimators = 100, contamination = .15).fit_predict(dist)
164
201
 
165
202
  #Remove outliers if found below the median
166
203
  median_lf, median_hf = np.median([dist_lf,dist_hf], axis = 1)
@@ -173,7 +210,7 @@ def reindex_psds(psds, f):
173
210
  for idx in outliers_idx:
174
211
  new_idx = inliers_idx[np.argmin(np.abs(inliers_idx-idx))]
175
212
  psds[idx] = psds[new_idx]
176
- logger.info(f"Subsituting PSD {idx} with PSD {new_idx}")
213
+ logger.info(f"Reindexed {len(outliers_idx)} PSDs estimates out of {psds.shape[0]} total segments")
177
214
 
178
215
  return psds
179
216
 
@@ -209,7 +246,9 @@ def generate_nrms_wseries(config, data, nrms):
209
246
  tf_map.Forward()
210
247
  tf_map.setlow(config.fLow)
211
248
  tf_map.sethigh(config.fHigh)
212
- nRMS = tf_map.white(config.whiteWindow, 0, config.segEdge, config.whiteStride)
249
+ if config.whiteWindow != 60 or config.whiteStride != 20:
250
+ logger.warning(f"whiteWindow = {config.whiteWindow} and whiteStride = {config.whiteStride} in config are different from default values (60,20). This may lead to unexpected results in the whitening nRMS generation.")
251
+ nRMS = tf_map.white(config.whiteWindow, 0, config.segEdge, config.whiteStride)
213
252
  nRMS.bandpass(16., 0., 1)
214
253
 
215
254
  #Substitute the cWB nRMS with the MESA nRMS
@@ -57,11 +57,11 @@ def reconstruct_waveforms_flow(trigger_folder: str, config: Config, ifos: List[s
57
57
 
58
58
  for i, ts in enumerate(reconstructed_waves):
59
59
  logger.info(f"Saving reconstructed waveform for {ifos[i]}")
60
- ts.save(f"{trigger_folder}/reconstructed_waveform_{ifos[i]}.txt")
60
+ ts.save(f"{trigger_folder}/reconstructed_waveform_{ifos[i]}.{config.save_waveform_format}")
61
61
 
62
62
  for i, ts in enumerate(reconstructed_waves_whiten):
63
63
  logger.info(f"Saving reconstructed waveform for {ifos[i]} (whitened)")
64
- ts.save(f"{trigger_folder}/reconstructed_waveform_{ifos[i]}_whitened.txt")
64
+ ts.save(f"{trigger_folder}/reconstructed_waveform_{ifos[i]}_whitened.{config.save_waveform_format}")
65
65
 
66
66
  # for i, (hp, hc) in enumerate(zip(reconstructed_waves_whiten_00, reconstructed_waves_whiten_90)):
67
67
  # # save strain = hp + 1j hc
@@ -103,7 +103,7 @@ def reconstruct_waveforms_flow(trigger_folder: str, config: Config, ifos: List[s
103
103
  if save_injection:
104
104
  for i, strain in enumerate(strains):
105
105
  logger.info(f"Saving injected strain for {ifos[i]}")
106
- strain.save(f"{trigger_folder}/injected_strain_{ifos[i]}.txt")
106
+ strain.save(f"{trigger_folder}/injected_strain_{ifos[i]}.{config.save_waveform_format}")
107
107
 
108
108
  if plot_injection:
109
109
  from matplotlib import pyplot as plt
@@ -122,6 +122,7 @@ def process_job_segment(working_dir: str, config: Config, job_seg: WaveSegment,
122
122
  # associate the injections if there are any
123
123
  if sub_job_seg.injections:
124
124
  for injection in sub_job_seg.injections:
125
+ # FIXME: for overlap signal, this won't work
125
126
  if event.start[0] - 0.1 < injection['gps_time'] < event.stop[0] + 0.1:
126
127
  event.injection = injection
127
128
  logger.info("Memory usage: %f.2 MB", psutil.Process().memory_info().rss / 1024 / 1024)
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes