PycWB 0.30.2__tar.gz → 0.31.0__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 (509) hide show
  1. pycwb-0.31.0/.gitlab-ci.yml +57 -0
  2. pycwb-0.31.0/Dockerfile +29 -0
  3. {pycwb-0.30.2 → pycwb-0.31.0}/PKG-INFO +6 -1
  4. {pycwb-0.30.2 → pycwb-0.31.0}/PycWB.egg-info/PKG-INFO +6 -1
  5. {pycwb-0.30.2 → pycwb-0.31.0}/PycWB.egg-info/SOURCES.txt +5 -0
  6. {pycwb-0.30.2 → pycwb-0.31.0}/PycWB.egg-info/requires.txt +7 -0
  7. {pycwb-0.30.2 → pycwb-0.31.0}/bin/pycwb +4 -0
  8. {pycwb-0.30.2 → pycwb-0.31.0}/cwb-core/CMakeLists.txt +7 -3
  9. {pycwb-0.30.2 → pycwb-0.31.0}/cwb-core/wat.hh +4 -0
  10. pycwb-0.31.0/envs/Dockerfile.ci +61 -0
  11. pycwb-0.31.0/envs/Dockerfile.ci-conda +74 -0
  12. pycwb-0.31.0/envs/pycwb.def +67 -0
  13. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/_version.py +3 -3
  14. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/cli/batch_setup.py +15 -4
  15. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/constants/user_parameters_schema.py +63 -0
  16. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/modules/condor/condor.py +72 -38
  17. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/modules/cwb_conversions/pixel.py +1 -1
  18. pycwb-0.31.0/pycwb/modules/data_conditioning/__init__.py +4 -0
  19. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/modules/data_conditioning/whitening_cwb.py +60 -5
  20. pycwb-0.31.0/pycwb/modules/plot/waveform.py +43 -0
  21. pycwb-0.31.0/pycwb/modules/reconstruction/__init__.py +2 -0
  22. pycwb-0.31.0/pycwb/modules/reconstruction/getINJwaveform.py +204 -0
  23. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/workflow/batch.py +34 -2
  24. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/workflow/subflow/__init__.py +1 -1
  25. pycwb-0.31.0/pycwb/workflow/subflow/postprocess_and_plots.py +243 -0
  26. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/workflow/subflow/process_job_segment.py +53 -11
  27. {pycwb-0.30.2 → pycwb-0.31.0}/setup.py +5 -0
  28. pycwb-0.30.2/.gitlab-ci.yml +0 -128
  29. pycwb-0.30.2/pycwb/modules/data_conditioning/__init__.py +0 -4
  30. pycwb-0.30.2/pycwb/modules/plot/waveform.py +0 -17
  31. pycwb-0.30.2/pycwb/modules/reconstruction/__init__.py +0 -1
  32. pycwb-0.30.2/pycwb/workflow/subflow/postprocess_and_plots.py +0 -144
  33. {pycwb-0.30.2 → pycwb-0.31.0}/.gitignore +0 -0
  34. {pycwb-0.30.2 → pycwb-0.31.0}/.readthedocs.yaml +0 -0
  35. {pycwb-0.30.2 → pycwb-0.31.0}/LICENSE +0 -0
  36. {pycwb-0.30.2 → pycwb-0.31.0}/MANIFEST.in +0 -0
  37. {pycwb-0.30.2 → pycwb-0.31.0}/Makefile +0 -0
  38. {pycwb-0.30.2 → pycwb-0.31.0}/PycWB.egg-info/dependency_links.txt +0 -0
  39. {pycwb-0.30.2 → pycwb-0.31.0}/PycWB.egg-info/top_level.txt +0 -0
  40. {pycwb-0.30.2 → pycwb-0.31.0}/README.md +0 -0
  41. {pycwb-0.30.2 → pycwb-0.31.0}/benchmark/README.md +0 -0
  42. {pycwb-0.30.2 → pycwb-0.31.0}/benchmark/io_performance/README.md +0 -0
  43. {pycwb-0.30.2 → pycwb-0.31.0}/benchmark/io_performance/data_gen.py +0 -0
  44. {pycwb-0.30.2 → pycwb-0.31.0}/benchmark/io_performance/parquet_perf.py +0 -0
  45. {pycwb-0.30.2 → pycwb-0.31.0}/benchmark/io_performance/parquet_read_perf.py +0 -0
  46. {pycwb-0.30.2 → pycwb-0.31.0}/benchmark/io_performance/read_pref.py +0 -0
  47. {pycwb-0.30.2 → pycwb-0.31.0}/benchmark/likelihood/README.md +0 -0
  48. {pycwb-0.30.2 → pycwb-0.31.0}/benchmark/likelihood/data_generator.py +0 -0
  49. {pycwb-0.30.2 → pycwb-0.31.0}/benchmark/likelihood/perf_cuda.py +0 -0
  50. {pycwb-0.30.2 → pycwb-0.31.0}/benchmark/likelihood/performance_test_dpf.py +0 -0
  51. {pycwb-0.30.2 → pycwb-0.31.0}/benchmark/likelihood/performance_test_opt_sky.py +0 -0
  52. {pycwb-0.30.2 → pycwb-0.31.0}/benchmark/likelihood/user_parameters_injection.yaml +0 -0
  53. {pycwb-0.30.2 → pycwb-0.31.0}/benchmark/supercluster/README.md +0 -0
  54. {pycwb-0.30.2 → pycwb-0.31.0}/benchmark/supercluster/generate_data.py +0 -0
  55. {pycwb-0.30.2 → pycwb-0.31.0}/benchmark/supercluster/generate_data_2.py +0 -0
  56. {pycwb-0.30.2 → pycwb-0.31.0}/benchmark/supercluster/performance_supercluster.py +0 -0
  57. {pycwb-0.30.2 → pycwb-0.31.0}/benchmark/supercluster/user_parameters_injection.yaml +0 -0
  58. {pycwb-0.30.2 → pycwb-0.31.0}/bin/pycwb_search +0 -0
  59. {pycwb-0.30.2 → pycwb-0.31.0}/bin/pycwb_show +0 -0
  60. {pycwb-0.30.2 → pycwb-0.31.0}/cwb-core/Biorthogonal.cc +0 -0
  61. {pycwb-0.30.2 → pycwb-0.31.0}/cwb-core/Biorthogonal.hh +0 -0
  62. {pycwb-0.30.2 → pycwb-0.31.0}/cwb-core/Daubechies.cc +0 -0
  63. {pycwb-0.30.2 → pycwb-0.31.0}/cwb-core/Daubechies.hh +0 -0
  64. {pycwb-0.30.2 → pycwb-0.31.0}/cwb-core/FourierCoefficients.icc +0 -0
  65. {pycwb-0.30.2 → pycwb-0.31.0}/cwb-core/Haar.cc +0 -0
  66. {pycwb-0.30.2 → pycwb-0.31.0}/cwb-core/Haar.hh +0 -0
  67. {pycwb-0.30.2 → pycwb-0.31.0}/cwb-core/LineFilter.cc +0 -0
  68. {pycwb-0.30.2 → pycwb-0.31.0}/cwb-core/LineFilter.hh +0 -0
  69. {pycwb-0.30.2 → pycwb-0.31.0}/cwb-core/Makefile +0 -0
  70. {pycwb-0.30.2 → pycwb-0.31.0}/cwb-core/Meyer.cc +0 -0
  71. {pycwb-0.30.2 → pycwb-0.31.0}/cwb-core/Meyer.hh +0 -0
  72. {pycwb-0.30.2 → pycwb-0.31.0}/cwb-core/Symlet.cc +0 -0
  73. {pycwb-0.30.2 → pycwb-0.31.0}/cwb-core/Symlet.hh +0 -0
  74. {pycwb-0.30.2 → pycwb-0.31.0}/cwb-core/SymmArray.cc +0 -0
  75. {pycwb-0.30.2 → pycwb-0.31.0}/cwb-core/SymmArray.hh +0 -0
  76. {pycwb-0.30.2 → pycwb-0.31.0}/cwb-core/SymmArraySSE.cc +0 -0
  77. {pycwb-0.30.2 → pycwb-0.31.0}/cwb-core/SymmArraySSE.hh +0 -0
  78. {pycwb-0.30.2 → pycwb-0.31.0}/cwb-core/SymmObjArray.cc +0 -0
  79. {pycwb-0.30.2 → pycwb-0.31.0}/cwb-core/SymmObjArray.hh +0 -0
  80. {pycwb-0.30.2 → pycwb-0.31.0}/cwb-core/WDM.cc +0 -0
  81. {pycwb-0.30.2 → pycwb-0.31.0}/cwb-core/WDM.hh +0 -0
  82. {pycwb-0.30.2 → pycwb-0.31.0}/cwb-core/WDMOverlap.cc +0 -0
  83. {pycwb-0.30.2 → pycwb-0.31.0}/cwb-core/WDMOverlap.hh +0 -0
  84. {pycwb-0.30.2 → pycwb-0.31.0}/cwb-core/WaveDWT.cc +0 -0
  85. {pycwb-0.30.2 → pycwb-0.31.0}/cwb-core/WaveDWT.hh +0 -0
  86. {pycwb-0.30.2 → pycwb-0.31.0}/cwb-core/Wavelet.cc +0 -0
  87. {pycwb-0.30.2 → pycwb-0.31.0}/cwb-core/Wavelet.hh +0 -0
  88. {pycwb-0.30.2 → pycwb-0.31.0}/cwb-core/alm.hh +0 -0
  89. {pycwb-0.30.2 → pycwb-0.31.0}/cwb-core/build.sh +0 -0
  90. {pycwb-0.30.2 → pycwb-0.31.0}/cwb-core/cluster.cc +0 -0
  91. {pycwb-0.30.2 → pycwb-0.31.0}/cwb-core/cluster.hh +0 -0
  92. {pycwb-0.30.2 → pycwb-0.31.0}/cwb-core/cmake/FindHealpix.cmake +0 -0
  93. {pycwb-0.30.2 → pycwb-0.31.0}/cwb-core/cmake/FindeBBH.cmake +0 -0
  94. {pycwb-0.30.2 → pycwb-0.31.0}/cwb-core/cmake/install_function.cmake +0 -0
  95. {pycwb-0.30.2 → pycwb-0.31.0}/cwb-core/constants.hh +0 -0
  96. {pycwb-0.30.2 → pycwb-0.31.0}/cwb-core/detector.cc +0 -0
  97. {pycwb-0.30.2 → pycwb-0.31.0}/cwb-core/detector.hh +0 -0
  98. {pycwb-0.30.2 → pycwb-0.31.0}/cwb-core/injection.cc +0 -0
  99. {pycwb-0.30.2 → pycwb-0.31.0}/cwb-core/injection.hh +0 -0
  100. {pycwb-0.30.2 → pycwb-0.31.0}/cwb-core/lossy.cc +0 -0
  101. {pycwb-0.30.2 → pycwb-0.31.0}/cwb-core/lossy.hh +0 -0
  102. {pycwb-0.30.2 → pycwb-0.31.0}/cwb-core/monster.cc +0 -0
  103. {pycwb-0.30.2 → pycwb-0.31.0}/cwb-core/monster.hh +0 -0
  104. {pycwb-0.30.2 → pycwb-0.31.0}/cwb-core/netcluster.cc +0 -0
  105. {pycwb-0.30.2 → pycwb-0.31.0}/cwb-core/netcluster.hh +0 -0
  106. {pycwb-0.30.2 → pycwb-0.31.0}/cwb-core/netevent.cc +0 -0
  107. {pycwb-0.30.2 → pycwb-0.31.0}/cwb-core/netevent.hh +0 -0
  108. {pycwb-0.30.2 → pycwb-0.31.0}/cwb-core/netpixel.cc +0 -0
  109. {pycwb-0.30.2 → pycwb-0.31.0}/cwb-core/netpixel.hh +0 -0
  110. {pycwb-0.30.2 → pycwb-0.31.0}/cwb-core/network.cc +0 -0
  111. {pycwb-0.30.2 → pycwb-0.31.0}/cwb-core/network.hh +0 -0
  112. {pycwb-0.30.2 → pycwb-0.31.0}/cwb-core/pycwb.hh +0 -0
  113. {pycwb-0.30.2 → pycwb-0.31.0}/cwb-core/rdfr.cc +0 -0
  114. {pycwb-0.30.2 → pycwb-0.31.0}/cwb-core/rdfr.hh +0 -0
  115. {pycwb-0.30.2 → pycwb-0.31.0}/cwb-core/readframe.cc +0 -0
  116. {pycwb-0.30.2 → pycwb-0.31.0}/cwb-core/readframe.hh +0 -0
  117. {pycwb-0.30.2 → pycwb-0.31.0}/cwb-core/readfrfile.cc +0 -0
  118. {pycwb-0.30.2 → pycwb-0.31.0}/cwb-core/readfrfile.hh +0 -0
  119. {pycwb-0.30.2 → pycwb-0.31.0}/cwb-core/regression.cc +0 -0
  120. {pycwb-0.30.2 → pycwb-0.31.0}/cwb-core/regression.hh +0 -0
  121. {pycwb-0.30.2 → pycwb-0.31.0}/cwb-core/skycoord.hh +0 -0
  122. {pycwb-0.30.2 → pycwb-0.31.0}/cwb-core/skymap.cc +0 -0
  123. {pycwb-0.30.2 → pycwb-0.31.0}/cwb-core/skymap.hh +0 -0
  124. {pycwb-0.30.2 → pycwb-0.31.0}/cwb-core/sseries.cc +0 -0
  125. {pycwb-0.30.2 → pycwb-0.31.0}/cwb-core/sseries.hh +0 -0
  126. {pycwb-0.30.2 → pycwb-0.31.0}/cwb-core/time.cc +0 -0
  127. {pycwb-0.30.2 → pycwb-0.31.0}/cwb-core/time.hh +0 -0
  128. {pycwb-0.30.2 → pycwb-0.31.0}/cwb-core/watasm.S +0 -0
  129. {pycwb-0.30.2 → pycwb-0.31.0}/cwb-core/watasm_elf64.o +0 -0
  130. {pycwb-0.30.2 → pycwb-0.31.0}/cwb-core/watavx.hh +0 -0
  131. {pycwb-0.30.2 → pycwb-0.31.0}/cwb-core/watbranch.in +0 -0
  132. {pycwb-0.30.2 → pycwb-0.31.0}/cwb-core/watfun.hh +0 -0
  133. {pycwb-0.30.2 → pycwb-0.31.0}/cwb-core/wathash.in +0 -0
  134. {pycwb-0.30.2 → pycwb-0.31.0}/cwb-core/watplot.cc +0 -0
  135. {pycwb-0.30.2 → pycwb-0.31.0}/cwb-core/watplot.hh +0 -0
  136. {pycwb-0.30.2 → pycwb-0.31.0}/cwb-core/watsse.hh +0 -0
  137. {pycwb-0.30.2 → pycwb-0.31.0}/cwb-core/wattag.in +0 -0
  138. {pycwb-0.30.2 → pycwb-0.31.0}/cwb-core/waturl.in +0 -0
  139. {pycwb-0.30.2 → pycwb-0.31.0}/cwb-core/watversion.hh.in +0 -0
  140. {pycwb-0.30.2 → pycwb-0.31.0}/cwb-core/wavearray.cc +0 -0
  141. {pycwb-0.30.2 → pycwb-0.31.0}/cwb-core/wavearray.hh +0 -0
  142. {pycwb-0.30.2 → pycwb-0.31.0}/cwb-core/wavecomplex.cc +0 -0
  143. {pycwb-0.30.2 → pycwb-0.31.0}/cwb-core/wavecomplex.hh +0 -0
  144. {pycwb-0.30.2 → pycwb-0.31.0}/cwb-core/wavecor.cc +0 -0
  145. {pycwb-0.30.2 → pycwb-0.31.0}/cwb-core/wavecor.hh +0 -0
  146. {pycwb-0.30.2 → pycwb-0.31.0}/cwb-core/wavefft.cc +0 -0
  147. {pycwb-0.30.2 → pycwb-0.31.0}/cwb-core/wavefft.hh +0 -0
  148. {pycwb-0.30.2 → pycwb-0.31.0}/cwb-core/wavelet_LinkDef.h +0 -0
  149. {pycwb-0.30.2 → pycwb-0.31.0}/cwb-core/wavelinefilter.cc +0 -0
  150. {pycwb-0.30.2 → pycwb-0.31.0}/cwb-core/wavelinefilter.hh +0 -0
  151. {pycwb-0.30.2 → pycwb-0.31.0}/cwb-core/waverdc.cc +0 -0
  152. {pycwb-0.30.2 → pycwb-0.31.0}/cwb-core/waverdc.hh +0 -0
  153. {pycwb-0.30.2 → pycwb-0.31.0}/cwb-core/wseries.cc +0 -0
  154. {pycwb-0.30.2 → pycwb-0.31.0}/cwb-core/wseries.hh +0 -0
  155. {pycwb-0.30.2 → pycwb-0.31.0}/cwb-core/wslice.hh +0 -0
  156. {pycwb-0.30.2 → pycwb-0.31.0}/docs/0.installation_guide.md +0 -0
  157. {pycwb-0.30.2 → pycwb-0.31.0}/docs/1.initialisation_guide.md +0 -0
  158. {pycwb-0.30.2 → pycwb-0.31.0}/docs/2.test_interactive_multistages_2G_analysis.md +0 -0
  159. {pycwb-0.30.2 → pycwb-0.31.0}/docs/3.run_pycwb_with_yaml_config.md +0 -0
  160. {pycwb-0.30.2 → pycwb-0.31.0}/docs/4.py_cwb_inet_2G.md +0 -0
  161. {pycwb-0.30.2 → pycwb-0.31.0}/docs/5.cwb2G_analyse.md +0 -0
  162. {pycwb-0.30.2 → pycwb-0.31.0}/docs/6.wat_codes_notes.md +0 -0
  163. {pycwb-0.30.2 → pycwb-0.31.0}/docs/Makefile +0 -0
  164. {pycwb-0.30.2 → pycwb-0.31.0}/docs/diagram.py +0 -0
  165. {pycwb-0.30.2 → pycwb-0.31.0}/docs/make.bat +0 -0
  166. {pycwb-0.30.2 → pycwb-0.31.0}/docs/source/_static/.keep +0 -0
  167. {pycwb-0.30.2 → pycwb-0.31.0}/docs/source/_templates/.keep +0 -0
  168. {pycwb-0.30.2 → pycwb-0.31.0}/docs/source/conf.py +0 -0
  169. {pycwb-0.30.2 → pycwb-0.31.0}/docs/source/credit.rst +0 -0
  170. {pycwb-0.30.2 → pycwb-0.31.0}/docs/source/index.rst +0 -0
  171. {pycwb-0.30.2 → pycwb-0.31.0}/docs/source/install.rst +0 -0
  172. {pycwb-0.30.2 → pycwb-0.31.0}/docs/source/mod_cwb.rst +0 -0
  173. {pycwb-0.30.2 → pycwb-0.31.0}/docs/source/package.rst +0 -0
  174. {pycwb-0.30.2 → pycwb-0.31.0}/docs/source/schema.rst +0 -0
  175. {pycwb-0.30.2 → pycwb-0.31.0}/docs/source/tutorial_batch_inj.rst +0 -0
  176. {pycwb-0.30.2 → pycwb-0.31.0}/docs/source/tutorial_customized_wf_gen.rst +0 -0
  177. {pycwb-0.30.2 → pycwb-0.31.0}/docs/source/tutorial_injection.rst +0 -0
  178. {pycwb-0.30.2 → pycwb-0.31.0}/docs/source/tutorial_multi_injection.rst +0 -0
  179. {pycwb-0.30.2 → pycwb-0.31.0}/docs/source/tutorial_search.rst +0 -0
  180. {pycwb-0.30.2 → pycwb-0.31.0}/docs/source/tutorials.rst +0 -0
  181. {pycwb-0.30.2 → pycwb-0.31.0}/docs/source/workflow.png +0 -0
  182. {pycwb-0.30.2 → pycwb-0.31.0}/envs/Dockerfile +0 -0
  183. {pycwb-0.30.2 → pycwb-0.31.0}/envs/environment.yml +0 -0
  184. {pycwb-0.30.2 → pycwb-0.31.0}/envs/mamba/Dockerfile +0 -0
  185. {pycwb-0.30.2 → pycwb-0.31.0}/examples/GW190521_search/README.md +0 -0
  186. {pycwb-0.30.2 → pycwb-0.31.0}/examples/GW190521_search/user_parameters.yaml +0 -0
  187. {pycwb-0.30.2 → pycwb-0.31.0}/examples/autoencoder/pycwb_injection.ipynb +0 -0
  188. {pycwb-0.30.2 → pycwb-0.31.0}/examples/autoencoder/user_parameters_injection.yaml +0 -0
  189. {pycwb-0.30.2 → pycwb-0.31.0}/examples/batch_injection/generate_parameters.py +0 -0
  190. {pycwb-0.30.2 → pycwb-0.31.0}/examples/batch_injection/pycbc_inject/hyperbolicTD/__init__.py +0 -0
  191. {pycwb-0.30.2 → pycwb-0.31.0}/examples/batch_injection/pycbc_inject/hyperbolicTD/parameters.py +0 -0
  192. {pycwb-0.30.2 → pycwb-0.31.0}/examples/batch_injection/pycbc_inject/hyperbolicTD/waveform.py +0 -0
  193. {pycwb-0.30.2 → pycwb-0.31.0}/examples/batch_injection/pycwb_injection.py +0 -0
  194. {pycwb-0.30.2 → pycwb-0.31.0}/examples/batch_injection/user_parameters_injection.yaml +0 -0
  195. {pycwb-0.30.2 → pycwb-0.31.0}/examples/benchmark/DQ/H1_cat0.txt +0 -0
  196. {pycwb-0.30.2 → pycwb-0.31.0}/examples/benchmark/DQ/H1_cat1.txt +0 -0
  197. {pycwb-0.30.2 → pycwb-0.31.0}/examples/benchmark/DQ/H1_cat2.txt +0 -0
  198. {pycwb-0.30.2 → pycwb-0.31.0}/examples/benchmark/DQ/H1_cat4.txt +0 -0
  199. {pycwb-0.30.2 → pycwb-0.31.0}/examples/benchmark/DQ/L1_cat0.txt +0 -0
  200. {pycwb-0.30.2 → pycwb-0.31.0}/examples/benchmark/DQ/L1_cat1.txt +0 -0
  201. {pycwb-0.30.2 → pycwb-0.31.0}/examples/benchmark/DQ/L1_cat2.txt +0 -0
  202. {pycwb-0.30.2 → pycwb-0.31.0}/examples/benchmark/DQ/L1_cat4.txt +0 -0
  203. {pycwb-0.30.2 → pycwb-0.31.0}/examples/benchmark/input/OPBM.period +0 -0
  204. {pycwb-0.30.2 → pycwb-0.31.0}/examples/benchmark/input/OPBM_H1.frames +0 -0
  205. {pycwb-0.30.2 → pycwb-0.31.0}/examples/benchmark/input/OPBM_L1.frames +0 -0
  206. {pycwb-0.30.2 → pycwb-0.31.0}/examples/benchmark/pycwb_mdc.py +0 -0
  207. {pycwb-0.30.2 → pycwb-0.31.0}/examples/benchmark/user_parameters_mdc.yaml +0 -0
  208. {pycwb-0.30.2 → pycwb-0.31.0}/examples/colab/notebook_updated/pycWB_GW150914_VScode_adapted.ipynb +0 -0
  209. {pycwb-0.30.2 → pycwb-0.31.0}/examples/colab/pycWB_GW150914.ipynb +0 -0
  210. {pycwb-0.30.2 → pycwb-0.31.0}/examples/data_injection/README.md +0 -0
  211. {pycwb-0.30.2 → pycwb-0.31.0}/examples/data_injection/injection_parameters.py +0 -0
  212. {pycwb-0.30.2 → pycwb-0.31.0}/examples/data_injection/user_parameters.yaml +0 -0
  213. {pycwb-0.30.2 → pycwb-0.31.0}/examples/gwosc/user_parameters.yaml +0 -0
  214. {pycwb-0.30.2 → pycwb-0.31.0}/examples/injection/pycwb_injection.ipynb +0 -0
  215. {pycwb-0.30.2 → pycwb-0.31.0}/examples/injection/user_parameters_injection.yaml +0 -0
  216. {pycwb-0.30.2 → pycwb-0.31.0}/examples/injection/wdmXTalk/OverlapCatalog16-1024.bin +0 -0
  217. {pycwb-0.30.2 → pycwb-0.31.0}/examples/injection_with_coordinate_system/injection_module_test.ipynb +0 -0
  218. {pycwb-0.30.2 → pycwb-0.31.0}/examples/injection_with_coordinate_system/injection_parameters.py +0 -0
  219. {pycwb-0.30.2 → pycwb-0.31.0}/examples/lvk_sep_2023/demo.ipynb +0 -0
  220. {pycwb-0.30.2 → pycwb-0.31.0}/examples/lvk_sep_2023/user_parameters.yaml +0 -0
  221. {pycwb-0.30.2 → pycwb-0.31.0}/examples/multiple_injection/pycwb_injection.py +0 -0
  222. {pycwb-0.30.2 → pycwb-0.31.0}/examples/multiple_injection/user_parameters_injection.yaml +0 -0
  223. {pycwb-0.30.2 → pycwb-0.31.0}/examples/new_injection_infra_with_LHV/README.md +0 -0
  224. {pycwb-0.30.2 → pycwb-0.31.0}/examples/new_injection_infra_with_LHV/analyze_events.ipynb +0 -0
  225. {pycwb-0.30.2 → pycwb-0.31.0}/examples/new_injection_infra_with_LHV/injection_parameters.py +0 -0
  226. {pycwb-0.30.2 → pycwb-0.31.0}/examples/new_injection_infra_with_LHV/input/LIGO_zero_det_HP.txt +0 -0
  227. {pycwb-0.30.2 → pycwb-0.31.0}/examples/new_injection_infra_with_LHV/input/aligo_O4high.txt +0 -0
  228. {pycwb-0.30.2 → pycwb-0.31.0}/examples/new_injection_infra_with_LHV/input/avirgo_O4high_NEW.txt +0 -0
  229. {pycwb-0.30.2 → pycwb-0.31.0}/examples/new_injection_infra_with_LHV/user_parameters.yaml +0 -0
  230. {pycwb-0.30.2 → pycwb-0.31.0}/examples/new_injection_infra_with_gaussian_noise/README.md +0 -0
  231. {pycwb-0.30.2 → pycwb-0.31.0}/examples/new_injection_infra_with_gaussian_noise/injection_parameters.py +0 -0
  232. {pycwb-0.30.2 → pycwb-0.31.0}/examples/new_injection_infra_with_gaussian_noise/user_parameters.yaml +0 -0
  233. {pycwb-0.30.2 → pycwb-0.31.0}/examples/new_injection_infra_with_real_data/README.md +0 -0
  234. {pycwb-0.30.2 → pycwb-0.31.0}/examples/new_injection_infra_with_real_data/injection_parameters.py +0 -0
  235. {pycwb-0.30.2 → pycwb-0.31.0}/examples/new_injection_infra_with_real_data/user_parameters.yaml +0 -0
  236. {pycwb-0.30.2 → pycwb-0.31.0}/examples/new_injection_infra_with_sky_patch/README.md +0 -0
  237. {pycwb-0.30.2 → pycwb-0.31.0}/examples/new_injection_infra_with_sky_patch/analyze_events.ipynb +0 -0
  238. {pycwb-0.30.2 → pycwb-0.31.0}/examples/new_injection_infra_with_sky_patch/injection_parameters.py +0 -0
  239. {pycwb-0.30.2 → pycwb-0.31.0}/examples/new_injection_infra_with_sky_patch/input/aligo_O4high.txt +0 -0
  240. {pycwb-0.30.2 → pycwb-0.31.0}/examples/new_injection_infra_with_sky_patch/user_parameters.yaml +0 -0
  241. {pycwb-0.30.2 → pycwb-0.31.0}/examples/pyseobnr_injection/generate_parameters.py +0 -0
  242. {pycwb-0.30.2 → pycwb-0.31.0}/examples/pyseobnr_injection/user_parameters_injection.yaml +0 -0
  243. {pycwb-0.30.2 → pycwb-0.31.0}/examples/pyseobnr_injection/waveform_model/__init__.py +0 -0
  244. {pycwb-0.30.2 → pycwb-0.31.0}/examples/pyseobnr_injection/waveform_model/waveform.py +0 -0
  245. {pycwb-0.30.2 → pycwb-0.31.0}/examples/sine_gaussian_injection/README.md +0 -0
  246. {pycwb-0.30.2 → pycwb-0.31.0}/examples/sine_gaussian_injection/injection_parameters.py +0 -0
  247. {pycwb-0.30.2 → pycwb-0.31.0}/examples/sine_gaussian_injection/user_parameters.yaml +0 -0
  248. {pycwb-0.30.2 → pycwb-0.31.0}/examples/waveform_reconstruction/reconstruct_waveform_from_cluster.ipynb +0 -0
  249. {pycwb-0.30.2 → pycwb-0.31.0}/examples/white_noise_burst_injection/README.md +0 -0
  250. {pycwb-0.30.2 → pycwb-0.31.0}/examples/white_noise_burst_injection/injection_parameters.py +0 -0
  251. {pycwb-0.30.2 → pycwb-0.31.0}/examples/white_noise_burst_injection/user_parameters.yaml +0 -0
  252. {pycwb-0.30.2 → pycwb-0.31.0}/prototypes/cwb_core/coherence.cc +0 -0
  253. {pycwb-0.30.2 → pycwb-0.31.0}/prototypes/cwb_core/coherence.hh +0 -0
  254. {pycwb-0.30.2 → pycwb-0.31.0}/prototypes/cwb_core/likelihood.cc +0 -0
  255. {pycwb-0.30.2 → pycwb-0.31.0}/prototypes/cwb_core/likelihood.hh +0 -0
  256. {pycwb-0.30.2 → pycwb-0.31.0}/prototypes/dag/dag.py +0 -0
  257. {pycwb-0.30.2 → pycwb-0.31.0}/prototypes/dag/dask-prefect.py +0 -0
  258. {pycwb-0.30.2 → pycwb-0.31.0}/prototypes/dag/prefect_test.py +0 -0
  259. {pycwb-0.30.2 → pycwb-0.31.0}/prototypes/messenger/__init__.py +0 -0
  260. {pycwb-0.30.2 → pycwb-0.31.0}/prototypes/messenger/server.py +0 -0
  261. {pycwb-0.30.2 → pycwb-0.31.0}/prototypes/messenger/visualizition.py +0 -0
  262. {pycwb-0.30.2 → pycwb-0.31.0}/prototypes/messenger-web-interface/.eslintrc.cjs +0 -0
  263. {pycwb-0.30.2 → pycwb-0.31.0}/prototypes/messenger-web-interface/.gitignore +0 -0
  264. {pycwb-0.30.2 → pycwb-0.31.0}/prototypes/messenger-web-interface/.prettierrc.json +0 -0
  265. {pycwb-0.30.2 → pycwb-0.31.0}/prototypes/messenger-web-interface/README.md +0 -0
  266. {pycwb-0.30.2 → pycwb-0.31.0}/prototypes/messenger-web-interface/index.html +0 -0
  267. {pycwb-0.30.2 → pycwb-0.31.0}/prototypes/messenger-web-interface/package-lock.json +0 -0
  268. {pycwb-0.30.2 → pycwb-0.31.0}/prototypes/messenger-web-interface/package.json +0 -0
  269. {pycwb-0.30.2 → pycwb-0.31.0}/prototypes/messenger-web-interface/public/favicon.ico +0 -0
  270. {pycwb-0.30.2 → pycwb-0.31.0}/prototypes/messenger-web-interface/src/App.vue +0 -0
  271. {pycwb-0.30.2 → pycwb-0.31.0}/prototypes/messenger-web-interface/src/assets/base.css +0 -0
  272. {pycwb-0.30.2 → pycwb-0.31.0}/prototypes/messenger-web-interface/src/assets/cwb_icon_modern_blue_alfa.png +0 -0
  273. {pycwb-0.30.2 → pycwb-0.31.0}/prototypes/messenger-web-interface/src/assets/main.css +0 -0
  274. {pycwb-0.30.2 → pycwb-0.31.0}/prototypes/messenger-web-interface/src/assets/style.css +0 -0
  275. {pycwb-0.30.2 → pycwb-0.31.0}/prototypes/messenger-web-interface/src/components/HelloWorld.vue +0 -0
  276. {pycwb-0.30.2 → pycwb-0.31.0}/prototypes/messenger-web-interface/src/components/TheWelcome.vue +0 -0
  277. {pycwb-0.30.2 → pycwb-0.31.0}/prototypes/messenger-web-interface/src/components/WelcomeItem.vue +0 -0
  278. {pycwb-0.30.2 → pycwb-0.31.0}/prototypes/messenger-web-interface/src/components/__tests__/HelloWorld.spec.js +0 -0
  279. {pycwb-0.30.2 → pycwb-0.31.0}/prototypes/messenger-web-interface/src/components/icons/IconCommunity.vue +0 -0
  280. {pycwb-0.30.2 → pycwb-0.31.0}/prototypes/messenger-web-interface/src/components/icons/IconDocumentation.vue +0 -0
  281. {pycwb-0.30.2 → pycwb-0.31.0}/prototypes/messenger-web-interface/src/components/icons/IconEcosystem.vue +0 -0
  282. {pycwb-0.30.2 → pycwb-0.31.0}/prototypes/messenger-web-interface/src/components/icons/IconSupport.vue +0 -0
  283. {pycwb-0.30.2 → pycwb-0.31.0}/prototypes/messenger-web-interface/src/components/icons/IconTooling.vue +0 -0
  284. {pycwb-0.30.2 → pycwb-0.31.0}/prototypes/messenger-web-interface/src/main.js +0 -0
  285. {pycwb-0.30.2 → pycwb-0.31.0}/prototypes/messenger-web-interface/src/router/index.js +0 -0
  286. {pycwb-0.30.2 → pycwb-0.31.0}/prototypes/messenger-web-interface/src/stores/counter.js +0 -0
  287. {pycwb-0.30.2 → pycwb-0.31.0}/prototypes/messenger-web-interface/src/views/drawflow.vue +0 -0
  288. {pycwb-0.30.2 → pycwb-0.31.0}/prototypes/messenger-web-interface/src/views/nodes/node1.vue +0 -0
  289. {pycwb-0.30.2 → pycwb-0.31.0}/prototypes/messenger-web-interface/src/views/nodes/node2.vue +0 -0
  290. {pycwb-0.30.2 → pycwb-0.31.0}/prototypes/messenger-web-interface/src/views/nodes/node3.vue +0 -0
  291. {pycwb-0.30.2 → pycwb-0.31.0}/prototypes/messenger-web-interface/src/views/nodes/nodeHeader.vue +0 -0
  292. {pycwb-0.30.2 → pycwb-0.31.0}/prototypes/messenger-web-interface/vite.config.js +0 -0
  293. {pycwb-0.30.2 → pycwb-0.31.0}/prototypes/performance/numba_test.py +0 -0
  294. {pycwb-0.30.2 → pycwb-0.31.0}/prototypes/performance/taichi_test.py +0 -0
  295. {pycwb-0.30.2 → pycwb-0.31.0}/prototypes/pp_workflow/simple.yaml +0 -0
  296. {pycwb-0.30.2 → pycwb-0.31.0}/prototypes/pp_workflow/simple_module.yaml +0 -0
  297. {pycwb-0.30.2 → pycwb-0.31.0}/prototypes/pp_workflow/workflow.yaml +0 -0
  298. {pycwb-0.30.2 → pycwb-0.31.0}/prototypes/search.yaml +0 -0
  299. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/__init__.py +0 -0
  300. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/cli/__init__.py +0 -0
  301. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/cli/batch_runner.py +0 -0
  302. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/cli/flow.py +0 -0
  303. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/cli/get_external_modules.py +0 -0
  304. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/cli/gwosc.py +0 -0
  305. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/cli/gwosc_data.py +0 -0
  306. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/cli/merge_catalog.py +0 -0
  307. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/cli/post_process.py +0 -0
  308. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/cli/run.py +0 -0
  309. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/cli/server.py +0 -0
  310. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/cli/xtalk.py +0 -0
  311. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/config/__init__.py +0 -0
  312. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/config/config.py +0 -0
  313. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/constants/__init__.py +0 -0
  314. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/constants/detectors.py +0 -0
  315. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/constants/physics_constants.py +0 -0
  316. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/constants/project_constants.py +0 -0
  317. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/modules/__init__.py +0 -0
  318. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/modules/autoencoder/__init__.py +0 -0
  319. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/modules/autoencoder/autoencoder.py +0 -0
  320. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/modules/autoencoder/cwb_autoencoder.py +0 -0
  321. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/modules/autoencoder/module.yaml +0 -0
  322. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/modules/catalog/__init__.py +0 -0
  323. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/modules/catalog/catalog.py +0 -0
  324. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/modules/catalog/module.yaml +0 -0
  325. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/modules/coherence/__init__.py +0 -0
  326. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/modules/coherence/coherence.py +0 -0
  327. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/modules/coherence/coherence_lite.py +0 -0
  328. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/modules/coherence/module.yaml +0 -0
  329. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/modules/condor/__init__.py +0 -0
  330. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/modules/condor/module.yaml +0 -0
  331. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/modules/cwb_conversions/__init__.py +0 -0
  332. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/modules/cwb_conversions/cluster.py +0 -0
  333. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/modules/cwb_conversions/detector.py +0 -0
  334. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/modules/cwb_conversions/module.yaml +0 -0
  335. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/modules/cwb_conversions/series.py +0 -0
  336. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/modules/cwb_conversions/sparse_series.py +0 -0
  337. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/modules/cwb_xgboost/__init__.py +0 -0
  338. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/modules/cwb_xgboost/config.py +0 -0
  339. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/modules/cwb_xgboost/cwb_xgboost.py +0 -0
  340. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/modules/cwb_xgboost/module.yaml +0 -0
  341. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/modules/cwb_xgboost/prediction.py +0 -0
  342. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/modules/cwb_xgboost/read_data.py +0 -0
  343. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/modules/cwb_xgboost/training.py +0 -0
  344. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/modules/cwb_xgboost/utils.py +0 -0
  345. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/modules/data_conditioning/data_conditioning.py +0 -0
  346. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/modules/data_conditioning/module.yaml +0 -0
  347. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/modules/data_conditioning/regression.py +0 -0
  348. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/modules/data_conditioning/whitening_mesa.py +0 -0
  349. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/modules/energy_threshold/__init__.py +0 -0
  350. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/modules/energy_threshold/threshold.py +0 -0
  351. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/modules/external_module_manager/__init__.py +0 -0
  352. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/modules/external_module_manager/config_schema.py +0 -0
  353. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/modules/external_module_manager/manager.py +0 -0
  354. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/modules/external_module_manager/test/sample_config.yaml +0 -0
  355. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/modules/external_module_manager/test/test.ipynb +0 -0
  356. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/modules/gracedb/__init__.py +0 -0
  357. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/modules/gracedb/gracedb.py +0 -0
  358. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/modules/gracedb/module.yaml +0 -0
  359. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/modules/gracedb/test_gracedb.py +0 -0
  360. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/modules/gwosc/__init__.py +0 -0
  361. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/modules/gwosc/gwosc.py +0 -0
  362. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/modules/gwosc/utils.py +0 -0
  363. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/modules/injection/__init__.py +0 -0
  364. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/modules/injection/distribution_utils.py +0 -0
  365. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/modules/injection/inj_generators.py +0 -0
  366. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/modules/injection/injection.py +0 -0
  367. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/modules/injection/module.yaml +0 -0
  368. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/modules/injection/par_generator.py +0 -0
  369. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/modules/injection/scripts/injection_module_test.ipynb +0 -0
  370. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/modules/injection/scripts/injection_parameters.py +0 -0
  371. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/modules/injection/sky_distribution.py +0 -0
  372. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/modules/injection/tests/__init__.py +0 -0
  373. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/modules/injection/tests/test_injection.py +0 -0
  374. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/modules/injection/wf_generator.py +0 -0
  375. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/modules/job_segment/__init__.py +0 -0
  376. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/modules/job_segment/dq_segment.py +0 -0
  377. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/modules/job_segment/frame.py +0 -0
  378. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/modules/job_segment/job_segment.py +0 -0
  379. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/modules/job_segment/module.yaml +0 -0
  380. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/modules/job_segment/plots.py +0 -0
  381. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/modules/job_segment/super_lag.py +0 -0
  382. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/modules/job_segment/test_job_segment.py +0 -0
  383. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/modules/likelihood/__init__.py +0 -0
  384. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/modules/likelihood/likelihood.py +0 -0
  385. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/modules/likelihood/module.yaml +0 -0
  386. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/modules/likelihoodWP/__init__.py +0 -0
  387. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/modules/likelihoodWP/dpf.py +0 -0
  388. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/modules/likelihoodWP/dpf_cython.pyx +0 -0
  389. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/modules/likelihoodWP/likelihood.py +0 -0
  390. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/modules/likelihoodWP/sky_stat.py +0 -0
  391. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/modules/likelihoodWP/typing.py +0 -0
  392. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/modules/likelihoodWP/utils.py +0 -0
  393. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/modules/logger/__init__.py +0 -0
  394. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/modules/logger/logger.py +0 -0
  395. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/modules/logger/module.yaml +0 -0
  396. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/modules/multi_resolution_wdm/__init__.py +0 -0
  397. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/modules/multi_resolution_wdm/module.yaml +0 -0
  398. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/modules/multi_resolution_wdm/wdm.py +0 -0
  399. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/modules/plot/__init__.py +0 -0
  400. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/modules/plot/cluster_statistics.py +0 -0
  401. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/modules/plot/event.py +0 -0
  402. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/modules/plot/module.yaml +0 -0
  403. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/modules/plot/spectrogram.py +0 -0
  404. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/modules/plot_data_quality/__init__.py +0 -0
  405. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/modules/plot_data_quality/module.yaml +0 -0
  406. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/modules/plot_data_quality/plot.py +0 -0
  407. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/modules/plot_map/__init__.py +0 -0
  408. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/modules/plot_map/module.yaml +0 -0
  409. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/modules/plot_map/world_map.py +0 -0
  410. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/modules/qveto/__init__.py +0 -0
  411. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/modules/qveto/qveto.py +0 -0
  412. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/modules/qveto/qveto_ext.py +0 -0
  413. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/modules/qveto/utils.py +0 -0
  414. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/modules/read_data/__init__.py +0 -0
  415. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/modules/read_data/data_check.py +0 -0
  416. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/modules/read_data/data_find.py +0 -0
  417. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/modules/read_data/mdc.py +0 -0
  418. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/modules/read_data/module.yaml +0 -0
  419. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/modules/read_data/read_data.py +0 -0
  420. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/modules/read_data/tests/__init__.py +0 -0
  421. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/modules/read_data/tests/test_mdc.py +0 -0
  422. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/modules/reconstruction/getMRAwaveform.py +0 -0
  423. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/modules/reconstruction/module.yaml +0 -0
  424. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/modules/report/__init__.py +0 -0
  425. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/modules/report/continues_poisson.py +0 -0
  426. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/modules/report/far_rho.py +0 -0
  427. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/modules/report/read_results.py +0 -0
  428. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/modules/report/report.py +0 -0
  429. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/modules/slurm/__init__.py +0 -0
  430. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/modules/slurm/module.yaml +0 -0
  431. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/modules/slurm/slurm.py +0 -0
  432. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/modules/sparse_series/__init__.py +0 -0
  433. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/modules/sparse_series/module.yaml +0 -0
  434. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/modules/sparse_series/sparse_table.py +0 -0
  435. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/modules/statistics/__init__.py +0 -0
  436. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/modules/statistics/eff.py +0 -0
  437. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/modules/statistics/eff_plot.py +0 -0
  438. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/modules/statistics/merge.py +0 -0
  439. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/modules/statistics/sigmoid_fit.py +0 -0
  440. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/modules/super_cluster/__init__.py +0 -0
  441. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/modules/super_cluster/module.yaml +0 -0
  442. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/modules/super_cluster/sub_net_cut.py +0 -0
  443. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/modules/super_cluster/super_cluster.py +0 -0
  444. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/modules/super_cluster/supercluster.py +0 -0
  445. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/modules/super_cluster/utils.py +0 -0
  446. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/modules/supercluster_naive/__init__.py +0 -0
  447. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/modules/supercluster_naive/supercluster2.py +0 -0
  448. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/modules/superlag/__init__.py +0 -0
  449. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/modules/superlag/module.yaml +0 -0
  450. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/modules/superlag/superlag.py +0 -0
  451. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/modules/web_viewer/__init__.py +0 -0
  452. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/modules/web_viewer/create.py +0 -0
  453. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/modules/web_viewer/module.yaml +0 -0
  454. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/modules/workflow_utils/__init__.py +0 -0
  455. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/modules/workflow_utils/job_setup.py +0 -0
  456. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/modules/xtalk/__init__.py +0 -0
  457. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/modules/xtalk/monster.py +0 -0
  458. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/modules/xtalk/monster_old.py +0 -0
  459. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/modules/xtalk/type.py +0 -0
  460. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/modules/xtalk/xtalk_data.py +0 -0
  461. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/post_production/__init__.py +0 -0
  462. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/post_production/workflow.py +0 -0
  463. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/prefect_flow/__init__.py +0 -0
  464. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/prefect_flow/pycwb_flow.py +0 -0
  465. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/prefect_flow/tasks/__init__.py +0 -0
  466. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/prefect_flow/tasks/builtin.py +0 -0
  467. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/types/__init__.py +0 -0
  468. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/types/data_quality_file.py +0 -0
  469. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/types/detector.py +0 -0
  470. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/types/job.py +0 -0
  471. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/types/network.py +0 -0
  472. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/types/network_cluster.py +0 -0
  473. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/types/network_event.py +0 -0
  474. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/types/network_pixel.py +0 -0
  475. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/types/sparse_series.py +0 -0
  476. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/types/time_frequency_series.py +0 -0
  477. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/types/time_series.py +0 -0
  478. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/types/wdm.py +0 -0
  479. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/types/wdm_xtalk.py +0 -0
  480. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/utils/__init__.py +0 -0
  481. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/utils/async_write.py +0 -0
  482. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/utils/check_ROOT.py +0 -0
  483. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/utils/conversions/__init__.py +0 -0
  484. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/utils/conversions/timeseries.py +0 -0
  485. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/utils/dataclass_object_io.py +0 -0
  486. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/utils/dep_check.py +0 -0
  487. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/utils/generate_params_table.py +0 -0
  488. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/utils/image.py +0 -0
  489. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/utils/module.py +0 -0
  490. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/utils/network.py +0 -0
  491. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/utils/parser.py +0 -0
  492. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/utils/skymap_coord.py +0 -0
  493. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/utils/yaml_helper.py +0 -0
  494. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/vendor/__init__.py +0 -0
  495. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/vendor/autoencoder/__init__.py +0 -0
  496. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/vendor/autoencoder/cwb_autoencoder.h5 +0 -0
  497. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/vendor/example.yaml +0 -0
  498. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/vendor/lib/__init__.py +0 -0
  499. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/vendor/template/gwosc/user_parameters.yaml +0 -0
  500. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/vendor/web_viewer/event_dump.html +0 -0
  501. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/vendor/web_viewer/styles.css +0 -0
  502. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/vendor/web_viewer/viewer.html +0 -0
  503. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/workflow/__init__.py +0 -0
  504. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/workflow/merge.py +0 -0
  505. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/workflow/run.py +0 -0
  506. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/workflow/subflow/fake_processor.py +0 -0
  507. {pycwb-0.30.2 → pycwb-0.31.0}/pycwb/workflow/subflow/prepare_job_runs.py +0 -0
  508. {pycwb-0.30.2 → pycwb-0.31.0}/pyproject.toml +0 -0
  509. {pycwb-0.30.2 → pycwb-0.31.0}/setup.cfg +0 -0
