lalsuite 7.22.1.dev20240408__cp312-cp312-manylinux_2_28_aarch64.whl → 7.26.2.dev20251202__cp312-cp312-manylinux_2_28_aarch64.whl

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 (852) hide show
  1. lal/__init__.py +5 -5
  2. lal/_lal.cpython-312-aarch64-linux-gnu.so +0 -0
  3. lal/{lal.py → _lal_swig.py} +1 -1
  4. lal/git_version.py +5 -5
  5. lal/gpstime.py +1 -1
  6. lal/pipeline.py +3139 -0
  7. lal/rate.py +14 -16
  8. lal/series.py +28 -32
  9. lal/utils/cache.py +27 -7
  10. lal/utils/series.py +1 -1
  11. lalapps/__init__.py +1 -1
  12. lalapps/bin/lal_cache +0 -0
  13. lalapps/bin/lal_fftw_wisdom +0 -0
  14. lalapps/bin/lal_fftwf_wisdom +0 -0
  15. lalapps/bin/lal_simd_detect +0 -0
  16. lalapps/bin/lal_tconvert +0 -0
  17. lalapps/bin/lal_version +0 -0
  18. lalapps/bin/lalapps_ComputeAntennaPattern +1 -1
  19. lalapps/bin/lalapps_ComputeFstatBenchmark +1 -1
  20. lalapps/bin/lalapps_ComputeFstatLatticeCount +1 -1
  21. lalapps/bin/lalapps_ComputeFstatMCUpperLimit +1 -1
  22. lalapps/bin/lalapps_ComputeFstatistic_v2 +1 -1
  23. lalapps/bin/lalapps_ComputePSD +1 -1
  24. lalapps/bin/lalapps_CopySFTs +1 -1
  25. lalapps/bin/lalapps_DistanceVsMass +0 -0
  26. lalapps/bin/lalapps_DriveHoughMulti +1 -1
  27. lalapps/bin/lalapps_FstatMetric_v2 +1 -1
  28. lalapps/bin/lalapps_HierarchSearchGCT +1 -1
  29. lalapps/bin/lalapps_HierarchicalSearch +1 -1
  30. lalapps/bin/lalapps_MakeSFTDAG +1 -1
  31. lalapps/bin/lalapps_MakeSFTs +1 -1
  32. lalapps/bin/lalapps_Makefakedata_v4 +1 -1
  33. lalapps/bin/lalapps_Makefakedata_v5 +1 -1
  34. lalapps/bin/lalapps_PredictFstat +1 -1
  35. lalapps/bin/lalapps_PrintDetectorState +1 -1
  36. lalapps/bin/lalapps_SFTclean +1 -1
  37. lalapps/bin/lalapps_SFTvalidate +1 -1
  38. lalapps/bin/lalapps_StringAddFrame +0 -0
  39. lalapps/bin/lalapps_StringSearch +0 -0
  40. lalapps/bin/lalapps_Weave +1 -1
  41. lalapps/bin/lalapps_WeaveCompare +1 -1
  42. lalapps/bin/lalapps_WeaveConcat +1 -1
  43. lalapps/bin/lalapps_WeaveSetup +1 -1
  44. lalapps/bin/lalapps_WriteSFTsfromSFDBs +1 -1
  45. lalapps/bin/lalapps_animate +0 -0
  46. lalapps/bin/lalapps_binj +0 -0
  47. lalapps/bin/lalapps_blindinj +0 -0
  48. lalapps/bin/lalapps_cache +1 -1
  49. lalapps/bin/lalapps_calfacs +0 -0
  50. lalapps/bin/lalapps_cbc_stochasticbank +0 -0
  51. lalapps/bin/lalapps_chirplen +0 -0
  52. lalapps/bin/lalapps_coh_PTF_inspiral +0 -0
  53. lalapps/bin/lalapps_coinj +0 -0
  54. lalapps/bin/lalapps_combine_crosscorr_toplists +1 -1
  55. lalapps/bin/lalapps_compareFstats +1 -1
  56. lalapps/bin/lalapps_compareSFTs +1 -1
  57. lalapps/bin/lalapps_create_time_correction_ephemeris +1 -1
  58. lalapps/bin/lalapps_dumpSFT +1 -1
  59. lalapps/bin/lalapps_effdist +0 -0
  60. lalapps/bin/lalapps_exc_resp +0 -0
  61. lalapps/bin/lalapps_fftw_wisdom +1 -1
  62. lalapps/bin/lalapps_fftwf_wisdom +1 -1
  63. lalapps/bin/lalapps_fits_header_getval +1 -1
  64. lalapps/bin/lalapps_fits_header_list +1 -1
  65. lalapps/bin/lalapps_fits_overview +1 -1
  66. lalapps/bin/lalapps_fits_table_list +1 -1
  67. lalapps/bin/lalapps_fr_ninja +0 -0
  68. lalapps/bin/lalapps_frextr +0 -0
  69. lalapps/bin/lalapps_frinfo +0 -0
  70. lalapps/bin/lalapps_frjoin +0 -0
  71. lalapps/bin/lalapps_frread +0 -0
  72. lalapps/bin/lalapps_frview +0 -0
  73. lalapps/bin/lalapps_gwf2xml +0 -0
  74. lalapps/bin/lalapps_heterodyne_pulsar +1 -1
  75. lalapps/bin/lalapps_inspawgfile +0 -0
  76. lalapps/bin/lalapps_inspfrinj +0 -0
  77. lalapps/bin/lalapps_inspinj +0 -0
  78. lalapps/bin/lalapps_inspiralDistance +0 -0
  79. lalapps/bin/lalapps_knope +1 -1
  80. lalapps/bin/lalapps_knope_automation_script +1 -1
  81. lalapps/bin/lalapps_knope_collate_results +1 -1
  82. lalapps/bin/lalapps_knope_result_page +1 -1
  83. lalapps/bin/lalapps_ninja +0 -0
  84. lalapps/bin/lalapps_path2cache +1 -1
  85. lalapps/bin/lalapps_power +0 -0
  86. lalapps/bin/lalapps_pulsar_crosscorr_v2 +1 -1
  87. lalapps/bin/lalapps_pulsar_frequency_evolution +1 -1
  88. lalapps/bin/lalapps_pulsar_parameter_estimation_nested +1 -1
  89. lalapps/bin/lalapps_random_bank +0 -0
  90. lalapps/bin/lalapps_randombank +0 -0
  91. lalapps/bin/lalapps_run_pulsar_crosscorr_v2 +1 -1
  92. lalapps/bin/lalapps_searchsum2cache +1 -1
  93. lalapps/bin/lalapps_spec_avg +1 -1
  94. lalapps/bin/lalapps_spec_avg_long +1 -1
  95. lalapps/bin/lalapps_spec_coherence +1 -1
  96. lalapps/bin/lalapps_spininj +0 -0
  97. lalapps/bin/lalapps_splitSFTs +1 -1
  98. lalapps/bin/lalapps_splitbank +0 -0
  99. lalapps/bin/lalapps_ssbtodetector +1 -1
  100. lalapps/bin/lalapps_synthesizeBstatMC +1 -1
  101. lalapps/bin/lalapps_synthesizeLVStats +1 -1
  102. lalapps/bin/lalapps_synthesizeTransientStats +1 -1
  103. lalapps/bin/lalapps_tconvert +1 -1
  104. lalapps/bin/lalapps_tmpltbank +0 -0
  105. lalapps/bin/lalapps_version +0 -0
  106. lalapps/bin/lalapps_xtefitstoframe +0 -0
  107. lalapps/bin/lalburst_version +0 -0
  108. lalapps/bin/lalfr-cat +0 -0
  109. lalapps/bin/lalfr-cksum +0 -0
  110. lalapps/bin/lalfr-cut +0 -0
  111. lalapps/bin/lalfr-dump +0 -0
  112. lalapps/bin/lalfr-fmt +0 -0
  113. lalapps/bin/lalfr-paste +0 -0
  114. lalapps/bin/lalfr-print +0 -0
  115. lalapps/bin/lalfr-split +0 -0
  116. lalapps/bin/lalfr-stat +0 -0
  117. lalapps/bin/lalfr-stream +0 -0
  118. lalapps/bin/lalfr-vis +0 -0
  119. lalapps/bin/lalframe_version +0 -0
  120. lalapps/bin/lalinference_bench +0 -0
  121. lalapps/bin/lalinference_burst +0 -0
  122. lalapps/bin/lalinference_datadump +0 -0
  123. lalapps/bin/lalinference_injectedlike +0 -0
  124. lalapps/bin/lalinference_mpi_wrapper +17 -15
  125. lalapps/bin/lalinference_nest +0 -0
  126. lalapps/bin/lalinference_version +0 -0
  127. lalapps/bin/lalinspiral_version +0 -0
  128. lalapps/bin/lalmetaio_version +0 -0
  129. lalapps/bin/lalpulsar_ComputeAntennaPattern +0 -0
  130. lalapps/bin/lalpulsar_ComputeFstatBenchmark +0 -0
  131. lalapps/bin/lalpulsar_ComputeFstatLatticeCount +0 -0
  132. lalapps/bin/lalpulsar_ComputeFstatMCUpperLimit +0 -0
  133. lalapps/bin/lalpulsar_ComputeFstatistic_v2 +0 -0
  134. lalapps/bin/lalpulsar_ComputePSD +0 -0
  135. lalapps/bin/lalpulsar_DriveHoughMulti +0 -0
  136. lalapps/bin/lalpulsar_FstatMetric_v2 +0 -0
  137. lalapps/bin/lalpulsar_HierarchSearchGCT +0 -0
  138. lalapps/bin/lalpulsar_HierarchicalSearch +0 -0
  139. lalapps/bin/lalpulsar_MakeSFTs +0 -0
  140. lalapps/bin/lalpulsar_Makefakedata_v4 +0 -0
  141. lalapps/bin/lalpulsar_Makefakedata_v5 +0 -0
  142. lalapps/bin/lalpulsar_PredictFstat +0 -0
  143. lalapps/bin/lalpulsar_PrintDetectorState +0 -0
  144. lalapps/bin/lalpulsar_SFTclean +0 -0
  145. lalapps/bin/lalpulsar_SFTvalidate +0 -0
  146. lalapps/bin/lalpulsar_Weave +0 -0
  147. lalapps/bin/lalpulsar_WeaveCompare +0 -0
  148. lalapps/bin/lalpulsar_WeaveConcat +0 -0
  149. lalapps/bin/lalpulsar_WeaveSetup +0 -0
  150. lalapps/bin/lalpulsar_WriteSFTsfromSFDBs +0 -0
  151. lalapps/bin/lalpulsar_compareFstats +0 -0
  152. lalapps/bin/lalpulsar_compareSFTs +0 -0
  153. lalapps/bin/lalpulsar_create_time_correction_ephemeris +0 -0
  154. lalapps/bin/lalpulsar_crosscorr_v2 +0 -0
  155. lalapps/bin/lalpulsar_dumpSFT +0 -0
  156. lalapps/bin/lalpulsar_fits_header_getval +0 -0
  157. lalapps/bin/lalpulsar_fits_header_list +0 -0
  158. lalapps/bin/lalpulsar_fits_overview +0 -0
  159. lalapps/bin/lalpulsar_fits_table_list +0 -0
  160. lalapps/bin/lalpulsar_frequency_evolution +0 -0
  161. lalapps/bin/lalpulsar_heterodyne +0 -0
  162. lalapps/bin/lalpulsar_parameter_estimation_nested +0 -0
  163. lalapps/bin/lalpulsar_spec_avg +0 -0
  164. lalapps/bin/lalpulsar_spec_avg_long +0 -0
  165. lalapps/bin/lalpulsar_spec_coherence +0 -0
  166. lalapps/bin/lalpulsar_splitSFTs +0 -0
  167. lalapps/bin/lalpulsar_ssbtodetector +0 -0
  168. lalapps/bin/lalpulsar_synthesizeBstatMC +0 -0
  169. lalapps/bin/lalpulsar_synthesizeLVStats +0 -0
  170. lalapps/bin/lalpulsar_synthesizeTransientStats +0 -0
  171. lalapps/bin/lalpulsar_version +0 -0
  172. lalapps/bin/lalsim-bh-qnmode +0 -0
  173. lalapps/bin/lalsim-bh-ringdown +0 -0
  174. lalapps/bin/lalsim-bh-sphwf +0 -0
  175. lalapps/bin/lalsim-burst +0 -0
  176. lalapps/bin/lalsim-detector-noise +0 -0
  177. lalapps/bin/lalsim-detector-strain +0 -0
  178. lalapps/bin/lalsim-inject +0 -0
  179. lalapps/bin/lalsim-inspiral +0 -0
  180. lalapps/bin/lalsim-ns-eos-table +0 -0
  181. lalapps/bin/lalsim-ns-mass-radius +0 -0
  182. lalapps/bin/lalsim-ns-params +0 -0
  183. lalapps/bin/lalsim-sgwb +0 -0
  184. lalapps/bin/lalsim-unicorn +0 -0
  185. lalapps/bin/lalsimulation_version +0 -0
  186. lalapps/cosmicstring.py +2 -2
  187. lalapps/data/LALSimNeutronStarEOS_ABHT_QMC_RMF1_META.dat +1877 -1877
  188. lalapps/data/LALSimNeutronStarEOS_ABHT_QMC_RMF2_META.dat +1934 -1934
  189. lalapps/data/LALSimNeutronStarEOS_ABHT_QMC_RMF3_META.dat +1779 -1779
  190. lalapps/data/LALSimNeutronStarEOS_ABHT_QMC_RMF4_META.dat +2069 -2069
  191. lalapps/data/LALSimNeutronStarEOS_BL_CHIRAL_META.dat +1529 -1529
  192. lalapps/data/LALSimNeutronStarEOS_GMSR_BSK14_BSK24.dat +2 -2
  193. lalapps/data/LALSimNeutronStarEOS_GMSR_DHSL59_BSK24.dat +2 -2
  194. lalapps/data/LALSimNeutronStarEOS_GMSR_DHSL69_BSK24.dat +2 -2
  195. lalapps/data/LALSimNeutronStarEOS_GMSR_F0_BSK24.dat +2 -2
  196. lalapps/data/LALSimNeutronStarEOS_GMSR_H1_BSK24.dat +2 -2
  197. lalapps/data/LALSimNeutronStarEOS_GMSR_H2_BSK24.dat +2 -2
  198. lalapps/data/LALSimNeutronStarEOS_GMSR_H3_BSK24.dat +2 -2
  199. lalapps/data/LALSimNeutronStarEOS_GMSR_H4_BSK24.dat +2 -2
  200. lalapps/data/LALSimNeutronStarEOS_GMSR_H5_BSK24.dat +2 -2
  201. lalapps/data/LALSimNeutronStarEOS_GMSR_LN55_BSK24.dat +2 -2
  202. lalapps/data/LALSimNeutronStarEOS_GMSR_SLY5_BSK24.dat +2 -2
  203. lalapps/data/LALSimNeutronStarEOS_GPPVA_DD2_BSK24.dat +2 -2
  204. lalapps/data/LALSimNeutronStarEOS_GPPVA_DDME2_BSK24.dat +2 -2
  205. lalapps/data/LALSimNeutronStarEOS_GPPVA_FSU2H_BSK24.dat +2 -2
  206. lalapps/data/LALSimNeutronStarEOS_GPPVA_FSU2_BSK24.dat +2 -2
  207. lalapps/data/LALSimNeutronStarEOS_GPPVA_NL3WRL55_BSK24.dat +2 -2
  208. lalapps/data/LALSimNeutronStarEOS_KDE0V1_BSK24.dat +1 -1
  209. lalapps/data/LALSimNeutronStarEOS_KDE0V_BSK24.dat +1 -1
  210. lalapps/data/LALSimNeutronStarEOS_PCP_BSK24_BSK24.dat +2 -2
  211. lalapps/data/LALSimNeutronStarEOS_RG_SLY4_BSK24.dat +2 -2
  212. lalapps/data/LALSimNeutronStarEOS_RS_BSK24.dat +1 -1
  213. lalapps/data/LALSimNeutronStarEOS_SK255_BSK24.dat +2 -2
  214. lalapps/data/LALSimNeutronStarEOS_SKA_BSK24.dat +1 -1
  215. lalapps/data/LALSimNeutronStarEOS_SKB_BSK24.dat +1 -1
  216. lalapps/data/LALSimNeutronStarEOS_SKI2_BSK24.dat +1 -1
  217. lalapps/data/LALSimNeutronStarEOS_SKI3_BSK24.dat +1 -1
  218. lalapps/data/LALSimNeutronStarEOS_SKI4_BSK24.dat +1 -1
  219. lalapps/data/LALSimNeutronStarEOS_SKI6_BSK24.dat +1 -1
  220. lalapps/data/LALSimNeutronStarEOS_SKOP_BSK24.dat +1 -1
  221. lalapps/data/LALSimNeutronStarEOS_SLY230A_BSK24.dat +1 -1
  222. lalapps/data/LALSimNeutronStarEOS_SLY2_BSK24.dat +1 -1
  223. lalapps/data/LALSimNeutronStarEOS_SLY9_BSK24.dat +1 -1
  224. lalapps/data/LALSimNeutronStarEOS_XMLSLZ_DDLZ1_BSK24.dat +2 -2
  225. lalapps/data/LALSimNeutronStarEOS_XMLSLZ_DDME2_BSK24.dat +1 -1
  226. lalapps/data/LALSimNeutronStarEOS_XMLSLZ_DDMEX_BSK24.dat +1 -1
  227. lalapps/data/LALSimNeutronStarEOS_XMLSLZ_GM1_BSK24.dat +1 -1
  228. lalapps/data/LALSimNeutronStarEOS_XMLSLZ_MTVTC_BSK24.dat +1 -1
  229. lalapps/data/LALSimNeutronStarEOS_XMLSLZ_NL3_BSK24.dat +1 -1
  230. lalapps/data/LALSimNeutronStarEOS_XMLSLZ_PKDD_BSK24.dat +1 -1
  231. lalapps/data/LALSimNeutronStarEOS_XMLSLZ_TM1_BSK24.dat +1 -1
  232. lalapps/data/LALSimNeutronStarEOS_XMLSLZ_TW99_BSK24.dat +1 -1
  233. lalapps/data/LIGO-T1800545-v1-aLIGO_140Mpc.txt +1000 -1000
  234. lalapps/data/config_tiger_example.ini +2 -2
  235. lalapps/data/lalinference_pipe_example.ini +2 -3
  236. lalapps/data/lib_pipe_example.ini +5 -6
  237. lalapps/data/power_pipe.ini +1 -1
  238. lalapps/data/unimodalMeans.csv +0 -1
  239. lalapps/git_version.py +5 -5
  240. lalburst/SnglBurstUtils.py +5 -5
  241. lalburst/__init__.py +2 -2
  242. lalburst/_lalburst.cpython-312-aarch64-linux-gnu.so +0 -0
  243. lalburst/{lalburst.py → _lalburst_swig.py} +1 -1
  244. lalburst/binjfind.py +8 -8
  245. lalburst/bucluster.py +4 -4
  246. lalburst/burca.py +3 -3
  247. lalburst/burca_tailor.py +8 -16
  248. lalburst/cafe.py +3 -3
  249. lalburst/calc_likelihood.py +1 -1
  250. lalburst/cs_gamma.cpython-312-aarch64-linux-gnu.so +0 -0
  251. lalburst/git_version.py +5 -5
  252. lalburst/power.py +3 -3
  253. lalburst/snglcluster.py +1 -1
  254. lalburst/snglcoinc.py +97 -118
  255. lalburst/stringutils.py +8 -16
  256. lalburst/timeslides.py +46 -0
  257. lalframe/__init__.py +2 -2
  258. lalframe/_lalframe.cpython-312-aarch64-linux-gnu.so +0 -0
  259. lalframe/{lalframe.py → _lalframe_swig.py} +1 -1
  260. lalframe/frread.py +4 -2
  261. lalframe/git_version.py +5 -5
  262. lalframe/utils/frtools.py +1 -1
  263. lalinference/__init__.py +2 -2
  264. lalinference/_bayespputils.cpython-312-aarch64-linux-gnu.so +0 -0
  265. lalinference/_lalinference.cpython-312-aarch64-linux-gnu.so +0 -0
  266. lalinference/{lalinference.py → _lalinference_swig.py} +1 -1
  267. lalinference/bayespputils.py +35 -39
  268. lalinference/git_version.py +5 -5
  269. lalinference/imrtgr/nrutils.py +118 -135
  270. lalinference/io/__init__.py +4 -6
  271. lalinference/lalinference_pipe_utils.py +12 -21
  272. lalinference/nest2pos.py +0 -1
  273. lalinference/plot/__init__.py +4 -5
  274. lalinference/plot/spindisk.py +2 -3
  275. lalinference/tiger/make_injtimes.py +0 -1
  276. lalinference/tiger/omegascans_dag.py +6 -3
  277. lalinference/tiger/postproc.py +11 -13
  278. lalinference/wrapper.py +0 -1
  279. lalinspiral/__init__.py +2 -2
  280. lalinspiral/_lalinspiral.cpython-312-aarch64-linux-gnu.so +0 -0
  281. lalinspiral/{lalinspiral.py → _lalinspiral_swig.py} +1 -1
  282. lalinspiral/_thinca.cpython-312-aarch64-linux-gnu.so +0 -0
  283. lalinspiral/git_version.py +5 -5
  284. lalinspiral/inspinjfind.py +6 -11
  285. lalinspiral/thinca.py +11 -11
  286. lalmetaio/__init__.py +2 -2
  287. lalmetaio/_lalmetaio.cpython-312-aarch64-linux-gnu.so +0 -0
  288. lalmetaio/{lalmetaio.py → _lalmetaio_swig.py} +1 -1
  289. lalmetaio/git_version.py +5 -5
  290. lalpulsar/PulsarParametersWrapper.py +18 -10
  291. lalpulsar/__init__.py +2 -2
  292. lalpulsar/_lalpulsar.cpython-312-aarch64-linux-gnu.so +0 -0
  293. lalpulsar/{lalpulsar.py → _lalpulsar_swig.py} +1 -1
  294. lalpulsar/git_version.py +5 -5
  295. lalpulsar/knope_utils.py +9 -10
  296. lalpulsar/piecewise_model/__init__.py +7 -0
  297. lalpulsar/piecewise_model/basis_functions.py +156 -0
  298. lalpulsar/piecewise_model/class_definitions.py +323 -0
  299. lalpulsar/piecewise_model/errors.py +37 -0
  300. lalpulsar/piecewise_model/estimating_knots.py +833 -0
  301. lalpulsar/piecewise_model/gte_and_other_methods.py +189 -0
  302. lalpulsar/piecewise_model/mols_for_gte.py +269 -0
  303. lalpulsar/piecewise_model/pw_fstat.py +813 -0
  304. lalpulsar/piecewise_model/pw_model_simulations.py +156 -0
  305. lalpulsar/piecewise_model/sampling_methods.py +186 -0
  306. lalpulsar/piecewise_model/semicoherent_metric_methods.py +375 -0
  307. lalpulsar/piecewise_model/tbank_estimates.py +293 -0
  308. lalpulsar/public_sft_directory.py +7 -0
  309. lalpulsar/pulsarhtmlutils.py +52 -53
  310. lalpulsar/pulsarpputils.py +28 -25
  311. lalpulsar/simulateCW.py +49 -6
  312. lalpulsar/simulateHeterodynedCW.py +4 -5
  313. lalsimulation/__init__.py +2 -2
  314. lalsimulation/_lalsimulation.cpython-312-aarch64-linux-gnu.so +0 -0
  315. lalsimulation/{lalsimulation.py → _lalsimulation_swig.py} +1 -1
  316. lalsimulation/git_version.py +5 -5
  317. lalsimulation/gwsignal/models/__init__.py +2 -0
  318. lalsimulation/gwsignal/models/pyseobnr_model.py +174 -1
  319. lalsimulation/nrfits/NRSur3dq8Remnant.py +1 -1
  320. lalsimulation/nrfits/NRSur7dq4Remnant.py +1 -1
  321. lalsimulation/nrfits/eval_fits.py +1 -1
  322. lalsimulation/nrfits/nrfits.py +0 -2
  323. {lalsuite-7.22.1.dev20240408.data → lalsuite-7.26.2.dev20251202.data}/scripts/cbcBayesBurstPPAnalysis +4 -8
  324. {lalsuite-7.22.1.dev20240408.data → lalsuite-7.26.2.dev20251202.data}/scripts/cbcBayesBurstPostProc +10 -20
  325. {lalsuite-7.22.1.dev20240408.data → lalsuite-7.26.2.dev20251202.data}/scripts/cbcBayesCombinePTMCMCh5s +0 -1
  326. {lalsuite-7.22.1.dev20240408.data → lalsuite-7.26.2.dev20251202.data}/scripts/cbcBayesCombinePosteriors +0 -2
  327. {lalsuite-7.22.1.dev20240408.data → lalsuite-7.26.2.dev20251202.data}/scripts/cbcBayesCompPos +3 -4
  328. {lalsuite-7.22.1.dev20240408.data → lalsuite-7.26.2.dev20251202.data}/scripts/cbcBayesDIEvidence +0 -1
  329. {lalsuite-7.22.1.dev20240408.data → lalsuite-7.26.2.dev20251202.data}/scripts/cbcBayesGraceDBinfo +0 -1
  330. {lalsuite-7.22.1.dev20240408.data → lalsuite-7.26.2.dev20251202.data}/scripts/cbcBayesMCMC2pos +7 -5
  331. {lalsuite-7.22.1.dev20240408.data → lalsuite-7.26.2.dev20251202.data}/scripts/cbcBayesPPAnalysis +3 -6
  332. {lalsuite-7.22.1.dev20240408.data → lalsuite-7.26.2.dev20251202.data}/scripts/cbcBayesPlotSpinDisk +0 -1
  333. {lalsuite-7.22.1.dev20240408.data → lalsuite-7.26.2.dev20251202.data}/scripts/cbcBayesPosToSimBurst +6 -9
  334. {lalsuite-7.22.1.dev20240408.data → lalsuite-7.26.2.dev20251202.data}/scripts/cbcBayesPosToSimInspiral +5 -8
  335. {lalsuite-7.22.1.dev20240408.data → lalsuite-7.26.2.dev20251202.data}/scripts/cbcBayesPostProc +5 -9
  336. {lalsuite-7.22.1.dev20240408.data → lalsuite-7.26.2.dev20251202.data}/scripts/cbcBayesThermoInt +7 -7
  337. {lalsuite-7.22.1.dev20240408.data → lalsuite-7.26.2.dev20251202.data}/scripts/imrtgr_imr_consistency_test +38 -40
  338. lalsuite-7.26.2.dev20251202.data/scripts/lal_cache +6 -0
  339. lalsuite-7.26.2.dev20251202.data/scripts/lal_fftw_wisdom +6 -0
  340. lalsuite-7.26.2.dev20251202.data/scripts/lal_fftwf_wisdom +6 -0
  341. {lalsuite-7.22.1.dev20240408.data → lalsuite-7.26.2.dev20251202.data}/scripts/lal_path2cache +1 -2
  342. {lalsuite-7.22.1.dev20240408.data → lalsuite-7.26.2.dev20251202.data}/scripts/lal_searchsum2cache +3 -5
  343. lalsuite-7.26.2.dev20251202.data/scripts/lal_simd_detect +6 -0
  344. lalsuite-7.26.2.dev20251202.data/scripts/lal_tconvert +6 -0
  345. lalsuite-7.26.2.dev20251202.data/scripts/lal_version +6 -0
  346. lalsuite-7.26.2.dev20251202.data/scripts/lalapps_ComputeAntennaPattern +6 -0
  347. lalsuite-7.26.2.dev20251202.data/scripts/lalapps_ComputeFstatBenchmark +6 -0
  348. lalsuite-7.26.2.dev20251202.data/scripts/lalapps_ComputeFstatLatticeCount +6 -0
  349. lalsuite-7.26.2.dev20251202.data/scripts/lalapps_ComputeFstatMCUpperLimit +6 -0
  350. lalsuite-7.26.2.dev20251202.data/scripts/lalapps_ComputeFstatistic_v2 +6 -0
  351. lalsuite-7.26.2.dev20251202.data/scripts/lalapps_ComputePSD +6 -0
  352. lalsuite-7.26.2.dev20251202.data/scripts/lalapps_CopySFTs +6 -0
  353. lalsuite-7.26.2.dev20251202.data/scripts/lalapps_DistanceVsMass +6 -0
  354. lalsuite-7.26.2.dev20251202.data/scripts/lalapps_DriveHoughMulti +6 -0
  355. lalsuite-7.26.2.dev20251202.data/scripts/lalapps_FstatMetric_v2 +6 -0
  356. lalsuite-7.26.2.dev20251202.data/scripts/lalapps_HierarchSearchGCT +6 -0
  357. lalsuite-7.26.2.dev20251202.data/scripts/lalapps_HierarchicalSearch +6 -0
  358. lalsuite-7.26.2.dev20251202.data/scripts/lalapps_MakeSFTDAG +6 -0
  359. lalsuite-7.26.2.dev20251202.data/scripts/lalapps_MakeSFTs +6 -0
  360. lalsuite-7.26.2.dev20251202.data/scripts/lalapps_Makefakedata_v4 +6 -0
  361. lalsuite-7.26.2.dev20251202.data/scripts/lalapps_Makefakedata_v5 +6 -0
  362. lalsuite-7.26.2.dev20251202.data/scripts/lalapps_PredictFstat +6 -0
  363. lalsuite-7.26.2.dev20251202.data/scripts/lalapps_PrintDetectorState +6 -0
  364. lalsuite-7.26.2.dev20251202.data/scripts/lalapps_SFTclean +6 -0
  365. lalsuite-7.26.2.dev20251202.data/scripts/lalapps_SFTvalidate +6 -0
  366. lalsuite-7.26.2.dev20251202.data/scripts/lalapps_StringAddFrame +6 -0
  367. lalsuite-7.26.2.dev20251202.data/scripts/lalapps_StringSearch +6 -0
  368. lalsuite-7.26.2.dev20251202.data/scripts/lalapps_Weave +6 -0
  369. lalsuite-7.26.2.dev20251202.data/scripts/lalapps_WeaveCompare +6 -0
  370. lalsuite-7.26.2.dev20251202.data/scripts/lalapps_WeaveConcat +6 -0
  371. lalsuite-7.26.2.dev20251202.data/scripts/lalapps_WeaveSetup +6 -0
  372. lalsuite-7.26.2.dev20251202.data/scripts/lalapps_WriteSFTsfromSFDBs +6 -0
  373. lalsuite-7.26.2.dev20251202.data/scripts/lalapps_animate +6 -0
  374. lalsuite-7.26.2.dev20251202.data/scripts/lalapps_binj +6 -0
  375. lalsuite-7.26.2.dev20251202.data/scripts/lalapps_blindinj +6 -0
  376. lalsuite-7.26.2.dev20251202.data/scripts/lalapps_cache +6 -0
  377. {lalsuite-7.22.1.dev20240408.data → lalsuite-7.26.2.dev20251202.data}/scripts/lalapps_cafe +3 -8
  378. lalsuite-7.26.2.dev20251202.data/scripts/lalapps_calfacs +6 -0
  379. lalsuite-7.26.2.dev20251202.data/scripts/lalapps_cbc_stochasticbank +6 -0
  380. lalsuite-7.26.2.dev20251202.data/scripts/lalapps_chirplen +6 -0
  381. lalsuite-7.26.2.dev20251202.data/scripts/lalapps_coh_PTF_inspiral +6 -0
  382. lalsuite-7.26.2.dev20251202.data/scripts/lalapps_coinj +6 -0
  383. lalsuite-7.26.2.dev20251202.data/scripts/lalapps_combine_crosscorr_toplists +6 -0
  384. lalsuite-7.26.2.dev20251202.data/scripts/lalapps_compareFstats +6 -0
  385. lalsuite-7.26.2.dev20251202.data/scripts/lalapps_compareSFTs +6 -0
  386. {lalsuite-7.22.1.dev20240408.data → lalsuite-7.26.2.dev20251202.data}/scripts/lalapps_cosmicstring_pipe +8 -9
  387. {lalsuite-7.22.1.dev20240408.data → lalsuite-7.26.2.dev20251202.data}/scripts/lalapps_create_time_correction_ephemeris +1 -4
  388. lalsuite-7.26.2.dev20251202.data/scripts/lalapps_dumpSFT +6 -0
  389. lalsuite-7.26.2.dev20251202.data/scripts/lalapps_effdist +6 -0
  390. lalsuite-7.26.2.dev20251202.data/scripts/lalapps_exc_resp +6 -0
  391. lalsuite-7.26.2.dev20251202.data/scripts/lalapps_fftw_wisdom +6 -0
  392. lalsuite-7.26.2.dev20251202.data/scripts/lalapps_fftwf_wisdom +6 -0
  393. lalsuite-7.26.2.dev20251202.data/scripts/lalapps_fits_header_getval +6 -0
  394. lalsuite-7.26.2.dev20251202.data/scripts/lalapps_fits_header_list +6 -0
  395. lalsuite-7.26.2.dev20251202.data/scripts/lalapps_fits_overview +6 -0
  396. lalsuite-7.26.2.dev20251202.data/scripts/lalapps_fits_table_list +6 -0
  397. lalsuite-7.26.2.dev20251202.data/scripts/lalapps_fr_ninja +6 -0
  398. lalsuite-7.26.2.dev20251202.data/scripts/lalapps_frextr +6 -0
  399. lalsuite-7.26.2.dev20251202.data/scripts/lalapps_frinfo +6 -0
  400. lalsuite-7.26.2.dev20251202.data/scripts/lalapps_frjoin +6 -0
  401. lalsuite-7.26.2.dev20251202.data/scripts/lalapps_frread +6 -0
  402. lalsuite-7.26.2.dev20251202.data/scripts/lalapps_frview +6 -0
  403. lalsuite-7.26.2.dev20251202.data/scripts/lalapps_gwf2xml +6 -0
  404. lalsuite-7.26.2.dev20251202.data/scripts/lalapps_heterodyne_pulsar +6 -0
  405. lalsuite-7.26.2.dev20251202.data/scripts/lalapps_inspawgfile +6 -0
  406. lalsuite-7.26.2.dev20251202.data/scripts/lalapps_inspfrinj +6 -0
  407. lalsuite-7.26.2.dev20251202.data/scripts/lalapps_inspinj +6 -0
  408. lalsuite-7.26.2.dev20251202.data/scripts/lalapps_inspiralDistance +6 -0
  409. lalsuite-7.26.2.dev20251202.data/scripts/lalapps_knope +6 -0
  410. lalsuite-7.26.2.dev20251202.data/scripts/lalapps_knope_automation_script +6 -0
  411. lalsuite-7.26.2.dev20251202.data/scripts/lalapps_knope_collate_results +6 -0
  412. lalsuite-7.26.2.dev20251202.data/scripts/lalapps_knope_result_page +6 -0
  413. lalsuite-7.26.2.dev20251202.data/scripts/lalapps_makeblindinj +6 -0
  414. lalsuite-7.26.2.dev20251202.data/scripts/lalapps_makeblindinj_himass +6 -0
  415. lalsuite-7.26.2.dev20251202.data/scripts/lalapps_ninja +6 -0
  416. lalsuite-7.26.2.dev20251202.data/scripts/lalapps_path2cache +6 -0
  417. lalsuite-7.26.2.dev20251202.data/scripts/lalapps_power +6 -0
  418. {lalsuite-7.22.1.dev20240408.data → lalsuite-7.26.2.dev20251202.data}/scripts/lalapps_power_likelihood_pipe +2 -3
  419. {lalsuite-7.22.1.dev20240408.data → lalsuite-7.26.2.dev20251202.data}/scripts/lalapps_power_pipe +3 -12
  420. lalsuite-7.26.2.dev20251202.data/scripts/lalapps_pulsar_crosscorr_v2 +6 -0
  421. lalsuite-7.26.2.dev20251202.data/scripts/lalapps_pulsar_frequency_evolution +6 -0
  422. {lalsuite-7.22.1.dev20240408.data → lalsuite-7.26.2.dev20251202.data}/scripts/lalapps_pulsar_parameter_estimation_nested +1 -4
  423. lalsuite-7.26.2.dev20251202.data/scripts/lalapps_random_bank +6 -0
  424. lalsuite-7.26.2.dev20251202.data/scripts/lalapps_randombank +6 -0
  425. lalsuite-7.26.2.dev20251202.data/scripts/lalapps_run_pulsar_crosscorr_v2 +6 -0
  426. lalsuite-7.26.2.dev20251202.data/scripts/lalapps_searchsum2cache +6 -0
  427. lalsuite-7.26.2.dev20251202.data/scripts/lalapps_spec_avg +6 -0
  428. lalsuite-7.26.2.dev20251202.data/scripts/lalapps_spec_avg_long +6 -0
  429. lalsuite-7.26.2.dev20251202.data/scripts/lalapps_spec_coherence +6 -0
  430. lalsuite-7.26.2.dev20251202.data/scripts/lalapps_spininj +6 -0
  431. lalsuite-7.26.2.dev20251202.data/scripts/lalapps_splitSFTs +6 -0
  432. lalsuite-7.26.2.dev20251202.data/scripts/lalapps_splitbank +6 -0
  433. lalsuite-7.26.2.dev20251202.data/scripts/lalapps_ssbtodetector +6 -0
  434. {lalsuite-7.22.1.dev20240408.data → lalsuite-7.26.2.dev20251202.data}/scripts/lalapps_string_apply_vetoes +4 -5
  435. {lalsuite-7.22.1.dev20240408.data → lalsuite-7.26.2.dev20251202.data}/scripts/lalapps_string_calc_likelihood +1 -2
  436. {lalsuite-7.22.1.dev20240408.data → lalsuite-7.26.2.dev20251202.data}/scripts/lalapps_string_contour_plotter +0 -1
  437. {lalsuite-7.22.1.dev20240408.data → lalsuite-7.26.2.dev20251202.data}/scripts/lalapps_string_contour_plotter_largeloops +0 -1
  438. {lalsuite-7.22.1.dev20240408.data → lalsuite-7.26.2.dev20251202.data}/scripts/lalapps_string_cs_gamma +0 -1
  439. {lalsuite-7.22.1.dev20240408.data → lalsuite-7.26.2.dev20251202.data}/scripts/lalapps_string_cs_gamma_largeloops +0 -1
  440. {lalsuite-7.22.1.dev20240408.data → lalsuite-7.26.2.dev20251202.data}/scripts/lalapps_string_final +4 -5
  441. {lalsuite-7.22.1.dev20240408.data → lalsuite-7.26.2.dev20251202.data}/scripts/lalapps_string_meas_likelihood +6 -7
  442. {lalsuite-7.22.1.dev20240408.data → lalsuite-7.26.2.dev20251202.data}/scripts/lalapps_string_plot_binj +5 -6
  443. {lalsuite-7.22.1.dev20240408.data → lalsuite-7.26.2.dev20251202.data}/scripts/lalapps_string_plot_likelihood +1 -2
  444. lalsuite-7.26.2.dev20251202.data/scripts/lalapps_synthesizeBstatMC +6 -0
  445. lalsuite-7.26.2.dev20251202.data/scripts/lalapps_synthesizeLVStats +6 -0
  446. lalsuite-7.26.2.dev20251202.data/scripts/lalapps_synthesizeTransientStats +6 -0
  447. lalsuite-7.26.2.dev20251202.data/scripts/lalapps_tconvert +6 -0
  448. lalsuite-7.26.2.dev20251202.data/scripts/lalapps_tmpltbank +6 -0
  449. lalsuite-7.26.2.dev20251202.data/scripts/lalapps_version +6 -0
  450. lalsuite-7.26.2.dev20251202.data/scripts/lalapps_xtefitstoframe +6 -0
  451. {lalsuite-7.22.1.dev20240408.data → lalsuite-7.26.2.dev20251202.data}/scripts/lalburst_cluster +2 -8
  452. {lalsuite-7.22.1.dev20240408.data → lalsuite-7.26.2.dev20251202.data}/scripts/lalburst_coinc +5 -11
  453. {lalsuite-7.22.1.dev20240408.data → lalsuite-7.26.2.dev20251202.data}/scripts/lalburst_cut +9 -15
  454. {lalsuite-7.22.1.dev20240408.data → lalsuite-7.26.2.dev20251202.data}/scripts/lalburst_gen_timeslides +8 -13
  455. {lalsuite-7.22.1.dev20240408.data → lalsuite-7.26.2.dev20251202.data}/scripts/lalburst_inj_pic +6 -12
  456. {lalsuite-7.22.1.dev20240408.data → lalsuite-7.26.2.dev20251202.data}/scripts/lalburst_injfind +4 -9
  457. {lalsuite-7.22.1.dev20240408.data → lalsuite-7.26.2.dev20251202.data}/scripts/lalburst_plot_tisi +3 -8
  458. {lalsuite-7.22.1.dev20240408.data → lalsuite-7.26.2.dev20251202.data}/scripts/lalburst_power_calc_likelihood +1 -2
  459. {lalsuite-7.22.1.dev20240408.data → lalsuite-7.26.2.dev20251202.data}/scripts/lalburst_power_final +1 -2
  460. {lalsuite-7.22.1.dev20240408.data → lalsuite-7.26.2.dev20251202.data}/scripts/lalburst_power_meas_likelihood +3 -4
  461. {lalsuite-7.22.1.dev20240408.data → lalsuite-7.26.2.dev20251202.data}/scripts/lalburst_power_plot_binj +3 -4
  462. {lalsuite-7.22.1.dev20240408.data → lalsuite-7.26.2.dev20251202.data}/scripts/lalburst_power_plot_binjtf +4 -5
  463. lalsuite-7.26.2.dev20251202.data/scripts/lalburst_version +6 -0
  464. lalsuite-7.26.2.dev20251202.data/scripts/lalfr-cat +6 -0
  465. lalsuite-7.26.2.dev20251202.data/scripts/lalfr-cksum +6 -0
  466. lalsuite-7.26.2.dev20251202.data/scripts/lalfr-cut +6 -0
  467. lalsuite-7.26.2.dev20251202.data/scripts/lalfr-dump +6 -0
  468. lalsuite-7.26.2.dev20251202.data/scripts/lalfr-fmt +6 -0
  469. lalsuite-7.26.2.dev20251202.data/scripts/lalfr-paste +6 -0
  470. lalsuite-7.26.2.dev20251202.data/scripts/lalfr-print +6 -0
  471. lalsuite-7.26.2.dev20251202.data/scripts/lalfr-split +6 -0
  472. lalsuite-7.26.2.dev20251202.data/scripts/lalfr-stat +6 -0
  473. lalsuite-7.26.2.dev20251202.data/scripts/lalfr-stream +6 -0
  474. lalsuite-7.26.2.dev20251202.data/scripts/lalfr-vis +6 -0
  475. lalsuite-7.26.2.dev20251202.data/scripts/lalframe_version +6 -0
  476. lalsuite-7.26.2.dev20251202.data/scripts/lalinference_bench +6 -0
  477. lalsuite-7.26.2.dev20251202.data/scripts/lalinference_burst +6 -0
  478. {lalsuite-7.22.1.dev20240408.data → lalsuite-7.26.2.dev20251202.data}/scripts/lalinference_burst_pp_pipe +10 -7
  479. {lalsuite-7.22.1.dev20240408.data → lalsuite-7.26.2.dev20251202.data}/scripts/lalinference_coherence_test +0 -1
  480. {lalsuite-7.22.1.dev20240408.data → lalsuite-7.26.2.dev20251202.data}/scripts/lalinference_compute_roq_weights +1 -2
  481. {lalsuite-7.22.1.dev20240408.data → lalsuite-7.26.2.dev20251202.data}/scripts/lalinference_cpnest +12 -11
  482. lalsuite-7.26.2.dev20251202.data/scripts/lalinference_datadump +6 -0
  483. {lalsuite-7.22.1.dev20240408.data → lalsuite-7.26.2.dev20251202.data}/scripts/lalinference_evolve_spins_and_append_samples +0 -1
  484. lalsuite-7.26.2.dev20251202.data/scripts/lalinference_injectedlike +6 -0
  485. {lalsuite-7.22.1.dev20240408.data → lalsuite-7.26.2.dev20251202.data}/scripts/lalinference_merge_posteriors +0 -3
  486. lalsuite-7.26.2.dev20251202.data/scripts/lalinference_mpi_wrapper +6 -0
  487. {lalsuite-7.22.1.dev20240408.data → lalsuite-7.26.2.dev20251202.data}/scripts/lalinference_multi_pipe +5 -3
  488. lalsuite-7.26.2.dev20251202.data/scripts/lalinference_nest +6 -0
  489. {lalsuite-7.22.1.dev20240408.data → lalsuite-7.26.2.dev20251202.data}/scripts/lalinference_nest2pos +0 -1
  490. {lalsuite-7.22.1.dev20240408.data → lalsuite-7.26.2.dev20251202.data}/scripts/lalinference_pipe +11 -10
  491. {lalsuite-7.22.1.dev20240408.data → lalsuite-7.26.2.dev20251202.data}/scripts/lalinference_pp_pipe +10 -6
  492. {lalsuite-7.22.1.dev20240408.data → lalsuite-7.26.2.dev20251202.data}/scripts/lalinference_review_test +6 -5
  493. lalsuite-7.26.2.dev20251202.data/scripts/lalinference_version +6 -0
  494. {lalsuite-7.22.1.dev20240408.data → lalsuite-7.26.2.dev20251202.data}/scripts/lalinspiral_injfind +4 -5
  495. {lalsuite-7.22.1.dev20240408.data → lalsuite-7.26.2.dev20251202.data}/scripts/lalinspiral_thinca +7 -12
  496. lalsuite-7.26.2.dev20251202.data/scripts/lalinspiral_version +6 -0
  497. lalsuite-7.26.2.dev20251202.data/scripts/lalmetaio_version +6 -0
  498. lalsuite-7.26.2.dev20251202.data/scripts/lalpulsar_ComputeAntennaPattern +6 -0
  499. lalsuite-7.26.2.dev20251202.data/scripts/lalpulsar_ComputeFstatBenchmark +6 -0
  500. lalsuite-7.26.2.dev20251202.data/scripts/lalpulsar_ComputeFstatLatticeCount +6 -0
  501. lalsuite-7.26.2.dev20251202.data/scripts/lalpulsar_ComputeFstatMCUpperLimit +6 -0
  502. lalsuite-7.26.2.dev20251202.data/scripts/lalpulsar_ComputeFstatistic_v2 +6 -0
  503. lalsuite-7.26.2.dev20251202.data/scripts/lalpulsar_ComputePSD +6 -0
  504. {lalsuite-7.22.1.dev20240408.data → lalsuite-7.26.2.dev20251202.data}/scripts/lalpulsar_CopyPublicSFTs +18 -1
  505. lalsuite-7.26.2.dev20251202.data/scripts/lalpulsar_DriveHoughMulti +6 -0
  506. lalsuite-7.26.2.dev20251202.data/scripts/lalpulsar_FstatMetric_v2 +6 -0
  507. lalsuite-7.26.2.dev20251202.data/scripts/lalpulsar_HierarchSearchGCT +6 -0
  508. lalsuite-7.26.2.dev20251202.data/scripts/lalpulsar_HierarchicalSearch +6 -0
  509. {lalsuite-7.22.1.dev20240408.data → lalsuite-7.26.2.dev20251202.data}/scripts/lalpulsar_MakeSFTDAG +595 -390
  510. lalsuite-7.26.2.dev20251202.data/scripts/lalpulsar_MakeSFTs +6 -0
  511. lalsuite-7.26.2.dev20251202.data/scripts/lalpulsar_Makefakedata_v4 +6 -0
  512. lalsuite-7.26.2.dev20251202.data/scripts/lalpulsar_Makefakedata_v5 +6 -0
  513. lalsuite-7.26.2.dev20251202.data/scripts/lalpulsar_MoveSFTs +200 -0
  514. lalsuite-7.26.2.dev20251202.data/scripts/lalpulsar_PiecewiseSearch +963 -0
  515. lalsuite-7.26.2.dev20251202.data/scripts/lalpulsar_PredictFstat +6 -0
  516. lalsuite-7.26.2.dev20251202.data/scripts/lalpulsar_PrintDetectorState +6 -0
  517. lalsuite-7.26.2.dev20251202.data/scripts/lalpulsar_SFTclean +6 -0
  518. lalsuite-7.26.2.dev20251202.data/scripts/lalpulsar_SFTvalidate +6 -0
  519. lalsuite-7.26.2.dev20251202.data/scripts/lalpulsar_Weave +6 -0
  520. lalsuite-7.26.2.dev20251202.data/scripts/lalpulsar_WeaveCompare +6 -0
  521. lalsuite-7.26.2.dev20251202.data/scripts/lalpulsar_WeaveConcat +6 -0
  522. lalsuite-7.26.2.dev20251202.data/scripts/lalpulsar_WeaveSetup +6 -0
  523. lalsuite-7.26.2.dev20251202.data/scripts/lalpulsar_WriteSFTsfromSFDBs +6 -0
  524. lalsuite-7.26.2.dev20251202.data/scripts/lalpulsar_compareFstats +6 -0
  525. lalsuite-7.26.2.dev20251202.data/scripts/lalpulsar_compareSFTs +6 -0
  526. {lalsuite-7.22.1.dev20240408.data → lalsuite-7.26.2.dev20251202.data}/scripts/lalpulsar_create_time_correction_ephemeris +1 -4
  527. lalsuite-7.26.2.dev20251202.data/scripts/lalpulsar_crosscorr_v2 +6 -0
  528. lalsuite-7.26.2.dev20251202.data/scripts/lalpulsar_dumpSFT +6 -0
  529. lalsuite-7.26.2.dev20251202.data/scripts/lalpulsar_fits_header_getval +6 -0
  530. lalsuite-7.26.2.dev20251202.data/scripts/lalpulsar_fits_header_list +6 -0
  531. lalsuite-7.26.2.dev20251202.data/scripts/lalpulsar_fits_overview +6 -0
  532. lalsuite-7.26.2.dev20251202.data/scripts/lalpulsar_fits_table_list +6 -0
  533. lalsuite-7.26.2.dev20251202.data/scripts/lalpulsar_frequency_evolution +6 -0
  534. lalsuite-7.26.2.dev20251202.data/scripts/lalpulsar_heterodyne +6 -0
  535. {lalsuite-7.22.1.dev20240408.data → lalsuite-7.26.2.dev20251202.data}/scripts/lalpulsar_knope +8 -4
  536. {lalsuite-7.22.1.dev20240408.data → lalsuite-7.26.2.dev20251202.data}/scripts/lalpulsar_knope_automation_script +5 -2
  537. {lalsuite-7.22.1.dev20240408.data → lalsuite-7.26.2.dev20251202.data}/scripts/lalpulsar_knope_collate_results +12 -7
  538. {lalsuite-7.22.1.dev20240408.data → lalsuite-7.26.2.dev20251202.data}/scripts/lalpulsar_knope_result_page +9 -4
  539. lalsuite-7.26.2.dev20251202.data/scripts/lalpulsar_parameter_estimation_nested +6 -0
  540. lalsuite-7.26.2.dev20251202.data/scripts/lalpulsar_spec_avg +6 -0
  541. lalsuite-7.26.2.dev20251202.data/scripts/lalpulsar_spec_avg_long +6 -0
  542. lalsuite-7.26.2.dev20251202.data/scripts/lalpulsar_spec_coherence +6 -0
  543. lalsuite-7.26.2.dev20251202.data/scripts/lalpulsar_splitSFTs +6 -0
  544. lalsuite-7.26.2.dev20251202.data/scripts/lalpulsar_ssbtodetector +6 -0
  545. lalsuite-7.26.2.dev20251202.data/scripts/lalpulsar_synthesizeBstatMC +6 -0
  546. lalsuite-7.26.2.dev20251202.data/scripts/lalpulsar_synthesizeLVStats +6 -0
  547. lalsuite-7.26.2.dev20251202.data/scripts/lalpulsar_synthesizeTransientStats +6 -0
  548. lalsuite-7.26.2.dev20251202.data/scripts/lalpulsar_version +6 -0
  549. lalsuite-7.26.2.dev20251202.data/scripts/lalsim-bh-qnmode +6 -0
  550. lalsuite-7.26.2.dev20251202.data/scripts/lalsim-bh-ringdown +6 -0
  551. lalsuite-7.26.2.dev20251202.data/scripts/lalsim-bh-sphwf +6 -0
  552. lalsuite-7.26.2.dev20251202.data/scripts/lalsim-burst +6 -0
  553. lalsuite-7.26.2.dev20251202.data/scripts/lalsim-detector-noise +6 -0
  554. lalsuite-7.26.2.dev20251202.data/scripts/lalsim-detector-strain +6 -0
  555. lalsuite-7.26.2.dev20251202.data/scripts/lalsim-inject +6 -0
  556. lalsuite-7.26.2.dev20251202.data/scripts/lalsim-inspiral +6 -0
  557. lalsuite-7.26.2.dev20251202.data/scripts/lalsim-ns-eos-table +6 -0
  558. lalsuite-7.26.2.dev20251202.data/scripts/lalsim-ns-mass-radius +6 -0
  559. lalsuite-7.26.2.dev20251202.data/scripts/lalsim-ns-params +6 -0
  560. lalsuite-7.26.2.dev20251202.data/scripts/lalsim-sgwb +6 -0
  561. lalsuite-7.26.2.dev20251202.data/scripts/lalsim-unicorn +6 -0
  562. lalsuite-7.26.2.dev20251202.data/scripts/lalsimulation_version +6 -0
  563. {lalsuite-7.22.1.dev20240408.dist-info → lalsuite-7.26.2.dev20251202.dist-info}/METADATA +28 -11
  564. lalsuite-7.26.2.dev20251202.dist-info/RECORD +733 -0
  565. {lalsuite-7.22.1.dev20240408.dist-info → lalsuite-7.26.2.dev20251202.dist-info}/WHEEL +1 -1
  566. lalsuite.libs/libcfitsio-d1819b02.so.10.0.0 +0 -0
  567. lalsuite.libs/libframel-7c053be1.so.8.48.4 +0 -0
  568. lalsuite.libs/{libgsl-94dbbcc0.so.25.1.0 → libgsl-7aa43ddc.so.28.0.0} +0 -0
  569. lalsuite.libs/libgslcblas-3b2ae915.so.0.0.0 +0 -0
  570. lalsuite.libs/libhdf5-7a791ae9.so.310.5.1 +0 -0
  571. lalsuite.libs/libhdf5_hl-79b5d5b8.so.310.0.6 +0 -0
  572. lalsuite.libs/liblal-debd2aa1.so.20.5.0 +0 -0
  573. lalsuite.libs/liblalburst-308bbb81.so.8.0.0 +0 -0
  574. lalsuite.libs/liblalframe-6516e1c3.so.14.0.3 +0 -0
  575. lalsuite.libs/liblalinference-1721c8ba.so.23.1.7 +0 -0
  576. lalsuite.libs/liblalinspiral-98f96f4d.so.18.0.2 +0 -0
  577. lalsuite.libs/{liblalmetaio-e1c21f30.so.11.0.0 → liblalmetaio-62eed54a.so.11.0.1} +0 -0
  578. lalsuite.libs/liblalpulsar-044eaf70.so.30.1.1 +0 -0
  579. lalsuite.libs/{liblalsimulation-11365514.so.32.4.0 → liblalsimulation-c9131b72.so.37.2.0} +0 -0
  580. lalsuite.libs/liblalsupport-9153c561.so.14.4.0 +0 -0
  581. lalsuite.libs/{liblalburst-a9696b55.so.8.0.0 → libmetaio-b1be2527.so.1.1.0} +0 -0
  582. lalapps/bin/cbcBayesBurstPPAnalysis +0 -5
  583. lalapps/bin/cbcBayesBurstPostProc +0 -5
  584. lalapps/bin/cbcBayesCombinePTMCMCh5s +0 -5
  585. lalapps/bin/cbcBayesCombinePosteriors +0 -5
  586. lalapps/bin/cbcBayesCompPos +0 -5
  587. lalapps/bin/cbcBayesDIEvidence +0 -5
  588. lalapps/bin/cbcBayesGraceDBinfo +0 -5
  589. lalapps/bin/cbcBayesMCMC2pos +0 -5
  590. lalapps/bin/cbcBayesPPAnalysis +0 -5
  591. lalapps/bin/cbcBayesPlotSpinDisk +0 -5
  592. lalapps/bin/cbcBayesPosToSimBurst +0 -5
  593. lalapps/bin/cbcBayesPosToSimInspiral +0 -5
  594. lalapps/bin/cbcBayesPostProc +0 -5
  595. lalapps/bin/cbcBayesThermoInt +0 -5
  596. lalapps/bin/imrtgr_imr_consistency_test +0 -5
  597. lalapps/bin/lal_path2cache +0 -5
  598. lalapps/bin/lal_searchsum2cache +0 -5
  599. lalapps/bin/lalapps_cafe +0 -5
  600. lalapps/bin/lalapps_calcexpsnr +0 -0
  601. lalapps/bin/lalapps_cosmicstring_pipe +0 -5
  602. lalapps/bin/lalapps_create_solar_system_ephemeris +0 -16
  603. lalapps/bin/lalapps_create_solar_system_ephemeris_python +0 -16
  604. lalapps/bin/lalapps_power_likelihood_pipe +0 -5
  605. lalapps/bin/lalapps_power_pipe +0 -5
  606. lalapps/bin/lalapps_string_apply_vetoes +0 -5
  607. lalapps/bin/lalapps_string_calc_likelihood +0 -5
  608. lalapps/bin/lalapps_string_contour_plotter +0 -5
  609. lalapps/bin/lalapps_string_contour_plotter_largeloops +0 -5
  610. lalapps/bin/lalapps_string_cs_gamma +0 -5
  611. lalapps/bin/lalapps_string_cs_gamma_largeloops +0 -5
  612. lalapps/bin/lalapps_string_final +0 -5
  613. lalapps/bin/lalapps_string_meas_likelihood +0 -5
  614. lalapps/bin/lalapps_string_plot_binj +0 -5
  615. lalapps/bin/lalapps_string_plot_likelihood +0 -5
  616. lalapps/bin/lalburst_cluster +0 -5
  617. lalapps/bin/lalburst_coinc +0 -5
  618. lalapps/bin/lalburst_cut +0 -5
  619. lalapps/bin/lalburst_gen_timeslides +0 -5
  620. lalapps/bin/lalburst_inj_pic +0 -5
  621. lalapps/bin/lalburst_injfind +0 -5
  622. lalapps/bin/lalburst_plot_tisi +0 -5
  623. lalapps/bin/lalburst_power_calc_likelihood +0 -5
  624. lalapps/bin/lalburst_power_final +0 -5
  625. lalapps/bin/lalburst_power_meas_likelihood +0 -5
  626. lalapps/bin/lalburst_power_plot_binj +0 -5
  627. lalapps/bin/lalburst_power_plot_binjtf +0 -5
  628. lalapps/bin/lalinference_burst_pp_pipe +0 -5
  629. lalapps/bin/lalinference_coherence_test +0 -5
  630. lalapps/bin/lalinference_compute_roq_weights +0 -5
  631. lalapps/bin/lalinference_cpnest +0 -5
  632. lalapps/bin/lalinference_evolve_spins_and_append_samples +0 -5
  633. lalapps/bin/lalinference_kombine +0 -0
  634. lalapps/bin/lalinference_mcmc +0 -0
  635. lalapps/bin/lalinference_merge_posteriors +0 -5
  636. lalapps/bin/lalinference_multi_pipe +0 -5
  637. lalapps/bin/lalinference_nest2pos +0 -5
  638. lalapps/bin/lalinference_pipe +0 -5
  639. lalapps/bin/lalinference_pp_pipe +0 -5
  640. lalapps/bin/lalinference_review_test +0 -5
  641. lalapps/bin/lalinspiral_injfind +0 -5
  642. lalapps/bin/lalinspiral_thinca +0 -5
  643. lalapps/bin/lalpulsar_CopyPublicSFTs +0 -5
  644. lalapps/bin/lalpulsar_MakeSFTDAG +0 -5
  645. lalapps/bin/lalpulsar_combine_crosscorr_toplists +0 -5
  646. lalapps/bin/lalpulsar_create_solar_system_ephemeris +0 -0
  647. lalapps/bin/lalpulsar_create_solar_system_ephemeris_python +0 -5
  648. lalapps/bin/lalpulsar_knope +0 -5
  649. lalapps/bin/lalpulsar_knope_automation_script +0 -5
  650. lalapps/bin/lalpulsar_knope_collate_results +0 -5
  651. lalapps/bin/lalpulsar_knope_result_page +0 -5
  652. lalapps/bin/lalpulsar_run_crosscorr_v2 +0 -5
  653. lalapps/inspiral.py +0 -3394
  654. lalsuite-7.22.1.dev20240408.data/scripts/lal_cache +0 -9
  655. lalsuite-7.22.1.dev20240408.data/scripts/lal_fftw_wisdom +0 -9
  656. lalsuite-7.22.1.dev20240408.data/scripts/lal_fftwf_wisdom +0 -9
  657. lalsuite-7.22.1.dev20240408.data/scripts/lal_simd_detect +0 -9
  658. lalsuite-7.22.1.dev20240408.data/scripts/lal_tconvert +0 -9
  659. lalsuite-7.22.1.dev20240408.data/scripts/lal_version +0 -9
  660. lalsuite-7.22.1.dev20240408.data/scripts/lalapps_ComputeAntennaPattern +0 -9
  661. lalsuite-7.22.1.dev20240408.data/scripts/lalapps_ComputeFstatBenchmark +0 -9
  662. lalsuite-7.22.1.dev20240408.data/scripts/lalapps_ComputeFstatLatticeCount +0 -9
  663. lalsuite-7.22.1.dev20240408.data/scripts/lalapps_ComputeFstatMCUpperLimit +0 -9
  664. lalsuite-7.22.1.dev20240408.data/scripts/lalapps_ComputeFstatistic_v2 +0 -9
  665. lalsuite-7.22.1.dev20240408.data/scripts/lalapps_ComputePSD +0 -9
  666. lalsuite-7.22.1.dev20240408.data/scripts/lalapps_CopySFTs +0 -9
  667. lalsuite-7.22.1.dev20240408.data/scripts/lalapps_DistanceVsMass +0 -9
  668. lalsuite-7.22.1.dev20240408.data/scripts/lalapps_DriveHoughMulti +0 -9
  669. lalsuite-7.22.1.dev20240408.data/scripts/lalapps_FstatMetric_v2 +0 -9
  670. lalsuite-7.22.1.dev20240408.data/scripts/lalapps_HierarchSearchGCT +0 -9
  671. lalsuite-7.22.1.dev20240408.data/scripts/lalapps_HierarchicalSearch +0 -9
  672. lalsuite-7.22.1.dev20240408.data/scripts/lalapps_MakeSFTDAG +0 -9
  673. lalsuite-7.22.1.dev20240408.data/scripts/lalapps_MakeSFTs +0 -9
  674. lalsuite-7.22.1.dev20240408.data/scripts/lalapps_Makefakedata_v4 +0 -9
  675. lalsuite-7.22.1.dev20240408.data/scripts/lalapps_Makefakedata_v5 +0 -9
  676. lalsuite-7.22.1.dev20240408.data/scripts/lalapps_PredictFstat +0 -9
  677. lalsuite-7.22.1.dev20240408.data/scripts/lalapps_PrintDetectorState +0 -9
  678. lalsuite-7.22.1.dev20240408.data/scripts/lalapps_SFTclean +0 -9
  679. lalsuite-7.22.1.dev20240408.data/scripts/lalapps_SFTvalidate +0 -9
  680. lalsuite-7.22.1.dev20240408.data/scripts/lalapps_StringAddFrame +0 -9
  681. lalsuite-7.22.1.dev20240408.data/scripts/lalapps_StringSearch +0 -9
  682. lalsuite-7.22.1.dev20240408.data/scripts/lalapps_Weave +0 -9
  683. lalsuite-7.22.1.dev20240408.data/scripts/lalapps_WeaveCompare +0 -9
  684. lalsuite-7.22.1.dev20240408.data/scripts/lalapps_WeaveConcat +0 -9
  685. lalsuite-7.22.1.dev20240408.data/scripts/lalapps_WeaveSetup +0 -9
  686. lalsuite-7.22.1.dev20240408.data/scripts/lalapps_WriteSFTsfromSFDBs +0 -9
  687. lalsuite-7.22.1.dev20240408.data/scripts/lalapps_animate +0 -9
  688. lalsuite-7.22.1.dev20240408.data/scripts/lalapps_binj +0 -9
  689. lalsuite-7.22.1.dev20240408.data/scripts/lalapps_blindinj +0 -9
  690. lalsuite-7.22.1.dev20240408.data/scripts/lalapps_cache +0 -9
  691. lalsuite-7.22.1.dev20240408.data/scripts/lalapps_calcexpsnr +0 -9
  692. lalsuite-7.22.1.dev20240408.data/scripts/lalapps_calfacs +0 -9
  693. lalsuite-7.22.1.dev20240408.data/scripts/lalapps_cbc_stochasticbank +0 -9
  694. lalsuite-7.22.1.dev20240408.data/scripts/lalapps_chirplen +0 -9
  695. lalsuite-7.22.1.dev20240408.data/scripts/lalapps_coh_PTF_inspiral +0 -9
  696. lalsuite-7.22.1.dev20240408.data/scripts/lalapps_coinj +0 -9
  697. lalsuite-7.22.1.dev20240408.data/scripts/lalapps_combine_crosscorr_toplists +0 -9
  698. lalsuite-7.22.1.dev20240408.data/scripts/lalapps_compareFstats +0 -9
  699. lalsuite-7.22.1.dev20240408.data/scripts/lalapps_compareSFTs +0 -9
  700. lalsuite-7.22.1.dev20240408.data/scripts/lalapps_create_solar_system_ephemeris +0 -9
  701. lalsuite-7.22.1.dev20240408.data/scripts/lalapps_create_solar_system_ephemeris_python +0 -9
  702. lalsuite-7.22.1.dev20240408.data/scripts/lalapps_dumpSFT +0 -9
  703. lalsuite-7.22.1.dev20240408.data/scripts/lalapps_effdist +0 -9
  704. lalsuite-7.22.1.dev20240408.data/scripts/lalapps_exc_resp +0 -9
  705. lalsuite-7.22.1.dev20240408.data/scripts/lalapps_fftw_wisdom +0 -9
  706. lalsuite-7.22.1.dev20240408.data/scripts/lalapps_fftwf_wisdom +0 -9
  707. lalsuite-7.22.1.dev20240408.data/scripts/lalapps_fits_header_getval +0 -9
  708. lalsuite-7.22.1.dev20240408.data/scripts/lalapps_fits_header_list +0 -9
  709. lalsuite-7.22.1.dev20240408.data/scripts/lalapps_fits_overview +0 -9
  710. lalsuite-7.22.1.dev20240408.data/scripts/lalapps_fits_table_list +0 -9
  711. lalsuite-7.22.1.dev20240408.data/scripts/lalapps_fr_ninja +0 -9
  712. lalsuite-7.22.1.dev20240408.data/scripts/lalapps_frextr +0 -9
  713. lalsuite-7.22.1.dev20240408.data/scripts/lalapps_frinfo +0 -9
  714. lalsuite-7.22.1.dev20240408.data/scripts/lalapps_frjoin +0 -9
  715. lalsuite-7.22.1.dev20240408.data/scripts/lalapps_frread +0 -9
  716. lalsuite-7.22.1.dev20240408.data/scripts/lalapps_frview +0 -9
  717. lalsuite-7.22.1.dev20240408.data/scripts/lalapps_gwf2xml +0 -9
  718. lalsuite-7.22.1.dev20240408.data/scripts/lalapps_heterodyne_pulsar +0 -9
  719. lalsuite-7.22.1.dev20240408.data/scripts/lalapps_inspawgfile +0 -9
  720. lalsuite-7.22.1.dev20240408.data/scripts/lalapps_inspfrinj +0 -9
  721. lalsuite-7.22.1.dev20240408.data/scripts/lalapps_inspinj +0 -9
  722. lalsuite-7.22.1.dev20240408.data/scripts/lalapps_inspiralDistance +0 -9
  723. lalsuite-7.22.1.dev20240408.data/scripts/lalapps_knope +0 -9
  724. lalsuite-7.22.1.dev20240408.data/scripts/lalapps_knope_automation_script +0 -9
  725. lalsuite-7.22.1.dev20240408.data/scripts/lalapps_knope_collate_results +0 -9
  726. lalsuite-7.22.1.dev20240408.data/scripts/lalapps_knope_result_page +0 -9
  727. lalsuite-7.22.1.dev20240408.data/scripts/lalapps_makeblindinj +0 -9
  728. lalsuite-7.22.1.dev20240408.data/scripts/lalapps_makeblindinj_himass +0 -9
  729. lalsuite-7.22.1.dev20240408.data/scripts/lalapps_ninja +0 -9
  730. lalsuite-7.22.1.dev20240408.data/scripts/lalapps_path2cache +0 -9
  731. lalsuite-7.22.1.dev20240408.data/scripts/lalapps_power +0 -9
  732. lalsuite-7.22.1.dev20240408.data/scripts/lalapps_pulsar_crosscorr_v2 +0 -9
  733. lalsuite-7.22.1.dev20240408.data/scripts/lalapps_pulsar_frequency_evolution +0 -9
  734. lalsuite-7.22.1.dev20240408.data/scripts/lalapps_random_bank +0 -9
  735. lalsuite-7.22.1.dev20240408.data/scripts/lalapps_randombank +0 -9
  736. lalsuite-7.22.1.dev20240408.data/scripts/lalapps_run_pulsar_crosscorr_v2 +0 -9
  737. lalsuite-7.22.1.dev20240408.data/scripts/lalapps_searchsum2cache +0 -9
  738. lalsuite-7.22.1.dev20240408.data/scripts/lalapps_spec_avg +0 -9
  739. lalsuite-7.22.1.dev20240408.data/scripts/lalapps_spec_avg_long +0 -9
  740. lalsuite-7.22.1.dev20240408.data/scripts/lalapps_spec_coherence +0 -9
  741. lalsuite-7.22.1.dev20240408.data/scripts/lalapps_spininj +0 -9
  742. lalsuite-7.22.1.dev20240408.data/scripts/lalapps_splitSFTs +0 -9
  743. lalsuite-7.22.1.dev20240408.data/scripts/lalapps_splitbank +0 -9
  744. lalsuite-7.22.1.dev20240408.data/scripts/lalapps_ssbtodetector +0 -9
  745. lalsuite-7.22.1.dev20240408.data/scripts/lalapps_synthesizeBstatMC +0 -9
  746. lalsuite-7.22.1.dev20240408.data/scripts/lalapps_synthesizeLVStats +0 -9
  747. lalsuite-7.22.1.dev20240408.data/scripts/lalapps_synthesizeTransientStats +0 -9
  748. lalsuite-7.22.1.dev20240408.data/scripts/lalapps_tconvert +0 -9
  749. lalsuite-7.22.1.dev20240408.data/scripts/lalapps_tmpltbank +0 -9
  750. lalsuite-7.22.1.dev20240408.data/scripts/lalapps_version +0 -9
  751. lalsuite-7.22.1.dev20240408.data/scripts/lalapps_xtefitstoframe +0 -9
  752. lalsuite-7.22.1.dev20240408.data/scripts/lalburst_version +0 -9
  753. lalsuite-7.22.1.dev20240408.data/scripts/lalfr-cat +0 -9
  754. lalsuite-7.22.1.dev20240408.data/scripts/lalfr-cksum +0 -9
  755. lalsuite-7.22.1.dev20240408.data/scripts/lalfr-cut +0 -9
  756. lalsuite-7.22.1.dev20240408.data/scripts/lalfr-dump +0 -9
  757. lalsuite-7.22.1.dev20240408.data/scripts/lalfr-fmt +0 -9
  758. lalsuite-7.22.1.dev20240408.data/scripts/lalfr-paste +0 -9
  759. lalsuite-7.22.1.dev20240408.data/scripts/lalfr-print +0 -9
  760. lalsuite-7.22.1.dev20240408.data/scripts/lalfr-split +0 -9
  761. lalsuite-7.22.1.dev20240408.data/scripts/lalfr-stat +0 -9
  762. lalsuite-7.22.1.dev20240408.data/scripts/lalfr-stream +0 -9
  763. lalsuite-7.22.1.dev20240408.data/scripts/lalfr-vis +0 -9
  764. lalsuite-7.22.1.dev20240408.data/scripts/lalframe_version +0 -9
  765. lalsuite-7.22.1.dev20240408.data/scripts/lalinference_bench +0 -9
  766. lalsuite-7.22.1.dev20240408.data/scripts/lalinference_burst +0 -9
  767. lalsuite-7.22.1.dev20240408.data/scripts/lalinference_datadump +0 -9
  768. lalsuite-7.22.1.dev20240408.data/scripts/lalinference_injectedlike +0 -9
  769. lalsuite-7.22.1.dev20240408.data/scripts/lalinference_kombine +0 -9
  770. lalsuite-7.22.1.dev20240408.data/scripts/lalinference_mcmc +0 -9
  771. lalsuite-7.22.1.dev20240408.data/scripts/lalinference_mpi_wrapper +0 -9
  772. lalsuite-7.22.1.dev20240408.data/scripts/lalinference_nest +0 -9
  773. lalsuite-7.22.1.dev20240408.data/scripts/lalinference_version +0 -9
  774. lalsuite-7.22.1.dev20240408.data/scripts/lalinspiral_version +0 -9
  775. lalsuite-7.22.1.dev20240408.data/scripts/lalmetaio_version +0 -9
  776. lalsuite-7.22.1.dev20240408.data/scripts/lalpulsar_ComputeAntennaPattern +0 -9
  777. lalsuite-7.22.1.dev20240408.data/scripts/lalpulsar_ComputeFstatBenchmark +0 -9
  778. lalsuite-7.22.1.dev20240408.data/scripts/lalpulsar_ComputeFstatLatticeCount +0 -9
  779. lalsuite-7.22.1.dev20240408.data/scripts/lalpulsar_ComputeFstatMCUpperLimit +0 -9
  780. lalsuite-7.22.1.dev20240408.data/scripts/lalpulsar_ComputeFstatistic_v2 +0 -9
  781. lalsuite-7.22.1.dev20240408.data/scripts/lalpulsar_ComputePSD +0 -9
  782. lalsuite-7.22.1.dev20240408.data/scripts/lalpulsar_DriveHoughMulti +0 -9
  783. lalsuite-7.22.1.dev20240408.data/scripts/lalpulsar_FstatMetric_v2 +0 -9
  784. lalsuite-7.22.1.dev20240408.data/scripts/lalpulsar_HierarchSearchGCT +0 -9
  785. lalsuite-7.22.1.dev20240408.data/scripts/lalpulsar_HierarchicalSearch +0 -9
  786. lalsuite-7.22.1.dev20240408.data/scripts/lalpulsar_MakeSFTs +0 -9
  787. lalsuite-7.22.1.dev20240408.data/scripts/lalpulsar_Makefakedata_v4 +0 -9
  788. lalsuite-7.22.1.dev20240408.data/scripts/lalpulsar_Makefakedata_v5 +0 -9
  789. lalsuite-7.22.1.dev20240408.data/scripts/lalpulsar_PredictFstat +0 -9
  790. lalsuite-7.22.1.dev20240408.data/scripts/lalpulsar_PrintDetectorState +0 -9
  791. lalsuite-7.22.1.dev20240408.data/scripts/lalpulsar_SFTclean +0 -9
  792. lalsuite-7.22.1.dev20240408.data/scripts/lalpulsar_SFTvalidate +0 -9
  793. lalsuite-7.22.1.dev20240408.data/scripts/lalpulsar_Weave +0 -9
  794. lalsuite-7.22.1.dev20240408.data/scripts/lalpulsar_WeaveCompare +0 -9
  795. lalsuite-7.22.1.dev20240408.data/scripts/lalpulsar_WeaveConcat +0 -9
  796. lalsuite-7.22.1.dev20240408.data/scripts/lalpulsar_WeaveSetup +0 -9
  797. lalsuite-7.22.1.dev20240408.data/scripts/lalpulsar_WriteSFTsfromSFDBs +0 -9
  798. lalsuite-7.22.1.dev20240408.data/scripts/lalpulsar_combine_crosscorr_toplists +0 -114
  799. lalsuite-7.22.1.dev20240408.data/scripts/lalpulsar_compareFstats +0 -9
  800. lalsuite-7.22.1.dev20240408.data/scripts/lalpulsar_compareSFTs +0 -9
  801. lalsuite-7.22.1.dev20240408.data/scripts/lalpulsar_create_solar_system_ephemeris +0 -9
  802. lalsuite-7.22.1.dev20240408.data/scripts/lalpulsar_create_solar_system_ephemeris_python +0 -314
  803. lalsuite-7.22.1.dev20240408.data/scripts/lalpulsar_crosscorr_v2 +0 -9
  804. lalsuite-7.22.1.dev20240408.data/scripts/lalpulsar_dumpSFT +0 -9
  805. lalsuite-7.22.1.dev20240408.data/scripts/lalpulsar_fits_header_getval +0 -9
  806. lalsuite-7.22.1.dev20240408.data/scripts/lalpulsar_fits_header_list +0 -9
  807. lalsuite-7.22.1.dev20240408.data/scripts/lalpulsar_fits_overview +0 -9
  808. lalsuite-7.22.1.dev20240408.data/scripts/lalpulsar_fits_table_list +0 -9
  809. lalsuite-7.22.1.dev20240408.data/scripts/lalpulsar_frequency_evolution +0 -9
  810. lalsuite-7.22.1.dev20240408.data/scripts/lalpulsar_heterodyne +0 -9
  811. lalsuite-7.22.1.dev20240408.data/scripts/lalpulsar_parameter_estimation_nested +0 -9
  812. lalsuite-7.22.1.dev20240408.data/scripts/lalpulsar_run_crosscorr_v2 +0 -114
  813. lalsuite-7.22.1.dev20240408.data/scripts/lalpulsar_spec_avg +0 -9
  814. lalsuite-7.22.1.dev20240408.data/scripts/lalpulsar_spec_avg_long +0 -9
  815. lalsuite-7.22.1.dev20240408.data/scripts/lalpulsar_spec_coherence +0 -9
  816. lalsuite-7.22.1.dev20240408.data/scripts/lalpulsar_splitSFTs +0 -9
  817. lalsuite-7.22.1.dev20240408.data/scripts/lalpulsar_ssbtodetector +0 -9
  818. lalsuite-7.22.1.dev20240408.data/scripts/lalpulsar_synthesizeBstatMC +0 -9
  819. lalsuite-7.22.1.dev20240408.data/scripts/lalpulsar_synthesizeLVStats +0 -9
  820. lalsuite-7.22.1.dev20240408.data/scripts/lalpulsar_synthesizeTransientStats +0 -9
  821. lalsuite-7.22.1.dev20240408.data/scripts/lalpulsar_version +0 -9
  822. lalsuite-7.22.1.dev20240408.data/scripts/lalsim-bh-qnmode +0 -9
  823. lalsuite-7.22.1.dev20240408.data/scripts/lalsim-bh-ringdown +0 -9
  824. lalsuite-7.22.1.dev20240408.data/scripts/lalsim-bh-sphwf +0 -9
  825. lalsuite-7.22.1.dev20240408.data/scripts/lalsim-burst +0 -9
  826. lalsuite-7.22.1.dev20240408.data/scripts/lalsim-detector-noise +0 -9
  827. lalsuite-7.22.1.dev20240408.data/scripts/lalsim-detector-strain +0 -9
  828. lalsuite-7.22.1.dev20240408.data/scripts/lalsim-inject +0 -9
  829. lalsuite-7.22.1.dev20240408.data/scripts/lalsim-inspiral +0 -9
  830. lalsuite-7.22.1.dev20240408.data/scripts/lalsim-ns-eos-table +0 -9
  831. lalsuite-7.22.1.dev20240408.data/scripts/lalsim-ns-mass-radius +0 -9
  832. lalsuite-7.22.1.dev20240408.data/scripts/lalsim-ns-params +0 -9
  833. lalsuite-7.22.1.dev20240408.data/scripts/lalsim-sgwb +0 -9
  834. lalsuite-7.22.1.dev20240408.data/scripts/lalsim-unicorn +0 -9
  835. lalsuite-7.22.1.dev20240408.data/scripts/lalsimulation_version +0 -9
  836. lalsuite-7.22.1.dev20240408.dist-info/RECORD +0 -801
  837. lalsuite.libs/libcfitsio-532e331a.so.9.4.1.0 +0 -0
  838. lalsuite.libs/libframel-aeb609a2.so.8.43.1 +0 -0
  839. lalsuite.libs/libgslcblas-54d609c0.so.0.0.0 +0 -0
  840. lalsuite.libs/libhdf5-ea33c527.so.310.1.0 +0 -0
  841. lalsuite.libs/libhdf5_hl-0d80d0b5.so.310.0.1 +0 -0
  842. lalsuite.libs/libhwloc-8ede5728.so.15.2.0 +0 -0
  843. lalsuite.libs/liblal-64dd038b.so.20.3.3 +0 -0
  844. lalsuite.libs/liblalframe-fbdbee2a.so.14.0.1 +0 -0
  845. lalsuite.libs/liblalinference-23be231c.so.23.1.4 +0 -0
  846. lalsuite.libs/liblalinspiral-c9370bff.so.18.0.0 +0 -0
  847. lalsuite.libs/liblalpulsar-81ec7d94.so.29.0.4 +0 -0
  848. lalsuite.libs/liblalsupport-58f59a0d.so.14.2.0 +0 -0
  849. lalsuite.libs/libmetaio-2ada2150.so.1.1.0 +0 -0
  850. lalsuite.libs/libmpi-917c0d24.so.12.1.11 +0 -0
  851. {lalsuite-7.22.1.dev20240408.dist-info → lalsuite-7.26.2.dev20251202.dist-info/licenses}/COPYING +0 -0
  852. {lalsuite-7.22.1.dev20240408.dist-info → lalsuite-7.26.2.dev20251202.dist-info}/top_level.txt +0 -0
