lalsuite 7.26.2.dev20251218__cp314-cp314t-manylinux_2_28_x86_64.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.
- lal/__init__.py +145 -0
- lal/_lal.cpython-314t-x86_64-linux-gnu.so +0 -0
- lal/_lal_swig.py +12 -0
- lal/antenna.py +1200 -0
- lal/git_version.py +64 -0
- lal/gpstime.py +233 -0
- lal/iterutils.py +408 -0
- lal/pipeline.py +3139 -0
- lal/rate.py +2455 -0
- lal/series.py +244 -0
- lal/utils/__init__.py +29 -0
- lal/utils/cache.py +379 -0
- lal/utils/series.py +277 -0
- lalapps/__init__.py +26 -0
- lalapps/bin/lal_cache +0 -0
- lalapps/bin/lal_fftw_wisdom +0 -0
- lalapps/bin/lal_fftwf_wisdom +0 -0
- lalapps/bin/lal_simd_detect +0 -0
- lalapps/bin/lal_tconvert +0 -0
- lalapps/bin/lal_version +0 -0
- lalapps/bin/lalapps_ComputeAntennaPattern +16 -0
- lalapps/bin/lalapps_ComputeFstatBenchmark +16 -0
- lalapps/bin/lalapps_ComputeFstatLatticeCount +16 -0
- lalapps/bin/lalapps_ComputeFstatMCUpperLimit +16 -0
- lalapps/bin/lalapps_ComputeFstatistic_v2 +16 -0
- lalapps/bin/lalapps_ComputePSD +16 -0
- lalapps/bin/lalapps_CopySFTs +16 -0
- lalapps/bin/lalapps_DistanceVsMass +0 -0
- lalapps/bin/lalapps_DriveHoughMulti +16 -0
- lalapps/bin/lalapps_FstatMetric_v2 +16 -0
- lalapps/bin/lalapps_HierarchSearchGCT +16 -0
- lalapps/bin/lalapps_HierarchicalSearch +16 -0
- lalapps/bin/lalapps_MakeSFTDAG +16 -0
- lalapps/bin/lalapps_MakeSFTs +16 -0
- lalapps/bin/lalapps_Makefakedata_v4 +16 -0
- lalapps/bin/lalapps_Makefakedata_v5 +16 -0
- lalapps/bin/lalapps_PredictFstat +16 -0
- lalapps/bin/lalapps_PrintDetectorState +16 -0
- lalapps/bin/lalapps_SFTclean +16 -0
- lalapps/bin/lalapps_SFTvalidate +16 -0
- lalapps/bin/lalapps_StringAddFrame +0 -0
- lalapps/bin/lalapps_StringSearch +0 -0
- lalapps/bin/lalapps_Weave +16 -0
- lalapps/bin/lalapps_WeaveCompare +16 -0
- lalapps/bin/lalapps_WeaveConcat +16 -0
- lalapps/bin/lalapps_WeaveSetup +16 -0
- lalapps/bin/lalapps_WriteSFTsfromSFDBs +16 -0
- lalapps/bin/lalapps_animate +0 -0
- lalapps/bin/lalapps_binj +0 -0
- lalapps/bin/lalapps_blindinj +0 -0
- lalapps/bin/lalapps_cache +16 -0
- lalapps/bin/lalapps_calfacs +0 -0
- lalapps/bin/lalapps_cbc_stochasticbank +0 -0
- lalapps/bin/lalapps_chirplen +0 -0
- lalapps/bin/lalapps_coh_PTF_inspiral +0 -0
- lalapps/bin/lalapps_coinj +0 -0
- lalapps/bin/lalapps_combine_crosscorr_toplists +16 -0
- lalapps/bin/lalapps_compareFstats +16 -0
- lalapps/bin/lalapps_compareSFTs +16 -0
- lalapps/bin/lalapps_create_time_correction_ephemeris +16 -0
- lalapps/bin/lalapps_dumpSFT +16 -0
- lalapps/bin/lalapps_effdist +0 -0
- lalapps/bin/lalapps_exc_resp +0 -0
- lalapps/bin/lalapps_fftw_wisdom +16 -0
- lalapps/bin/lalapps_fftwf_wisdom +16 -0
- lalapps/bin/lalapps_fits_header_getval +16 -0
- lalapps/bin/lalapps_fits_header_list +16 -0
- lalapps/bin/lalapps_fits_overview +16 -0
- lalapps/bin/lalapps_fits_table_list +16 -0
- lalapps/bin/lalapps_fr_ninja +0 -0
- lalapps/bin/lalapps_frextr +0 -0
- lalapps/bin/lalapps_frinfo +0 -0
- lalapps/bin/lalapps_frjoin +0 -0
- lalapps/bin/lalapps_frread +0 -0
- lalapps/bin/lalapps_frview +0 -0
- lalapps/bin/lalapps_gwf2xml +0 -0
- lalapps/bin/lalapps_heterodyne_pulsar +16 -0
- lalapps/bin/lalapps_inspawgfile +0 -0
- lalapps/bin/lalapps_inspfrinj +0 -0
- lalapps/bin/lalapps_inspinj +0 -0
- lalapps/bin/lalapps_inspiralDistance +0 -0
- lalapps/bin/lalapps_knope +16 -0
- lalapps/bin/lalapps_knope_automation_script +16 -0
- lalapps/bin/lalapps_knope_collate_results +16 -0
- lalapps/bin/lalapps_knope_result_page +16 -0
- lalapps/bin/lalapps_makeblindinj +85 -0
- lalapps/bin/lalapps_makeblindinj_himass +67 -0
- lalapps/bin/lalapps_ninja +0 -0
- lalapps/bin/lalapps_path2cache +16 -0
- lalapps/bin/lalapps_power +0 -0
- lalapps/bin/lalapps_pulsar_crosscorr_v2 +16 -0
- lalapps/bin/lalapps_pulsar_frequency_evolution +16 -0
- lalapps/bin/lalapps_pulsar_parameter_estimation_nested +16 -0
- lalapps/bin/lalapps_random_bank +0 -0
- lalapps/bin/lalapps_randombank +0 -0
- lalapps/bin/lalapps_run_pulsar_crosscorr_v2 +16 -0
- lalapps/bin/lalapps_searchsum2cache +16 -0
- lalapps/bin/lalapps_spec_avg +16 -0
- lalapps/bin/lalapps_spec_avg_long +16 -0
- lalapps/bin/lalapps_spec_coherence +16 -0
- lalapps/bin/lalapps_spininj +0 -0
- lalapps/bin/lalapps_splitSFTs +16 -0
- lalapps/bin/lalapps_splitbank +0 -0
- lalapps/bin/lalapps_ssbtodetector +16 -0
- lalapps/bin/lalapps_synthesizeBstatMC +16 -0
- lalapps/bin/lalapps_synthesizeLVStats +16 -0
- lalapps/bin/lalapps_synthesizeTransientStats +16 -0
- lalapps/bin/lalapps_tconvert +16 -0
- lalapps/bin/lalapps_tmpltbank +0 -0
- lalapps/bin/lalapps_version +0 -0
- lalapps/bin/lalapps_xtefitstoframe +0 -0
- lalapps/bin/lalburst_version +0 -0
- lalapps/bin/lalfr-cat +0 -0
- lalapps/bin/lalfr-cksum +0 -0
- lalapps/bin/lalfr-cut +0 -0
- lalapps/bin/lalfr-dump +0 -0
- lalapps/bin/lalfr-fmt +0 -0
- lalapps/bin/lalfr-paste +0 -0
- lalapps/bin/lalfr-print +0 -0
- lalapps/bin/lalfr-split +0 -0
- lalapps/bin/lalfr-stat +0 -0
- lalapps/bin/lalfr-stream +0 -0
- lalapps/bin/lalfr-vis +0 -0
- lalapps/bin/lalframe_version +0 -0
- lalapps/bin/lalinference_bench +0 -0
- lalapps/bin/lalinference_burst +0 -0
- lalapps/bin/lalinference_datadump +0 -0
- lalapps/bin/lalinference_injectedlike +0 -0
- lalapps/bin/lalinference_mpi_wrapper +59 -0
- lalapps/bin/lalinference_nest +0 -0
- lalapps/bin/lalinference_version +0 -0
- lalapps/bin/lalinspiral_version +0 -0
- lalapps/bin/lalmetaio_version +0 -0
- lalapps/bin/lalpulsar_ComputeAntennaPattern +0 -0
- lalapps/bin/lalpulsar_ComputeFstatBenchmark +0 -0
- lalapps/bin/lalpulsar_ComputeFstatLatticeCount +0 -0
- lalapps/bin/lalpulsar_ComputeFstatMCUpperLimit +0 -0
- lalapps/bin/lalpulsar_ComputeFstatistic_v2 +0 -0
- lalapps/bin/lalpulsar_ComputePSD +0 -0
- lalapps/bin/lalpulsar_DriveHoughMulti +0 -0
- lalapps/bin/lalpulsar_FstatMetric_v2 +0 -0
- lalapps/bin/lalpulsar_HierarchSearchGCT +0 -0
- lalapps/bin/lalpulsar_HierarchicalSearch +0 -0
- lalapps/bin/lalpulsar_MakeSFTs +0 -0
- lalapps/bin/lalpulsar_Makefakedata_v4 +0 -0
- lalapps/bin/lalpulsar_Makefakedata_v5 +0 -0
- lalapps/bin/lalpulsar_PredictFstat +0 -0
- lalapps/bin/lalpulsar_PrintDetectorState +0 -0
- lalapps/bin/lalpulsar_SFTclean +0 -0
- lalapps/bin/lalpulsar_SFTvalidate +0 -0
- lalapps/bin/lalpulsar_Weave +0 -0
- lalapps/bin/lalpulsar_WeaveCompare +0 -0
- lalapps/bin/lalpulsar_WeaveConcat +0 -0
- lalapps/bin/lalpulsar_WeaveSetup +0 -0
- lalapps/bin/lalpulsar_WriteSFTsfromSFDBs +0 -0
- lalapps/bin/lalpulsar_compareFstats +0 -0
- lalapps/bin/lalpulsar_compareSFTs +0 -0
- lalapps/bin/lalpulsar_create_time_correction_ephemeris +0 -0
- lalapps/bin/lalpulsar_crosscorr_v2 +0 -0
- lalapps/bin/lalpulsar_dumpSFT +0 -0
- lalapps/bin/lalpulsar_fits_header_getval +0 -0
- lalapps/bin/lalpulsar_fits_header_list +0 -0
- lalapps/bin/lalpulsar_fits_overview +0 -0
- lalapps/bin/lalpulsar_fits_table_list +0 -0
- lalapps/bin/lalpulsar_frequency_evolution +0 -0
- lalapps/bin/lalpulsar_heterodyne +0 -0
- lalapps/bin/lalpulsar_parameter_estimation_nested +0 -0
- lalapps/bin/lalpulsar_spec_avg +0 -0
- lalapps/bin/lalpulsar_spec_avg_long +0 -0
- lalapps/bin/lalpulsar_spec_coherence +0 -0
- lalapps/bin/lalpulsar_splitSFTs +0 -0
- lalapps/bin/lalpulsar_ssbtodetector +0 -0
- lalapps/bin/lalpulsar_synthesizeBstatMC +0 -0
- lalapps/bin/lalpulsar_synthesizeLVStats +0 -0
- lalapps/bin/lalpulsar_synthesizeTransientStats +0 -0
- lalapps/bin/lalpulsar_version +0 -0
- lalapps/bin/lalsim-bh-qnmode +0 -0
- lalapps/bin/lalsim-bh-ringdown +0 -0
- lalapps/bin/lalsim-bh-sphwf +0 -0
- lalapps/bin/lalsim-burst +0 -0
- lalapps/bin/lalsim-detector-noise +0 -0
- lalapps/bin/lalsim-detector-strain +0 -0
- lalapps/bin/lalsim-inject +0 -0
- lalapps/bin/lalsim-inspiral +0 -0
- lalapps/bin/lalsim-ns-eos-table +0 -0
- lalapps/bin/lalsim-ns-mass-radius +0 -0
- lalapps/bin/lalsim-ns-params +0 -0
- lalapps/bin/lalsim-sgwb +0 -0
- lalapps/bin/lalsim-unicorn +0 -0
- lalapps/bin/lalsimulation_version +0 -0
- lalapps/cosmicstring.py +691 -0
- lalapps/data/BNSMasses.dat +65022 -0
- lalapps/data/CorrelationMatrix.csv +15 -0
- lalapps/data/LALSimNeutronStarEOS_ABHT_QMC_RMF1_META.dat +1882 -0
- lalapps/data/LALSimNeutronStarEOS_ABHT_QMC_RMF2_META.dat +1939 -0
- lalapps/data/LALSimNeutronStarEOS_ABHT_QMC_RMF3_META.dat +1784 -0
- lalapps/data/LALSimNeutronStarEOS_ABHT_QMC_RMF4_META.dat +2074 -0
- lalapps/data/LALSimNeutronStarEOS_ALF1.dat +435 -0
- lalapps/data/LALSimNeutronStarEOS_ALF2.dat +453 -0
- lalapps/data/LALSimNeutronStarEOS_ALF3.dat +441 -0
- lalapps/data/LALSimNeutronStarEOS_ALF4.dat +441 -0
- lalapps/data/LALSimNeutronStarEOS_AP1.dat +212 -0
- lalapps/data/LALSimNeutronStarEOS_AP2.dat +212 -0
- lalapps/data/LALSimNeutronStarEOS_AP3.dat +212 -0
- lalapps/data/LALSimNeutronStarEOS_AP4.dat +210 -0
- lalapps/data/LALSimNeutronStarEOS_APR.dat +500 -0
- lalapps/data/LALSimNeutronStarEOS_APR4_EPP.dat +1447 -0
- lalapps/data/LALSimNeutronStarEOS_BBB2.dat +84 -0
- lalapps/data/LALSimNeutronStarEOS_BGN1H1.dat +123 -0
- lalapps/data/LALSimNeutronStarEOS_BHF_BBB2.dat +499 -0
- lalapps/data/LALSimNeutronStarEOS_BL_CHIRAL_META.dat +1534 -0
- lalapps/data/LALSimNeutronStarEOS_BPAL12.dat +61 -0
- lalapps/data/LALSimNeutronStarEOS_BSK19.dat +310 -0
- lalapps/data/LALSimNeutronStarEOS_BSK20.dat +310 -0
- lalapps/data/LALSimNeutronStarEOS_BSK21.dat +310 -0
- lalapps/data/LALSimNeutronStarEOS_ENG.dat +108 -0
- lalapps/data/LALSimNeutronStarEOS_FPS.dat +129 -0
- lalapps/data/LALSimNeutronStarEOS_GMSR_BSK14_BSK24.dat +1010 -0
- lalapps/data/LALSimNeutronStarEOS_GMSR_DHSL59_BSK24.dat +1009 -0
- lalapps/data/LALSimNeutronStarEOS_GMSR_DHSL69_BSK24.dat +1009 -0
- lalapps/data/LALSimNeutronStarEOS_GMSR_F0_BSK24.dat +1010 -0
- lalapps/data/LALSimNeutronStarEOS_GMSR_H1_BSK24.dat +1009 -0
- lalapps/data/LALSimNeutronStarEOS_GMSR_H2_BSK24.dat +1010 -0
- lalapps/data/LALSimNeutronStarEOS_GMSR_H3_BSK24.dat +1010 -0
- lalapps/data/LALSimNeutronStarEOS_GMSR_H4_BSK24.dat +1010 -0
- lalapps/data/LALSimNeutronStarEOS_GMSR_H5_BSK24.dat +1009 -0
- lalapps/data/LALSimNeutronStarEOS_GMSR_LN55_BSK24.dat +1010 -0
- lalapps/data/LALSimNeutronStarEOS_GMSR_SLY5_BSK24.dat +1010 -0
- lalapps/data/LALSimNeutronStarEOS_GNH3.dat +71 -0
- lalapps/data/LALSimNeutronStarEOS_GPPVA_DD2_BSK24.dat +1009 -0
- lalapps/data/LALSimNeutronStarEOS_GPPVA_DDME2_BSK24.dat +1010 -0
- lalapps/data/LALSimNeutronStarEOS_GPPVA_FSU2H_BSK24.dat +1009 -0
- lalapps/data/LALSimNeutronStarEOS_GPPVA_FSU2_BSK24.dat +1010 -0
- lalapps/data/LALSimNeutronStarEOS_GPPVA_NL3WRL55_BSK24.dat +1010 -0
- lalapps/data/LALSimNeutronStarEOS_GS1.dat +136 -0
- lalapps/data/LALSimNeutronStarEOS_GS2.dat +100 -0
- lalapps/data/LALSimNeutronStarEOS_H1.dat +114 -0
- lalapps/data/LALSimNeutronStarEOS_H2.dat +114 -0
- lalapps/data/LALSimNeutronStarEOS_H3.dat +98 -0
- lalapps/data/LALSimNeutronStarEOS_H4.dat +664 -0
- lalapps/data/LALSimNeutronStarEOS_H5.dat +703 -0
- lalapps/data/LALSimNeutronStarEOS_H6.dat +509 -0
- lalapps/data/LALSimNeutronStarEOS_H7.dat +703 -0
- lalapps/data/LALSimNeutronStarEOS_HQC18.dat +388 -0
- lalapps/data/LALSimNeutronStarEOS_KDE0V.dat +500 -0
- lalapps/data/LALSimNeutronStarEOS_KDE0V1.dat +500 -0
- lalapps/data/LALSimNeutronStarEOS_KDE0V1_BSK24.dat +1388 -0
- lalapps/data/LALSimNeutronStarEOS_KDE0V_BSK24.dat +1398 -0
- lalapps/data/LALSimNeutronStarEOS_MPA1.dat +102 -0
- lalapps/data/LALSimNeutronStarEOS_MS1.dat +122 -0
- lalapps/data/LALSimNeutronStarEOS_MS1B.dat +126 -0
- lalapps/data/LALSimNeutronStarEOS_MS1B_PP.dat +1447 -0
- lalapps/data/LALSimNeutronStarEOS_MS1_PP.dat +1447 -0
- lalapps/data/LALSimNeutronStarEOS_MS2.dat +48 -0
- lalapps/data/LALSimNeutronStarEOS_PAL6.dat +148 -0
- lalapps/data/LALSimNeutronStarEOS_PCL2.dat +134 -0
- lalapps/data/LALSimNeutronStarEOS_PCP_BSK24_BSK24.dat +1010 -0
- lalapps/data/LALSimNeutronStarEOS_PS.dat +165 -0
- lalapps/data/LALSimNeutronStarEOS_QMC700.dat +117 -0
- lalapps/data/LALSimNeutronStarEOS_RG_SLY4_BSK24.dat +1010 -0
- lalapps/data/LALSimNeutronStarEOS_RS.dat +500 -0
- lalapps/data/LALSimNeutronStarEOS_RS_BSK24.dat +1356 -0
- lalapps/data/LALSimNeutronStarEOS_SK255.dat +500 -0
- lalapps/data/LALSimNeutronStarEOS_SK255_BSK24.dat +1066 -0
- lalapps/data/LALSimNeutronStarEOS_SK272.dat +500 -0
- lalapps/data/LALSimNeutronStarEOS_SKA.dat +500 -0
- lalapps/data/LALSimNeutronStarEOS_SKA_BSK24.dat +1433 -0
- lalapps/data/LALSimNeutronStarEOS_SKB.dat +500 -0
- lalapps/data/LALSimNeutronStarEOS_SKB_BSK24.dat +1373 -0
- lalapps/data/LALSimNeutronStarEOS_SKI2.dat +500 -0
- lalapps/data/LALSimNeutronStarEOS_SKI2_BSK24.dat +1348 -0
- lalapps/data/LALSimNeutronStarEOS_SKI3.dat +500 -0
- lalapps/data/LALSimNeutronStarEOS_SKI3_BSK24.dat +1355 -0
- lalapps/data/LALSimNeutronStarEOS_SKI4.dat +497 -0
- lalapps/data/LALSimNeutronStarEOS_SKI4_BSK24.dat +1348 -0
- lalapps/data/LALSimNeutronStarEOS_SKI5.dat +500 -0
- lalapps/data/LALSimNeutronStarEOS_SKI6.dat +500 -0
- lalapps/data/LALSimNeutronStarEOS_SKI6_BSK24.dat +1358 -0
- lalapps/data/LALSimNeutronStarEOS_SKMP.dat +498 -0
- lalapps/data/LALSimNeutronStarEOS_SKOP.dat +500 -0
- lalapps/data/LALSimNeutronStarEOS_SKOP_BSK24.dat +1373 -0
- lalapps/data/LALSimNeutronStarEOS_SLY.dat +99 -0
- lalapps/data/LALSimNeutronStarEOS_SLY2.dat +500 -0
- lalapps/data/LALSimNeutronStarEOS_SLY230A.dat +500 -0
- lalapps/data/LALSimNeutronStarEOS_SLY230A_BSK24.dat +1116 -0
- lalapps/data/LALSimNeutronStarEOS_SLY2_BSK24.dat +1106 -0
- lalapps/data/LALSimNeutronStarEOS_SLY4.dat +100 -0
- lalapps/data/LALSimNeutronStarEOS_SLY9.dat +498 -0
- lalapps/data/LALSimNeutronStarEOS_SLY9_BSK24.dat +1083 -0
- lalapps/data/LALSimNeutronStarEOS_SQM1.dat +176 -0
- lalapps/data/LALSimNeutronStarEOS_SQM2.dat +180 -0
- lalapps/data/LALSimNeutronStarEOS_SQM3.dat +176 -0
- lalapps/data/LALSimNeutronStarEOS_WFF1.dat +109 -0
- lalapps/data/LALSimNeutronStarEOS_WFF2.dat +109 -0
- lalapps/data/LALSimNeutronStarEOS_WFF3.dat +107 -0
- lalapps/data/LALSimNeutronStarEOS_XMLSLZ_DDLZ1_BSK24.dat +1227 -0
- lalapps/data/LALSimNeutronStarEOS_XMLSLZ_DDME2_BSK24.dat +1272 -0
- lalapps/data/LALSimNeutronStarEOS_XMLSLZ_DDMEX_BSK24.dat +1280 -0
- lalapps/data/LALSimNeutronStarEOS_XMLSLZ_GM1_BSK24.dat +1288 -0
- lalapps/data/LALSimNeutronStarEOS_XMLSLZ_MTVTC_BSK24.dat +1288 -0
- lalapps/data/LALSimNeutronStarEOS_XMLSLZ_NL3_BSK24.dat +1230 -0
- lalapps/data/LALSimNeutronStarEOS_XMLSLZ_PKDD_BSK24.dat +1288 -0
- lalapps/data/LALSimNeutronStarEOS_XMLSLZ_TM1_BSK24.dat +1288 -0
- lalapps/data/LALSimNeutronStarEOS_XMLSLZ_TW99_BSK24.dat +1288 -0
- lalapps/data/LIGO-P1200087-v18-AdV_BNS_OPTIMIZED.txt +3000 -0
- lalapps/data/LIGO-P1200087-v18-AdV_DESIGN.txt +3000 -0
- lalapps/data/LIGO-P1200087-v18-AdV_EARLY_HIGH.txt +3000 -0
- lalapps/data/LIGO-P1200087-v18-AdV_EARLY_LOW.txt +3000 -0
- lalapps/data/LIGO-P1200087-v18-AdV_LATE_HIGH.txt +3000 -0
- lalapps/data/LIGO-P1200087-v18-AdV_LATE_LOW.txt +3000 -0
- lalapps/data/LIGO-P1200087-v18-AdV_MID_HIGH.txt +3000 -0
- lalapps/data/LIGO-P1200087-v18-AdV_MID_LOW.txt +3000 -0
- lalapps/data/LIGO-P1200087-v18-aLIGO_BNS_OPTIMIZED.txt +3000 -0
- lalapps/data/LIGO-P1200087-v18-aLIGO_DESIGN.txt +3000 -0
- lalapps/data/LIGO-P1200087-v18-aLIGO_EARLY_HIGH.txt +3000 -0
- lalapps/data/LIGO-P1200087-v18-aLIGO_EARLY_LOW.txt +3000 -0
- lalapps/data/LIGO-P1200087-v18-aLIGO_LATE_HIGH.txt +3000 -0
- lalapps/data/LIGO-P1200087-v18-aLIGO_LATE_LOW.txt +3000 -0
- lalapps/data/LIGO-P1200087-v18-aLIGO_MID_HIGH.txt +3000 -0
- lalapps/data/LIGO-P1200087-v18-aLIGO_MID_LOW.txt +3000 -0
- lalapps/data/LIGO-P1600143-v18-CE.txt +3000 -0
- lalapps/data/LIGO-P1600143-v18-CE_Pessimistic.txt +3000 -0
- lalapps/data/LIGO-P1600143-v18-CE_Wideband.txt +3000 -0
- lalapps/data/LIGO-P1600143-v18-ET_D.txt +3000 -0
- lalapps/data/LIGO-T0900288-v3-BHBH_20deg.txt +3000 -0
- lalapps/data/LIGO-T0900288-v3-High_Freq.txt +3000 -0
- lalapps/data/LIGO-T0900288-v3-NO_SRM.txt +3000 -0
- lalapps/data/LIGO-T0900288-v3-NSNS_Opt.txt +3000 -0
- lalapps/data/LIGO-T0900288-v3-ZERO_DET_high_P.txt +3000 -0
- lalapps/data/LIGO-T0900288-v3-ZERO_DET_low_P.txt +3000 -0
- lalapps/data/LIGO-T1600593-v1-KAGRA_Design.txt +4000 -0
- lalapps/data/LIGO-T1600593-v1-KAGRA_Early.txt +4000 -0
- lalapps/data/LIGO-T1600593-v1-KAGRA_Late.txt +4000 -0
- lalapps/data/LIGO-T1600593-v1-KAGRA_Mid.txt +4000 -0
- lalapps/data/LIGO-T1600593-v1-KAGRA_Opening.txt +4000 -0
- lalapps/data/LIGO-T1800042-v5-aLIGO_APLUS.txt +3000 -0
- lalapps/data/LIGO-T1800044-v5-aLIGO_DESIGN.txt +3000 -0
- lalapps/data/LIGO-T1800545-v1-AdV_O3low.txt +3000 -0
- lalapps/data/LIGO-T1800545-v1-AdV_O4.txt +3000 -0
- lalapps/data/LIGO-T1800545-v1-AdV_O4intermediate.txt +3000 -0
- lalapps/data/LIGO-T1800545-v1-KAGRA_128Mpc.txt +1000 -0
- lalapps/data/LIGO-T1800545-v1-KAGRA_25Mpc.txt +1000 -0
- lalapps/data/LIGO-T1800545-v1-KAGRA_80Mpc.txt +1000 -0
- lalapps/data/LIGO-T1800545-v1-aLIGO_140Mpc.txt +1000 -0
- lalapps/data/LIGO-T1800545-v1-aLIGO_175Mpc.txt +2792 -0
- lalapps/data/LIGO-T1800545-v1-aLIGO_O3low.txt +2792 -0
- lalapps/data/bimodalMeans.csv +3 -0
- lalapps/data/config_tiger_example.ini +150 -0
- lalapps/data/fiducialBBH.xml +67 -0
- lalapps/data/fiducialBNS.xml +67 -0
- lalapps/data/inspsrcs100Mpc.errors +38735 -0
- lalapps/data/lalinference_pipe_example.ini +573 -0
- lalapps/data/lib_pipe_example.ini +303 -0
- lalapps/data/power_pipe.ini +129 -0
- lalapps/data/unimodalMeans.csv +2 -0
- lalapps/git_version.py +64 -0
- lalburst/SimBurstUtils.py +324 -0
- lalburst/SnglBurstUtils.py +367 -0
- lalburst/__init__.py +7 -0
- lalburst/_lalburst.cpython-314t-x86_64-linux-gnu.so +0 -0
- lalburst/_lalburst_swig.py +16 -0
- lalburst/binjfind.py +824 -0
- lalburst/bucluster.py +409 -0
- lalburst/burca.py +315 -0
- lalburst/burca_tailor.py +349 -0
- lalburst/cafe.py +579 -0
- lalburst/calc_likelihood.py +145 -0
- lalburst/cs_gamma.cpython-314t-x86_64-linux-gnu.so +0 -0
- lalburst/date.py +118 -0
- lalburst/git_version.py +64 -0
- lalburst/offsetvector.py +278 -0
- lalburst/packing.py +170 -0
- lalburst/power.py +1457 -0
- lalburst/snglcluster.py +136 -0
- lalburst/snglcoinc.py +2637 -0
- lalburst/stringutils.py +607 -0
- lalburst/timeslides.py +236 -0
- lalframe/__init__.py +7 -0
- lalframe/_lalframe.cpython-314t-x86_64-linux-gnu.so +0 -0
- lalframe/_lalframe_swig.py +14 -0
- lalframe/frread.py +324 -0
- lalframe/git_version.py +64 -0
- lalframe/utils/__init__.py +25 -0
- lalframe/utils/frtools.py +61 -0
- lalinference/__init__.py +7 -0
- lalinference/_bayespputils.cpython-314t-x86_64-linux-gnu.so +0 -0
- lalinference/_lalinference.cpython-314t-x86_64-linux-gnu.so +0 -0
- lalinference/_lalinference_swig.py +19 -0
- lalinference/bayespputils.py +7479 -0
- lalinference/bayestar/__init__.py +2 -0
- lalinference/bayestar/deprecation.py +72 -0
- lalinference/git_version.py +64 -0
- lalinference/imrtgr/__init__.py +0 -0
- lalinference/imrtgr/imrtgrutils.py +168 -0
- lalinference/imrtgr/nrutils.py +1366 -0
- lalinference/imrtgr/pneqns.py +250 -0
- lalinference/io/__init__.py +31 -0
- lalinference/io/hdf5.py +365 -0
- lalinference/lalinference_pipe_utils.py +3617 -0
- lalinference/nest2pos.py +151 -0
- lalinference/plot/__init__.py +34 -0
- lalinference/plot/spindisk.py +104 -0
- lalinference/tiger/__init__.py +0 -0
- lalinference/tiger/make_injtimes.py +634 -0
- lalinference/tiger/omegascans_dag.py +691 -0
- lalinference/tiger/postproc.py +1338 -0
- lalinference/wrapper.py +231 -0
- lalinspiral/__init__.py +7 -0
- lalinspiral/_lalinspiral.cpython-314t-x86_64-linux-gnu.so +0 -0
- lalinspiral/_lalinspiral_swig.py +18 -0
- lalinspiral/_thinca.cpython-314t-x86_64-linux-gnu.so +0 -0
- lalinspiral/git_version.py +64 -0
- lalinspiral/inspinjfind.py +485 -0
- lalinspiral/thinca.py +509 -0
- lalmetaio/__init__.py +7 -0
- lalmetaio/_lalmetaio.cpython-314t-x86_64-linux-gnu.so +0 -0
- lalmetaio/_lalmetaio_swig.py +14 -0
- lalmetaio/git_version.py +64 -0
- lalpulsar/NstarTools.py +259 -0
- lalpulsar/PulsarParametersWrapper.py +938 -0
- lalpulsar/__init__.py +7 -0
- lalpulsar/_lalpulsar.cpython-314t-x86_64-linux-gnu.so +0 -0
- lalpulsar/_lalpulsar_swig.py +17 -0
- lalpulsar/git_version.py +64 -0
- lalpulsar/knope_utils.py +6497 -0
- lalpulsar/lineFileParser.py +264 -0
- lalpulsar/metric_utils.py +78 -0
- lalpulsar/piecewise_model/__init__.py +7 -0
- lalpulsar/piecewise_model/basis_functions.py +156 -0
- lalpulsar/piecewise_model/class_definitions.py +323 -0
- lalpulsar/piecewise_model/errors.py +37 -0
- lalpulsar/piecewise_model/estimating_knots.py +833 -0
- lalpulsar/piecewise_model/gte_and_other_methods.py +189 -0
- lalpulsar/piecewise_model/mols_for_gte.py +269 -0
- lalpulsar/piecewise_model/pw_fstat.py +813 -0
- lalpulsar/piecewise_model/pw_model_simulations.py +156 -0
- lalpulsar/piecewise_model/sampling_methods.py +186 -0
- lalpulsar/piecewise_model/semicoherent_metric_methods.py +375 -0
- lalpulsar/piecewise_model/tbank_estimates.py +293 -0
- lalpulsar/public_sft_directory.py +82 -0
- lalpulsar/pulsarhtmlutils.py +1395 -0
- lalpulsar/pulsarpputils.py +3638 -0
- lalpulsar/simulateCW.py +602 -0
- lalpulsar/simulateHeterodynedCW.py +591 -0
- lalsimulation/__init__.py +7 -0
- lalsimulation/_lalsimulation.cpython-314t-x86_64-linux-gnu.so +0 -0
- lalsimulation/_lalsimulation_swig.py +14 -0
- lalsimulation/git_version.py +64 -0
- lalsimulation/gwsignal/__init__.py +9 -0
- lalsimulation/gwsignal/core/__init__.py +2 -0
- lalsimulation/gwsignal/core/conditioning_subroutines.py +196 -0
- lalsimulation/gwsignal/core/errors.py +136 -0
- lalsimulation/gwsignal/core/gw.py +206 -0
- lalsimulation/gwsignal/core/parameter_conventions.py +122 -0
- lalsimulation/gwsignal/core/utils.py +329 -0
- lalsimulation/gwsignal/core/waveform.py +725 -0
- lalsimulation/gwsignal/core/waveform_conditioning.py +455 -0
- lalsimulation/gwsignal/models/__init__.py +29 -0
- lalsimulation/gwsignal/models/pyseobnr_model.py +452 -0
- lalsimulation/nrfits/NRSur3dq8Remnant.py +92 -0
- lalsimulation/nrfits/NRSur7dq4Remnant.py +469 -0
- lalsimulation/nrfits/__init__.py +1 -0
- lalsimulation/nrfits/eval_fits.py +364 -0
- lalsimulation/nrfits/nrfits.py +78 -0
- lalsimulation/nrfits/pn_spin_evolution_wrapper.py +92 -0
- lalsimulation/nrfits/quaternion_utils.py +74 -0
- lalsimulation/tilts_at_infinity/__init__.py +2 -0
- lalsimulation/tilts_at_infinity/calc_tilts_prec_avg_regularized.py +1424 -0
- lalsimulation/tilts_at_infinity/hybrid_spin_evolution.py +461 -0
- lalsimulation/tilts_at_infinity/tilts_at_infinity_utils.py +167 -0
- lalsuite-7.26.2.dev20251218.data/scripts/cbcBayesBurstPPAnalysis +305 -0
- lalsuite-7.26.2.dev20251218.data/scripts/cbcBayesBurstPostProc +1364 -0
- lalsuite-7.26.2.dev20251218.data/scripts/cbcBayesCombinePTMCMCh5s +100 -0
- lalsuite-7.26.2.dev20251218.data/scripts/cbcBayesCombinePosteriors +235 -0
- lalsuite-7.26.2.dev20251218.data/scripts/cbcBayesCompPos +1121 -0
- lalsuite-7.26.2.dev20251218.data/scripts/cbcBayesDIEvidence +68 -0
- lalsuite-7.26.2.dev20251218.data/scripts/cbcBayesGraceDBinfo +182 -0
- lalsuite-7.26.2.dev20251218.data/scripts/cbcBayesMCMC2pos +314 -0
- lalsuite-7.26.2.dev20251218.data/scripts/cbcBayesPPAnalysis +322 -0
- lalsuite-7.26.2.dev20251218.data/scripts/cbcBayesPlotSpinDisk +42 -0
- lalsuite-7.26.2.dev20251218.data/scripts/cbcBayesPosToSimBurst +227 -0
- lalsuite-7.26.2.dev20251218.data/scripts/cbcBayesPosToSimInspiral +307 -0
- lalsuite-7.26.2.dev20251218.data/scripts/cbcBayesPostProc +1345 -0
- lalsuite-7.26.2.dev20251218.data/scripts/cbcBayesThermoInt +107 -0
- lalsuite-7.26.2.dev20251218.data/scripts/imrtgr_imr_consistency_test +796 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lal_cache +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lal_fftw_wisdom +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lal_fftwf_wisdom +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lal_path2cache +148 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lal_searchsum2cache +172 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lal_simd_detect +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lal_tconvert +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lal_version +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_ComputeAntennaPattern +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_ComputeFstatBenchmark +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_ComputeFstatLatticeCount +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_ComputeFstatMCUpperLimit +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_ComputeFstatistic_v2 +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_ComputePSD +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_CopySFTs +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_DistanceVsMass +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_DriveHoughMulti +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_FstatMetric_v2 +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_HierarchSearchGCT +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_HierarchicalSearch +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_MakeSFTDAG +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_MakeSFTs +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_Makefakedata_v4 +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_Makefakedata_v5 +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_PredictFstat +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_PrintDetectorState +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_SFTclean +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_SFTvalidate +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_StringAddFrame +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_StringSearch +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_Weave +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_WeaveCompare +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_WeaveConcat +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_WeaveSetup +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_WriteSFTsfromSFDBs +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_animate +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_binj +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_blindinj +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_cache +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_cafe +99 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_calfacs +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_cbc_stochasticbank +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_chirplen +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_coh_PTF_inspiral +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_coinj +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_combine_crosscorr_toplists +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_compareFstats +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_compareSFTs +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_cosmicstring_pipe +525 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_create_time_correction_ephemeris +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_dumpSFT +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_effdist +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_exc_resp +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_fftw_wisdom +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_fftwf_wisdom +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_fits_header_getval +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_fits_header_list +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_fits_overview +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_fits_table_list +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_fr_ninja +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_frextr +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_frinfo +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_frjoin +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_frread +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_frview +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_gwf2xml +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_heterodyne_pulsar +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_inspawgfile +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_inspfrinj +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_inspinj +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_inspiralDistance +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_knope +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_knope_automation_script +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_knope_collate_results +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_knope_result_page +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_makeblindinj +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_makeblindinj_himass +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_ninja +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_path2cache +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_power +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_power_likelihood_pipe +219 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_power_pipe +417 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_pulsar_crosscorr_v2 +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_pulsar_frequency_evolution +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_pulsar_parameter_estimation_nested +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_random_bank +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_randombank +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_run_pulsar_crosscorr_v2 +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_searchsum2cache +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_spec_avg +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_spec_avg_long +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_spec_coherence +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_spininj +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_splitSFTs +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_splitbank +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_ssbtodetector +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_string_apply_vetoes +171 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_string_calc_likelihood +172 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_string_contour_plotter +141 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_string_contour_plotter_largeloops +133 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_string_cs_gamma +110 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_string_cs_gamma_largeloops +119 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_string_final +1064 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_string_meas_likelihood +264 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_string_plot_binj +543 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_string_plot_likelihood +380 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_synthesizeBstatMC +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_synthesizeLVStats +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_synthesizeTransientStats +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_tconvert +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_tmpltbank +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_version +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalapps_xtefitstoframe +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalburst_cluster +156 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalburst_coinc +224 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalburst_cut +425 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalburst_gen_timeslides +254 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalburst_inj_pic +254 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalburst_injfind +170 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalburst_plot_tisi +165 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalburst_power_calc_likelihood +182 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalburst_power_final +1369 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalburst_power_meas_likelihood +206 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalburst_power_plot_binj +934 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalburst_power_plot_binjtf +302 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalburst_version +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalfr-cat +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalfr-cksum +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalfr-cut +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalfr-dump +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalfr-fmt +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalfr-paste +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalfr-print +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalfr-split +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalfr-stat +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalfr-stream +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalfr-vis +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalframe_version +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalinference_bench +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalinference_burst +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalinference_burst_pp_pipe +220 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalinference_coherence_test +139 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalinference_compute_roq_weights +404 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalinference_cpnest +58 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalinference_datadump +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalinference_evolve_spins_and_append_samples +202 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalinference_injectedlike +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalinference_merge_posteriors +57 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalinference_mpi_wrapper +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalinference_multi_pipe +144 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalinference_nest +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalinference_nest2pos +286 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalinference_pipe +512 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalinference_pp_pipe +229 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalinference_review_test +362 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalinference_version +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalinspiral_injfind +206 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalinspiral_thinca +240 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalinspiral_version +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalmetaio_version +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalpulsar_ComputeAntennaPattern +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalpulsar_ComputeFstatBenchmark +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalpulsar_ComputeFstatLatticeCount +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalpulsar_ComputeFstatMCUpperLimit +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalpulsar_ComputeFstatistic_v2 +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalpulsar_ComputePSD +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalpulsar_CopyPublicSFTs +216 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalpulsar_DriveHoughMulti +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalpulsar_FstatMetric_v2 +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalpulsar_HierarchSearchGCT +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalpulsar_HierarchicalSearch +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalpulsar_MakeSFTDAG +1142 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalpulsar_MakeSFTs +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalpulsar_Makefakedata_v4 +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalpulsar_Makefakedata_v5 +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalpulsar_MoveSFTs +208 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalpulsar_PiecewiseSearch +963 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalpulsar_PredictFstat +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalpulsar_PrintDetectorState +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalpulsar_SFTclean +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalpulsar_SFTvalidate +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalpulsar_Weave +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalpulsar_WeaveCompare +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalpulsar_WeaveConcat +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalpulsar_WeaveSetup +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalpulsar_WriteSFTsfromSFDBs +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalpulsar_compareFstats +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalpulsar_compareSFTs +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalpulsar_create_time_correction_ephemeris +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalpulsar_crosscorr_v2 +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalpulsar_dumpSFT +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalpulsar_fits_header_getval +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalpulsar_fits_header_list +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalpulsar_fits_overview +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalpulsar_fits_table_list +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalpulsar_frequency_evolution +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalpulsar_heterodyne +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalpulsar_knope +145 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalpulsar_knope_automation_script +731 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalpulsar_knope_collate_results +675 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalpulsar_knope_result_page +2977 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalpulsar_parameter_estimation_nested +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalpulsar_spec_avg +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalpulsar_spec_avg_long +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalpulsar_spec_coherence +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalpulsar_splitSFTs +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalpulsar_ssbtodetector +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalpulsar_synthesizeBstatMC +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalpulsar_synthesizeLVStats +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalpulsar_synthesizeTransientStats +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalpulsar_version +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalsim-bh-qnmode +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalsim-bh-ringdown +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalsim-bh-sphwf +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalsim-burst +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalsim-detector-noise +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalsim-detector-strain +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalsim-inject +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalsim-inspiral +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalsim-ns-eos-table +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalsim-ns-mass-radius +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalsim-ns-params +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalsim-sgwb +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalsim-unicorn +6 -0
- lalsuite-7.26.2.dev20251218.data/scripts/lalsimulation_version +6 -0
- lalsuite-7.26.2.dev20251218.dist-info/METADATA +90 -0
- lalsuite-7.26.2.dev20251218.dist-info/RECORD +733 -0
- lalsuite-7.26.2.dev20251218.dist-info/WHEEL +5 -0
- lalsuite-7.26.2.dev20251218.dist-info/licenses/COPYING +339 -0
- lalsuite-7.26.2.dev20251218.dist-info/top_level.txt +9 -0
- lalsuite.libs/libcfitsio-729ee1b7.so.10.0.0 +0 -0
- lalsuite.libs/libfftw3-6b983104.so.3.5.5 +0 -0
- lalsuite.libs/libfftw3f-b4465a35.so.3.5.5 +0 -0
- lalsuite.libs/libframel-8cf74372.so.8.48.4 +0 -0
- lalsuite.libs/libgsl-e30be130.so.28.0.0 +0 -0
- lalsuite.libs/libgslcblas-460f042a.so.0.0.0 +0 -0
- lalsuite.libs/libhdf5-d02936e2.so.310.5.1 +0 -0
- lalsuite.libs/libhdf5_hl-0e40b553.so.310.0.6 +0 -0
- lalsuite.libs/liblal-bd4575d4.so.20.5.0 +0 -0
- lalsuite.libs/liblalburst-183caa97.so.8.0.0 +0 -0
- lalsuite.libs/liblalframe-b2539a8a.so.14.0.3 +0 -0
- lalsuite.libs/liblalinference-b273091a.so.23.1.7 +0 -0
- lalsuite.libs/liblalinspiral-37f93c6c.so.18.0.2 +0 -0
- lalsuite.libs/liblalmetaio-f04c856f.so.11.0.1 +0 -0
- lalsuite.libs/liblalpulsar-950e7dfd.so.30.1.1 +0 -0
- lalsuite.libs/liblalsimulation-abda47f7.so.37.2.0 +0 -0
- lalsuite.libs/liblalsupport-ad162801.so.14.4.0 +0 -0
- lalsuite.libs/libmetaio-abda72ec.so.1.1.0 +0 -0
|
@@ -0,0 +1,224 @@
|
|
|
1
|
+
#!python
|
|
2
|
+
#
|
|
3
|
+
# Copyright (C) 2006--2017 Kipp Cannon
|
|
4
|
+
#
|
|
5
|
+
# This program is free software; you can redistribute it and/or modify it
|
|
6
|
+
# under the terms of the GNU General Public License as published by the
|
|
7
|
+
# Free Software Foundation; either version 2 of the License, or (at your
|
|
8
|
+
# option) any later version.
|
|
9
|
+
#
|
|
10
|
+
# This program is distributed in the hope that it will be useful, but
|
|
11
|
+
# WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
12
|
+
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General
|
|
13
|
+
# Public License for more details.
|
|
14
|
+
#
|
|
15
|
+
# You should have received a copy of the GNU General Public License along
|
|
16
|
+
# with this program; if not, write to the Free Software Foundation, Inc.,
|
|
17
|
+
# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
|
18
|
+
|
|
19
|
+
|
|
20
|
+
#
|
|
21
|
+
# =============================================================================
|
|
22
|
+
#
|
|
23
|
+
# Preamble
|
|
24
|
+
#
|
|
25
|
+
# =============================================================================
|
|
26
|
+
#
|
|
27
|
+
|
|
28
|
+
|
|
29
|
+
from optparse import OptionParser
|
|
30
|
+
import sys
|
|
31
|
+
|
|
32
|
+
|
|
33
|
+
from igwn_ligolw import lsctables
|
|
34
|
+
from igwn_ligolw import utils as ligolw_utils
|
|
35
|
+
from igwn_ligolw.utils import process as ligolw_process
|
|
36
|
+
from lalburst import git_version
|
|
37
|
+
from lalburst import burca
|
|
38
|
+
from igwn_segments import utils as segmentsUtils
|
|
39
|
+
|
|
40
|
+
|
|
41
|
+
process_program_name = "lalburst_coinc"
|
|
42
|
+
|
|
43
|
+
|
|
44
|
+
__author__ = "Kipp Cannon <kipp.cannon@ligo.org>"
|
|
45
|
+
__version__ = "git id %s" % git_version.id
|
|
46
|
+
__date__ = git_version.date
|
|
47
|
+
|
|
48
|
+
|
|
49
|
+
#
|
|
50
|
+
# =============================================================================
|
|
51
|
+
#
|
|
52
|
+
# Command Line
|
|
53
|
+
#
|
|
54
|
+
# =============================================================================
|
|
55
|
+
#
|
|
56
|
+
|
|
57
|
+
|
|
58
|
+
def parse_command_line():
|
|
59
|
+
parser = OptionParser(
|
|
60
|
+
version = "Name: %%prog\n%s" % git_version.verbose_msg,
|
|
61
|
+
usage = "%prog [options] [file ...]",
|
|
62
|
+
description = "%prog implements the excess power and string cusp coincidence algorithms for use in performing trigger-based multi-instrument searches for gravitational wave events. The LIGO Light Weight XML files listed on the command line are processed one by one in order, and over-written with the results. If no files are named, then input is read from stdin and output written to stdout. Gzipped files will be autodetected on input, if a file's name ends in \".gz\" it will be gzip-compressed on output."
|
|
63
|
+
)
|
|
64
|
+
parser.add_option("-c", "--comment", metavar = "text", help = "Set comment string in process table (default = None).")
|
|
65
|
+
parser.add_option("-f", "--force", action = "store_true", help = "Process document even if it has already been processed.")
|
|
66
|
+
parser.add_option("-a", "--coincidence-algorithm", metavar = "[excesspower|stringcusp]", default = None, help = "Select the coincidence test algorithm to use (required).")
|
|
67
|
+
parser.add_option("-s", "--coincidence-segments", metavar = "start:end[,start:end,...]", help = "Set the GPS segments in which to retain coincidences. Multiple segments can be specified by separating them with commas. If either start or end is absent from a segment then the interval is unbounded on that side, for example \"874000000:\" causes all coincidences starting at 874000000 to be retained. The \"time\" of a coincidence is ambiguous, and is different for different search algorithms, but a deterministic algorithm is used in all cases so the same coincidence of events will always be assigned the same time. This feature is intended to allow large input files to be analyzed; the procedure is to make n copies of the file and run n instances of burca specifying disjoint --coincidence-segments for each.")
|
|
68
|
+
parser.add_option("-m", "--min-instruments", metavar = "N", type = "int", default = 2, help = "Set the minimum number of instruments required to form a coincidence (default = 2).")
|
|
69
|
+
parser.add_option("-t", "--threshold", metavar = "threshold", type = "float", help = "Set the coincidence algorithm's threshold. For excesspower this parameter is not used and must not be set. For stringcusp, this parameter sets the maximum peak time difference in seconds not including light travel time (which will be added internally).")
|
|
70
|
+
parser.add_option("-v", "--verbose", action = "store_true", help = "Be verbose.")
|
|
71
|
+
options, filenames = parser.parse_args()
|
|
72
|
+
|
|
73
|
+
paramdict = options.__dict__.copy()
|
|
74
|
+
|
|
75
|
+
#
|
|
76
|
+
# check and convert and bunch of arguments
|
|
77
|
+
#
|
|
78
|
+
|
|
79
|
+
if options.coincidence_algorithm is None:
|
|
80
|
+
raise ValueError("missing required argument --coincidence-algorithm")
|
|
81
|
+
if options.coincidence_algorithm not in ("excesspower", "stringcusp"):
|
|
82
|
+
raise ValueError("unrecognized --coincidence-algorithm %s" % options.coincidence_algorithm)
|
|
83
|
+
if options.coincidence_segments is not None:
|
|
84
|
+
options.coincidence_segments = segmentsUtils.from_range_strings(options.coincidence_segments.split(","), boundtype = lsctables.LIGOTimeGPS).coalesce()
|
|
85
|
+
if filenames is not None and len(filenames) > 1:
|
|
86
|
+
raise ValueError("refusing to allow use of --coincidence-segments with more than one input file")
|
|
87
|
+
if options.min_instruments < 1:
|
|
88
|
+
raise ValueError("--min-instruments must be >= 1")
|
|
89
|
+
|
|
90
|
+
if options.coincidence_algorithm == "stringcusp" and options.threshold is None:
|
|
91
|
+
raise ValueError("--threshold is required for --coincidence-algorithm stringcusp")
|
|
92
|
+
elif options.coincidence_algorithm == "excesspower" and options.threshold is not None:
|
|
93
|
+
raise ValueError("--threshold is meaningless for --coincidence-algorithm excesspower")
|
|
94
|
+
|
|
95
|
+
#
|
|
96
|
+
# done
|
|
97
|
+
#
|
|
98
|
+
|
|
99
|
+
return options, (filenames or [None]), paramdict
|
|
100
|
+
|
|
101
|
+
|
|
102
|
+
#
|
|
103
|
+
# =============================================================================
|
|
104
|
+
#
|
|
105
|
+
# Main
|
|
106
|
+
#
|
|
107
|
+
# =============================================================================
|
|
108
|
+
#
|
|
109
|
+
|
|
110
|
+
|
|
111
|
+
#
|
|
112
|
+
# Command line
|
|
113
|
+
#
|
|
114
|
+
|
|
115
|
+
|
|
116
|
+
options, filenames, paramdict = parse_command_line()
|
|
117
|
+
|
|
118
|
+
|
|
119
|
+
#
|
|
120
|
+
# For excesspower and stringcusp methods, select the appropriate
|
|
121
|
+
# event comparison and book-keeping functions.
|
|
122
|
+
#
|
|
123
|
+
|
|
124
|
+
|
|
125
|
+
if options.coincidence_segments is not None:
|
|
126
|
+
def coinc_segs_ntuple_comparefunc(events, offset_vector, min_instruments = options.min_instruments, coinc_segs = options.coincidence_segments):
|
|
127
|
+
# for the purposes of the coinc segs feature, the coinc
|
|
128
|
+
# time is minimum of event peak times. this is a fast, and
|
|
129
|
+
# guaranteed reproducible definition
|
|
130
|
+
return min(event.peak + offset_vector[event.ifo] for event in events) not in coinc_segs
|
|
131
|
+
else:
|
|
132
|
+
def coinc_segs_ntuple_comparefunc(*args):
|
|
133
|
+
return False
|
|
134
|
+
|
|
135
|
+
|
|
136
|
+
if options.coincidence_algorithm == "excesspower":
|
|
137
|
+
coincgen_doubles = burca.ep_coincgen_doubles
|
|
138
|
+
ntuple_comparefunc = coinc_segs_ntuple_comparefunc
|
|
139
|
+
CoincTables = burca.ExcessPowerCoincTables
|
|
140
|
+
CoincDef = burca.ExcessPowerBBCoincDef
|
|
141
|
+
elif options.coincidence_algorithm == "stringcusp":
|
|
142
|
+
coincgen_doubles = burca.string_coincgen_doubles
|
|
143
|
+
ntuple_comparefunc = lambda *args: coinc_segs_ntuple_comparefunc(*args) or burca.StringCuspCoincTables.ntuple_comparefunc(*args)
|
|
144
|
+
CoincTables = burca.StringCuspCoincTables
|
|
145
|
+
CoincDef = burca.StringCuspBBCoincDef
|
|
146
|
+
else:
|
|
147
|
+
raise Exception("should never get here")
|
|
148
|
+
|
|
149
|
+
|
|
150
|
+
#
|
|
151
|
+
# Iterate over files.
|
|
152
|
+
#
|
|
153
|
+
|
|
154
|
+
|
|
155
|
+
for n, filename in enumerate(filenames):
|
|
156
|
+
#
|
|
157
|
+
# Load the file.
|
|
158
|
+
#
|
|
159
|
+
|
|
160
|
+
if options.verbose:
|
|
161
|
+
print("%d/%d:" % (n + 1, len(filenames)), end=' ', file=sys.stderr)
|
|
162
|
+
xmldoc = ligolw_utils.load_filename(filename, verbose = options.verbose)
|
|
163
|
+
|
|
164
|
+
#
|
|
165
|
+
# Have we already processed it?
|
|
166
|
+
#
|
|
167
|
+
|
|
168
|
+
if ligolw_process.doc_includes_process(xmldoc, process_program_name):
|
|
169
|
+
if options.verbose:
|
|
170
|
+
print("warning: %s already processed," % (filename or "stdin"), end=' ', file=sys.stderr)
|
|
171
|
+
if not options.force:
|
|
172
|
+
if options.verbose:
|
|
173
|
+
print("skipping", file=sys.stderr)
|
|
174
|
+
continue
|
|
175
|
+
if options.verbose:
|
|
176
|
+
print("continuing by --force", file=sys.stderr)
|
|
177
|
+
|
|
178
|
+
#
|
|
179
|
+
# Add an entry to the process table.
|
|
180
|
+
#
|
|
181
|
+
|
|
182
|
+
process = ligolw_process.register_to_xmldoc(xmldoc, process_program_name, paramdict,
|
|
183
|
+
comment = options.comment,
|
|
184
|
+
version = __version__,
|
|
185
|
+
cvs_repository = "lscsoft",
|
|
186
|
+
cvs_entry_time = __date__
|
|
187
|
+
)
|
|
188
|
+
|
|
189
|
+
#
|
|
190
|
+
# Run coincidence algorithm.
|
|
191
|
+
#
|
|
192
|
+
|
|
193
|
+
|
|
194
|
+
if options.coincidence_algorithm == "excesspower":
|
|
195
|
+
delta_t = 2. * bruca.ep_coincgen_doubles.get_coincs.max_edge_peak_delta(lsctables.SnglBurstTable.get_table(xmldoc))
|
|
196
|
+
elif options.coincidence_algorithm == "stringcusp":
|
|
197
|
+
delta_t = options.threshold
|
|
198
|
+
else:
|
|
199
|
+
raise Exception("should never get here")
|
|
200
|
+
burca.burca(
|
|
201
|
+
xmldoc = xmldoc,
|
|
202
|
+
process_id = process.process_id,
|
|
203
|
+
coincgen_doubles = coincgen_doubles,
|
|
204
|
+
CoincTables = CoincTables,
|
|
205
|
+
coinc_definer_row = CoincDef,
|
|
206
|
+
delta_t = delta_t,
|
|
207
|
+
ntuple_comparefunc = ntuple_comparefunc,
|
|
208
|
+
min_instruments = options.min_instruments,
|
|
209
|
+
verbose = options.verbose
|
|
210
|
+
)
|
|
211
|
+
|
|
212
|
+
#
|
|
213
|
+
# Close out the process table.
|
|
214
|
+
#
|
|
215
|
+
|
|
216
|
+
process.set_end_time_now()
|
|
217
|
+
|
|
218
|
+
#
|
|
219
|
+
# Write back to disk, and clean up.
|
|
220
|
+
#
|
|
221
|
+
|
|
222
|
+
ligolw_utils.write_filename(xmldoc, filename, verbose = options.verbose)
|
|
223
|
+
xmldoc.unlink()
|
|
224
|
+
lsctables.reset_next_ids(lsctables.TableByName.values())
|
|
@@ -0,0 +1,425 @@
|
|
|
1
|
+
#!python
|
|
2
|
+
#
|
|
3
|
+
# Copyright (C) 2006,2013 Kipp Cannon
|
|
4
|
+
#
|
|
5
|
+
# This program is free software; you can redistribute it and/or modify it
|
|
6
|
+
# under the terms of the GNU General Public License as published by the
|
|
7
|
+
# Free Software Foundation; either version 2 of the License, or (at your
|
|
8
|
+
# option) any later version.
|
|
9
|
+
#
|
|
10
|
+
# This program is distributed in the hope that it will be useful, but
|
|
11
|
+
# WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
12
|
+
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General
|
|
13
|
+
# Public License for more details.
|
|
14
|
+
#
|
|
15
|
+
# You should have received a copy of the GNU General Public License along
|
|
16
|
+
# with this program; if not, write to the Free Software Foundation, Inc.,
|
|
17
|
+
# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
|
18
|
+
|
|
19
|
+
|
|
20
|
+
#
|
|
21
|
+
# =============================================================================
|
|
22
|
+
#
|
|
23
|
+
# Preamble
|
|
24
|
+
#
|
|
25
|
+
# =============================================================================
|
|
26
|
+
#
|
|
27
|
+
|
|
28
|
+
|
|
29
|
+
from optparse import OptionParser
|
|
30
|
+
import sys
|
|
31
|
+
|
|
32
|
+
|
|
33
|
+
from igwn_ligolw import ligolw
|
|
34
|
+
from igwn_ligolw import lsctables
|
|
35
|
+
from igwn_ligolw import utils as ligolw_utils
|
|
36
|
+
from igwn_ligolw.utils import segments as ligolw_segments
|
|
37
|
+
from igwn_ligolw.utils import process as ligolw_process
|
|
38
|
+
from igwn_ligolw.utils import search_summary as ligolw_search_summary
|
|
39
|
+
from lalburst import git_version
|
|
40
|
+
import igwn_segments as segments
|
|
41
|
+
|
|
42
|
+
|
|
43
|
+
__author__ = "Kipp Cannon <kipp.cannon@ligo.org>"
|
|
44
|
+
__version__ = "git id %s" % git_version.id
|
|
45
|
+
__date__ = git_version.date
|
|
46
|
+
|
|
47
|
+
|
|
48
|
+
process_program_name = "lalburst_cut"
|
|
49
|
+
|
|
50
|
+
|
|
51
|
+
#
|
|
52
|
+
# =============================================================================
|
|
53
|
+
#
|
|
54
|
+
# Command Line
|
|
55
|
+
#
|
|
56
|
+
# =============================================================================
|
|
57
|
+
#
|
|
58
|
+
|
|
59
|
+
|
|
60
|
+
def parse_command_line():
|
|
61
|
+
parser = OptionParser(
|
|
62
|
+
version = "Name: %%prog\n%s" % git_version.verbose_msg,
|
|
63
|
+
usage = "%prog [options] [file ...]",
|
|
64
|
+
description = "Removes sngl_burst events from XML files according to a variety of criteria. Files named on the command line are read one-by-one, and over-written with the new files. If no files are named on the command line, input is read from stdin and written to stdout. Note that, for the most part, this program does not understand coincidence information, and so if an injection or burst event is removed that participates in a coincidence, this program simply deletes the entire coincidence as well (before applying the --coinc-only cut)."
|
|
65
|
+
)
|
|
66
|
+
parser.add_option("--coinc-only", action = "store_true", help = "Discard events that are not participating in a coincident event.")
|
|
67
|
+
parser.add_option("--comment", metavar = "text", help = "Set the comment string to be recorded in the process table for this job (default = None).")
|
|
68
|
+
parser.add_option("--inj-made-only", action = "store_true", help = "Discard injections outside the search summary out segments.")
|
|
69
|
+
parser.add_option("--min-amplitude", metavar = "value", type = "float", help = "Discard events below the given amplitude.")
|
|
70
|
+
parser.add_option("--max-amplitude", metavar = "value", type = "float", help = "Discard events above the given amplitude.")
|
|
71
|
+
parser.add_option("--min-bandwidth", metavar = "Hz", type = "float", help = "Discard events narrower than the given bandwidth.")
|
|
72
|
+
parser.add_option("--max-bandwidth", metavar = "Hz", type = "float", help = "Discard events wider than the given bandwidth.")
|
|
73
|
+
parser.add_option("--min-central-freq", metavar = "Hz", type = "float", help = "Discard events with central frequency lower than that given.")
|
|
74
|
+
parser.add_option("--max-central-freq", metavar = "Hz", type = "float", help = "Discard events with central frequency higher than that given.")
|
|
75
|
+
parser.add_option("--min-confidence", metavar = "value", type = "float", help = "Discard events below the given confidence.")
|
|
76
|
+
parser.add_option("--max-confidence", metavar = "value", type = "float", help = "Discard events above the given confidence.")
|
|
77
|
+
parser.add_option("--min-duration", metavar = "seconds", type = "float", help = "Discard events shorter than the given duration.")
|
|
78
|
+
parser.add_option("--max-duration", metavar = "seconds", type = "float", help = "Discard events longer than the given duration.")
|
|
79
|
+
parser.add_option("--min-fhigh", metavar = "Hz", type = "float", help = "Discard events with highest frequency below the given frequency.")
|
|
80
|
+
parser.add_option("--max-fhigh", metavar = "Hz", type = "float", help = "Discard events with highest frequency above the given frequency.")
|
|
81
|
+
parser.add_option("--min-flow", metavar = "Hz", type = "float", help = "Discard events with lowest frequency below the given frequency.")
|
|
82
|
+
parser.add_option("--max-flow", metavar = "Hz", type = "float", help = "Discard events with loest frequency above the given frequency.")
|
|
83
|
+
parser.add_option("--min-hrss", metavar = "value", type = "float", help = "Discard events with h_rss below the given value.")
|
|
84
|
+
parser.add_option("--max-hrss", metavar = "value", type = "float", help = "Discard events with h_rss above the given value.")
|
|
85
|
+
parser.add_option("--cut-instrument", metavar = "name", action = "append", default = [], help = "Discard events from given instrument.")
|
|
86
|
+
parser.add_option("--min-peak-time", metavar = "seconds", help = "Discard events with peak time before the given GPS time.")
|
|
87
|
+
parser.add_option("--max-peak-time", metavar = "seconds", help = "Discard events with peak time after the given GPS time.")
|
|
88
|
+
parser.add_option("--min-start-time", metavar = "seconds", help = "Discard events starting before the given GPS time.")
|
|
89
|
+
parser.add_option("--max-start-time", metavar = "seconds", help = "Discard events starting after the given GPS time.")
|
|
90
|
+
parser.add_option("--min-stop-time", metavar = "seconds", help = "Discard events ending before the given GPS time.")
|
|
91
|
+
parser.add_option("--max-stop-time", metavar = "seconds", help = "Discard events ending after the given GPS time.")
|
|
92
|
+
parser.add_option("--min-snr", metavar = "value", type = "float", help = "Discard events below the given SNR.")
|
|
93
|
+
parser.add_option("--max-snr", metavar = "value", type = "float", help = "Discard events above the given SNR.")
|
|
94
|
+
parser.add_option("--program", metavar = "name", help = "Process events generated by the given program.")
|
|
95
|
+
parser.add_option("--veto-file", metavar = "filename", help = "Veto events using the veto segment list extracted from this XML file. The file must contain segment tables, and the veto list will be constructed from the segments named \"sngl_burst_veto\".")
|
|
96
|
+
parser.add_option("-v", "--verbose", action = "store_true", help = "Be verbose.")
|
|
97
|
+
options, filenames = parser.parse_args()
|
|
98
|
+
|
|
99
|
+
paramdict = options.__dict__.copy()
|
|
100
|
+
|
|
101
|
+
if options.inj_made_only and not options.program:
|
|
102
|
+
raise ValueError("must set --program when --inj-made-only is set")
|
|
103
|
+
options.cut_instrument = set(options.cut_instrument)
|
|
104
|
+
|
|
105
|
+
if options.min_peak_time is not None:
|
|
106
|
+
options.min_peak_time = lsctables.LIGOTimeGPS(options.min_peak_time)
|
|
107
|
+
if options.max_peak_time is not None:
|
|
108
|
+
options.max_peak_time = lsctables.LIGOTimeGPS(options.max_peak_time)
|
|
109
|
+
if options.min_start_time is not None:
|
|
110
|
+
options.min_start_time = lsctables.LIGOTimeGPS(options.min_start_time)
|
|
111
|
+
if options.max_start_time is not None:
|
|
112
|
+
options.max_start_time = lsctables.LIGOTimeGPS(options.max_start_time)
|
|
113
|
+
if options.min_stop_time is not None:
|
|
114
|
+
options.min_stop_time = lsctables.LIGOTimeGPS(options.min_stop_time)
|
|
115
|
+
if options.max_stop_time is not None:
|
|
116
|
+
options.max_stop_time = lsctables.LIGOTimeGPS(options.max_stop_time)
|
|
117
|
+
|
|
118
|
+
return options, paramdict, (filenames or [None])
|
|
119
|
+
|
|
120
|
+
|
|
121
|
+
#
|
|
122
|
+
# =============================================================================
|
|
123
|
+
#
|
|
124
|
+
# Input
|
|
125
|
+
#
|
|
126
|
+
# =============================================================================
|
|
127
|
+
#
|
|
128
|
+
|
|
129
|
+
|
|
130
|
+
#
|
|
131
|
+
# Content handler
|
|
132
|
+
#
|
|
133
|
+
|
|
134
|
+
|
|
135
|
+
#
|
|
136
|
+
# =============================================================================
|
|
137
|
+
#
|
|
138
|
+
# Preparation
|
|
139
|
+
#
|
|
140
|
+
# =============================================================================
|
|
141
|
+
#
|
|
142
|
+
|
|
143
|
+
|
|
144
|
+
def load_veto_segments(filename, verbose = False, contenthandler = None):
|
|
145
|
+
return ligolw_segments.segmenttable_get_by_name(ligolw_utils.load_filename(filename, verbose = verbose, contenthandler = contenthandler), "sngl_burst_veto").coalesce()
|
|
146
|
+
|
|
147
|
+
|
|
148
|
+
class DocContents(object):
|
|
149
|
+
def __init__(self, xmldoc, program = None):
|
|
150
|
+
#
|
|
151
|
+
# Find the out segments
|
|
152
|
+
#
|
|
153
|
+
|
|
154
|
+
self.outsegs = ligolw_search_summary.segmentlistdict_fromsearchsummary(xmldoc, program).coalesce()
|
|
155
|
+
|
|
156
|
+
#
|
|
157
|
+
# Find the sngl_burst table
|
|
158
|
+
#
|
|
159
|
+
|
|
160
|
+
self.snglbursttable = lsctables.SnglBurstTable.get_table(xmldoc)
|
|
161
|
+
|
|
162
|
+
#
|
|
163
|
+
# Get the list of process IDs we care about
|
|
164
|
+
#
|
|
165
|
+
|
|
166
|
+
self.process_ids = set(self.snglbursttable.getColumnByName("process_id"))
|
|
167
|
+
if program is not None:
|
|
168
|
+
self.process_ids &= lsctables.ProcessTable.get_table(xmldoc).get_ids_by_program(program)
|
|
169
|
+
|
|
170
|
+
#
|
|
171
|
+
# Find the sim_burst table, or make a fake one
|
|
172
|
+
#
|
|
173
|
+
|
|
174
|
+
try:
|
|
175
|
+
self.simbursttable = lsctables.SimBurstTable.get_table(xmldoc)
|
|
176
|
+
except:
|
|
177
|
+
self.simbursttable = []
|
|
178
|
+
|
|
179
|
+
#
|
|
180
|
+
# Find the coinc tables, or make fake ones
|
|
181
|
+
#
|
|
182
|
+
|
|
183
|
+
try:
|
|
184
|
+
self.coinctable = lsctables.CoincTable.get_table(xmldoc)
|
|
185
|
+
self.coincmaptable = lsctables.CoincMapTable.get_table(xmldoc)
|
|
186
|
+
self.multibursttable = lsctables.MultiBurstTable.get_table(xmldoc)
|
|
187
|
+
except:
|
|
188
|
+
self.coinctable = []
|
|
189
|
+
self.coincmaptable = []
|
|
190
|
+
self.multibursttable = []
|
|
191
|
+
|
|
192
|
+
|
|
193
|
+
#
|
|
194
|
+
# =============================================================================
|
|
195
|
+
#
|
|
196
|
+
# Cuts
|
|
197
|
+
#
|
|
198
|
+
# =============================================================================
|
|
199
|
+
#
|
|
200
|
+
|
|
201
|
+
|
|
202
|
+
def remove_events_by_segment(contents, veto_segments):
|
|
203
|
+
ids = set()
|
|
204
|
+
for i in xrange(len(contents.snglbursttable) - 1, -1, -1):
|
|
205
|
+
burst = contents.snglbursttable[i]
|
|
206
|
+
if burst.process_id in contents.process_ids and burst.ifo in veto_segments and veto_segments[burst.ifo].intersects_segment(burst.period):
|
|
207
|
+
ids.add(burst.event_id)
|
|
208
|
+
del contents.snglbursttable[i]
|
|
209
|
+
return ids
|
|
210
|
+
|
|
211
|
+
|
|
212
|
+
def remove_events_by_parameters(contents, testfunc):
|
|
213
|
+
ids = set()
|
|
214
|
+
for i in xrange(len(contents.snglbursttable) - 1, -1, -1):
|
|
215
|
+
burst = contents.snglbursttable[i]
|
|
216
|
+
if burst.process_id in contents.process_ids and not testfunc(burst):
|
|
217
|
+
ids.add(burst.event_id)
|
|
218
|
+
del contents.snglbursttable[i]
|
|
219
|
+
return ids
|
|
220
|
+
|
|
221
|
+
|
|
222
|
+
def remove_non_coincidences(contents):
|
|
223
|
+
coinc_burst_ids = set(row.event_id for row in contents.coincmaptable.getColumnByName("event_id") if row.table_name == "sngl_burst")
|
|
224
|
+
for i in xrange(len(contents.snglbursttable) - 1, -1, -1):
|
|
225
|
+
burst = contents.snglbursttable[i]
|
|
226
|
+
if burst.process_id in contents.process_ids and burst.event_id not in coinc_burst_ids:
|
|
227
|
+
del contents.snglbursttable[i]
|
|
228
|
+
|
|
229
|
+
|
|
230
|
+
def remove_skipped_injections(contents):
|
|
231
|
+
ids = set()
|
|
232
|
+
for i in xrange(len(contents.simbursttable) - 1, -1, -1):
|
|
233
|
+
sim = contents.simbursttable[i]
|
|
234
|
+
if True not in (sim.time_at_instrument(instrument) in seglist for instrument, seglist in contents.outsegs.iteritems()):
|
|
235
|
+
ids.add(sim.simulation_id)
|
|
236
|
+
del contents.simbursttable[i]
|
|
237
|
+
return ids
|
|
238
|
+
|
|
239
|
+
|
|
240
|
+
def clean_coinc_tables(contents, removed_ids):
|
|
241
|
+
# FIXME FIXME FIXME: this is broken since the conversion to
|
|
242
|
+
# integer IDs. need to include table name constraints in these
|
|
243
|
+
# tests.
|
|
244
|
+
|
|
245
|
+
# remove dangling coinc_event_map rows
|
|
246
|
+
removed_coinc_ids = set()
|
|
247
|
+
for i in xrange(len(contents.coincmaptable) - 1, -1, -1):
|
|
248
|
+
if contents.coincmaptable[i].event_id in removed_ids:
|
|
249
|
+
removed_coinc_ids.add(contents.coincmaptable[i].coinc_event_id)
|
|
250
|
+
del contents.coincmaptable[i]
|
|
251
|
+
|
|
252
|
+
# remove broken coinc_event rows
|
|
253
|
+
for i in xrange(len(contents.coinctable) - 1, -1, -1):
|
|
254
|
+
if contents.coinctable[i].coinc_event_id in removed_coinc_ids:
|
|
255
|
+
del contents.coinctable[i]
|
|
256
|
+
|
|
257
|
+
# remove dangling coinc_event_map rows
|
|
258
|
+
for i in xrange(len(contents.coincmaptable) - 1, -1, -1):
|
|
259
|
+
if contents.coincmaptable[i].coinc_event_id in removed_coinc_ids:
|
|
260
|
+
del contents.coincmaptable[i]
|
|
261
|
+
|
|
262
|
+
# remove dangling multi_burst rows
|
|
263
|
+
for i in xrange(len(contents.multibursttable) - 1, -1, -1):
|
|
264
|
+
if contents.multibursttable[i].coinc_event_id in removed_coinc_ids:
|
|
265
|
+
del contents.multibursttable[i]
|
|
266
|
+
|
|
267
|
+
# recurse (e.g., removes injection coincs that point to the
|
|
268
|
+
# coinc_events that got deleted)
|
|
269
|
+
if removed_coinc_ids:
|
|
270
|
+
clean_coinc_tables(contents, removed_coinc_ids)
|
|
271
|
+
|
|
272
|
+
|
|
273
|
+
#
|
|
274
|
+
# =============================================================================
|
|
275
|
+
#
|
|
276
|
+
# Library API
|
|
277
|
+
#
|
|
278
|
+
# =============================================================================
|
|
279
|
+
#
|
|
280
|
+
|
|
281
|
+
|
|
282
|
+
def apply_filters(contents, burst_test_func, veto_segments, del_non_coincs = False, del_skipped_injections = False, verbose = False):
|
|
283
|
+
removed_ids = set()
|
|
284
|
+
if veto_segments:
|
|
285
|
+
if verbose:
|
|
286
|
+
print("applying veto segment list ...", file=sys.stderr)
|
|
287
|
+
removed_ids |= remove_events_by_segment(contents, veto_segments)
|
|
288
|
+
if verbose:
|
|
289
|
+
print("filtering sngl_burst rows by parameters ...", file=sys.stderr)
|
|
290
|
+
removed_ids |= remove_events_by_parameters(contents, burst_test_func)
|
|
291
|
+
if del_skipped_injections:
|
|
292
|
+
if verbose:
|
|
293
|
+
print("removing injections that weren't performed ...", file=sys.stderr)
|
|
294
|
+
remove_skipped_injections(contents)
|
|
295
|
+
if verbose:
|
|
296
|
+
print("removing broken coincidences ...", file=sys.stderr)
|
|
297
|
+
clean_coinc_tables(contents, removed_ids)
|
|
298
|
+
if del_non_coincs:
|
|
299
|
+
if verbose:
|
|
300
|
+
print("removing non-coincident events ...", file=sys.stderr)
|
|
301
|
+
remove_non_coincidences(contents)
|
|
302
|
+
|
|
303
|
+
|
|
304
|
+
def ligolw_bucut(xmldoc, burst_test_func, veto_segments = segments.segmentlistdict(), del_non_coincs = False, del_skipped_injections = False, program = None, comment = None, verbose = False):
|
|
305
|
+
process = ligolw_process.register_to_xmldoc(xmldoc, process_program_name, paramdict, version = __version__, cvs_repository = "lscsoft", cvs_entry_time = __date__, comment = comment)
|
|
306
|
+
|
|
307
|
+
contents = DocContents(xmldoc, program)
|
|
308
|
+
|
|
309
|
+
apply_filters(contents, burst_test_func, veto_segments, del_non_coincs = del_non_coincs, del_skipped_injections = del_skipped_injections, verbose = verbose)
|
|
310
|
+
|
|
311
|
+
seg = contents.outsegs.extent_all()
|
|
312
|
+
ligolw_search_summary.append_search_summary(xmldoc, process, inseg = seg, outseg = seg, nevents = len(contents.snglbursttable))
|
|
313
|
+
|
|
314
|
+
process.set_end_time_now()
|
|
315
|
+
|
|
316
|
+
return xmldoc
|
|
317
|
+
|
|
318
|
+
|
|
319
|
+
#
|
|
320
|
+
# =============================================================================
|
|
321
|
+
#
|
|
322
|
+
# Main
|
|
323
|
+
#
|
|
324
|
+
# =============================================================================
|
|
325
|
+
#
|
|
326
|
+
|
|
327
|
+
|
|
328
|
+
#
|
|
329
|
+
# Parse command line.
|
|
330
|
+
#
|
|
331
|
+
|
|
332
|
+
|
|
333
|
+
options, paramdict, filenames = parse_command_line()
|
|
334
|
+
|
|
335
|
+
|
|
336
|
+
#
|
|
337
|
+
# Define sngl_burst test function.
|
|
338
|
+
#
|
|
339
|
+
|
|
340
|
+
|
|
341
|
+
def make_keep_this_sngl_burst(options):
|
|
342
|
+
def add_test(func, t):
|
|
343
|
+
return lambda arg: t(arg) and func(arg)
|
|
344
|
+
|
|
345
|
+
keep_this_sngl_burst = lambda burst: True
|
|
346
|
+
|
|
347
|
+
if options.min_amplitude is not None:
|
|
348
|
+
keep_this_sngl_burst = add_test(keep_this_sngl_burst, lambda burst: burst.amplitude >= options.min_amplitude)
|
|
349
|
+
if options.max_amplitude is not None:
|
|
350
|
+
keep_this_sngl_burst = add_test(keep_this_sngl_burst, lambda burst: burst.amplitude <= options.max_amplitude)
|
|
351
|
+
if options.min_bandwidth is not None:
|
|
352
|
+
keep_this_sngl_burst = add_test(keep_this_sngl_burst, lambda burst: burst.bandwidth >= options.min_bandwidth)
|
|
353
|
+
if options.max_bandwidth is not None:
|
|
354
|
+
keep_this_sngl_burst = add_test(keep_this_sngl_burst, lambda burst: burst.bandwidth <= options.max_bandwidth)
|
|
355
|
+
if options.min_central_freq is not None:
|
|
356
|
+
keep_this_sngl_burst = add_test(keep_this_sngl_burst, lambda burst: burst.central_freq >= options.min_central_freq)
|
|
357
|
+
if options.max_central_freq is not None:
|
|
358
|
+
keep_this_sngl_burst = add_test(keep_this_sngl_burst, lambda burst: burst.central_freq <= options.max_central_freq)
|
|
359
|
+
if options.min_confidence is not None:
|
|
360
|
+
keep_this_sngl_burst = add_test(keep_this_sngl_burst, lambda burst: burst.confidence >= options.min_confidence)
|
|
361
|
+
if options.max_confidence is not None:
|
|
362
|
+
keep_this_sngl_burst = add_test(keep_this_sngl_burst, lambda burst: burst.confidence <= options.max_confidence)
|
|
363
|
+
if options.min_duration is not None:
|
|
364
|
+
keep_this_sngl_burst = add_test(keep_this_sngl_burst, lambda burst: burst.duration >= options.min_duration)
|
|
365
|
+
if options.max_duration is not None:
|
|
366
|
+
keep_this_sngl_burst = add_test(keep_this_sngl_burst, lambda burst: burst.duration <= options.max_duration)
|
|
367
|
+
if options.min_fhigh is not None:
|
|
368
|
+
keep_this_sngl_burst = add_test(keep_this_sngl_burst, lambda burst: burst.fhigh >= options.min_fhigh)
|
|
369
|
+
if options.max_fhigh is not None:
|
|
370
|
+
keep_this_sngl_burst = add_test(keep_this_sngl_burst, lambda burst: burst.fhigh <= options.max_fhigh)
|
|
371
|
+
if options.min_flow is not None:
|
|
372
|
+
keep_this_sngl_burst = add_test(keep_this_sngl_burst, lambda burst: burst.flow >= options.min_flow)
|
|
373
|
+
if options.max_flow is not None:
|
|
374
|
+
keep_this_sngl_burst = add_test(keep_this_sngl_burst, lambda burst: burst.flow <= options.max_flow)
|
|
375
|
+
if options.min_hrss is not None:
|
|
376
|
+
keep_this_sngl_burst = add_test(keep_this_sngl_burst, lambda burst: burst.hrss >= options.min_hrss)
|
|
377
|
+
if options.max_hrss is not None:
|
|
378
|
+
keep_this_sngl_burst = add_test(keep_this_sngl_burst, lambda burst: burst.hrss <= options.max_hrss)
|
|
379
|
+
if options.min_snr is not None:
|
|
380
|
+
keep_this_sngl_burst = add_test(keep_this_sngl_burst, lambda burst: burst.snr >= options.min_snr)
|
|
381
|
+
if options.max_snr is not None:
|
|
382
|
+
keep_this_sngl_burst = add_test(keep_this_sngl_burst, lambda burst: burst.snr <= options.max_snr)
|
|
383
|
+
if options.cut_instrument:
|
|
384
|
+
keep_this_sngl_burst = add_test(keep_this_sngl_burst, lambda burst: burst.ifo not in options.cut_instrument)
|
|
385
|
+
if options.min_peak_time is not None:
|
|
386
|
+
keep_this_sngl_burst = add_test(keep_this_sngl_burst, lambda burst: burst.peak >= options.min_peak_time)
|
|
387
|
+
if options.max_peak_time is not None:
|
|
388
|
+
keep_this_sngl_burst = add_test(keep_this_sngl_burst, lambda burst: burst.peak <= options.max_peak_time)
|
|
389
|
+
if options.min_start_time is not None:
|
|
390
|
+
keep_this_sngl_burst = add_test(keep_this_sngl_burst, lambda burst: burst.start >= options.min_start_time)
|
|
391
|
+
if options.max_start_time is not None:
|
|
392
|
+
keep_this_sngl_burst = add_test(keep_this_sngl_burst, lambda burst: burst.start <= options.max_start_time)
|
|
393
|
+
if options.min_stop_time is not None:
|
|
394
|
+
keep_this_sngl_burst = add_test(keep_this_sngl_burst, lambda burst: burst.stop >= options.min_stop_time)
|
|
395
|
+
if options.max_stop_time is not None:
|
|
396
|
+
keep_this_sngl_burst = add_test(keep_this_sngl_burst, lambda burst: burst.stop <= options.max_stop_time)
|
|
397
|
+
|
|
398
|
+
return keep_this_sngl_burst
|
|
399
|
+
|
|
400
|
+
|
|
401
|
+
keep_this_sngl_burst = make_keep_this_sngl_burst(options)
|
|
402
|
+
|
|
403
|
+
|
|
404
|
+
|
|
405
|
+
#
|
|
406
|
+
# Get veto segment information.
|
|
407
|
+
#
|
|
408
|
+
|
|
409
|
+
|
|
410
|
+
if options.veto_file:
|
|
411
|
+
veto_segments = load_veto_segments(options.veto_file, verbose = options.verbose)
|
|
412
|
+
else:
|
|
413
|
+
veto_segments = segments.segmentlistdict()
|
|
414
|
+
|
|
415
|
+
|
|
416
|
+
#
|
|
417
|
+
# Do the work.
|
|
418
|
+
#
|
|
419
|
+
|
|
420
|
+
|
|
421
|
+
for filename in filenames:
|
|
422
|
+
xmldoc = ligolw_utils.load_filename(filename, verbose = options.verbose)
|
|
423
|
+
xmldoc = ligolw_bucut(xmldoc, keep_this_sngl_burst, veto_segments = veto_segments, del_non_coincs = options.coinc_only, del_skipped_injections = options.inj_made_only, program = options.program, comment = options.comment, verbose = options.verbose)
|
|
424
|
+
ligolw_utils.write_filename(xmldoc, filename, verbose = options.verbose)
|
|
425
|
+
xmldoc.unlink()
|