@@ -0,0 +1,57 @@
1
+ image: buildpack-deps:jammy
2
+
3
+ stages: # List of stages for jobs, and their order of execution
4
+ - build
5
+ - test
6
+ - deploy
7
+
8
+
9
+ include:
10
+ - component: git.ligo.org/computing/gitlab/components/docker/build@2.3.1
11
+ inputs:
12
+ dockerfile: envs/Dockerfile.ci
13
+ job_name: build
14
+ image_tag: ${CI_COMMIT_TAG:-$CI_COMMIT_REF_SLUG}
15
+
16
+ - component: git.ligo.org/computing/gitlab/components/docker/build@2.3.1
17
+ inputs:
18
+ dockerfile: envs/Dockerfile.ci
19
+ job_name: build-latest
20
+ image_tag: latest
21
+
22
+ - component: git.ligo.org/computing/gitlab/components/docker/test@2.3.1
23
+ inputs:
24
+ test_script:
25
+ - cd /opt && pycwb --version # change dir to prevent use the source code
26
+
27
+ build-latest:
28
+ rules:
29
+ - if: $CI_COMMIT_TAG
30
+
31
+ container_scanning:
32
+ needs:
33
+ - job: build-latest
34
+ optional: true
35
+
36
+ build-sdist:
37
+ image: python:3.11
38
+ stage: build
39
+ script:
40
+ - python3 -m pip install build
41
+ - python3 -m build --sdist
42
+ only:
43
+ - tags
44
+ artifacts:
45
+ paths:
46
+ - dist/*
47
+
48
+ publish:
49
+ image: python:3.10
50
+ stage: deploy # It only runs when *both* jobs in the test stage complete successfully.
51
+ environment: production
52
+ only:
53
+ - tags
54
+ script:
55
+ - echo "Deploying to PyPI..."
56
+ - pip install twine
57
+ - TWINE_PASSWORD=${PYPI_TOKEN} TWINE_USERNAME=__token__ python -m twine upload dist/*.tar.gz
@@ -0,0 +1,29 @@
1
+ # CI-ready image for PycWB (mirrors .gitlab-ci.yml install steps)
2
+ FROM buildpack-deps:jammy
3
+
4
+ ARG ROOT_VERSION=6.26.14
5
+ ARG ROOT_ARCH=Linux-ubuntu22-x86_64-gcc11.4
6
+ ENV ROOTSYS=/usr/local
7
+ ENV PYTHONPATH=${ROOTSYS}/lib:${PYTHONPATH}
8
+ ENV CLING_STANDARD_PCH=none
9
+
10
+ # System deps and ROOT + healpix
11
+ RUN set -eux; \
12
+ wget -q https://root.cern/download/root_v${ROOT_VERSION}.${ROOT_ARCH}.tar.gz; \
13
+ tar -xf root_v${ROOT_VERSION}.${ROOT_ARCH}.tar.gz --strip-components=1 -C /usr/local/; \
14
+ apt-get update; \
15
+ apt-get -y install git dpkg-dev cmake pkg-config g++ gcc binutils libx11-dev libxpm-dev libxft-dev libxext-dev tar gfortran subversion; \
16
+ apt-get -y install libfftw3-dev libcfitsio9 libsharp0 python3-pip; \
17
+ wget -q http://archive.ubuntu.com/ubuntu/pool/main/o/openssl/libssl1.1_1.1.1f-1ubuntu2_amd64.deb; \
18
+ dpkg -i libssl1.1_1.1.1f-1ubuntu2_amd64.deb; \
19
+ wget -q https://launchpad.net/ubuntu/+archive/primary/+files/libhealpix-cxx3_3.80.0-5_amd64.deb; \
20
+ wget -q https://launchpad.net/ubuntu/+archive/primary/+files/libhealpix-cxx-dev_3.80.0-5_amd64.deb; \
21
+ dpkg -i libhealpix-cxx3_3.80.0-5_amd64.deb; \
22
+ dpkg -i libhealpix-cxx-dev_3.80.0-5_amd64.deb; \
23
+ apt-get -y install python3-venv; \
24
+ ln -sf /usr/bin/python3 /usr/bin/python; \
25
+ python3 -m pip install --upgrade pip setuptools; \
26
+ rm -rf /var/lib/apt/lists/*
27
+
28
+ WORKDIR /workspace
29
+ CMD ["python3", "--version"]
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: PycWB
3
- Version: 0.30.2
3
+ Version: 0.31.0
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>
@@ -17,6 +17,7 @@ Requires-Dist: numpy
17
17
  Requires-Dist: numba
18
18
  Requires-Dist: gwpy
19
19
  Requires-Dist: ligo-segments
20
+ Requires-Dist: ligo-gracedb
20
21
  Requires-Dist: aiohttp
21
22
  Requires-Dist: pycbc
22
23
  Requires-Dist: filelock
@@ -33,10 +34,14 @@ Requires-Dist: dask_jobqueue
33
34
  Requires-Dist: htcondor
34
35
  Requires-Dist: psutil
35
36
  Requires-Dist: memspectrum
37
+ Requires-Dist: exceptiongroup>=1.0.0; python_version < "3.11"
36
38
  Requires-Dist: python-ligo-lw<2.0.0
37
39
  Requires-Dist: scikit-learn
38
40
  Requires-Dist: jinja2
39
41
  Requires-Dist: plotly
42
+ Requires-Dist: healpy
43
+ Requires-Dist: wdm-wavelet
44
+ Requires-Dist: burst-waveform
40
45
  Dynamic: description
41
46
  Dynamic: description-content-type
42
47
  Dynamic: home-page
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: PycWB
3
- Version: 0.30.2
3
+ Version: 0.31.0
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>
@@ -17,6 +17,7 @@ Requires-Dist: numpy
17
17
  Requires-Dist: numba
18
18
  Requires-Dist: gwpy
19
19
  Requires-Dist: ligo-segments
20
+ Requires-Dist: ligo-gracedb
20
21
  Requires-Dist: aiohttp
21
22
  Requires-Dist: pycbc
22
23
  Requires-Dist: filelock
@@ -33,10 +34,14 @@ Requires-Dist: dask_jobqueue
33
34
  Requires-Dist: htcondor
34
35
  Requires-Dist: psutil
35
36
  Requires-Dist: memspectrum
37
+ Requires-Dist: exceptiongroup>=1.0.0; python_version < "3.11"
36
38
  Requires-Dist: python-ligo-lw<2.0.0
37
39
  Requires-Dist: scikit-learn
38
40
  Requires-Dist: jinja2
39
41
  Requires-Dist: plotly
42
+ Requires-Dist: healpy
43
+ Requires-Dist: wdm-wavelet
44
+ Requires-Dist: burst-waveform
40
45
  Dynamic: description
41
46
  Dynamic: description-content-type
42
47
  Dynamic: home-page
@@ -1,6 +1,7 @@
1
1
  .gitignore
2
2
  .gitlab-ci.yml
3
3
  .readthedocs.yaml
4
+ Dockerfile
4
5
  LICENSE
5
6
  MANIFEST.in
6
7
  Makefile
@@ -157,7 +158,10 @@ docs/source/workflow.png
157
158
  docs/source/_static/.keep
158
159
  docs/source/_templates/.keep
159
160
  envs/Dockerfile
161
+ envs/Dockerfile.ci
162
+ envs/Dockerfile.ci-conda
160
163
  envs/environment.yml
164
+ envs/pycwb.def
161
165
  envs/mamba/Dockerfile
162
166
  examples/GW190521_search/README.md
163
167
  examples/GW190521_search/user_parameters.yaml
@@ -405,6 +409,7 @@ pycwb/modules/read_data/read_data.py
405
409
  pycwb/modules/read_data/tests/__init__.py
406
410
  pycwb/modules/read_data/tests/test_mdc.py
407
411
  pycwb/modules/reconstruction/__init__.py
412
+ pycwb/modules/reconstruction/getINJwaveform.py
408
413
  pycwb/modules/reconstruction/getMRAwaveform.py
409
414
  pycwb/modules/reconstruction/module.yaml
410
415
  pycwb/modules/report/__init__.py
@@ -7,6 +7,7 @@ numpy
7
7
  numba
8
8
  gwpy
9
9
  ligo-segments
10
+ ligo-gracedb
10
11
  aiohttp
11
12
  pycbc
12
13
  filelock
@@ -27,3 +28,9 @@ python-ligo-lw<2.0.0
27
28
  scikit-learn
28
29
  jinja2
29
30
  plotly
31
+ healpy
32
+ wdm-wavelet
33
+ burst-waveform
34
+
35
+ [:python_version < "3.11"]
36
+ exceptiongroup>=1.0.0
@@ -15,11 +15,15 @@ import pycwb.cli.post_process as post_process
15
15
  import pycwb.cli.gwosc as gwosc
16
16
  import pycwb.cli.gwosc_data as gwosc_data
17
17
  import pycwb.cli.get_external_modules as get_external_modules
18
+ from pycwb import __version__
18
19
 
19
20
  def main():
20
21
  parser = argparse.ArgumentParser(prog='pycwb')
21
22
  subparsers = parser.add_subparsers(help='commands')
22
23
 
24
+ # Show version
25
+ parser.add_argument('-v', '--version', action='version', version=f'pycwb {__version__}')
26
+
23
27
  # Create subcommand
24
28
  create_parser = subparsers.add_parser('server', help='Run a simple server to show the results')
25
29
  server.init_parser(create_parser)
@@ -50,9 +50,13 @@ if(NOT DEFINED XIFO)
50
50
  set(XIFO 4)
51
51
  endif()
52
52
 
53
- # Fix the macso cross-compilation issue, see git.ligo.org issue#4
54
- set(CWB_OPTS "XIFO=${XIFO}" "_USE_CPP" "_Float16=short")
55
-
53
+ # Fix the macOS cross-compilation issue, see git.ligo.org issue#4
54
+ # Only apply the `_Float16=short` workaround on Apple Silicon (arm64)
55
+ # FIXME: could not find a robust way to detect Apple Silicon when rosseta is used
56
+ set(CWB_OPTS "XIFO=${XIFO}" "_USE_CPP")
57
+ if(APPLE)
58
+ list(APPEND CWB_OPTS "_Float16=short")
59
+ endif()
56
60
 
57
61
  #Find ROOT
58
62
  list(APPEND CMAKE_PREFIX_PATH $ENV{ROOTSYS})
@@ -68,6 +68,10 @@ inline bool USE_ICC() {return false;}
68
68
 
69
69
  } // end namespace
70
70
 
71
+ #ifndef XIFO
72
+ #define XIFO 4
73
+ #endif
74
+
71
75
  #define _ALIGNED __attribute__((aligned(32)))
72
76
 
73
77
  #if XIFO < 5
@@ -0,0 +1,61 @@
1
+ FROM buildpack-deps:jammy
2
+
3
+ # ---- Install ROOT ----
4
+ WORKDIR /tmp
5
+ RUN wget -q https://root.cern/download/root_v6.32.20.Linux-ubuntu22.04-x86_64-gcc11.4.tar.gz \
6
+ && tar -xf root_v6.32.20.Linux-ubuntu22.04-x86_64-gcc11.4.tar.gz \
7
+ --strip-components=1 -C /usr/local/
8
+
9
+ # ---- Environment ----
10
+ ENV ROOTSYS=/usr/local
11
+ ENV PYTHONPATH=${ROOTSYS}/lib:${PYTHONPATH}
12
+ ENV CLING_STANDARD_PCH=none
13
+
14
+ # ---- System dependencies ----
15
+ RUN apt-get update && apt-get -y install \
16
+ git dpkg-dev cmake pkg-config g++ gcc binutils \
17
+ libx11-dev libxpm-dev libxft-dev libxext-dev \
18
+ tar gfortran subversion \
19
+ libfftw3-dev libcfitsio9 libsharp0 \
20
+ python3-pip python3-venv nlohmann-json3-dev libtbb12 \
21
+ && rm -rf /var/lib/apt/lists/*
22
+
23
+ # ---- OpenSSL 1.1 ----
24
+ RUN wget -q http://archive.ubuntu.com/ubuntu/pool/main/o/openssl/libssl1.1_1.1.1f-1ubuntu2_amd64.deb \
25
+ && dpkg -i libssl1.1_1.1.1f-1ubuntu2_amd64.deb
26
+
27
+ # ---- HEALPix ----
28
+ RUN wget -q https://launchpad.net/ubuntu/+archive/primary/+files/libhealpix-cxx3_3.80.0-5_amd64.deb \
29
+ && wget -q https://launchpad.net/ubuntu/+archive/primary/+files/libhealpix-cxx-dev_3.80.0-5_amd64.deb \
30
+ && dpkg -i libhealpix-cxx3_3.80.0-5_amd64.deb \
31
+ && dpkg -i libhealpix-cxx-dev_3.80.0-5_amd64.deb
32
+
33
+ # Copy source to a temporary build directory
34
+ WORKDIR /tmp/build
35
+ COPY . /tmp/build
36
+
37
+ # Build wheel and install into site-packages
38
+ RUN python3 -m pip install --upgrade pip setuptools setuptools_scm build \
39
+ && python3 -m build
40
+
41
+ # Change to another dir to prevent not installing pycwb itself
42
+ WORKDIR /opt/pycwb
43
+
44
+ RUN python3 -m pip install /tmp/build/dist/*.whl -v
45
+
46
+ # ----------------------------
47
+ # Remove tmp files
48
+ # ----------------------------
49
+ RUN rm -rf /tmp/build
50
+
51
+ # ----------------------------
52
+ # Sanity checks
53
+ # ----------------------------
54
+ RUN python3 -m pip show pycwb
55
+
56
+ RUN python3 - <<EOF
57
+ import pycwb
58
+ print("pycwb version:", pycwb.__version__)
59
+ EOF
60
+
61
+ RUN which pycwb && pycwb --version || true
@@ -0,0 +1,74 @@
1
+ FROM buildpack-deps:jammy
2
+
3
+ ENV DEBIAN_FRONTEND=noninteractive
4
+ WORKDIR /opt
5
+
6
+ # ---- System dependencies (minimal) ----
7
+ RUN apt-get update && apt-get install -y \
8
+ git \
9
+ build-essential \
10
+ wget \
11
+ ca-certificates \
12
+ && rm -rf /var/lib/apt/lists/*
13
+
14
+ # ---- Install Miniforge ----
15
+ ENV CONDA_DIR=/opt/conda
16
+ RUN wget -q https://github.com/conda-forge/miniforge/releases/latest/download/Miniforge3-Linux-x86_64.sh \
17
+ && bash Miniforge3-Linux-x86_64.sh -b -p ${CONDA_DIR} \
18
+ && rm Miniforge3-Linux-x86_64.sh
19
+
20
+ ENV PATH=${CONDA_DIR}/bin:${PATH}
21
+
22
+ # ---- Configure conda ----
23
+ RUN conda config --set channel_priority strict \
24
+ && conda update -y conda
25
+
26
+ # ---- Create pycwb environment ----
27
+ RUN conda create -y -n pycwb "python>=3.9,<3.11"
28
+
29
+ # ---- Install dependencies from conda-forge ----
30
+ RUN conda install -y -n pycwb -c conda-forge \
31
+ root=6.26.10 \
32
+ healpix_cxx=3.81 \
33
+ nds2-client \
34
+ python-nds2-client \
35
+ lalsuite \
36
+ setuptools_scm \
37
+ cmake \
38
+ pkg-config \
39
+ && conda clean -afy
40
+
41
+ # ---- Make pycwb env the default ----
42
+ SHELL ["bash", "-c"]
43
+ ENV CONDA_DEFAULT_ENV=pycwb
44
+ ENV PATH=${CONDA_DIR}/envs/pycwb/bin:${PATH}
45
+
46
+ # Copy source to a temporary build directory
47
+ WORKDIR /tmp/build
48
+ COPY . /tmp/build
49
+
50
+ # Build wheel and install into site-packages
51
+ RUN python3 -m pip install --upgrade pip setuptools setuptools_scm build \
52
+ && python3 -m build
53
+
54
+ # Change to another dir to prevent not installing pycwb itself
55
+ WORKDIR /opt/pycwb
56
+
57
+ RUN python3 -m pip install /tmp/build/dist/*.whl -v
58
+
59
+ # ----------------------------
60
+ # Remove tmp files
61
+ # ----------------------------
62
+ RUN rm -rf /tmp/build
63
+
64
+ # ----------------------------
65
+ # Sanity checks
66
+ # ----------------------------
67
+ RUN python3 -m pip show pycwb
68
+
69
+ RUN python3 - <<EOF
70
+ import pycwb
71
+ print("pycwb version:", pycwb.__version__)
72
+ EOF
73
+
74
+ RUN which pycwb && pycwb --version || true
@@ -0,0 +1,67 @@
1
+ Bootstrap: docker
2
+ From: buildpack-deps:jammy
3
+
4
+ %labels
5
+ Author your-name
6
+ Description CI-ready image for PycWB (converted from Dockerfile)
7
+
8
+ %environment
9
+ export ROOTSYS=/usr/local
10
+ export PYTHONPATH=${ROOTSYS}/lib:${PYTHONPATH}
11
+ export CLING_STANDARD_PCH=none
12
+ export WORKSPACE=/workspace
13
+
14
+ %post
15
+ set -eux
16
+
17
+ # ---- build args (hard-coded in Singularity) ----
18
+ ROOT_VERSION=6.26.14
19
+ ROOT_ARCH=Linux-ubuntu22-x86_64-gcc11.4
20
+
21
+ echo "Installing ROOT"
22
+ cd /tmp
23
+ wget -q https://root.cern/download/root_v${ROOT_VERSION}.${ROOT_ARCH}.tar.gz
24
+ tar -xf root_v${ROOT_VERSION}.${ROOT_ARCH}.tar.gz --strip-components=1 -C /usr/local/
25
+
26
+ echo "Installing system dependencies"
27
+ apt-get update
28
+ apt-get -y install \
29
+ git dpkg-dev cmake pkg-config g++ gcc binutils \
30
+ libx11-dev libxpm-dev libxft-dev libxext-dev \
31
+ tar gfortran subversion \
32
+ libfftw3-dev libcfitsio9 libsharp0 \
33
+ python3-pip python3-venv
34
+
35
+ echo "Installing legacy OpenSSL 1.1"
36
+ wget -q http://archive.ubuntu.com/ubuntu/pool/main/o/openssl/libssl1.1_1.1.1f-1ubuntu2_amd64.deb
37
+ dpkg -i libssl1.1_1.1.1f-1ubuntu2_amd64.deb
38
+
39
+ echo "Installing HEALPix"
40
+ wget -q https://launchpad.net/ubuntu/+archive/primary/+files/libhealpix-cxx3_3.80.0-5_amd64.deb
41
+ wget -q https://launchpad.net/ubuntu/+archive/primary/+files/libhealpix-cxx-dev_3.80.0-5_amd64.deb
42
+ dpkg -i libhealpix-cxx3_3.80.0-5_amd64.deb
43
+ dpkg -i libhealpix-cxx-dev_3.80.0-5_amd64.deb
44
+
45
+ echo "Python setup"
46
+ ln -sf /usr/bin/python3 /usr/bin/python
47
+ python3 -m pip install --upgrade pip setuptools
48
+ python3 -m pip install build
49
+
50
+ echo "==== Install pycwb ===="
51
+ cd /opt
52
+ git clone https://git.ligo.org/yumeng.xu/pycwb.git
53
+ cd pycwb
54
+ python3 -m build --sdist
55
+ pip install dist/*.tar.gz
56
+
57
+ echo "Create workspace"
58
+ mkdir -p /workspace
59
+
60
+ echo "Cleanup"
61
+ rm -rf /var/lib/apt/lists/*
62
+ rm -rf /tmp/root_v6.26.04.Linux-ubuntu22-x86_64-gcc11.2.tar.gz
63
+ rm -rf /tmp/libssl1.1_1.1.1f-1ubuntu2_amd64.deb
64
+ rm -rf /tmp/libhealpix-cxx*.deb
65
+
66
+ %runscript
67
+ exec python3 --version
@@ -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.2'
32
- __version_tuple__ = version_tuple = (0, 30, 2)
31
+ __version__ = version = '0.31.0'
32
+ __version_tuple__ = version_tuple = (0, 31, 0)
33
33
 
34
- __commit_id__ = commit_id = 'g27e3ff7bf'
34
+ __commit_id__ = commit_id = 'g5f80524f4'
@@ -26,7 +26,6 @@ def init_parser(parser):
26
26
  metavar='job_submission_system',
27
27
  type=str,
28
28
  choices=['condor', 'slurm'],
29
- default='condor',
30
29
  help='the submit option, the available options are condor and slurm')
31
30
 
32
31
  parser.add_argument('--submit',
@@ -55,7 +54,6 @@ def init_parser(parser):
55
54
  '-e',
56
55
  metavar='conda_env',
57
56
  type=str,
58
- default=os.environ.get('CONDA_DEFAULT_ENV'),
59
57
  help='the conda environment')
60
58
 
61
59
  # additional init
@@ -88,13 +86,25 @@ def init_parser(parser):
88
86
  type=int,
89
87
  default=1,
90
88
  help='the number of jobs per worker')
89
+
90
+ # container_image
91
+ parser.add_argument('--container-image',
92
+ '--image',
93
+ metavar='container_image',
94
+ type=str,
95
+ help='the URI to the container image')
96
+
97
+ # should_transfer_files
98
+ parser.add_argument('--should-transfer-files',
99
+ action='store_true',
100
+ default=False,
101
+ help='whether transfer files to computing node, set this if the shared file system does not exist')
91
102
 
92
103
  # memory
93
104
  parser.add_argument('--memory',
94
105
  '-m',
95
106
  metavar='memory',
96
107
  type=str,
97
- default='6GB',
98
108
  help='the memory for each job')
99
109
 
100
110
  # disk
@@ -102,7 +112,6 @@ def init_parser(parser):
102
112
  '-k',
103
113
  metavar='disk',
104
114
  type=str,
105
- default='4GB',
106
115
  help='the disk space for each job')
107
116
 
108
117
  # compress json
@@ -158,6 +167,8 @@ def command(args):
158
167
  disk=args.disk,
159
168
  accounting_group=args.accounting_group,
160
169
  job_per_worker=args.job_per_worker,
170
+ should_transfer_files=args.should_transfer_files,
171
+ container_image=args.container_image,
161
172
  submit=args.submit,
162
173
  overwrite=args.force_overwrite,
163
174
  config_vars=args.config_vars)
@@ -110,6 +110,69 @@ schema = {
110
110
  "default": 4,
111
111
  "cwb": False
112
112
  },
113
+ "cluster": {
114
+ "type": "string",
115
+ "description": "cluster type for batch processing (condor or slurm)",
116
+ "default": "",
117
+ "cwb": False,
118
+ "category": "job_submission"
119
+ },
120
+ "conda_env": {
121
+ "type": "string",
122
+ "description": "conda environment name for batch jobs",
123
+ "default": "",
124
+ "cwb": False,
125
+ "category": "job_submission"
126
+ },
127
+ "additional_init": {
128
+ "type": "string",
129
+ "description": "additional initialization commands for batch jobs",
130
+ "default": "",
131
+ "cwb": False,
132
+ "category": "job_submission"
133
+ },
134
+ "accounting_group": {
135
+ "type": "string",
136
+ "description": "accounting group for HTCondor batch jobs",
137
+ "default": "",
138
+ "cwb": False,
139
+ "category": "job_submission"
140
+ },
141
+ "job_per_worker": {
142
+ "type": "integer",
143
+ "description": "number of jobs per worker in batch processing",
144
+ "default": 1,
145
+ "cwb": False,
146
+ "category": "job_submission"
147
+ },
148
+ "job_memory": {
149
+ "type": "string",
150
+ "description": "memory allocation for batch jobs (e.g., '6GB')",
151
+ "default": "6GB",
152
+ "cwb": False,
153
+ "category": "job_submission"
154
+ },
155
+ "job_disk": {
156
+ "type": "string",
157
+ "description": "disk allocation for batch jobs (e.g., '8GB')",
158
+ "default": "8GB",
159
+ "cwb": False,
160
+ "category": "job_submission"
161
+ },
162
+ "container_image": {
163
+ "type": "string",
164
+ "description": "container image for HTCondor batch jobs",
165
+ "default": "",
166
+ "cwb": False,
167
+ "category": "job_submission"
168
+ },
169
+ "should_transfer_files": {
170
+ "type": "boolean",
171
+ "description": "whether to transfer files in HTCondor batch jobs",
172
+ "default": False,
173
+ "cwb": False,
174
+ "category": "job_submission"
175
+ },
113
176
  "skip_no_injection": {
114
177
  "type": "boolean",
115
178
  "description": "skip jobs without injection",