lalapps/inspiral.py DELETED
@@ -1,3394 +0,0 @@
1
- """
2
- Classes needed for the inspiral analysis pipeline.
3
- This script produced the necessary condor submit and dag files to run
4
- the standalone inspiral code on LIGO data
5
- """
6
-
7
- from __future__ import print_function
8
-
9
- __author__ = 'Duncan Brown <duncan@gravity.phys.uwm.edu>'
10
- __date__ = '$Date$'
11
- __version__ = '$Revision$'
12
-
13
- import copy
14
- import string
15
- import sys, os, re, subprocess
16
- from glue import pipeline
17
- from glue import lal
18
-
19
-
20
- class InspiralError(Exception):
21
- def __init__(self, args=None):
22
- self.args = args
23
-
24
-
25
- #############################################################################
26
-
27
-
28
- class InspiralAnalysisJob(pipeline.AnalysisJob, pipeline.CondorDAGJob):
29
- """
30
- An inspiral analysis job captures some of the common features of the specific
31
- inspiral jobs that appear below. Specifically, the universe and exec_name
32
- are set, the stdout and stderr from the job are directed to the logs
33
- directory. The path to the executable is determined from the ini file.
34
- """
35
- def __init__(self,cp,sections,exec_name,extension='xml'):
36
- """
37
- cp = ConfigParser object from which options are read.
38
- sections = sections of the ConfigParser that get added to the opts
39
- exec_name = exec_name name in ConfigParser
40
- """
41
- self.__exec_name = exec_name
42
- self.__extension = extension
43
- universe = cp.get('condor','universe')
44
- executable = cp.get('condor',exec_name)
45
- pipeline.CondorDAGJob.__init__(self,universe,executable)
46
- pipeline.AnalysisJob.__init__(self,cp)
47
- self.add_condor_cmd('copy_to_spool','False')
48
- self.__use_gpus = cp.has_option('condor', 'use-gpus')
49
-
50
- mycp = copy.deepcopy(cp)
51
- for sec in sections:
52
- if mycp.has_section(sec):
53
- # add all the other options as arguments to the code
54
- self.add_ini_opts(mycp, sec)
55
-
56
- else:
57
- print("warning: config file is missing section [" + sec + "]", file=sys.stderr)
58
-
59
- self.set_stdout_file('logs/' + exec_name + \
60
- '-$(macrogpsstarttime)-$(macrogpsendtime)-$(cluster)-$(process).out')
61
- self.set_stderr_file('logs/' + exec_name + \
62
- '-$(macrogpsstarttime)-$(macrogpsendtime)-$(cluster)-$(process).err')
63
- self.set_sub_file(exec_name + '.sub')
64
-
65
- def set_exec_name(self,exec_name):
66
- """
67
- Set the exec_name name
68
- """
69
- self.__exec_name = exec_name
70
-
71
- def get_exec_name(self):
72
- """
73
- Get the exec_name name
74
- """
75
- return self.__exec_name
76
-
77
- def set_extension(self,extension):
78
- """
79
- Set the file extension
80
- """
81
- self.__extension = extension
82
-
83
- def get_extension(self):
84
- """
85
- Get the extension for the file name
86
- """
87
- return self.__extension
88
-
89
- def get_use_gpus(self):
90
- """
91
- Get whether this job was requested to run on a GPU node
92
- """
93
- return self.__use_gpus
94
-
95
-
96
- #############################################################################
97
-
98
- class InspiralPlottingJob(InspiralAnalysisJob):
99
- """
100
- The InspiralPlottingJob class will assign options common to all plotting
101
- jobs. Currently this is only MPLCONFIGDIR.
102
- """
103
- def __init__(self,cp,sections,exec_name,extension='xml'):
104
- """
105
- cp = ConfigParser object from which options are read.
106
- sections = sections of the ConfigParser that get added to the opts
107
- exec_name = exec_name name in ConfigParser
108
- """
109
- InspiralAnalysisJob.__init__(self,cp,sections,exec_name,extension)
110
- self.add_condor_cmd('getenv','True')
111
- if cp.has_option('pipeline','matplotlibdir'):
112
- MPLConfigPath = cp.get('pipeline','matplotlibdir')
113
- self.add_condor_cmd('environment','MPLCONFIGDIR=' + MPLConfigPath)
114
-
115
- #############################################################################
116
-
117
- class TmpltBankJob(InspiralAnalysisJob):
118
- """
119
- A lalapps_tmpltbank job used by the inspiral pipeline. The static options
120
- are read from the sections [data] and [tmpltbank] in the ini file. The
121
- stdout and stderr from the job are directed to the logs directory. The job
122
- runs in the universe specfied in the ini file. The path to the executable
123
- is determined from the ini file.
124
- """
125
- def __init__(self,cp):
126
- """
127
- cp = ConfigParser object from which options are read.
128
- """
129
- exec_name = 'tmpltbank'
130
- extension = 'xml'
131
- sections = ['data','tmpltbank']
132
-
133
- have_pycbc = False
134
- if cp.has_option('tmpltbank', 'pycbc'):
135
- have_pycbc=True
136
- cp.set('condor', 'universe', 'vanilla')
137
-
138
- InspiralAnalysisJob.__init__(self,cp,sections,exec_name,extension)
139
-
140
- if have_pycbc:
141
- self.add_condor_cmd('getenv', 'True')
142
-
143
-
144
-
145
- class InspInjJob(InspiralAnalysisJob):
146
- """
147
- A lalapps_inspinj job used by the grb inspiral pipeline. The static options
148
- are read from the section [inspinj] in the ini file. The
149
- stdout and stderr from the job are directed to the logs directory. The
150
- job runs in the universe specified in the ini file. The path to the
151
- executable is determined from the ini file.
152
- """
153
- def __init__(self,cp):
154
- """
155
- cp = ConfigParser object from which options are read.
156
- """
157
- exec_name = 'inspinj'
158
- sections = ['inspinj']
159
- extension = 'xml'
160
- InspiralAnalysisJob.__init__(self,cp,sections,exec_name,extension)
161
- self.set_universe('vanilla')
162
-
163
- self.__listDone=[]
164
- self.__listNodes=[]
165
-
166
- def set_done(self,number,node):
167
- self.__listDone.append(number)
168
- self.__listNodes.append(node)
169
-
170
- def check_node(self, number):
171
- if self.__listDone.count(number):
172
- index=self.__listDone.index(number)
173
- return self.__listNodes[index]
174
- return None
175
-
176
-
177
- class BbhInjJob(InspiralAnalysisJob):
178
- """
179
- A lalapps_bbhinj job used by the online inspiral pipeline. The static options
180
- are read from the section [bbhinj] in the ini file. The
181
- stdout and stderr from the job are directed to the logs directory. The
182
- job runs in the universe specified in the ini file. The path to the
183
- executable is determined from the ini file.
184
- """
185
- def __init__(self,cp):
186
- """
187
- cp = ConfigParser object from which options are read.
188
- """
189
- exec_name = 'bbhinj'
190
- sections = ['bbhinj']
191
- extension = 'xml'
192
- InspiralAnalysisJob.__init__(self,cp,sections,exec_name,extension)
193
-
194
-
195
- class RandomBankJob(InspiralAnalysisJob):
196
- """
197
- A lalapps_randombank job used by the inspiral pipeline. The static options
198
- are read from the section [randombank] in the ini file. The stdout and
199
- stderr from the job are directed to the logs directory. The job runs in the
200
- universe specfied in the ini file. The path to the executable is determined
201
- from the ini file.
202
- """
203
- def __init__(self,cp):
204
- """
205
- cp = ConfigParser object from which options are read.
206
- """
207
- exec_name = 'randombank'
208
- sections = ['randombank']
209
- extension = 'xml'
210
- InspiralAnalysisJob.__init__(self,cp,sections,exec_name,extension)
211
-
212
-
213
- class SplitBankJob(InspiralAnalysisJob):
214
- """
215
- A lalapps_splitbank job used by the inspiral pipeline. The static options
216
- are read from the section [splitbank] in the ini file. The stdout and stderr
217
- from the job are directed to the logs directory. The job runs in the
218
- universe specfied in the ini file. The path to the executable is determined
219
- from the ini file.
220
- """
221
- def __init__(self,cp):
222
- """
223
- cp = ConfigParser object from which options are read.
224
- """
225
- exec_name = 'splitbank'
226
- sections = ['splitbank']
227
- extension = 'xml'
228
- InspiralAnalysisJob.__init__(self,cp,sections,exec_name,extension)
229
-
230
-
231
- class InspiralJob(InspiralAnalysisJob):
232
- """
233
- A lalapps_inspiral job used by the inspiral pipeline. The static options
234
- are read from the sections [data] and [inspiral] in the ini file. The
235
- stdout and stderr from the job are directed to the logs directory. The job
236
- runs in the universe specfied in the ini file. The path to the executable
237
- is determined from the ini file. If the user requested GPU utilization,
238
- checks are done to ensure a successful run and the necessary Condor
239
- commands are added.
240
- """
241
- def __init__(self,cp):
242
- """
243
- cp = ConfigParser object from which options are read.
244
- """
245
- exec_name = 'inspiral'
246
- sections = ['data','inspiral']
247
- extension = 'xml'
248
-
249
- have_pycbc = False
250
- if cp.has_option('inspiral', 'pycbc'):
251
- have_pycbc=True
252
- cp.set('condor', 'universe', 'vanilla')
253
- cp.remove_option('inspiral', 'pycbc')
254
-
255
- InspiralAnalysisJob.__init__(self,cp,sections,exec_name,extension)
256
- self.add_condor_cmd('environment',"KMP_LIBRARY=serial;MKL_SERIAL=yes")
257
- self.add_condor_cmd('request_memory', '1000')
258
-
259
- if have_pycbc:
260
- self.add_condor_cmd('getenv', 'True')
261
-
262
-
263
- if self.get_use_gpus():
264
- # make sure the vanilla universe is being used
265
- universe = cp.get('condor', 'universe')
266
- if universe != 'vanilla':
267
- raise RuntimeError('Cannot run GPU inspiral jobs on Condor ' + \
268
- universe + ' universe. Please use vanilla.')
269
- # make sure the executable has CUDA dependencies
270
- executable = cp.get('condor', exec_name)
271
- objdump_re = re.compile(r'^\s*NEEDED\s*(libcufft\.|libcudart\.).*')
272
- proc = subprocess.Popen(['objdump', '-p', executable], \
273
- stdin=None, stdout=subprocess.PIPE)
274
- cuda_deps = False
275
- for line in proc.stdout:
276
- m = objdump_re.match(line)
277
- if m:
278
- cuda_deps = True
279
- break
280
- if not cuda_deps:
281
- raise RuntimeError('Inspiral executable has no CUDA ' + \
282
- 'dependencies. Please use a CUDA-enabled build.')
283
- self.add_opt('gpu-device-id', '0')
284
- self.add_condor_cmd('+WantGPU', 'true')
285
- self.add_condor_cmd('Requirements', '( GPU_PRESENT =?= true)')
286
-
287
-
288
- class InspiralCkptJob(InspiralAnalysisJob):
289
- """
290
- A lalapps_inspiral job used by the inspiral pipeline. The static options
291
- are read from the sections [data] and [inspiral] in the ini file. The
292
- stdout and stderr from the job are directed to the logs directory. The job
293
- runs in the universe specfied in the ini file. The path to the executable
294
- is determined from the ini file.
295
- This one checkpoints.
296
- """
297
- def __init__(self,cp):
298
- """
299
- cp = ConfigParser object from which options are read.
300
- """
301
- exec_name = 'inspiral'
302
- sections = []
303
- extension = 'xml'
304
- InspiralAnalysisJob.__init__(self,cp,sections,exec_name,extension)
305
- self.add_short_opt('_condor_relocatable', '')
306
-
307
-
308
- class PTFInspiralJob(InspiralAnalysisJob):
309
- """
310
- A lalapps_inspiral job used by the inspiral pipeline. The static options
311
- are read from the sections [data] and [inspiral] in the ini file. The
312
- stdout and stderr from the job are directed to the logs directory. The job
313
- runs in the universe specfied in the ini file. The path to the executable
314
- is determined from the ini file.
315
- """
316
- def __init__(self,cp):
317
- """
318
- cp = ConfigParser object from which options are read.
319
- """
320
- exec_name = 'coh_PTF_inspiral'
321
- sections = ['coh_PTF_inspiral']
322
- extension = 'xml'
323
- InspiralAnalysisJob.__init__(self,cp,sections,exec_name,extension)
324
- ramValue = 1390
325
- if cp.has_section('coh_PTF_inspiral-meta'):
326
- if cp.has_option('coh_PTF_inspiral-meta','minimum-ram'):
327
- ramValue = int(cp.get('coh_PTF_inspiral-meta','minimum-ram'))
328
- self.add_condor_cmd('request_memory', '%d' %(ramValue))
329
-
330
-
331
- class TrigbankJob(InspiralAnalysisJob):
332
- """
333
- A lalapps_trigbank job used by the inspiral pipeline. The static
334
- options are read from the section [trigbank] in the ini file. The
335
- stdout and stderr from the job are directed to the logs directory. The job
336
- always runs in the scheduler universe. The path to the executable is
337
- determined from the ini file.
338
- """
339
- def __init__(self,cp):
340
- """
341
- cp = ConfigParser object from which options are read.
342
- """
343
- exec_name = 'trigbank'
344
- sections = ['trigbank']
345
- extension = 'xml'
346
- InspiralAnalysisJob.__init__(self,cp,sections,exec_name,extension)
347
-
348
-
349
- class IncaJob(InspiralAnalysisJob):
350
- """
351
- A lalapps_inca job used by the inspiral pipeline. The static options are
352
- read from the section [inca] in the ini file. The stdout and stderr from
353
- the job are directed to the logs directory. The path to the executable is
354
- determined from the ini file.
355
- """
356
- def __init__(self,cp):
357
- """
358
- cp = ConfigParser object from which options are read.
359
- """
360
- exec_name = 'inca'
361
- sections = ['inca']
362
- extension = 'xml'
363
- InspiralAnalysisJob.__init__(self,cp,sections,exec_name,extension)
364
-
365
-
366
- class ThincaJob(InspiralAnalysisJob):
367
- """
368
- A lalapps_thinca job used by the inspiral pipeline. The static options are
369
- read from the section [thinca] in the ini file. The stdout and stderr from
370
- the job are directed to the logs directory. The path to the executable is
371
- determined from the ini file.
372
- """
373
- def __init__(self,cp):
374
- """
375
- cp = ConfigParser object from which options are read.
376
- """
377
- exec_name = 'thinca'
378
- #sections = ['thinca']
379
- sections = []
380
- extension = 'xml'
381
- InspiralAnalysisJob.__init__(self,cp,sections,exec_name,extension)
382
- if cp.has_section('thinca'):
383
- self.add_ini_opts(cp,'thinca')
384
-
385
-
386
- def add_ini_opts(self, cp, section):
387
- """
388
- Parse command line options from a given section in an ini file and
389
- pass to the executable.
390
- @param cp: ConfigParser object pointing to the ini file.
391
- @param section: section of the ini file to add to the options.
392
- """
393
- for opt in cp.options(section):
394
- arg = string.strip(cp.get(section,opt))
395
- #self.add_opt(opt,arg)
396
- if opt[-4:] == "file":
397
- fname = os.path.split(arg)[-1]
398
- if fname not in os.listdir('.'):
399
- try:
400
- os.symlink(arg,os.path.split(arg)[-1])
401
- self.add_file_opt(opt,fname)
402
- except:
403
- print("sym link failed for " + arg + " grid workflows might be broken", file=sys.stderr)
404
- self.add_file_opt(opt,arg)
405
- else:
406
- self.add_file_opt(opt,fname)
407
- else:
408
- self.add_opt(opt,arg)
409
-
410
-
411
- class ThincaToCoincJob(InspiralAnalysisJob):
412
- """
413
- A ThincaToCoinc job. The static options are read from the
414
- section [thinca_to_coinc] in the ini file.
415
- """
416
- def __init__(self, cp):
417
- """
418
- @param cp: ConfigParser object from which options are read.
419
- """
420
- exec_name = 'thinca_to_coinc'
421
- sections = ['thinca_to_coinc']
422
- extension = 'xml'
423
- InspiralAnalysisJob.__init__(self, cp, sections, exec_name, extension)
424
- self.add_condor_cmd('getenv', 'True')
425
- self.__experiment_start_time = None
426
- self.__experiment_end_time = None
427
- # overwrite standard log file names
428
- self.set_stdout_file('logs/' + exec_name + '-$(cluster)-$(process).out')
429
- self.set_stderr_file('logs/' + exec_name + '-$(cluster)-$(process).err')
430
-
431
- def set_experiment_start_time(self, experiment_start_time):
432
- """
433
- Sets the experiment-start-time option. This is a required option.
434
- @param experiment_start_time: gps start time of the experiment the thinca_to_coinc
435
- job is in.
436
- """
437
- self.add_opt('experiment-start-time', experiment_start_time)
438
- self.__experiment_start_time = experiment_start_time
439
-
440
- def set_experiment_end_time(self, experiment_end_time):
441
- """
442
- Sets the experiment-end-time option. This is a required option.
443
- @param experiment_end_time: gps end time of the experiment the thinca_to_coinc
444
- job is in.
445
- """
446
- self.add_opt('experiment-end-time', experiment_end_time)
447
- self.__experiment_end_time = experiment_end_time
448
-
449
- def get_experiment_start_time(self, experiment_start_time):
450
- """
451
- Returns the value of the experiment-start-time option.
452
- """
453
- return self.__experiment_start_time
454
-
455
- def get_experiment_end_time(self, experiment_end_time):
456
- """
457
- Returns the value of the experiment-end-time option.
458
- """
459
- return self.__experiment_start_time
460
-
461
- def set_simulation(self):
462
- """
463
- Adds the simulation argument to the job.
464
- """
465
- self.add_opt('simulation', '')
466
-
467
- class HWinjPageJob(InspiralAnalysisJob):
468
- """
469
- A HWinjPageJob, runs the hardware injection page script on the
470
- output of the pipeline
471
- """
472
- def __init__(self, cp):
473
- """
474
- @param cp: ConfigParser object from which options are read.
475
- """
476
- exec_name = "hardware_inj_page"
477
- universe = "vanilla"
478
- sections = "[hardware-injection-page]"
479
- extension = 'html'
480
- executable = cp.get('condor',exec_name)
481
- pipeline.CondorDAGJob.__init__(self, universe, executable)
482
- pipeline.AnalysisJob.__init__(self, cp)
483
- self.add_condor_cmd('getenv','True')
484
- self.set_stdout_file('logs/' + exec_name + '-$(cluster)-$(process).out')
485
- self.set_stderr_file('logs/' + exec_name + '-$(cluster)-$(process).err')
486
- self.set_sub_file(exec_name + '.sub')
487
-
488
- class SireJob(InspiralAnalysisJob):
489
- """
490
- A lalapps_sire job used by the inspiral pipeline. The stdout and stderr from
491
- the job are directed to the logs directory. The path to the executable is
492
- determined from the ini file.
493
- """
494
- def __init__(self,cp):
495
- """
496
- @param cp = ConfigParser object from which options are read.
497
- """
498
- exec_name = 'sire'
499
- sections = ['sire']
500
- extension = 'xml'
501
- InspiralAnalysisJob.__init__(self,cp,sections,exec_name,extension)
502
-
503
- # sire currently doesn't take GPS start/end times
504
- self.set_stdout_file('logs/sire-$(macroifo)-$(cluster)-$(process).out')
505
- self.set_stderr_file('logs/sire-$(macroifo)-$(cluster)-$(process).err')
506
-
507
-
508
- class CoireJob(InspiralAnalysisJob):
509
- """
510
- A lalapps_coire job used by the inspiral pipeline. The stdout and stderr from
511
- the job are directed to the logs directory. The path to the executable is
512
- determined from the ini file.
513
- """
514
- def __init__(self,cp):
515
- """
516
- @param cp = ConfigParser object from which options are read.
517
- """
518
- exec_name = 'coire'
519
- sections = ['coire']
520
- extension = 'xml'
521
- InspiralAnalysisJob.__init__(self,cp,sections,exec_name,extension)
522
-
523
- # coire currently doesn't take GPS start/end times
524
- self.set_stdout_file('logs/coire-$(macroifo)-$(cluster)-$(process).out')
525
- self.set_stderr_file('logs/coire-$(macroifo)-$(cluster)-$(process).err')
526
-
527
-
528
- class FrJoinJob(InspiralAnalysisJob):
529
- """
530
- A lalapps_frjoin job used by the inspiral pipeline. The path to the
531
- executable is determined from the ini file.
532
- """
533
- def __init__(self,cp):
534
- """
535
- @param cp = ConfigParser object from which options are read.
536
- """
537
- exec_name = 'frjoin'
538
- sections = []
539
- extension = 'gwf'
540
- InspiralAnalysisJob.__init__(self,cp,sections,exec_name,extension)
541
-
542
- # frjoin currently doesn't take GPS start/end times
543
- self.set_stdout_file('logs/frjoin-$(cluster)-$(process).out')
544
- self.set_stderr_file('logs/frjoin-$(cluster)-$(process).err')
545
-
546
-
547
- class CohBankJob(InspiralAnalysisJob):
548
- """
549
- A lalapps_coherent_inspiral job used by the inspiral pipeline. The static
550
- options are read from the section [cohbank] in the ini file. The stdout and
551
- stderr from the job are directed to the logs directory. The path to the
552
- executable is determined from the ini file.
553
- """
554
- def __init__(self,cp):
555
- """
556
- @param cp = ConfigParser object from which options are read.
557
- """
558
- exec_name = 'cohbank'
559
- sections = ['cohbank']
560
- extension = 'xml'
561
- InspiralAnalysisJob.__init__(self,cp,sections,exec_name,extension)
562
-
563
-
564
- class InspiralCoherentJob(InspiralAnalysisJob):
565
- """
566
- A lalapps_inspiral job used by the inspiral pipeline. The static options
567
- are read from the sections [data] and [inspiral] in the ini file. The
568
- stdout and stderr from the job are directed to the logs directory. The job
569
- runs in the universe specfied in the ini file. The path to the executable
570
- is determined from the ini file.
571
- """
572
- def __init__(self,cp):
573
- """
574
- @param cp = ConfigParser object from which options are read.
575
- """
576
- exec_name = 'inspiral'
577
- sections = ['data']
578
- extension = 'xml'
579
- InspiralAnalysisJob.__init__(self,cp,sections,exec_name,extension)
580
- self.add_condor_cmd('environment',"KMP_LIBRARY=serial;MKL_SERIAL=yes")
581
-
582
-
583
- class CohInspBankJob(InspiralAnalysisJob):
584
- """
585
- A lalapps_coherent_inspiral job used by the inspiral pipeline. The static
586
- options are read from the section [cohinspbank] in the ini file. The stdout and
587
- stderr from the job are directed to the logs directory. The path to the
588
- executable is determined from the ini file.
589
- """
590
- def __init__(self,cp):
591
- """
592
- @param cp = ConfigParser object from which options are read.
593
- """
594
- exec_name = 'cohinspbank'
595
- sections = ['cohinspbank']
596
- extension = 'xml'
597
- InspiralAnalysisJob.__init__(self,cp,sections,exec_name,extension)
598
-
599
-
600
- class ChiaJob(InspiralAnalysisJob):
601
- """
602
- A lalapps_coherent_inspiral job used by the inspiral pipeline. The static
603
- options are read from the section [chia] in the ini file. The stdout and
604
- stderr from the job are directed to the logs directory. The path to the
605
- executable is determined from the ini file.
606
- """
607
- def __init__(self,cp):
608
- """
609
- @param cp = ConfigParser object from which options are read.
610
- """
611
- exec_name = 'chia'
612
- sections = ['chia']
613
- extension = 'xml'
614
- InspiralAnalysisJob.__init__(self,cp,sections,exec_name,extension)
615
-
616
-
617
- class CohireJob(InspiralAnalysisJob):
618
- """
619
- A lalapps_cohire job used by the inspiral pipeline. The stdout and stderr from
620
- the job are directed to the logs directory. The path to the executable is
621
- determined from the ini file.
622
- """
623
- def __init__(self,cp):
624
- """
625
- @param cp = ConfigParser object from which options are read.
626
- """
627
- exec_name = 'cohire'
628
- sections = ['cohire']
629
- extension = 'xml'
630
- InspiralAnalysisJob.__init__(self,cp,sections,exec_name,extension)
631
-
632
- # cohire currently doesn't take GPS start/end times
633
- self.set_stdout_file('logs/cohire-$(macroifo)-$(cluster)-$(process).out')
634
- self.set_stderr_file('logs/cohire-$(macroifo)-$(cluster)-$(process).err')
635
-
636
-
637
- class InjFindJob(InspiralAnalysisJob):
638
- """
639
- An injfind job. The static options are read from the [injfind]
640
- section in the cp file.
641
- """
642
- def __init__(self, cp):
643
- """
644
- @param cp: a ConfigParser object from which the options are read.
645
- """
646
- exec_name = 'injfind'
647
- sections = ['injfind']
648
- extension = 'xml'
649
- InspiralAnalysisJob.__init__(self, cp, sections, exec_name, extension)
650
- self.add_condor_cmd('getenv', 'True')
651
- # overwrite standard log file names
652
- self.set_stdout_file('logs/' + exec_name + '-$(cluster)-$(process).out')
653
- self.set_stderr_file('logs/' + exec_name + '-$(cluster)-$(process).err')
654
-
655
-
656
- #############################################################################
657
-
658
-
659
- class InspiralAnalysisNode(pipeline.AnalysisNode, pipeline.CondorDAGNode):
660
- """
661
- An InspiralNode runs an instance of the inspiral code in a Condor DAG.
662
- """
663
- def __init__(self,job):
664
- """
665
- job = A CondorDAGJob that can run an instance of lalapps_inspiral.
666
- """
667
- pipeline.CondorDAGNode.__init__(self,job)
668
- pipeline.AnalysisNode.__init__(self)
669
- opts = job.get_opts()
670
-
671
- if ("pad-data" in opts) and int(opts['pad-data']):
672
- self.set_pad_data(int(opts['pad-data']))
673
-
674
- self.__zip_output = ("write-compress" in opts)
675
- self.__data_checkpoint = False
676
-
677
- def set_zip_output(self,zip):
678
- """
679
- Set the zip output flag
680
- """
681
- self.__zip_output = zip
682
-
683
- def get_zip_output(self):
684
- """
685
- Set the zip output flag
686
- """
687
- return self.__zip_output
688
-
689
- def get_output_base(self):
690
- """
691
- Returns the base file name of output from the inspiral code. This is
692
- assumed to follow the standard naming convention:
693
-
694
- IFO-EXECUTABLE_IFOTAG_USERTAG-GPS_START-DURATION
695
- """
696
- if not self.get_start() or not self.get_end() or not self.get_ifo():
697
- raise InspiralError("Start time, end time or ifo has not been set")
698
-
699
- filebase = self.get_ifo() + '-' + self.job().get_exec_name().upper()
700
-
701
- if self.get_ifo_tag():
702
- filebase += '_' + self.get_ifo_tag()
703
- if self.get_user_tag():
704
- filebase += '_' + self.get_user_tag()
705
-
706
- filebase += '-' + str(self.get_start()) + '-' + \
707
- str(self.get_end() - self.get_start())
708
-
709
- return(filebase)
710
-
711
- def get_output(self):
712
- """
713
- Returns the file name of output from the inspiral code. This is obtained
714
- from the get_output_base() method, with the correct extension added.
715
- """
716
- filename = self.get_output_base()
717
- filename += '.' + self.job().get_extension()
718
-
719
- if self.get_zip_output():
720
- filename += '.gz'
721
-
722
- if self.__data_checkpoint is False:
723
- self.add_output_file(filename)
724
-
725
- return filename
726
-
727
- def get_checkpoint_image(self):
728
- """
729
- Returns the file name of condor checkpoint from the inspiral code. This is
730
- obtained from the get_output_base() method, with the correct extension added.
731
- """
732
- filename = self.get_output_base()
733
- filename += '.ckpt'
734
-
735
- self.add_output_file(filename)
736
-
737
- return filename
738
-
739
- def set_data_checkpoint(self):
740
- """
741
- Lets it be known that data checkpointing exists
742
- """
743
- self.add_var_opt('data-checkpoint','')
744
- self.__data_checkpoint = True
745
-
746
- def get_data_checkpoint(self):
747
- """
748
- Lets it be known that data checkpointing exists
749
- """
750
- return self.__data_checkpoint
751
-
752
- def get_output_cache(self):
753
- """
754
- Returns the name of the cache file output from the inspiral analysis codes.
755
- This is obtained from the get_output_base() method, with the correct
756
- extension added.
757
- """
758
- filename = self.get_output_base()
759
- filename += '.cache'
760
-
761
- def get_froutput(self):
762
- """
763
- Returns the file name of output frame from the inspiral code.
764
- """
765
- gwffile = self.get_output_base()
766
- gwffile += '.gwf'
767
-
768
- self.add_output_file(gwffile)
769
-
770
- return gwffile
771
-
772
- def finalize(self):
773
- """
774
- set the data_start_time and data_end_time
775
- """
776
- if self.get_pad_data():
777
- self.set_data_start(self.get_start() - \
778
- self.get_pad_data())
779
- self.set_data_end(self.get_end() + \
780
- self.get_pad_data())
781
-
782
- #############################################################################
783
-
784
- class InspiralPlottingNode(InspiralAnalysisNode):
785
- """
786
- An InspiralPlottingNode runas an instance of the inspiral plotting code in
787
- a Condor Dag
788
- """
789
- def __init__(self,job):
790
- """
791
- job = A CondorDAGJob that can run an instance of the plotting code
792
- """
793
- InspiralAnalysisNode.__init__(self,job)
794
-
795
- #############################################################################
796
-
797
- class InspInjNode(InspiralAnalysisNode):
798
- """
799
- A InspInjNode runs an instance of the inspinj generation job in a
800
- Condor DAG.
801
- """
802
- def __init__(self,job):
803
- """
804
- job = A CondorDAGJob that can run an instance of lalapps_inspinj.
805
- """
806
- InspiralAnalysisNode.__init__(self,job)
807
- self.__outputName = None
808
- self.__seed = None
809
-
810
- def set_seed(self,seed):
811
- """
812
- Set the seed of the injection file by setting a --seed option to the
813
- node when it is executed.
814
- @param seed: seed of the job
815
- """
816
- self.add_var_opt('seed',seed)
817
- self.__seed = seed
818
-
819
- def get_seed(self):
820
- """
821
- return the seed
822
- """
823
- return( self.__seed)
824
-
825
- def set_output(self, outputName):
826
- """
827
- Set the output name of the injection file
828
- @param outputName: name of the injection file created
829
- """
830
- self.add_var_opt('output',outputName)
831
- self.__outputName = outputName
832
-
833
- def get_output(self):
834
- """
835
- Return the manually-set output name if it exists, otherwise, derive the
836
- name like other InspiralAnalysisNodes.
837
- """
838
- if self.__outputName:
839
- self.add_output_file(self.__outputName)
840
- return self.__outputName
841
- else:
842
- outputFile = "HL-INJECTIONS_" + str(self.get_seed())
843
- if self.get_user_tag():
844
- outputFile += "_" + self.get_user_tag()
845
- outputFile += "-" + str(self.get_start()) + "-" + str(self.get_end() - \
846
- self.get_start()) + ".xml"
847
- self.add_output_file(outputFile)
848
- return(outputFile)
849
-
850
-
851
- class BbhInjNode(InspiralAnalysisNode):
852
- """
853
- A BbhInjNode runs an instance of the bbhinj generation job in a
854
- Condor DAG.
855
- """
856
- def __init__(self,job):
857
- """
858
- job = A CondorDAGJob that can run an instance of lalapps_bbhinj.
859
- """
860
- InspiralAnalysisNode.__init__(self,job)
861
-
862
- def set_seed(self,seed):
863
- """
864
- Set the seed of the injection file by setting a --seed option to the
865
- node when it is executed.
866
- @param seed: seed of the job
867
- """
868
- self.add_var_opt('seed',seed)
869
- self.__seed = seed
870
-
871
- def get_output(self):
872
- """
873
- Returns the file name of output from the injection generation code. This
874
- must be kept synchronized with the name of the output file in bbhinj.c.
875
- """
876
- if not self.get_start() or not self.get_end():
877
- raise InspiralError("Start time or end time has not been set")
878
- if self.get_user_tag():
879
- bbhinject = 'HL-INJECTIONS_' + self.get_user_tag() + '-'
880
- bbhinject = bbhinject + str(self.get_start()) + '-'
881
- bbhinject = bbhinject + str(self.get_end()-self.get_start()) + '.xml'
882
- elif self.__seed:
883
- bbhinject = 'HL-INJECTIONS_' + str(self.__seed) + '-'
884
- bbhinject = bbhinject + str(self.get_start()) + '-'
885
- bbhinject = bbhinject + str(self.get_end()-self.get_start()) + '.xml'
886
- else:
887
- bbhinject = 'HL-INJECTIONS-' + str(self.get_start()) + '-'
888
- bbhinject = bbhinject + str(self.get_end()-self.get_start()) + '.xml'
889
-
890
- self.add_output_file(bbhinject)
891
-
892
- return bbhinject
893
-
894
-
895
- class TmpltBankNode(InspiralAnalysisNode):
896
- """
897
- A TmpltBankNode runs an instance of the template bank generation job in a
898
- Condor DAG.
899
- """
900
- def __init__(self,job):
901
- """
902
- job = A CondorDAGJob that can run an instance of lalapps_tmpltbank.
903
- """
904
- InspiralAnalysisNode.__init__(self,job)
905
-
906
-
907
- class RandomBankNode(InspiralAnalysisNode):
908
- """
909
- A RandomBankNode runs an instance of the random bank generation job in a
910
- Condor DAG.
911
- """
912
- def __init__(self,job):
913
- """
914
- job = A CondorDAGJob that can run an instance of lalapps_randombank.
915
- """
916
- InspiralAnalysisNode.__init__(self,job)
917
-
918
- def get_output(self):
919
- """
920
- Returns the file name of output from the template bank code. This must
921
- be kept synchronized with the name of the output file in randombank.c.
922
- """
923
- if not self.get_start() or not self.get_end():
924
- raise InspiralError("Start time or end time has not been set")
925
- if self.get_user_tag():
926
- bank = 'P-TMPLTBANK_' + self.get_user_tag() + '-'
927
- bank = bank + str(self.get_start())
928
- else:
929
- bank = 'P-TMPLTBANK-' + str(self.get_start())
930
- bank = bank + '-' + str(self.get_end() - self.get_start()) + '.xml'
931
-
932
- self.add_output_file(bank)
933
-
934
- return bank
935
-
936
-
937
- class SplitBankNode(InspiralAnalysisNode):
938
- """
939
- A SplitBankNode runs an instance of the split template bank job in a
940
- Condor DAG.
941
- """
942
- def __init__(self,job):
943
- """
944
- job = A CondorDAGJob that can run an instance of lalapps_tmpltbank.
945
- """
946
- InspiralAnalysisNode.__init__(self,job)
947
- self.__bankfile = None
948
- self.__numbanks = None
949
-
950
- def set_bank(self,bank):
951
- self.add_var_opt('bank-file', bank)
952
- self.add_input_file(bank)
953
- self.__bankfile = bank
954
-
955
- def get_bank(self):
956
- return self.__bankfile
957
-
958
- def set_num_banks(self,numbanks):
959
- self.add_var_opt('number-of-banks',numbanks)
960
- self.__numbanks = int(numbanks)
961
-
962
- def get_num_banks(self):
963
- return self.__numbanks
964
-
965
- def get_output(self):
966
- """
967
- Returns a list of the file names of split banks. This must be kept
968
- synchronized with the name of the output files in splitbank.c.
969
- """
970
- if not self.get_bank() or not self.get_num_banks():
971
- raise InspiralError("Bank file or number of banks has not been set")
972
-
973
- banks = []
974
- x = self.__bankfile.split('-')
975
- for i in range( 0, int(self.get_num_banks()) ):
976
- banks.append("%s-%s_%2.2d-%s-%s" % (x[0], x[1], i, x[2], x[3]))
977
-
978
- return banks
979
-
980
-
981
- class InspiralNode(InspiralAnalysisNode):
982
- """
983
- An InspiralNode runs an instance of the inspiral code in a Condor DAG.
984
- """
985
- def __init__(self,job):
986
- """
987
- job = A CondorDAGJob that can run an instance of lalapps_inspiral.
988
- """
989
- InspiralAnalysisNode.__init__(self,job)
990
- self.__injections = None
991
-
992
- def set_bank(self,bank):
993
- self.add_var_opt('bank-file', bank)
994
- self.add_input_file(bank)
995
-
996
- def set_injections(self, injections):
997
- """
998
- Set the injection file for this node
999
- """
1000
- self.__injections = injections
1001
- self.add_var_opt('injection-file', injections)
1002
- self.add_input_file(injections)
1003
-
1004
- def get_injections(self):
1005
- """
1006
- Returns the injection file
1007
- """
1008
- return self.__injections
1009
-
1010
-
1011
- class InspiralCkptNode(InspiralAnalysisNode):
1012
- """
1013
- An InspiralCkptNode runs an instance of the inspiral code in a Condor DAG.
1014
- It then checkpoints to a file. This sets the file.
1015
- """
1016
- def __init__(self,job):
1017
- """
1018
- job = A CondorDAGJob that can run an instance of lalapps_inspiral.
1019
- """
1020
- InspiralAnalysisNode.__init__(self,job)
1021
- self.__outfile = None
1022
- self.__injections = None
1023
-
1024
- def set_output(self, outfile):
1025
- """
1026
- Sets a placeholder output name which we can use to pass through the
1027
- name of the output file from the original inspiral job.
1028
- """
1029
- self.__outfile = outfile
1030
-
1031
- def get_output(self):
1032
- """
1033
- Returns the filename from set_output().
1034
- """
1035
- if self.__outfile:
1036
- self.add_output_file(self.__outfile)
1037
- return self.__outfile
1038
-
1039
- def set_injections(self, injections):
1040
- """
1041
- Set the injection file for this node
1042
- """
1043
- self.__injections = injections
1044
-
1045
- def get_injections(self):
1046
- """
1047
- Returns the injection file
1048
- """
1049
- return self.__injections
1050
-
1051
- def set_checkpoint_image(self, ckptin):
1052
- """
1053
- Adds the argument -_condor_restart for the
1054
- cases in which we want to checkpoint and grabs the
1055
- checkpoint image name from get_checkpoint_image in
1056
- the InspiralAnalysisCode section.
1057
- """
1058
- self.add_input_file(ckptin)
1059
- self.add_var_opt('_condor_restart', ckptin, short=True)
1060
-
1061
-
1062
- class PTFInspiralNode(InspiralAnalysisNode):
1063
- """
1064
- An InspiralNode runs an instance of the inspiral code in a Condor DAG.
1065
- """
1066
- def __init__(self,job):
1067
- """
1068
- job = A CondorDAGJob that can run an instance of lalapps_inspiral.
1069
- """
1070
- InspiralAnalysisNode.__init__(self,job)
1071
- self.__injections = None
1072
- self.set_zip_output(True)
1073
-
1074
- def set_spin_bank(self,bank):
1075
- self.add_var_opt('spin-bank', bank)
1076
- self.add_input_file(bank)
1077
-
1078
- def set_no_spin_bank(self,bank):
1079
- self.add_var_opt('non-spin-bank',bank)
1080
- self.add_input_file(bank)
1081
-
1082
- def set_output(self):
1083
- self.add_var_opt('output-file',self.get_output_base()+ '.xml.gz')
1084
-
1085
- def set_injections(self, injections):
1086
- """
1087
- Set the injection file for this node
1088
- """
1089
- self.__injections = injections
1090
- self.add_var_opt('injection-file', injections)
1091
- self.add_input_file(injections)
1092
-
1093
- def get_injections(self):
1094
- """
1095
- Returns the injection file
1096
- """
1097
- return self.__injections
1098
-
1099
- def set_seed(self,seed):
1100
- self.add_var_opt('random-seed',seed)
1101
-
1102
-
1103
- class PTFSpinCheckerNode(InspiralAnalysisNode):
1104
- """
1105
- An InspiralNode runs an instance of the inspiral code in a Condor DAG.
1106
- """
1107
- def __init__(self,job):
1108
- """
1109
- job = A CondorDAGJob that can run an instance of lalapps_inspiral.
1110
- """
1111
- InspiralAnalysisNode.__init__(self,job)
1112
- self.__injections = None
1113
-
1114
- def set_bank(self,bank):
1115
- self.add_var_opt('bank-file', bank)
1116
- self.add_input_file(bank)
1117
-
1118
- def set_spin_output(self,spinBank):
1119
- self.add_var_opt('spin-bank',spinBank)
1120
-
1121
- def set_nospin_output(self,noSpinBank):
1122
- self.add_var_opt('non-spin-bank',noSpinBank)
1123
-
1124
-
1125
- class TrigbankNode(InspiralAnalysisNode):
1126
- """
1127
- A TrigbankNode runs an instance of the triggered bank generator in a
1128
- Condor DAG.
1129
- """
1130
- def __init__(self,job):
1131
- """
1132
- job = A CondorDAGJob that can run an instance of trigbank.
1133
- """
1134
- InspiralAnalysisNode.__init__(self,job)
1135
- self.__input_ifo = None
1136
-
1137
- def set_input_ifo(self,ifo):
1138
- self.add_var_opt('input-ifo', ifo)
1139
- self.__input_ifo = ifo
1140
-
1141
- def get_input_ifo(self):
1142
- return self.__input_ifo
1143
-
1144
- def set_output_ifo(self,ifo):
1145
- self.add_var_opt('output-ifo', ifo)
1146
- self.set_ifo(ifo)
1147
-
1148
-
1149
- class IncaNode(InspiralAnalysisNode):
1150
- """
1151
- An IncaNode runs an instance of the inspiral coincidence code in a Condor
1152
- DAG.
1153
- """
1154
- def __init__(self,job):
1155
- """
1156
- job = A CondorDAGJob that can run an instance of lalapps_inca.
1157
- """
1158
- InspiralAnalysisNode.__init__(self,job)
1159
- self.__ifo_a = None
1160
- self.__ifo_b = None
1161
-
1162
- def set_ifo_a(self, ifo):
1163
- """
1164
- Set the interferometer code to use as IFO A.
1165
- ifo = IFO code (e.g. L1, H1 or H2).
1166
- """
1167
- self.add_var_opt('ifo-a', ifo)
1168
- self.__ifo_a = ifo
1169
-
1170
- def get_ifo_a(self):
1171
- """
1172
- Returns the IFO code of the primary interferometer.
1173
- """
1174
- return self.__ifo_a
1175
-
1176
- def set_ifo_b(self, ifo):
1177
- """
1178
- Set the interferometer code to use as IFO B.
1179
- ifo = IFO code (e.g. L1, H1 or H2).
1180
- """
1181
- self.add_var_opt('ifo-b', ifo)
1182
- self.__ifo_b = ifo
1183
-
1184
- def get_ifo_b(self):
1185
- """
1186
- Returns the IFO code of the primary interferometer.
1187
- """
1188
- return self.__ifo_b
1189
-
1190
- def get_output_a(self):
1191
- """
1192
- Returns the file name of output from inca for ifo a. This must be kept
1193
- synchronized with the name of the output file in inca.c.
1194
- """
1195
- if not self.get_start() or not self.get_end() or not self.get_ifo_a():
1196
- raise InspiralError("Start time, end time or ifo a has not been set")
1197
-
1198
- basename = self.get_ifo_a() + '-INCA'
1199
-
1200
- if self.get_ifo_tag():
1201
- basename += '_' + self.get_ifo_tag()
1202
- if self.get_user_tag():
1203
- basename += '_' + self.get_user_tag()
1204
-
1205
- filename = basename + '-' + str(self.get_start()) + '-' + \
1206
- str(self.get_end() - self.get_start()) + '.xml'
1207
-
1208
- if self.get_zip_output():
1209
- filename += '.gz'
1210
-
1211
- self.add_output_file(filename)
1212
- return filename
1213
-
1214
- def get_output(self):
1215
- return self.get_output_a()
1216
-
1217
- def get_output_b(self):
1218
- """
1219
- Returns the file name of output from inca for ifo b. This must be kept
1220
- synchronized with the name of the output file in inca.c.
1221
- """
1222
- if not self.get_start() or not self.get_end() or not self.get_ifo_b():
1223
- raise InspiralError("Start time, end time or ifo a has not been set")
1224
-
1225
- basename = self.get_ifo_b() + '-INCA'
1226
-
1227
- if self.get_ifo_tag():
1228
- basename += '_' + self.get_ifo_tag()
1229
- if self.get_user_tag():
1230
- basename += '_' + self.get_user_tag()
1231
-
1232
- filename = basename + '-' + str(self.get_start()) + '-' + \
1233
- str(self.get_end() - self.get_start()) + '.xml'
1234
-
1235
- if self.get_zip_output():
1236
- filename += '.gz'
1237
-
1238
- self.add_output_file(filename)
1239
- return filename
1240
-
1241
-
1242
- class ThincaNode(InspiralAnalysisNode):
1243
- """
1244
- A ThincaNode runs an instance of the inspiral coincidence code in a Condor
1245
- DAG.
1246
- """
1247
- def __init__(self,job):
1248
- """
1249
- job = A CondorDAGJob that can run an instance of lalapps_inca.
1250
- """
1251
- InspiralAnalysisNode.__init__(self,job)
1252
- self.__ifo_g1 = None
1253
- self.__ifo_h1 = None
1254
- self.__ifo_h2 = None
1255
- self.__ifo_l1 = None
1256
- self.__ifo_t1 = None
1257
- self.__ifo_v1 = None
1258
- self.__num_slides = None
1259
-
1260
- def set_ifo(self, ifo, pass_to_command_line=True):
1261
- """
1262
- Add the interferometer to the list of ifos
1263
- ifo = IFO code (e.g. G1,L1,V1,T1, H1 or H2).
1264
- pass_to_command_line = boolean for adding ifo-triggers as a variable option
1265
- """
1266
- #FIXME: Once thinca no longer needs --IFO-triggers flags,
1267
- # use AnalysisNode's set_ifos method
1268
- if ifo == 'G1':
1269
- if pass_to_command_line:
1270
- self.add_var_opt('g1-triggers','')
1271
- self.__ifo_g1 = 'G1'
1272
- elif ifo == 'H1':
1273
- if pass_to_command_line:
1274
- self.add_var_opt('h1-triggers','')
1275
- self.__ifo_h1 = 'H1'
1276
- elif ifo == 'H2':
1277
- if pass_to_command_line:
1278
- self.add_var_opt('h2-triggers','')
1279
- self.__ifo_h2 = 'H2'
1280
- elif ifo == 'L1':
1281
- if pass_to_command_line:
1282
- self.add_var_opt('l1-triggers','')
1283
- self.__ifo_l1 = 'L1'
1284
- elif ifo == 'T1':
1285
- if pass_to_command_line:
1286
- self.add_var_opt('t1-triggers','')
1287
- self.__ifo_t1 = 'T1'
1288
- elif ifo == 'V1':
1289
- if pass_to_command_line:
1290
- self.add_var_opt('v1-triggers','')
1291
- self.__ifo_v1 = 'V1'
1292
-
1293
- def get_ifo_g1(self):
1294
- """
1295
- Returns the IFO code of g1.
1296
- """
1297
- return self.__ifo_g1
1298
-
1299
- def get_ifo_h1(self):
1300
- """
1301
- Returns the IFO code of h1.
1302
- """
1303
- return self.__ifo_h1
1304
-
1305
- def get_ifo_h2(self):
1306
- """
1307
- Returns the IFO code of h2.
1308
- """
1309
- return self.__ifo_h2
1310
-
1311
- def get_ifo_l1(self):
1312
- """
1313
- Returns the IFO code of l1.
1314
- """
1315
- return self.__ifo_l1
1316
-
1317
- def get_ifo_t1(self):
1318
- """
1319
- Returns the IFO code of t1.
1320
- """
1321
- return self.__ifo_t1
1322
-
1323
- def get_ifo_v1(self):
1324
- """
1325
- Returns the IFO code of v1.
1326
- """
1327
- return self.__ifo_v1
1328
-
1329
- def get_ifos(self):
1330
- """
1331
- Returns the ordered list of ifos.
1332
- """
1333
- ifos = ''
1334
- if self.get_ifo_g1():
1335
- ifos += self.get_ifo_g1()
1336
- if self.get_ifo_h1():
1337
- ifos += self.get_ifo_h1()
1338
- if self.get_ifo_h2():
1339
- ifos += self.get_ifo_h2()
1340
- if self.get_ifo_l1():
1341
- ifos += self.get_ifo_l1()
1342
- if self.get_ifo_t1():
1343
- ifos += self.get_ifo_t1()
1344
- if self.get_ifo_v1():
1345
- ifos += self.get_ifo_v1()
1346
-
1347
- return ifos
1348
-
1349
- def set_num_slides(self, num_slides):
1350
- """
1351
- Set number of time slides to undertake
1352
- """
1353
- self.add_var_opt('num-slides',num_slides)
1354
- self.__num_slides = num_slides
1355
-
1356
- def get_num_slides(self):
1357
- """
1358
- Returns the num_slides from .ini (>0 => time slides desired)
1359
- """
1360
- return self.__num_slides
1361
-
1362
- def get_output(self):
1363
- """
1364
- Returns the file name of output from thinca. This must be kept
1365
- synchronized with the name of the output file in thinca.c.
1366
- """
1367
- if not self.get_start() or not self.get_end() or not self.get_ifos():
1368
- raise InspiralError("Start time, end time or ifos have not been set")
1369
-
1370
- if self.__num_slides:
1371
- basename = self.get_ifos() + '-' + self.job().get_exec_name().upper() \
1372
- + '_SLIDE'
1373
- else:
1374
- basename = self.get_ifos() + '-' + self.job().get_exec_name().upper()
1375
-
1376
- if self.get_ifo_tag():
1377
- basename += '_' + self.get_ifo_tag()
1378
-
1379
- if self.get_user_tag():
1380
- basename += '_' + self.get_user_tag()
1381
-
1382
- filename = basename + '-' + str(self.get_start()) + '-' + \
1383
- str(self.get_end() - self.get_start()) + '.xml'
1384
-
1385
- if self.get_zip_output():
1386
- filename += '.gz'
1387
-
1388
- self.add_output_file(filename)
1389
- return filename
1390
-
1391
- class ThincaToCoincNode(InspiralAnalysisNode):
1392
- """
1393
- A ThincaToCoincNode runs an instance of a ThincaToCoincJob
1394
- in a DAG.
1395
- """
1396
- def __init__(self, job):
1397
- """
1398
- @param job: A ThincaToCoincJob.
1399
- """
1400
- InspiralAnalysisNode.__init__(self, job)
1401
- self.__input_cache = None
1402
- self.__instruments = None
1403
- self.__zero_lag_file = None
1404
- self.__time_slide_file = None
1405
- self.__veto_segments = None
1406
- self.__veto_segments_name = None
1407
-
1408
- def set_input_cache(self, input_cache_name):
1409
- """
1410
- @param input_cache_name: cache file for thinca_to_coinc to
1411
- read.
1412
- """
1413
- self.add_file_opt( 'ihope-cache', input_cache_name )
1414
- self.__input_cache = input_cache_name
1415
-
1416
- def get_input_cache(self):
1417
- """
1418
- Returns input cache file for this node.
1419
- """
1420
- return self.__input_cache
1421
-
1422
- def get_output_from_cache(self, coinc_file_tag ):
1423
- """
1424
- Returns a list of files that this node will generate using the input_cache.
1425
- The output file names are the same as the input urls, but with the
1426
- zero_lag 'THINCA' file replaced with 'THINCA_TO_COINC', and with the
1427
- filepaths pointing to the current directory in which the
1428
- thinca_to_coinc node is being run.
1429
- """
1430
- if not self.__input_cache:
1431
- raise ValueError("no input-cache specified")
1432
- # open the input cache file
1433
- fp = open(self.__input_cache, 'r')
1434
- input_cache = lal.Cache().fromfile(fp).sieve( description = coinc_file_tag )
1435
- output_files = [ \
1436
- '/'.join([ os.getcwd(),
1437
- re.sub('INCA', 'INCA_TO_COINC', os.path.basename(entry.url)) ]) for entry in input_cache \
1438
- ]
1439
- return output_files
1440
-
1441
- def set_instruments(self, instruments):
1442
- """
1443
- @param instruments: instruments that are on for the
1444
- THINCA files thinca_to_coinc is operating on.
1445
- """
1446
- self.add_var_opt('instruments', instruments)
1447
- self.__instruments = instruments
1448
-
1449
- def get_instruments(self):
1450
- """
1451
- Returns instruments for this node.
1452
- """
1453
- return self.__instruments
1454
-
1455
- def set_veto_segments(self, veto_segments):
1456
- """
1457
- @param veto_segments: name of xml file containing the vetoes to apply
1458
- """
1459
- self.add_var_opt('veto-segments', veto_segments)
1460
- self.__veto_segments = veto_segments
1461
-
1462
- def get_veto_segments(self):
1463
- """
1464
- Returns the name of the veto-segments file for this node.
1465
- """
1466
- return self.__veto_segments
1467
-
1468
- def set_veto_segments_name(self, veto_segments_name):
1469
- """
1470
- @param veto_segments_name: name of vetoes in the vetoes xml file to
1471
- apply.
1472
- """
1473
- self.add_var_opt('veto-segments-name', veto_segments_name)
1474
- self.__veto_segments_name = veto_segments_name
1475
-
1476
- def get_veto_segments_name(self):
1477
- """
1478
- Returns the name of the vetoes applied for this node.
1479
- """
1480
- return self.__veto_segments_name
1481
-
1482
- def set_zero_lag_file(self, zero_lag_file):
1483
- """
1484
- Sets zero_lag_file for input.
1485
- """
1486
- self.add_file_opt( 'zero-lag-file', zero_lag_file )
1487
- self.__zero_lag_file = zero_lag_file
1488
-
1489
- def get_zero_lag_file(self):
1490
- """
1491
- Returns zero_lag_file.
1492
- """
1493
- return self.__zero_lag_file
1494
-
1495
- def set_time_slide_file(self, time_slide_file):
1496
- """
1497
- Sets the time_slide_file for input.
1498
- """
1499
- self.add_file_opt( 'time-slide-file', time_slide_file )
1500
- self.__time_slide_file = time_slide_file
1501
-
1502
- def get_time_slide_file(self):
1503
- """
1504
- Returns the time_slide_file.
1505
- """
1506
- return self.__time_slide_file
1507
-
1508
- class HWinjPageNode(InspiralAnalysisNode):
1509
- """
1510
- A HWinjPageNode runs an instance of a HWinjPageJob
1511
- in a DAG.
1512
- """
1513
- def __init__(self, job):
1514
- """
1515
- @param job: A HWinjPageJob.
1516
- """
1517
- InspiralAnalysisNode.__init__(self, job)
1518
- self.__input_cache = None
1519
- self.__cache_string = None
1520
- self.__outfile = None
1521
- self.__segment_dir = None
1522
- self.__source_xml = None
1523
-
1524
- def set_input_cache(self, input_cache_name):
1525
- """
1526
- @param input_cache_name: cache file for ligolw_cbc_hardware_inj_page
1527
- to read.
1528
- """
1529
- self.add_var_opt('cache-file',input_cache_name)
1530
- self.__input_cache = input_cache_name
1531
-
1532
- def set_source_xml(self, source_xml):
1533
- """
1534
- input_cache_name: cache file for ligolw_cbc_hardware_inj_page to read.
1535
- """
1536
- self.add_var_opt('source-xml',source_xml)
1537
- self.__source_xml = source_xml
1538
-
1539
- def set_cache_string(self,cache_string):
1540
- """
1541
- @param cache_string: pattern to match files within cache
1542
- """
1543
- self.add_var_opt('cache-pattern',cache_string)
1544
- self.__cache_string=cache_string
1545
-
1546
- def set_output_file(self,outfile_name):
1547
- """
1548
- @param outfile_name: Name of hw injection page
1549
- """
1550
- self.add_var_opt('outfile',outfile_name)
1551
- self.__outfile=outfile_name
1552
-
1553
- def set_segment_dir(self,dir):
1554
- """
1555
- @param dir: directory in which to find hwinj segments
1556
- """
1557
- self.add_var_opt('segment-dir',dir)
1558
-
1559
- class SireNode(InspiralAnalysisNode):
1560
- """
1561
- A SireNode runs an instance of the single inspiral reader code in a Condor
1562
- DAG.
1563
- """
1564
- def __init__(self,job):
1565
- """
1566
- job = A CondorDAGJob that can run an instance of lalapps_sire.
1567
- """
1568
- InspiralAnalysisNode.__init__(self,job)
1569
- self.__injection_file = None
1570
- self.__ifo_tag = None
1571
-
1572
- def set_ifo(self, ifo):
1573
- """
1574
- Add the list of interferometers
1575
- """
1576
- self.__ifo = ifo
1577
- self.add_var_opt('ifo-cut',ifo)
1578
-
1579
- def get_ifo(self):
1580
- """
1581
- Returns the two letter IFO code for this node.
1582
- """
1583
- return self.__ifo
1584
-
1585
- def set_inj_file(self, file):
1586
- """
1587
- Sets the injection file
1588
- """
1589
- self.__injection_file = file
1590
- self.add_var_opt('injection-file', file)
1591
-
1592
- def get_inj_file(self):
1593
- """
1594
- Gets the injection file
1595
- """
1596
- return self.__injection_file
1597
-
1598
- def set_start(self, start):
1599
- """
1600
- Sets GPS start time
1601
- """
1602
- self.__start = start
1603
-
1604
- def get_start(self):
1605
- """
1606
- Gets GPS start time
1607
- """
1608
- return self.__start
1609
-
1610
- def set_end(self, end):
1611
- """
1612
- Sets GPS end time
1613
- """
1614
- self.__end = end
1615
-
1616
- def get_end(self):
1617
- """
1618
- Gets GPS end time
1619
- """
1620
- return self.__end
1621
-
1622
- def set_ifo_tag(self,ifo_tag):
1623
- """
1624
- Set the ifo tag that is passed to the analysis code.
1625
- @param ifo_tag: a string to identify one or more IFOs
1626
- """
1627
- self.__ifo_tag = ifo_tag
1628
-
1629
- def get_ifo_tag(self):
1630
- """
1631
- Returns the IFO tag string
1632
- """
1633
- return self.__ifo_tag
1634
-
1635
- def get_output(self):
1636
- """
1637
- get the name of the output file
1638
- """
1639
- if not self.get_ifo():
1640
- raise InspiralError("ifos have not been set")
1641
-
1642
- fname = self.get_ifo() + "-SIRE"
1643
- if self.get_inj_file():
1644
- fname += "_" + self.get_inj_file().split("-")[1]
1645
- fname += "_FOUND"
1646
-
1647
- if self.get_ifo_tag(): fname += "_" + self.get_ifo_tag()
1648
- if self.get_user_tag(): fname += "_" + self.get_user_tag()
1649
-
1650
- if (self.get_start() and not self.get_end()) or \
1651
- (self.get_end() and not self.get_start()):
1652
- raise InspiralError("If one of start and end is set, both must be")
1653
-
1654
- if (self.get_start()):
1655
- duration=self.get_end()- self.get_start()
1656
- fname += "-" + str(self.get_start()) + "-" + str(duration)
1657
-
1658
- fname += ".xml"
1659
-
1660
- return fname
1661
-
1662
- def get_missed(self):
1663
- """
1664
- get the name of the missed file
1665
- """
1666
- if self.get_inj_file():
1667
- return self.get_output().replace("FOUND", "MISSED")
1668
- else:
1669
- return None
1670
-
1671
- def finalize(self):
1672
- """
1673
- set the output options
1674
- """
1675
- output = self.get_output()
1676
-
1677
- self.add_file_opt("output", output,file_is_output_file=True)
1678
- self.add_file_opt("summary", output.replace("xml", "txt"),file_is_output_file=True)
1679
-
1680
- if self.get_inj_file():
1681
- self.add_file_opt('injection-file', self.get_inj_file())
1682
- self.add_file_opt('missed-injections', self.get_missed(), file_is_output_file=True)
1683
-
1684
- class CoireNode(InspiralAnalysisNode):
1685
- """
1686
- A CoireNode runs an instance of the inspiral coire code in a Condor
1687
- DAG.
1688
- """
1689
- def __init__(self,job):
1690
- """
1691
- job = A CondorDAGJob that can run an instance of lalapps_coire.
1692
- """
1693
- InspiralAnalysisNode.__init__(self,job)
1694
- self.__ifos = None
1695
- self.__ifo_tag = None
1696
- self.__num_slides = None
1697
- self.__injection_file = None
1698
- self.__output_tag = None
1699
-
1700
- def set_ifos(self, ifos):
1701
- """
1702
- Add the list of interferometers
1703
- """
1704
- self.__ifos = ifos
1705
-
1706
- def get_ifos(self):
1707
- """
1708
- Returns the ifos
1709
- """
1710
- return self.__ifos
1711
-
1712
- def set_slides(self, slides):
1713
- """
1714
- Add the number of time slides
1715
- """
1716
- self.__num_slides = slides
1717
- self.add_var_opt('num-slides',slides)
1718
-
1719
- def get_slides(self):
1720
- """
1721
- Returns the number of slides
1722
- """
1723
- return self.__num_slides
1724
-
1725
- def set_inj_file(self, file):
1726
- """
1727
- Sets the injection file
1728
- """
1729
- if file:
1730
- self.__injection_file = file
1731
- self.add_var_opt('injection-file', file)
1732
-
1733
- def get_inj_file(self):
1734
- """
1735
- Gets the injection file
1736
- """
1737
- return self.__injection_file
1738
-
1739
- def set_start(self, start):
1740
- """
1741
- Sets GPS start time
1742
- """
1743
- self.__start = start
1744
-
1745
- def get_start(self):
1746
- """
1747
- Gets GPS start time
1748
- """
1749
- return self.__start
1750
-
1751
- def set_end(self, end):
1752
- """
1753
- Sets GPS end time
1754
- """
1755
- self.__end = end
1756
-
1757
- def get_end(self):
1758
- """
1759
- Gets GPS end time
1760
- """
1761
- return self.__end
1762
-
1763
- def set_ifo_tag(self,ifo_tag):
1764
- """
1765
- Set the ifo tag that is passed to the analysis code.
1766
- @param ifo_tag: a string to identify one or more IFOs
1767
- """
1768
- self.__ifo_tag = ifo_tag
1769
-
1770
- def get_ifo_tag(self):
1771
- """
1772
- Returns the IFO tag string
1773
- """
1774
- return self.__ifo_tag
1775
-
1776
- def set_output_tag(self):
1777
- fname = self.job().get_exec_name().upper()
1778
- if self.get_slides(): fname += "_SLIDE"
1779
- if self.get_inj_file():
1780
- fname += "_" + \
1781
- self.get_inj_file().split("/")[-1].split(".")[0].split("-")[1]
1782
- fname += "_FOUND"
1783
- if self.get_ifo_tag(): fname += "_" + self.get_ifo_tag()
1784
- if self.get_user_tag(): fname += "_" + self.get_user_tag()
1785
- self.__output_tag = fname
1786
-
1787
- def get_output_tag(self):
1788
- return self.__output_tag
1789
-
1790
- def get_output(self):
1791
- """
1792
- get the name of the output file
1793
- """
1794
- if not self.get_ifos():
1795
- raise InspiralError("ifos have not been set")
1796
-
1797
- self.set_output_tag()
1798
- fname = self.get_ifos() + '-' + self.get_output_tag()
1799
-
1800
- if (self.get_start() and not self.get_end()) or \
1801
- (self.get_end() and not self.get_start()):
1802
- raise InspiralError("If one of start and end is set, "\
1803
- "both must be")
1804
-
1805
- if (self.get_start()):
1806
- duration=self.get_end() - self.get_start()
1807
- fname += "-" + str(self.get_start()) + "-" + str(duration)
1808
-
1809
- fname += ".xml"
1810
-
1811
- return fname
1812
-
1813
- def get_missed(self):
1814
- """
1815
- get the name of the missed file
1816
- """
1817
- if self.get_inj_file():
1818
- return self.get_output().replace("FOUND", "MISSED")
1819
- else:
1820
- return None
1821
-
1822
- def finalize(self):
1823
- """
1824
- set the output options
1825
- """
1826
- output = self.get_output()
1827
-
1828
- self.add_file_opt("output", output,file_is_output_file=True)
1829
- self.add_file_opt("summary", output.replace("xml", "txt"),file_is_output_file=True)
1830
-
1831
- if self.get_inj_file():
1832
- self.add_file_opt('injection-file', self.get_inj_file())
1833
- self.add_file_opt('missed-injections', self.get_missed(), file_is_output_file=True)
1834
-
1835
-
1836
- class FrJoinNode(InspiralAnalysisNode):
1837
- """
1838
- A FrJoinNode runs an instance of lalapps_frjoin in a Condor DAG
1839
- """
1840
- def __init__(self,job):
1841
- """
1842
- job = A CondorDAGJob that can run an instance of lalapps_frjoin.
1843
- """
1844
- InspiralAnalysisNode.__init__(self,job)
1845
-
1846
- def set_output(self, outputName):
1847
- """
1848
- Set the output name of the frame file
1849
- @param outputName: name of the injection file created
1850
- """
1851
- self.add_var_opt('output',outputName)
1852
- self.add_file_opt('output',outputName,file_is_output_file=True)
1853
- self.__outputName = outputName
1854
-
1855
- def get_output(self):
1856
- """
1857
- Get the output name of the frame file
1858
- """
1859
- return self.__outputName
1860
-
1861
-
1862
- class CohBankNode(InspiralAnalysisNode):
1863
- """
1864
- A CohBankNode runs an instance of the coherent code in a Condor DAG.
1865
- """
1866
- def __init__(self,job):
1867
- """
1868
- job = A CondorDAGJob that can run an instance of lalapps_coherent_inspiral.
1869
- """
1870
- InspiralAnalysisNode.__init__(self,job)
1871
- self.__bank = None
1872
- self.__ifos = None
1873
-
1874
- def set_bank(self,bank):
1875
- self.add_var_opt('bank-file', bank)
1876
- self.add_input_file(bank)
1877
- self.__bank = bank
1878
-
1879
- def get_bank(self):
1880
- return self.__bank
1881
-
1882
- def set_ifo(self, ifo):
1883
- """
1884
- Add the interferometer to the list of ifos
1885
- ifo = IFO code (e.g. G1,L1, H1 or H2).
1886
- """
1887
- if ifo == 'G1':
1888
- self.add_var_opt('g1-triggers','')
1889
- self.__ifo_g1 = 'G1'
1890
- elif ifo == 'H1':
1891
- self.add_var_opt('h1-triggers','')
1892
- self.__ifo_h1 = 'H1'
1893
- elif ifo == 'H2':
1894
- self.add_var_opt('h2-triggers','')
1895
- self.__ifo_h2 = 'H2'
1896
- elif ifo == 'L1':
1897
- self.add_var_opt('l1-triggers','')
1898
- self.__ifo_l1 = 'L1'
1899
- elif ifo == 'T1':
1900
- self.add_var_opt('t1-triggers','')
1901
- self.__ifo_t1 = 'T1'
1902
- elif ifo == 'V1':
1903
- self.add_var_opt('v1-triggers','')
1904
- self.__ifo_v1 = 'V1'
1905
-
1906
- def set_ifos(self,ifos):
1907
- self.add_var_opt('ifos', ifos)
1908
- self.__ifos = ifos
1909
-
1910
- def get_ifos(self):
1911
- return self.__ifos
1912
-
1913
- def set_num_slides(self, num_slides):
1914
- """
1915
- Set number of time slides to undertake
1916
- """
1917
- self.add_var_opt('num-slides',num_slides)
1918
- self.__num_slides = num_slides
1919
-
1920
- def get_output(self):
1921
- """
1922
- Returns the file name of output from the coherent bank.
1923
- """
1924
-
1925
- if not self.get_ifos():
1926
- raise InspiralError("Ifos have not been set")
1927
-
1928
- basename = self.get_ifos() + '-COHBANK'
1929
-
1930
- if self.get_user_tag():
1931
- basename += '_' + self.get_user_tag()
1932
-
1933
- filename = basename + '-' + str(self.get_start()) + '-' + \
1934
- str(self.get_end() - self.get_start()) + '.xml'
1935
-
1936
- if self.get_zip_output():
1937
- filename += '.gz'
1938
-
1939
- self.add_output_file(filename)
1940
-
1941
- return filename
1942
-
1943
-
1944
- class CohInspBankNode(InspiralAnalysisNode):
1945
- """
1946
- A CohBankNode runs an instance of the coherent code in a Condor DAG.
1947
- """
1948
- def __init__(self,job):
1949
- """
1950
- job = A CondorDAGJob that can run an instance of lalapps_coherent_inspiral.
1951
- """
1952
- InspiralAnalysisNode.__init__(self,job)
1953
- self.__bank = None
1954
- self.__ifos = None
1955
-
1956
- def set_bank(self,bank):
1957
- self.add_var_opt('bank-file', bank)
1958
- self.add_input_file(bank)
1959
- self.__bank = bank
1960
-
1961
- def get_bank(self):
1962
- return self.__bank
1963
-
1964
- def set_ifos(self,ifos):
1965
- self.add_var_opt('ifos', ifos)
1966
- self.__ifos = ifos
1967
-
1968
- def get_ifos(self):
1969
- return self.__ifos
1970
-
1971
- def set_num_slides(self, num_slides):
1972
- """
1973
- Set number of time slides to undertake
1974
- """
1975
- self.add_var_opt('num-slides',num_slides)
1976
- self.__num_slides = num_slides
1977
-
1978
- def get_output(self):
1979
- """
1980
- Returns the file name of output from the coherent bank.
1981
- """
1982
-
1983
- if not self.get_ifos():
1984
- raise InspiralError("Ifos have not been set")
1985
-
1986
- basename = self.get_ifos() + '-COHINSPBANK'
1987
-
1988
- if self.get_user_tag():
1989
- basename += '_' + self.get_user_tag()
1990
-
1991
- filename = basename + '-' + str(self.get_start()) + '-' + \
1992
- str(self.get_end() - self.get_start()) + '.xml'
1993
-
1994
- if self.get_zip_output():
1995
- filename += '.gz'
1996
-
1997
- self.add_output_file(filename)
1998
-
1999
- return filename
2000
-
2001
- # overwrite standard log file names
2002
- self.set_stdout_file('logs/' + exec_name + '-$(cluster)-$(process).out')
2003
- self.set_stderr_file('logs/' + exec_name + '-$(cluster)-$(process).err')
2004
-
2005
-
2006
- class ChiaNode(InspiralAnalysisNode):
2007
- """
2008
- A ChiaNode runs an instance of the coherent_inspiral code in a Condor
2009
- DAG.
2010
- """
2011
- def __init__(self,job):
2012
- """
2013
- job = A CondorDAGJob that can run an instance of lalapps_coherent_inspiral.
2014
- """
2015
- InspiralAnalysisNode.__init__(self,job)
2016
-
2017
- def set_bank(self,bank):
2018
- self.add_var_opt('bank-file', bank)
2019
- self.add_input_file(bank)
2020
-
2021
- def set_ifo_tag(self,ifo_tag):
2022
- """
2023
- Set the ifo tag that is passed to the analysis code.
2024
- @param ifo_tag: a string to identify one or more IFOs
2025
- """
2026
- self.__ifo_tag = ifo_tag
2027
-
2028
- def get_ifo_tag(self):
2029
- """
2030
- Returns the IFO tag string
2031
- """
2032
- return self.__ifo_tag
2033
-
2034
- def get_output(self):
2035
- """
2036
- Returns the file name of output from coherent inspiral.
2037
- """
2038
- if not self.get_start() or not self.get_end() or not self.get_ifo_tag():
2039
- raise InspiralError("Start time, end time or ifos have not been set")
2040
-
2041
- basename = self.get_ifo_tag() + '-CHIA'
2042
-
2043
- if self.get_user_tag():
2044
- basename += '_' + self.get_user_tag()
2045
-
2046
- filename = basename + '-' + str(self.get_start()) + '-' + \
2047
- str(self.get_end() - self.get_start()) + '.xml'
2048
-
2049
- if self.get_zip_output():
2050
- filename += '.gz'
2051
-
2052
- self.add_output_file(filename)
2053
-
2054
- return filename
2055
-
2056
-
2057
- class CohireNode(InspiralAnalysisNode):
2058
- """
2059
- A CohireNode runs an instance of the inspiral cohire code in a Condor
2060
- DAG.
2061
- """
2062
- def __init__(self,job):
2063
- """
2064
- job = A CondorDAGJob that can run an instance of lalapps_cohire.
2065
- """
2066
- InspiralAnalysisNode.__init__(self,job)
2067
- self.__ifos = None
2068
- self.__ifo_tag = None
2069
- self.__num_slides = None
2070
- self.__injection_file = None
2071
- self.__output_tag = None
2072
-
2073
- def set_ifos(self, ifos):
2074
- """
2075
- Add the list of interferometers
2076
- """
2077
- self.__ifos = ifos
2078
-
2079
- def get_ifos(self):
2080
- """
2081
- Returns the ifos
2082
- """
2083
- return self.__ifos
2084
- def set_slides(self, slides):
2085
- """
2086
- Add the number of time slides
2087
- """
2088
- self.__num_slides = slides
2089
- self.add_var_opt('num-slides',slides)
2090
-
2091
- def get_slides(self):
2092
- """
2093
- Returns the number of slides
2094
- """
2095
- return self.__num_slides
2096
-
2097
- def set_inj_file(self, file):
2098
- """
2099
- Sets the injection file
2100
- """
2101
- if file:
2102
- self.__injection_file = file
2103
- self.add_var_opt('injection-file', file)
2104
-
2105
- def get_inj_file(self):
2106
- """
2107
- Gets the injection file
2108
- """
2109
- return self.__injection_file
2110
-
2111
- def set_start(self, start):
2112
- """
2113
- Sets GPS start time
2114
- """
2115
- self.__start = start
2116
-
2117
- def get_start(self):
2118
- """
2119
- Gets GPS start time
2120
- """
2121
- return self.__start
2122
-
2123
- def set_end(self, end):
2124
- """
2125
- Sets GPS end time
2126
- """
2127
- self.__end = end
2128
-
2129
- def get_end(self):
2130
- """
2131
- Gets GPS end time
2132
- """
2133
- return self.__end
2134
-
2135
- def set_ifo_tag(self,ifo_tag):
2136
- """
2137
- Set the ifo tag that is passed to the analysis code.
2138
- @param ifo_tag: a string to identify one or more IFOs
2139
- """
2140
- self.__ifo_tag = ifo_tag
2141
-
2142
- def get_ifo_tag(self):
2143
- """
2144
- Returns the IFO tag string
2145
- """
2146
- return self.__ifo_tag
2147
-
2148
- def set_output_tag(self):
2149
- fname = self.job().get_exec_name().upper()
2150
- if self.get_slides(): fname += "_SLIDE"
2151
- if self.get_inj_file():
2152
- fname += "_" + \
2153
- self.get_inj_file().split("/")[-1].split(".")[0].split("-")[1]
2154
- fname += "_FOUND"
2155
- if self.get_ifo_tag(): fname += "_" + self.get_ifo_tag()
2156
- if self.get_user_tag(): fname += "_" + self.get_user_tag()
2157
- self.__output_tag = fname
2158
-
2159
- def get_output_tag(self):
2160
- return self.__output_tag
2161
-
2162
- def get_output(self):
2163
- """
2164
- get the name of the output file
2165
- """
2166
- if not self.get_ifos():
2167
- raise InspiralError("ifos have not been set")
2168
-
2169
- self.set_output_tag()
2170
- fname = self.get_ifos() + '-' + self.get_output_tag()
2171
-
2172
- if (self.get_start() and not self.get_end()) or \
2173
- (self.get_end() and not self.get_start()):
2174
- raise InspiralError("If one of start and end is set, "\
2175
- "both must be")
2176
-
2177
- if (self.get_start()):
2178
- duration=self.get_end() - self.get_start()
2179
- fname += "-" + str(self.get_start()) + "-" + str(duration)
2180
-
2181
- fname += ".xml"
2182
-
2183
- return fname
2184
-
2185
- def get_missed(self):
2186
- """
2187
- get the name of the missed file
2188
- """
2189
- if self.get_inj_file():
2190
- return self.get_output().replace("FOUND", "MISSED")
2191
- else:
2192
- return None
2193
-
2194
- def finalize(self):
2195
- """
2196
- set the output options
2197
- """
2198
- output = self.get_output()
2199
-
2200
- self.add_file_opt("output", output,file_is_output_file=True)
2201
- self.add_file_opt("summary", output.replace("xml", "txt"),file_is_output_file=True)
2202
-
2203
- if self.get_inj_file():
2204
- self.add_file_opt('injection-file', self.get_inj_file())
2205
- self.add_file_opt('missed-injections', self.get_missed(), file_is_output_file=True)
2206
-
2207
-
2208
- class InspInjFindNode( InspiralAnalysisNode ):
2209
- """
2210
- An InspInjFindNode runs an instance of the InspInjJob in a
2211
- Condor DAG.
2212
- """
2213
- def __init__(self, job):
2214
- """
2215
- @param job: A CondorDAGJob that can run an instance of ligolw_inspinjfind.
2216
- """
2217
- InspiralAnalysisNode.__init__(self, job)
2218
-
2219
-
2220
- ##############################################################################
2221
- #Plotting Jobs and Nodes
2222
-
2223
- class PlotInspiralrangeJob(InspiralPlottingJob):
2224
- """
2225
- A plotinspiralrange job. The static options are read from the section
2226
- [plotinspiralrange] in the ini file. The stdout and stderr from the job
2227
- are directed to the logs directory. The path to the executable is
2228
- determined from the ini file.
2229
- """
2230
- def __init__(self,cp):
2231
- """
2232
- @param cp = ConfigParser object from which options are read.
2233
- """
2234
- exec_name = 'plotinspiralrange'
2235
- sections = ['plotinspiralrange']
2236
- extension = 'html'
2237
- InspiralPlottingJob.__init__(self,cp,sections,exec_name,extension)
2238
-
2239
- class PlotInspiralrangeNode(InspiralPlottingNode):
2240
- """
2241
- A PlotInspiralrangeNode runs an instance of the plotinspiral code in a
2242
- Condor DAG.
2243
- """
2244
- def __init__(self,job):
2245
- """
2246
- job = A CondorDAGJob that can run an instance of plotinspiralrange.
2247
- """
2248
- InspiralPlottingNode.__init__(self,job)
2249
-
2250
- #######################################################################################
2251
-
2252
- class PlotInspiralJob(InspiralPlottingJob):
2253
- """
2254
- A plotinspiral job. The static options are read from the section
2255
- [plotinspiral] in the ini file. The stdout and stderr from the job
2256
- are directed to the logs directory. The path to the executable is
2257
- determined from the ini file.
2258
- """
2259
- def __init__(self,cp):
2260
- """
2261
- @param cp = ConfigParser object from which options are read.
2262
- """
2263
- exec_name = 'plotinspiral'
2264
- sections = ['plotinspiral']
2265
- extension = 'html'
2266
- InspiralPlottingJob.__init__(self,cp,sections,exec_name,extension)
2267
-
2268
- class PlotInspiralNode(InspiralPlottingNode):
2269
- """
2270
- A PlotInspiralNode runs an instance of the plotinspiral code in a Condor DAG.
2271
- """
2272
- def __init__(self,job):
2273
- """
2274
- job = A CondorDAGJob that can run an instance of plotinspiral.
2275
- """
2276
- InspiralPlottingNode.__init__(self,job)
2277
-
2278
- ###########################################################################################
2279
-
2280
- class PlotThincaJob(InspiralPlottingJob):
2281
- """
2282
- A plotthinca job. The static options are read from the section
2283
- [plotthinca] in the ini file. The stdout and stderr from the job
2284
- are directed to the logs directory. The path to the executable is
2285
- determined from the ini file.
2286
- """
2287
- def __init__(self,cp):
2288
- """
2289
- @param cp = ConfigParser object from which options are read.
2290
- """
2291
- exec_name = 'plotthinca'
2292
- sections = ['plotthinca']
2293
- extension = 'html'
2294
- InspiralPlottingJob.__init__(self,cp,sections,exec_name,extension)
2295
- self.add_condor_cmd('request_memory', '2500')
2296
-
2297
- class PlotThincaNode(InspiralPlottingNode):
2298
- """
2299
- A PlotThincaNode runs an instance of the plotthinca code in a Condor DAG.
2300
- """
2301
- def __init__(self,job):
2302
- """
2303
- job = A CondorDAGJob that can run an instance of plotthinca.
2304
- """
2305
- InspiralPlottingNode.__init__(self,job)
2306
-
2307
-
2308
- ###########################################################################################
2309
-
2310
- class PlotCohsnrJob(InspiralPlottingJob):
2311
- """
2312
- A plotthinca job. The static options are read from the section
2313
- [plotthinca] in the ini file. The stdout and stderr from the job
2314
- are directed to the logs directory. The path to the executable is
2315
- determined from the ini file.
2316
- """
2317
- def __init__(self,cp):
2318
- """
2319
- @param cp = ConfigParser object from which options are read.
2320
- """
2321
- exec_name = 'plotcohsnr'
2322
- sections = ['plotcohsnr']
2323
- extension = 'html'
2324
- InspiralPlottingJob.__init__(self,cp,sections,exec_name,extension)
2325
-
2326
- class PlotCohsnrNode(InspiralPlottingNode):
2327
- """
2328
- A PlotThincaNode runs an instance of the plotthinca code in a Condor DAG.
2329
- """
2330
- def __init__(self,job):
2331
- """
2332
- job = A CondorDAGJob that can run an instance of plotthinca.
2333
- """
2334
- InspiralPlottingNode.__init__(self,job)
2335
-
2336
-
2337
- #######################################################################################
2338
-
2339
- class PlotNumtemplatesJob(InspiralPlottingJob):
2340
- """
2341
- A plotnumtemplates job. The static options are read from the section
2342
- [plotnumtemplates] in the ini file. The stdout and stderr from the job
2343
- are directed to the logs directory. The path to the executable is
2344
- determined from the ini file.
2345
- """
2346
- def __init__(self,cp):
2347
- """
2348
- @param cp = ConfigParser object from which options are read.
2349
- """
2350
- exec_name = 'plotnumtemplates'
2351
- sections = ['plotnumtemplates']
2352
- extension = 'html'
2353
- InspiralPlottingJob.__init__(self,cp,sections,exec_name,extension)
2354
-
2355
- class PlotNumtemplatesNode(InspiralPlottingNode):
2356
- """
2357
- A PlotNumtemplatesNode runs an instance of the plotinspiral code in a Condor DAG.
2358
- """
2359
- def __init__(self,job):
2360
- """
2361
- job = A CondorDAGJob that can run an instance of plotnumtemplates.
2362
- """
2363
- InspiralPlottingNode.__init__(self,job)
2364
-
2365
- ##############################################################################
2366
-
2367
- class PlotEthincaJob(InspiralPlottingJob):
2368
- """
2369
- A plotethinca job. The static options are read from the section
2370
- [plotethinca] in the ini file. The stdout and stderr from the job
2371
- are directed to the logs directory. The path to the executable is
2372
- determined from the ini file.
2373
- """
2374
- def __init__(self,cp):
2375
- """
2376
- @param cp = ConfigParser object from which options are read.
2377
- """
2378
- exec_name = 'plotethinca'
2379
- sections = ['plotethinca']
2380
- extension = 'html'
2381
- InspiralPlottingJob.__init__(self,cp,sections,exec_name,extension)
2382
- self.add_condor_cmd('request_memory', '2500')
2383
-
2384
- class PlotEthincaNode(InspiralPlottingNode):
2385
- """
2386
- A PlotEthincaNode runs an instance of the plotinspiral code in a Condor DAG.
2387
- """
2388
- def __init__(self,job):
2389
- """
2390
- job = A CondorDAGJob that can run an instance of plotethinca.
2391
- """
2392
- InspiralPlottingNode.__init__(self,job)
2393
-
2394
- #############################################################################
2395
-
2396
- class PlotInspmissedJob(InspiralPlottingJob):
2397
- """
2398
- A plotinspmissed job. The static options are read from the section
2399
- [plotinspmissed] in the ini file. The stdout and stderr from the job
2400
- are directed to the logs directory. The path to the executable is
2401
- determined from the ini file.
2402
- """
2403
- def __init__(self,cp):
2404
- """
2405
- @param cp = ConfigParser object from which options are read.
2406
- """
2407
- exec_name = 'plotinspmissed'
2408
- sections = ['plotinspmissed']
2409
- extension = 'html'
2410
- InspiralPlottingJob.__init__(self,cp,sections,exec_name,extension)
2411
-
2412
- class PlotInspmissedNode(InspiralPlottingNode):
2413
- """
2414
- A PlotInspmissedNode runs an instance of the plotinspiral code in a Condor DAG.
2415
- """
2416
- def __init__(self,job):
2417
- """
2418
- job = A CondorDAGJob that can run an instance of plotinspmissed.
2419
- """
2420
- InspiralPlottingNode.__init__(self,job)
2421
-
2422
- #############################################################################
2423
-
2424
- class PlotEffdistcutJob(InspiralPlottingJob):
2425
- """
2426
- A ploteffdistcut job. The static options are read from the section
2427
- [ploteffdistcut] in the ini file. The stdout and stderr from the job
2428
- are directed to the logs directory. The path to the executable is
2429
- determined from the ini file.
2430
- """
2431
- def __init__(self,cp):
2432
- """
2433
- @param cp = ConfigParser object from which options are read.
2434
- """
2435
- exec_name = 'ploteffdistcut'
2436
- sections = ['ploteffdistcut']
2437
- extension = 'html'
2438
- InspiralPlottingJob.__init__(self,cp,sections,exec_name,extension)
2439
-
2440
- class PlotEffdistcutNode(InspiralPlottingNode):
2441
- """
2442
- A PlotEffdistcutNode runs an instance of the
2443
- ploteffdistcut code in a Condor DAG.
2444
- """
2445
- def __init__(self,job):
2446
- """
2447
- job = A CondorDAGJob that can run an instance of ploteffdistcut.
2448
- """
2449
- InspiralPlottingNode.__init__(self,job)
2450
-
2451
- #############################################################################
2452
-
2453
- class PlotInspinjJob(InspiralPlottingJob):
2454
- """
2455
- A plotinspinj job. The static options are read from the section
2456
- [plotinspinj] in the ini file. The stdout and stderr from the job
2457
- are directed to the logs directory. The path to the executable is
2458
- determined from the ini file.
2459
- """
2460
- def __init__(self,cp):
2461
- """
2462
- @param cp = ConfigParser object from which options are read.
2463
- """
2464
- exec_name = 'plotinspinj'
2465
- sections = ['plotinspinj']
2466
- extension = 'html'
2467
- InspiralPlottingJob.__init__(self,cp,sections,exec_name,extension)
2468
- self.add_condor_cmd('request_memory', '2500')
2469
-
2470
- class PlotInspinjNode(InspiralPlottingNode):
2471
- """
2472
- A PlotInspinjNode runs an instance of the plotinspiral code in a Condor DAG.
2473
- """
2474
- def __init__(self,job):
2475
- """
2476
- job = A CondorDAGJob that can run an instance of plotinspinj.
2477
- """
2478
- InspiralPlottingNode.__init__(self,job)
2479
-
2480
- #############################################################################
2481
-
2482
- class PlotSnrchiJob(InspiralPlottingJob):
2483
- """
2484
- A plotsnrchi job. The static options are read from the section
2485
- [plotsnrchi] in the ini file. The stdout and stderr from the job
2486
- are directed to the logs directory. The path to the executable is
2487
- determined from the ini file.
2488
- """
2489
- def __init__(self,cp):
2490
- """
2491
- @param cp = ConfigParser object from which options are read.
2492
- """
2493
- exec_name = 'plotsnrchi'
2494
- sections = ['plotsnrchi']
2495
- extension = 'html'
2496
- InspiralPlottingJob.__init__(self,cp,sections,exec_name,extension)
2497
- self.add_condor_cmd('request_memory', '2500')
2498
-
2499
- class PlotSnrchiNode(InspiralPlottingNode):
2500
- """
2501
- A PlotSnrchiNode runs an instance of the plotinspiral code in a Condor DAG.
2502
- """
2503
- def __init__(self,job):
2504
- """
2505
- job = A CondorDAGJob that can run an instance of plotsnrchi.
2506
- """
2507
- InspiralPlottingNode.__init__(self,job)
2508
-
2509
- #############################################################################
2510
-
2511
- class PlotGRBtimeslideStatsJob(InspiralAnalysisJob):
2512
- """
2513
- A plotgrbtimeslidestats job. The static options are read from the section
2514
- [grbtimeslidestats] in the ini file. The stdout and stderr from the job
2515
- are directed to the logs directory. The path to the executable is
2516
- determined from the ini file.
2517
- """
2518
- def __init__(self,cp):
2519
- """
2520
- @param cp = ConfigParser object from which options are read.
2521
- """
2522
- exec_name = 'pylal_grbtimeslide_stats'
2523
- sections = ['grbtimeslidestats']
2524
- extension = 'html'
2525
- InspiralAnalysisJob.__init__(self,cp,sections,exec_name,extension)
2526
- self.add_condor_cmd('getenv', 'True')
2527
-
2528
- class PlotGRBtimeslideStatsNode(InspiralAnalysisNode):
2529
- """
2530
- A PlotGRBtimeslideStatsNode runs an instance of the pylal_grbtimeslide_stats code in a Condor DAG.
2531
- """
2532
- def __init__(self,job):
2533
- """
2534
- job = A CondorDAGJob that can run an instance of pylal_grbtimeslide_stats.
2535
- """
2536
- InspiralAnalysisNode.__init__(self,job)
2537
-
2538
- #############################################################################
2539
-
2540
- class MiniFollowupsJob(InspiralPlottingJob):
2541
- """
2542
- A minifollowups job. Static options are read from the
2543
- [minifollowups] section in the ini file.
2544
- """
2545
- def __init__(self, cp):
2546
- """
2547
- @param cp: ConfigParser object from which options are read.
2548
- """
2549
- exec_name = 'minifollowups'
2550
- sections = ['minifollowups','omega-scans']
2551
- extension = None
2552
- InspiralPlottingJob.__init__(self, cp, sections, exec_name, extension)
2553
- self.add_condor_cmd('request_memory', '2500')
2554
-
2555
- def set_time_slides(self):
2556
- """
2557
- Turns on the --time-slides argument.
2558
- """
2559
- self.add_opt('time-slides', '')
2560
-
2561
-
2562
- class MiniFollowupsNode(InspiralPlottingNode):
2563
- """
2564
- A mininfollowups node.
2565
- """
2566
- def __init__(self, job):
2567
- """
2568
- @param job: a MiniFollowupsJob
2569
- """
2570
- InspiralAnalysisNode.__init__(self, job)
2571
- self.__cache_file = None
2572
- self.__cache_string = None
2573
- self.__prefix = None
2574
- self.__suffix = None
2575
- self.__input_xml = None
2576
- self.__input_xml_summary = None
2577
- self.__output_html_table = None
2578
- self.__table_name = None
2579
-
2580
- def set_cache_file(self, cache_file):
2581
- """
2582
- Set the ihope cache file to use.
2583
- """
2584
- self.add_file_opt( 'cache-file', cache_file )
2585
- self.__cache_file = cache_file
2586
-
2587
- def get_cache_file(self):
2588
- """
2589
- Returns the cache file that's set.
2590
- """
2591
- return self.__cache_file
2592
-
2593
- def set_cache_string(self, cache_string):
2594
- """
2595
- Set the ihope cache file to use.
2596
- """
2597
- self.add_file_opt( 'cache-string', cache_string )
2598
- self.__cache_string = cache_string
2599
-
2600
- def get_cache_string(self):
2601
- """
2602
- Returns the cache file that's set.
2603
- """
2604
- return self.__cache_string
2605
-
2606
- def set_prefix(self, prefix):
2607
- """
2608
- Sets the prefix option, which is used for plot names.
2609
- """
2610
- self.add_var_opt( 'prefix', prefix )
2611
- self.__prefix = prefix
2612
-
2613
- def get_prefix(self):
2614
- """
2615
- Return the prefix that's set.
2616
- """
2617
- return self.__prefix
2618
-
2619
- def set_suffix(self, suffix):
2620
- """
2621
- Sets the suffix option, which is used for plot names.
2622
- """
2623
- self.add_var_opt( 'suffix', suffix )
2624
- self.__suffix = suffix
2625
-
2626
- def get_suffix(self):
2627
- """
2628
- Return the suffix that's set.
2629
- """
2630
- return self.__suffix
2631
-
2632
- def set_input_xml(self, input_xml):
2633
- """
2634
- Sets the input xml.
2635
- """
2636
- self.add_var_opt( 'input-xml', input_xml)
2637
- self.__input_xml = input_xml
2638
-
2639
- def get_input_xml(self):
2640
- """
2641
- Return the input_xml that's set.
2642
- """
2643
- return self.__input_xml
2644
-
2645
- def set_input_xml_summary(self, input_xml_summary):
2646
- """
2647
- Sets the input xml.
2648
- """
2649
- self.add_var_opt( 'input-xml-summary', input_xml_summary)
2650
- self.__input_xml_summary = input_xml_summary
2651
-
2652
- def get_input_xml_summary(self):
2653
- """
2654
- Return the input_xml_summary that's set.
2655
- """
2656
- return self.__input_xml_summary
2657
-
2658
- def set_output_html_table(self, output_html_table):
2659
- """
2660
- Sets the input xml.
2661
- """
2662
- self.add_var_opt( 'output-html-table', output_html_table)
2663
- self.__output_html_table = output_html_table
2664
-
2665
- def get_output_html_table(self):
2666
- """
2667
- Return the output_html_table that's set.
2668
- """
2669
- return self.__output_html_table
2670
-
2671
- def set_table_name(self, table_name):
2672
- """
2673
- Sets the table-name argument.
2674
- """
2675
- self.add_var_opt( 'table-name', table_name )
2676
- self.__table_name = table_name
2677
-
2678
- def get_table_name(self):
2679
- """
2680
- Return the table_name that's set.
2681
- """
2682
- return self.__table_name
2683
-
2684
-
2685
- #############################################################################
2686
- # following are types of pipeline.SqliteJobs and Nodes
2687
-
2688
- class DBSimplifyJob(pipeline.SqliteJob):
2689
- """
2690
- A DBSimplify job. The static options are read from the section
2691
- [dbsimplify] in the ini file.
2692
- """
2693
- def __init__(self, cp):
2694
- """
2695
- @param cp: ConfigParser object from which options are read.
2696
- """
2697
- exec_name = 'dbsimplify'
2698
- sections = ['dbsimplify']
2699
- pipeline.SqliteJob.__init__(self, cp, sections, exec_name)
2700
-
2701
-
2702
- class DBSimplifyNode(pipeline.SqliteNode):
2703
- """
2704
- A DBSimplify node.
2705
- """
2706
- def __init__(self, job):
2707
- """
2708
- @param job: a DBSimplifyJob
2709
- """
2710
- pipeline.SqliteNode.__init__(self, job)
2711
-
2712
-
2713
- class ComputeDurationsJob(pipeline.SqliteJob):
2714
- """
2715
- A ComputeDurations job. The static options are read from the section
2716
- [compute_durations] in the ini file.
2717
- """
2718
- def __init__(self, cp):
2719
- """
2720
- @param cp: ConfigParser object from which options are read.
2721
- """
2722
- exec_name = 'compute_durations'
2723
- sections = ['compute_durations']
2724
- pipeline.SqliteJob.__init__(self, cp, sections, exec_name)
2725
-
2726
-
2727
- class ComputeDurationsNode(pipeline.SqliteNode):
2728
- """
2729
- A ComputeDurations node.
2730
- """
2731
- def __init__(self, job):
2732
- """
2733
- @param job: a ComputeDurationsJob
2734
- """
2735
- pipeline.SqliteNode.__init__(self, job)
2736
-
2737
-
2738
- class DBAddInjJob(pipeline.SqliteJob):
2739
- """
2740
- A DBAddInj job. The static options are read from the section
2741
- [dbaddinj] in the ini file.
2742
- """
2743
- def __init__(self, cp):
2744
- """
2745
- @param cp: ConfigParser object from which options are read.
2746
- """
2747
- exec_name = 'dbaddinj'
2748
- sections = ['dbaddinj']
2749
- pipeline.SqliteJob.__init__(self, cp, sections, exec_name)
2750
-
2751
-
2752
- class DBAddInjNode(pipeline.SqliteNode):
2753
- """
2754
- A DBAddInj node.
2755
- """
2756
- def __init__(self, job ):
2757
- """
2758
- @param job: a DBAddInj job
2759
- """
2760
- pipeline.SqliteNode.__init__(self, job)
2761
- self.__injection_file = None
2762
- self.__inj_tag = None
2763
-
2764
- def set_injection_file( self, injection_file ):
2765
- """
2766
- @param injection_file: Injection file for dbaddinj to
2767
- add to the database.
2768
- """
2769
- self.add_file_opt( 'injection-file', injection_file )
2770
- self.__injection_file = injection_file
2771
-
2772
- def get_injection_file( self ):
2773
- """
2774
- Returns injection file for this node.
2775
- """
2776
- return self._injection_file
2777
-
2778
- def set_inj_tag( self, inj_tag):
2779
- """
2780
- @param inj_tag: Injection tag used to name the injection files
2781
- """
2782
- self.add_var_opt( 'sim-tag', inj_tag )
2783
- self.__inj_tag = inj_tag
2784
-
2785
- def get_inj_tag( self):
2786
- """
2787
- Returns injection_tag for this node.
2788
- """
2789
- return self.__inj_tag
2790
-
2791
- class RepopCoincJob(pipeline.SqliteJob):
2792
- """
2793
- A repop_coinc job. The static options are read from the section
2794
- [repop_coinc] in the ini file.
2795
- """
2796
- def __init__(self, cp):
2797
- """
2798
- @param cp: ConfigParser object from which options are read.
2799
- """
2800
- exec_name = 'repop_coinc'
2801
- sections = ['repop_coinc']
2802
- pipeline.SqliteJob.__init__(self, cp, sections, exec_name)
2803
-
2804
-
2805
- class RepopCoincNode(pipeline.SqliteNode):
2806
- """
2807
- A repop_coinc node.
2808
- """
2809
- def __init__(self, job):
2810
- """
2811
- @param job: a RepopCoincJob
2812
- """
2813
- pipeline.SqliteNode.__init__(self, job)
2814
-
2815
-
2816
- class DBInjFindJob(pipeline.SqliteJob):
2817
- """
2818
- A dbinjfind job. The static options are read from the section
2819
- [dbinjfind] in the ini file.
2820
- """
2821
- def __init__(self, cp):
2822
- """
2823
- @param cp: ConfigParser object from which options are read.
2824
- """
2825
- exec_name = 'dbinjfind'
2826
- sections = ['dbinjfind']
2827
- pipeline.SqliteJob.__init__(self, cp, sections, exec_name)
2828
-
2829
-
2830
- class DBInjFindNode(pipeline.SqliteNode):
2831
- """
2832
- A dbinjfind node.
2833
- """
2834
- def __init__(self, job):
2835
- """
2836
- @param job: a DBInjFindJob
2837
- """
2838
- pipeline.SqliteNode.__init__(self, job)
2839
-
2840
-
2841
- class ClusterCoincsJob(pipeline.SqliteJob):
2842
- """
2843
- A cluster coincs job. The static options are read from the section
2844
- [cluster_coincs] in the ini file.
2845
- """
2846
- def __init__(self, cp):
2847
- """
2848
- @param cp: ConfigParser object from which options are read.
2849
- """
2850
- exec_name = 'cluster_coincs'
2851
- sections = ['cluster_coincs']
2852
- pipeline.SqliteJob.__init__(self, cp, sections, exec_name)
2853
-
2854
-
2855
- class ClusterCoincsNode(pipeline.SqliteNode):
2856
- """
2857
- A ClusterCoincs node.
2858
- """
2859
- def __init__(self, job):
2860
- """
2861
- @param job: a ClusterCoincsJob
2862
- """
2863
- pipeline.SqliteNode.__init__(self, job)
2864
-
2865
-
2866
- class CFarJob(pipeline.SqliteJob):
2867
- """
2868
- A cfar job. The static options are read from the section [cfar] in
2869
- the ini file.
2870
- """
2871
- def __init__(self, cp, sections):
2872
- """
2873
- @param cp: ConfigParser object from which options are read.
2874
- @param sections: list of sections for cp to read from
2875
- """
2876
- exec_name = 'cfar'
2877
- pipeline.SqliteJob.__init__(self, cp, sections, exec_name)
2878
-
2879
-
2880
- class CFarNode(pipeline.SqliteNode):
2881
- """
2882
- A CFar node.
2883
- """
2884
- def __init__(self, job):
2885
- """
2886
- @param job: a CFarJob
2887
- """
2888
- pipeline.SqliteNode.__init__(self, job)
2889
-
2890
-
2891
- class LigolwCBCPrintJob(pipeline.SqliteJob):
2892
- """
2893
- A LigolwCBCPrintJob is a generic job class for ligolw_cbc_print* programs, e.g., ligolw_cbc_printlc.
2894
- """
2895
- def __init__(self, cp, exec_name, sections):
2896
- """
2897
- @param cp: ConfigParser object from which options are read.
2898
- @param exec_name UNDOCUMENTED
2899
- @param sections: list of sections for cp to read from
2900
- """
2901
- pipeline.SqliteJob.__init__(self, cp, sections, exec_name)
2902
-
2903
-
2904
- class LigolwCBCPrintNode(pipeline.SqliteNode):
2905
- """
2906
- A LigolwCBCPrintJob is a generic node class for ligolw_cbc_print* programs, e.g., ligolw_cbc_printlc.
2907
- This class offers options common to these programs.
2908
- """
2909
- def __init__(self, job):
2910
- """
2911
- @param job: a PrintLCJob
2912
- """
2913
- pipeline.SqliteNode.__init__(self, job)
2914
- self.__extract_to_xml = None
2915
- self.__extract_to_database = None
2916
- self.__exclude_coincs = None
2917
- self.__include_only_coincs = None
2918
- self.__sim_tag = None
2919
- self.__output_format = None
2920
- self.__columns = None
2921
-
2922
- def set_extract_to_xml(self, xml_filename):
2923
- """
2924
- Sets the extract-to-xml option.
2925
- """
2926
- self.add_var_opt('extract-to-xml', xml_filename)
2927
- self.__extract_to_xml = xml_filename
2928
-
2929
- def get_extract_to_xml(self):
2930
- """
2931
- Gets xml-filename if extract-to-xml is set.
2932
- """
2933
- return self.__extract_to_xml
2934
-
2935
- def set_extract_to_database(self, database_filename):
2936
- """
2937
- Sets the extract-to-database option.
2938
- """
2939
- self.add_var_opt('extract-to-database', database_filename)
2940
- self.__extract_to_database = database_filename
2941
-
2942
- def get_extract_to_database(self):
2943
- """
2944
- Gets database-filename if extract-to-database is set.
2945
- """
2946
- return self.__extract_to_database
2947
-
2948
- def set_exclude_coincs(self, exclude_coincs):
2949
- """
2950
- Sets exclude-coincs option.
2951
- """
2952
- self.add_var_opt('exclude-coincs', exclude_coincs)
2953
- self.__exclude_coincs = exclude_coincs
2954
-
2955
- def get_exclude_coincs(self):
2956
- """
2957
- Gets exclude-coincs option.
2958
- """
2959
- return self.__exclude_coincs
2960
-
2961
- def set_include_only_coincs(self, include_only_coincs):
2962
- """
2963
- Sets include-only-coincs option.
2964
- """
2965
- self.add_var_opt('include-only-coincs', include_only_coincs)
2966
- self.__include_only_coincs = include_only_coincs
2967
-
2968
- def get_include_only_coincs(self):
2969
- """
2970
- Gets include-only-coincs option.
2971
- """
2972
- return self.__include_only_coincs
2973
-
2974
- def set_sim_tag(self, sim_tag):
2975
- """
2976
- Sets the --sim-tag option.
2977
- """
2978
- self.add_var_opt('sim-tag', sim_tag)
2979
- self.__sim_tag = sim_tag
2980
-
2981
- def get_sim_tag(self):
2982
- """
2983
- Gets sim-tag option.
2984
- """
2985
- return self.__sim_tag
2986
-
2987
- def set_output_format(self, output_format):
2988
- """
2989
- Sets the output-format option. (Note that the default
2990
- for all ligolw_cbc_print* jobs is xml.)
2991
- """
2992
- self.add_var_opt('output-format', output_format)
2993
- self.__output_format = output_format
2994
-
2995
- def get_output_format(self):
2996
- """
2997
- Gets the output-format option.
2998
- """
2999
- return self.__output_format
3000
-
3001
- def set_columns(self, columns):
3002
- """
3003
- Sets the columns option.
3004
- """
3005
- self.add_var_opt('columns', columns)
3006
- self.__columns = columns
3007
-
3008
- def get_columns(self):
3009
- """
3010
- Gets the columns option.
3011
- """
3012
- return self.__columns
3013
-
3014
-
3015
- class PrintLCNode(LigolwCBCPrintNode):
3016
- """
3017
- A special instance of LigolwCBCPrintNode that adds printlc-specific methods.
3018
- """
3019
- def __init__(self, job):
3020
- """
3021
- @param job: a LigolwCBCPrintJob
3022
- """
3023
- LigolwCBCPrintNode.__init__(self, job)
3024
- self.__datatype = None
3025
-
3026
- def set_datatype(self, datatype):
3027
- """
3028
- Sets datatype option.
3029
- """
3030
- self.add_var_opt('datatype', datatype)
3031
- self.__datatype = datatype
3032
-
3033
- def get_datatype(self):
3034
- """
3035
- Gets datatype.
3036
- """
3037
- return self.__datatype
3038
-
3039
- class PrintSimsNode(LigolwCBCPrintNode):
3040
- """
3041
- A special instance of LigolwCBCPrintNode that adds printsims-specific methods.
3042
- """
3043
- def __init__(self, job):
3044
- """
3045
- @param job: a LigolwCBCPrintJob
3046
- """
3047
- LigolwCBCPrintNode.__init__(self, job)
3048
- self.__comparison_datatype = None
3049
- self.__simulation_table = None
3050
- self.__recovery_table = None
3051
-
3052
- def set_comparison_datatype(self, datatype):
3053
- """
3054
- Sets comparison-datatype option.
3055
- """
3056
- self.add_var_opt('comparison-datatype', datatype)
3057
- self.__comparison_datatype = datatype
3058
-
3059
- def get_comparison_datatype(self):
3060
- """
3061
- Gets comparison-datatype.
3062
- """
3063
- return self.__comparison_datatype
3064
-
3065
-
3066
- class PrintMissedNode(LigolwCBCPrintNode):
3067
- """
3068
- A special instance of LigolwCBCPrintNode that adds printmissed-specific methods.
3069
- """
3070
- def __init__(self, job):
3071
- """
3072
- @param job: a LigolwCBCPrintJob
3073
- """
3074
- LigolwCBCPrintNode.__init__(self, job)
3075
-
3076
-
3077
- class PlotSlidesJob(pipeline.SqliteJob):
3078
- """
3079
- A plotslides job. The static options are read from the sections [plot_input]
3080
- and [plotslides].
3081
- """
3082
- def __init__(self, cp):
3083
- """
3084
- @param cp: ConfigParser object from which options are read.
3085
- """
3086
- exec_name = 'plotslides'
3087
- sections = ['plot_input', 'plotslides']
3088
- pipeline.SqliteJob.__init__(self, cp, sections, exec_name)
3089
-
3090
- def set_plot_playground_only(self):
3091
- """
3092
- Sets plot-playground-only option. This causes job to only plot playground.
3093
- """
3094
- self.add_opt('plot-playground-only','')
3095
-
3096
-
3097
- class PlotSlidesNode(pipeline.SqliteNode):
3098
- """
3099
- A PlotSlides node.
3100
- """
3101
- def __init__(self, job):
3102
- """
3103
- @param job: a PlotSlidesJob
3104
- """
3105
- pipeline.SqliteNode.__init__(self, job)
3106
-
3107
-
3108
- class PlotCumhistJob(pipeline.SqliteJob):
3109
- """
3110
- A plotcumhist job. The static options are read from the sections [plot_input] and
3111
- [plotcumhist].
3112
- """
3113
- def __init__(self, cp):
3114
- """
3115
- @param cp: ConfigParser object from which options are read.
3116
- """
3117
- exec_name = 'plotcumhist'
3118
- sections = ['plot_input', 'plotcumhist']
3119
- pipeline.SqliteJob.__init__(self, cp, sections, exec_name)
3120
-
3121
- def set_plot_playground_only(self):
3122
- """
3123
- Sets plot-playground-only option. This causes job to only plot playground.
3124
- """
3125
- self.add_opt('plot-playground-only','')
3126
-
3127
-
3128
- class PlotCumhistNode(pipeline.SqliteNode):
3129
- """
3130
- A PlotCumhist node.
3131
- """
3132
- def __init__(self, job):
3133
- """
3134
- @param job: a PlotCumhist Job
3135
- """
3136
- pipeline.SqliteNode.__init__(self, job)
3137
-
3138
-
3139
- class PlotIfarJob(pipeline.SqliteJob):
3140
- """
3141
- A plotifar job. The static options are read from the [plotifar] section.
3142
- """
3143
- def __init__(self, cp):
3144
- """
3145
- @param cp: ConfigParser object from which options are read.
3146
- """
3147
- exec_name = 'plotifar'
3148
- sections = ['plot_input','plotifar']
3149
- pipeline.SqliteJob.__init__(self, cp, sections, exec_name)
3150
-
3151
-
3152
- class PlotIfarNode(pipeline.SqliteNode):
3153
- """
3154
- A PlotIfar node.
3155
- """
3156
- def __init__(self, job):
3157
- """
3158
- @param job: a PlotIfarJob
3159
- """
3160
- pipeline.SqliteNode.__init__(self, job)
3161
- self.__datatype = None
3162
-
3163
- def set_datatype(self, datatype):
3164
- """
3165
- Sets datatype option.
3166
- """
3167
- self.add_var_opt('datatype', datatype)
3168
- self.__datatype = datatype
3169
-
3170
- def get_datatype(self):
3171
- """
3172
- Gets datatype.
3173
- """
3174
- return self.__datatype
3175
-
3176
- class PlotFMJob(pipeline.SqliteJob):
3177
- """
3178
- A plotfm job. The static options are read from the [plotfm] seciont.
3179
- """
3180
- def __init__(self, cp):
3181
- """
3182
- @param cp: ConfigParser object from which objects are read.
3183
- """
3184
- exec_name = 'plotfm'
3185
- sections = ['plot_input', 'plotfm']
3186
- pipeline.SqliteJob.__init__(self, cp, sections, exec_name)
3187
-
3188
- class PlotFMNode(pipeline.SqliteNode):
3189
- """
3190
- A PlotFM node.
3191
- """
3192
- def __init__(self, job):
3193
- """
3194
- @param job: a PlotFMJob
3195
- """
3196
- pipeline.SqliteNode.__init__(self, job)
3197
- self.__sim_tag = None
3198
-
3199
- def set_sim_tag(self, sim_tag):
3200
- """
3201
- Sets the --sim-tag option.
3202
- """
3203
- self.add_var_opt('sim-tag', sim_tag)
3204
- self.__sim_tag = sim_tag
3205
-
3206
- def get_sim_tag(self):
3207
- """
3208
- Gets sim-tag option.
3209
- """
3210
- return self.__sim_tag
3211
-
3212
- ##############################################################################
3213
- # some functions to make life easier later
3214
-
3215
- def overlap_test(interval1, interval2, slide_sec=0):
3216
- """
3217
- Test whether the two intervals could possibly overlap with one of them being
3218
- slid by a maximum time of slide_sec. Perform three tests:
3219
- 1) Does the start of interval 1 lie within interval 2's range (with the
3220
- start decremented by slide_sec and the end incremented by slide_sec)
3221
- 2) Does the end of interval 1 lie within interval 2's range (with the start
3222
- decremented by slide_sec and the end incremented by slide_sec)
3223
- 3) Does interval 1 completely cover (the extended) interval 2,
3224
- ie is interval_1 start before (interval 2 start - slide_sec) AND
3225
- interval 1 end after (interval 2 end + slide_sec)
3226
- If any of the above conditions are satisfied then return True, else False.
3227
- """
3228
- start1 = interval1.start()
3229
- end1 = interval1.end()
3230
- left = interval2.start() - slide_sec
3231
- right = interval2.end() + slide_sec
3232
-
3233
- return (start1 >= left and start1 <= right) or \
3234
- (end1 >= left and end1 <= right) or \
3235
- (start1 <= left and end1 >= right)
3236
-
3237
-
3238
- class SearchVolumeJob(pipeline.SqliteJob):
3239
- """
3240
- A search volume job. Computes the observed physical volume
3241
- above a specified FAR; if FAR is not specified, computes the
3242
- volume above the loudest event (open box) or FAR=1/livetime
3243
- (closed box).
3244
- """
3245
- def __init__(self, cp):
3246
- """
3247
- @param cp: ConfigParser object from which options are read.
3248
- """
3249
- exec_name = 'search_volume'
3250
- pipeline.SqliteJob.__init__(self, cp, ['search-volume'], exec_name)
3251
- self.add_condor_cmd('environment',"KMP_LIBRARY=serial;MKL_SERIAL=yes")
3252
-
3253
- class SearchVolumeNode(pipeline.SqliteNode):
3254
- """
3255
- A search volume node.
3256
- """
3257
- def __init__(self, job):
3258
- """
3259
- """
3260
- pipeline.SqliteNode.__init__(self, job)
3261
-
3262
- def add_database(self, db):
3263
- self.add_var_arg(db)
3264
-
3265
- def set_output_cache(self, file):
3266
- self.add_var_opt("output-cache", file)
3267
-
3268
- def set_user_tag(self, tag):
3269
- self.add_var_opt("user-tag", tag)
3270
-
3271
- def set_veto_segments_name(self, name):
3272
- self.add_var_opt("veto-segments-name", name)
3273
-
3274
- def set_open_box(self):
3275
- self.add_var_arg("--open-box")
3276
-
3277
-
3278
- class SearchUpperLimitJob(pipeline.SqliteJob):
3279
- """
3280
- A search upper limit job. Compute the search upper limit from the search
3281
- volume output. Generates upper limit plots.
3282
- """
3283
- def __init__(self, cp):
3284
- """
3285
- @param cp: ConfigParser object from which options are read.
3286
- sections: list of sections for cp to read from
3287
- """
3288
- exec_name = 'search_upper_limit'
3289
- pipeline.SqliteJob.__init__(self, cp, ['upper-limit'], exec_name)
3290
- self.add_condor_cmd('environment',"KMP_LIBRARY=serial;MKL_SERIAL=yes")
3291
-
3292
- class SearchUpperLimitNode(pipeline.SqliteNode):
3293
- """
3294
- A search upper limit node.
3295
- """
3296
- def __init__(self, job):
3297
- """
3298
- @param job: a SearchUpperLimitJob
3299
- """
3300
- pipeline.SqliteNode.__init__(self, job)
3301
- self.open_box = False
3302
-
3303
- def add_input_cache(self, input_cache):
3304
- self.add_var_arg(input_cache)
3305
-
3306
- def set_user_tag(self, tag):
3307
- self.add_var_opt("user-tag", tag)
3308
-
3309
- def set_open_box(self):
3310
- '''
3311
- Set the open box flag.
3312
- '''
3313
- if not self.open_box:
3314
- self.open_box = True
3315
- self.add_var_arg("--open-box")
3316
-
3317
- class MVSCDagGenerationJob(InspiralAnalysisJob):
3318
- """
3319
- a job that generates the mvsc_dag, which will be run as an external subdag
3320
- """
3321
- def __init__(self, cp):
3322
- """
3323
- @param cp: ConfigParser object from which options are read.
3324
- """
3325
- exec_name = "mvsc_dag"
3326
- universe = "vanilla"
3327
- sections = "[mvsc_dag]"
3328
- executable = cp.get('condor',exec_name)
3329
- pipeline.CondorDAGJob.__init__(self, universe, executable)
3330
- pipeline.AnalysisJob.__init__(self, cp)
3331
- self.add_condor_cmd('getenv','True')
3332
- self.set_stdout_file('logs/' + exec_name + '-$(cluster)-$(process).out')
3333
- self.set_stderr_file('logs/' + exec_name + '-$(cluster)-$(process).err')
3334
- self.set_sub_file(exec_name + '.sub')
3335
-
3336
- class MVSCDagGenerationNode(InspiralAnalysisNode):
3337
- """
3338
- the node that runs the mvsc dag generation script for a given configuration
3339
- generally the different nodes will be for different categories of vetoes
3340
- """
3341
- def __init__(self, job):
3342
- InspiralAnalysisNode.__init__(self, job)
3343
- def set_database(self, database):
3344
- self.add_var_arg(database)
3345
- def set_user_tag(self, tag):
3346
- self.add_var_opt("user-tag",tag)
3347
- class ExtendedCoincJob(InspiralAnalysisJob):
3348
- """
3349
- job to calculate the extende background for zero far events
3350
- """
3351
- def __init__(self, cp):
3352
- """
3353
- cp = ConfigParser object from which options are read.
3354
- sections = sections of the ConfigParser that get added to the opts
3355
- exec_name = exec_name name in ConfigParser
3356
- """
3357
-
3358
- exec_name = 'extended_background'
3359
- sections = []
3360
- extension = 'html'
3361
- InspiralAnalysisJob.__init__(self, cp, sections, exec_name, extension)
3362
- self.add_condor_cmd('getenv','True')
3363
-
3364
-
3365
- class ExtendedCoincNode(InspiralAnalysisNode):
3366
- """
3367
- Node to calculate the extended background for a zero far event
3368
- """
3369
- def __init__(self, job):
3370
- InspiralAnalysisNode.__init__(self, job)
3371
-
3372
- def set_coinc_threshold(self, coinc_threshold):
3373
- self.add_var_opt('coinc-threshold', coinc_threshold)
3374
-
3375
- def set_ihope_base_dir(self, base_dir):
3376
- self.add_var_opt('ihope-base-dir', base_dir)
3377
-
3378
- def set_param_ranges(self, param_ranges):
3379
- self.add_var_opt('param-ranges', param_ranges)
3380
-
3381
- def set_ethinca(self, ethinca):
3382
- self.add_var_opt('e-thinca-parameter', ethinca)
3383
-
3384
- def set_slide_step(self, slide_step):
3385
- self.add_var_opt('slide-step', slide_step)
3386
-
3387
- def set_veto_window(self, veto_window):
3388
- self.add_var_opt('veto-window', veto_window)
3389
-
3390
- def set_new_snr_cut(self, new_snr_cut):
3391
- self.add_var_opt('new-snr-cut', new_snr_cut)
3392
-
3393
- def set_loudest_event_glob(self, event_glob):
3394
- self.add_var_opt('loudest-event-glob', event_glob)