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.
- lal/__init__.py +5 -5
- lal/_lal.cpython-312-aarch64-linux-gnu.so +0 -0
- lal/{lal.py → _lal_swig.py} +1 -1
- lal/git_version.py +5 -5
- lal/gpstime.py +1 -1
- lal/pipeline.py +3139 -0
- lal/rate.py +14 -16
- lal/series.py +28 -32
- lal/utils/cache.py +27 -7
- lal/utils/series.py +1 -1
- lalapps/__init__.py +1 -1
- 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 +1 -1
- lalapps/bin/lalapps_ComputeFstatBenchmark +1 -1
- lalapps/bin/lalapps_ComputeFstatLatticeCount +1 -1
- lalapps/bin/lalapps_ComputeFstatMCUpperLimit +1 -1
- lalapps/bin/lalapps_ComputeFstatistic_v2 +1 -1
- lalapps/bin/lalapps_ComputePSD +1 -1
- lalapps/bin/lalapps_CopySFTs +1 -1
- lalapps/bin/lalapps_DistanceVsMass +0 -0
- lalapps/bin/lalapps_DriveHoughMulti +1 -1
- lalapps/bin/lalapps_FstatMetric_v2 +1 -1
- lalapps/bin/lalapps_HierarchSearchGCT +1 -1
- lalapps/bin/lalapps_HierarchicalSearch +1 -1
- lalapps/bin/lalapps_MakeSFTDAG +1 -1
- lalapps/bin/lalapps_MakeSFTs +1 -1
- lalapps/bin/lalapps_Makefakedata_v4 +1 -1
- lalapps/bin/lalapps_Makefakedata_v5 +1 -1
- lalapps/bin/lalapps_PredictFstat +1 -1
- lalapps/bin/lalapps_PrintDetectorState +1 -1
- lalapps/bin/lalapps_SFTclean +1 -1
- lalapps/bin/lalapps_SFTvalidate +1 -1
- lalapps/bin/lalapps_StringAddFrame +0 -0
- lalapps/bin/lalapps_StringSearch +0 -0
- lalapps/bin/lalapps_Weave +1 -1
- lalapps/bin/lalapps_WeaveCompare +1 -1
- lalapps/bin/lalapps_WeaveConcat +1 -1
- lalapps/bin/lalapps_WeaveSetup +1 -1
- lalapps/bin/lalapps_WriteSFTsfromSFDBs +1 -1
- lalapps/bin/lalapps_animate +0 -0
- lalapps/bin/lalapps_binj +0 -0
- lalapps/bin/lalapps_blindinj +0 -0
- lalapps/bin/lalapps_cache +1 -1
- 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 +1 -1
- lalapps/bin/lalapps_compareFstats +1 -1
- lalapps/bin/lalapps_compareSFTs +1 -1
- lalapps/bin/lalapps_create_time_correction_ephemeris +1 -1
- lalapps/bin/lalapps_dumpSFT +1 -1
- lalapps/bin/lalapps_effdist +0 -0
- lalapps/bin/lalapps_exc_resp +0 -0
- lalapps/bin/lalapps_fftw_wisdom +1 -1
- lalapps/bin/lalapps_fftwf_wisdom +1 -1
- lalapps/bin/lalapps_fits_header_getval +1 -1
- lalapps/bin/lalapps_fits_header_list +1 -1
- lalapps/bin/lalapps_fits_overview +1 -1
- lalapps/bin/lalapps_fits_table_list +1 -1
- 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 +1 -1
- 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 +1 -1
- lalapps/bin/lalapps_knope_automation_script +1 -1
- lalapps/bin/lalapps_knope_collate_results +1 -1
- lalapps/bin/lalapps_knope_result_page +1 -1
- lalapps/bin/lalapps_ninja +0 -0
- lalapps/bin/lalapps_path2cache +1 -1
- lalapps/bin/lalapps_power +0 -0
- lalapps/bin/lalapps_pulsar_crosscorr_v2 +1 -1
- lalapps/bin/lalapps_pulsar_frequency_evolution +1 -1
- lalapps/bin/lalapps_pulsar_parameter_estimation_nested +1 -1
- lalapps/bin/lalapps_random_bank +0 -0
- lalapps/bin/lalapps_randombank +0 -0
- lalapps/bin/lalapps_run_pulsar_crosscorr_v2 +1 -1
- lalapps/bin/lalapps_searchsum2cache +1 -1
- lalapps/bin/lalapps_spec_avg +1 -1
- lalapps/bin/lalapps_spec_avg_long +1 -1
- lalapps/bin/lalapps_spec_coherence +1 -1
- lalapps/bin/lalapps_spininj +0 -0
- lalapps/bin/lalapps_splitSFTs +1 -1
- lalapps/bin/lalapps_splitbank +0 -0
- lalapps/bin/lalapps_ssbtodetector +1 -1
- lalapps/bin/lalapps_synthesizeBstatMC +1 -1
- lalapps/bin/lalapps_synthesizeLVStats +1 -1
- lalapps/bin/lalapps_synthesizeTransientStats +1 -1
- lalapps/bin/lalapps_tconvert +1 -1
- 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 +17 -15
- 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 +2 -2
- lalapps/data/LALSimNeutronStarEOS_ABHT_QMC_RMF1_META.dat +1877 -1877
- lalapps/data/LALSimNeutronStarEOS_ABHT_QMC_RMF2_META.dat +1934 -1934
- lalapps/data/LALSimNeutronStarEOS_ABHT_QMC_RMF3_META.dat +1779 -1779
- lalapps/data/LALSimNeutronStarEOS_ABHT_QMC_RMF4_META.dat +2069 -2069
- lalapps/data/LALSimNeutronStarEOS_BL_CHIRAL_META.dat +1529 -1529
- lalapps/data/LALSimNeutronStarEOS_GMSR_BSK14_BSK24.dat +2 -2
- lalapps/data/LALSimNeutronStarEOS_GMSR_DHSL59_BSK24.dat +2 -2
- lalapps/data/LALSimNeutronStarEOS_GMSR_DHSL69_BSK24.dat +2 -2
- lalapps/data/LALSimNeutronStarEOS_GMSR_F0_BSK24.dat +2 -2
- lalapps/data/LALSimNeutronStarEOS_GMSR_H1_BSK24.dat +2 -2
- lalapps/data/LALSimNeutronStarEOS_GMSR_H2_BSK24.dat +2 -2
- lalapps/data/LALSimNeutronStarEOS_GMSR_H3_BSK24.dat +2 -2
- lalapps/data/LALSimNeutronStarEOS_GMSR_H4_BSK24.dat +2 -2
- lalapps/data/LALSimNeutronStarEOS_GMSR_H5_BSK24.dat +2 -2
- lalapps/data/LALSimNeutronStarEOS_GMSR_LN55_BSK24.dat +2 -2
- lalapps/data/LALSimNeutronStarEOS_GMSR_SLY5_BSK24.dat +2 -2
- lalapps/data/LALSimNeutronStarEOS_GPPVA_DD2_BSK24.dat +2 -2
- lalapps/data/LALSimNeutronStarEOS_GPPVA_DDME2_BSK24.dat +2 -2
- lalapps/data/LALSimNeutronStarEOS_GPPVA_FSU2H_BSK24.dat +2 -2
- lalapps/data/LALSimNeutronStarEOS_GPPVA_FSU2_BSK24.dat +2 -2
- lalapps/data/LALSimNeutronStarEOS_GPPVA_NL3WRL55_BSK24.dat +2 -2
- lalapps/data/LALSimNeutronStarEOS_KDE0V1_BSK24.dat +1 -1
- lalapps/data/LALSimNeutronStarEOS_KDE0V_BSK24.dat +1 -1
- lalapps/data/LALSimNeutronStarEOS_PCP_BSK24_BSK24.dat +2 -2
- lalapps/data/LALSimNeutronStarEOS_RG_SLY4_BSK24.dat +2 -2
- lalapps/data/LALSimNeutronStarEOS_RS_BSK24.dat +1 -1
- lalapps/data/LALSimNeutronStarEOS_SK255_BSK24.dat +2 -2
- lalapps/data/LALSimNeutronStarEOS_SKA_BSK24.dat +1 -1
- lalapps/data/LALSimNeutronStarEOS_SKB_BSK24.dat +1 -1
- lalapps/data/LALSimNeutronStarEOS_SKI2_BSK24.dat +1 -1
- lalapps/data/LALSimNeutronStarEOS_SKI3_BSK24.dat +1 -1
- lalapps/data/LALSimNeutronStarEOS_SKI4_BSK24.dat +1 -1
- lalapps/data/LALSimNeutronStarEOS_SKI6_BSK24.dat +1 -1
- lalapps/data/LALSimNeutronStarEOS_SKOP_BSK24.dat +1 -1
- lalapps/data/LALSimNeutronStarEOS_SLY230A_BSK24.dat +1 -1
- lalapps/data/LALSimNeutronStarEOS_SLY2_BSK24.dat +1 -1
- lalapps/data/LALSimNeutronStarEOS_SLY9_BSK24.dat +1 -1
- lalapps/data/LALSimNeutronStarEOS_XMLSLZ_DDLZ1_BSK24.dat +2 -2
- lalapps/data/LALSimNeutronStarEOS_XMLSLZ_DDME2_BSK24.dat +1 -1
- lalapps/data/LALSimNeutronStarEOS_XMLSLZ_DDMEX_BSK24.dat +1 -1
- lalapps/data/LALSimNeutronStarEOS_XMLSLZ_GM1_BSK24.dat +1 -1
- lalapps/data/LALSimNeutronStarEOS_XMLSLZ_MTVTC_BSK24.dat +1 -1
- lalapps/data/LALSimNeutronStarEOS_XMLSLZ_NL3_BSK24.dat +1 -1
- lalapps/data/LALSimNeutronStarEOS_XMLSLZ_PKDD_BSK24.dat +1 -1
- lalapps/data/LALSimNeutronStarEOS_XMLSLZ_TM1_BSK24.dat +1 -1
- lalapps/data/LALSimNeutronStarEOS_XMLSLZ_TW99_BSK24.dat +1 -1
- lalapps/data/LIGO-T1800545-v1-aLIGO_140Mpc.txt +1000 -1000
- lalapps/data/config_tiger_example.ini +2 -2
- lalapps/data/lalinference_pipe_example.ini +2 -3
- lalapps/data/lib_pipe_example.ini +5 -6
- lalapps/data/power_pipe.ini +1 -1
- lalapps/data/unimodalMeans.csv +0 -1
- lalapps/git_version.py +5 -5
- lalburst/SnglBurstUtils.py +5 -5
- lalburst/__init__.py +2 -2
- lalburst/_lalburst.cpython-312-aarch64-linux-gnu.so +0 -0
- lalburst/{lalburst.py → _lalburst_swig.py} +1 -1
- lalburst/binjfind.py +8 -8
- lalburst/bucluster.py +4 -4
- lalburst/burca.py +3 -3
- lalburst/burca_tailor.py +8 -16
- lalburst/cafe.py +3 -3
- lalburst/calc_likelihood.py +1 -1
- lalburst/cs_gamma.cpython-312-aarch64-linux-gnu.so +0 -0
- lalburst/git_version.py +5 -5
- lalburst/power.py +3 -3
- lalburst/snglcluster.py +1 -1
- lalburst/snglcoinc.py +97 -118
- lalburst/stringutils.py +8 -16
- lalburst/timeslides.py +46 -0
- lalframe/__init__.py +2 -2
- lalframe/_lalframe.cpython-312-aarch64-linux-gnu.so +0 -0
- lalframe/{lalframe.py → _lalframe_swig.py} +1 -1
- lalframe/frread.py +4 -2
- lalframe/git_version.py +5 -5
- lalframe/utils/frtools.py +1 -1
- lalinference/__init__.py +2 -2
- lalinference/_bayespputils.cpython-312-aarch64-linux-gnu.so +0 -0
- lalinference/_lalinference.cpython-312-aarch64-linux-gnu.so +0 -0
- lalinference/{lalinference.py → _lalinference_swig.py} +1 -1
- lalinference/bayespputils.py +35 -39
- lalinference/git_version.py +5 -5
- lalinference/imrtgr/nrutils.py +118 -135
- lalinference/io/__init__.py +4 -6
- lalinference/lalinference_pipe_utils.py +12 -21
- lalinference/nest2pos.py +0 -1
- lalinference/plot/__init__.py +4 -5
- lalinference/plot/spindisk.py +2 -3
- lalinference/tiger/make_injtimes.py +0 -1
- lalinference/tiger/omegascans_dag.py +6 -3
- lalinference/tiger/postproc.py +11 -13
- lalinference/wrapper.py +0 -1
- lalinspiral/__init__.py +2 -2
- lalinspiral/_lalinspiral.cpython-312-aarch64-linux-gnu.so +0 -0
- lalinspiral/{lalinspiral.py → _lalinspiral_swig.py} +1 -1
- lalinspiral/_thinca.cpython-312-aarch64-linux-gnu.so +0 -0
- lalinspiral/git_version.py +5 -5
- lalinspiral/inspinjfind.py +6 -11
- lalinspiral/thinca.py +11 -11
- lalmetaio/__init__.py +2 -2
- lalmetaio/_lalmetaio.cpython-312-aarch64-linux-gnu.so +0 -0
- lalmetaio/{lalmetaio.py → _lalmetaio_swig.py} +1 -1
- lalmetaio/git_version.py +5 -5
- lalpulsar/PulsarParametersWrapper.py +18 -10
- lalpulsar/__init__.py +2 -2
- lalpulsar/_lalpulsar.cpython-312-aarch64-linux-gnu.so +0 -0
- lalpulsar/{lalpulsar.py → _lalpulsar_swig.py} +1 -1
- lalpulsar/git_version.py +5 -5
- lalpulsar/knope_utils.py +9 -10
- 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 +7 -0
- lalpulsar/pulsarhtmlutils.py +52 -53
- lalpulsar/pulsarpputils.py +28 -25
- lalpulsar/simulateCW.py +49 -6
- lalpulsar/simulateHeterodynedCW.py +4 -5
- lalsimulation/__init__.py +2 -2
- lalsimulation/_lalsimulation.cpython-312-aarch64-linux-gnu.so +0 -0
- lalsimulation/{lalsimulation.py → _lalsimulation_swig.py} +1 -1
- lalsimulation/git_version.py +5 -5
- lalsimulation/gwsignal/models/__init__.py +2 -0
- lalsimulation/gwsignal/models/pyseobnr_model.py +174 -1
- lalsimulation/nrfits/NRSur3dq8Remnant.py +1 -1
- lalsimulation/nrfits/NRSur7dq4Remnant.py +1 -1
- lalsimulation/nrfits/eval_fits.py +1 -1
- lalsimulation/nrfits/nrfits.py +0 -2
- {lalsuite-7.22.1.dev20240408.data → lalsuite-7.26.2.dev20251202.data}/scripts/cbcBayesBurstPPAnalysis +4 -8
- {lalsuite-7.22.1.dev20240408.data → lalsuite-7.26.2.dev20251202.data}/scripts/cbcBayesBurstPostProc +10 -20
- {lalsuite-7.22.1.dev20240408.data → lalsuite-7.26.2.dev20251202.data}/scripts/cbcBayesCombinePTMCMCh5s +0 -1
- {lalsuite-7.22.1.dev20240408.data → lalsuite-7.26.2.dev20251202.data}/scripts/cbcBayesCombinePosteriors +0 -2
- {lalsuite-7.22.1.dev20240408.data → lalsuite-7.26.2.dev20251202.data}/scripts/cbcBayesCompPos +3 -4
- {lalsuite-7.22.1.dev20240408.data → lalsuite-7.26.2.dev20251202.data}/scripts/cbcBayesDIEvidence +0 -1
- {lalsuite-7.22.1.dev20240408.data → lalsuite-7.26.2.dev20251202.data}/scripts/cbcBayesGraceDBinfo +0 -1
- {lalsuite-7.22.1.dev20240408.data → lalsuite-7.26.2.dev20251202.data}/scripts/cbcBayesMCMC2pos +7 -5
- {lalsuite-7.22.1.dev20240408.data → lalsuite-7.26.2.dev20251202.data}/scripts/cbcBayesPPAnalysis +3 -6
- {lalsuite-7.22.1.dev20240408.data → lalsuite-7.26.2.dev20251202.data}/scripts/cbcBayesPlotSpinDisk +0 -1
- {lalsuite-7.22.1.dev20240408.data → lalsuite-7.26.2.dev20251202.data}/scripts/cbcBayesPosToSimBurst +6 -9
- {lalsuite-7.22.1.dev20240408.data → lalsuite-7.26.2.dev20251202.data}/scripts/cbcBayesPosToSimInspiral +5 -8
- {lalsuite-7.22.1.dev20240408.data → lalsuite-7.26.2.dev20251202.data}/scripts/cbcBayesPostProc +5 -9
- {lalsuite-7.22.1.dev20240408.data → lalsuite-7.26.2.dev20251202.data}/scripts/cbcBayesThermoInt +7 -7
- {lalsuite-7.22.1.dev20240408.data → lalsuite-7.26.2.dev20251202.data}/scripts/imrtgr_imr_consistency_test +38 -40
- lalsuite-7.26.2.dev20251202.data/scripts/lal_cache +6 -0
- lalsuite-7.26.2.dev20251202.data/scripts/lal_fftw_wisdom +6 -0
- lalsuite-7.26.2.dev20251202.data/scripts/lal_fftwf_wisdom +6 -0
- {lalsuite-7.22.1.dev20240408.data → lalsuite-7.26.2.dev20251202.data}/scripts/lal_path2cache +1 -2
- {lalsuite-7.22.1.dev20240408.data → lalsuite-7.26.2.dev20251202.data}/scripts/lal_searchsum2cache +3 -5
- lalsuite-7.26.2.dev20251202.data/scripts/lal_simd_detect +6 -0
- lalsuite-7.26.2.dev20251202.data/scripts/lal_tconvert +6 -0
- lalsuite-7.26.2.dev20251202.data/scripts/lal_version +6 -0
- lalsuite-7.26.2.dev20251202.data/scripts/lalapps_ComputeAntennaPattern +6 -0
- lalsuite-7.26.2.dev20251202.data/scripts/lalapps_ComputeFstatBenchmark +6 -0
- lalsuite-7.26.2.dev20251202.data/scripts/lalapps_ComputeFstatLatticeCount +6 -0
- lalsuite-7.26.2.dev20251202.data/scripts/lalapps_ComputeFstatMCUpperLimit +6 -0
- lalsuite-7.26.2.dev20251202.data/scripts/lalapps_ComputeFstatistic_v2 +6 -0
- lalsuite-7.26.2.dev20251202.data/scripts/lalapps_ComputePSD +6 -0
- lalsuite-7.26.2.dev20251202.data/scripts/lalapps_CopySFTs +6 -0
- lalsuite-7.26.2.dev20251202.data/scripts/lalapps_DistanceVsMass +6 -0
- lalsuite-7.26.2.dev20251202.data/scripts/lalapps_DriveHoughMulti +6 -0
- lalsuite-7.26.2.dev20251202.data/scripts/lalapps_FstatMetric_v2 +6 -0
- lalsuite-7.26.2.dev20251202.data/scripts/lalapps_HierarchSearchGCT +6 -0
- lalsuite-7.26.2.dev20251202.data/scripts/lalapps_HierarchicalSearch +6 -0
- lalsuite-7.26.2.dev20251202.data/scripts/lalapps_MakeSFTDAG +6 -0
- lalsuite-7.26.2.dev20251202.data/scripts/lalapps_MakeSFTs +6 -0
- lalsuite-7.26.2.dev20251202.data/scripts/lalapps_Makefakedata_v4 +6 -0
- lalsuite-7.26.2.dev20251202.data/scripts/lalapps_Makefakedata_v5 +6 -0
- lalsuite-7.26.2.dev20251202.data/scripts/lalapps_PredictFstat +6 -0
- lalsuite-7.26.2.dev20251202.data/scripts/lalapps_PrintDetectorState +6 -0
- lalsuite-7.26.2.dev20251202.data/scripts/lalapps_SFTclean +6 -0
- lalsuite-7.26.2.dev20251202.data/scripts/lalapps_SFTvalidate +6 -0
- lalsuite-7.26.2.dev20251202.data/scripts/lalapps_StringAddFrame +6 -0
- lalsuite-7.26.2.dev20251202.data/scripts/lalapps_StringSearch +6 -0
- lalsuite-7.26.2.dev20251202.data/scripts/lalapps_Weave +6 -0
- lalsuite-7.26.2.dev20251202.data/scripts/lalapps_WeaveCompare +6 -0
- lalsuite-7.26.2.dev20251202.data/scripts/lalapps_WeaveConcat +6 -0
- lalsuite-7.26.2.dev20251202.data/scripts/lalapps_WeaveSetup +6 -0
- lalsuite-7.26.2.dev20251202.data/scripts/lalapps_WriteSFTsfromSFDBs +6 -0
- lalsuite-7.26.2.dev20251202.data/scripts/lalapps_animate +6 -0
- lalsuite-7.26.2.dev20251202.data/scripts/lalapps_binj +6 -0
- lalsuite-7.26.2.dev20251202.data/scripts/lalapps_blindinj +6 -0
- lalsuite-7.26.2.dev20251202.data/scripts/lalapps_cache +6 -0
- {lalsuite-7.22.1.dev20240408.data → lalsuite-7.26.2.dev20251202.data}/scripts/lalapps_cafe +3 -8
- lalsuite-7.26.2.dev20251202.data/scripts/lalapps_calfacs +6 -0
- lalsuite-7.26.2.dev20251202.data/scripts/lalapps_cbc_stochasticbank +6 -0
- lalsuite-7.26.2.dev20251202.data/scripts/lalapps_chirplen +6 -0
- lalsuite-7.26.2.dev20251202.data/scripts/lalapps_coh_PTF_inspiral +6 -0
- lalsuite-7.26.2.dev20251202.data/scripts/lalapps_coinj +6 -0
- lalsuite-7.26.2.dev20251202.data/scripts/lalapps_combine_crosscorr_toplists +6 -0
- lalsuite-7.26.2.dev20251202.data/scripts/lalapps_compareFstats +6 -0
- lalsuite-7.26.2.dev20251202.data/scripts/lalapps_compareSFTs +6 -0
- {lalsuite-7.22.1.dev20240408.data → lalsuite-7.26.2.dev20251202.data}/scripts/lalapps_cosmicstring_pipe +8 -9
- {lalsuite-7.22.1.dev20240408.data → lalsuite-7.26.2.dev20251202.data}/scripts/lalapps_create_time_correction_ephemeris +1 -4
- lalsuite-7.26.2.dev20251202.data/scripts/lalapps_dumpSFT +6 -0
- lalsuite-7.26.2.dev20251202.data/scripts/lalapps_effdist +6 -0
- lalsuite-7.26.2.dev20251202.data/scripts/lalapps_exc_resp +6 -0
- lalsuite-7.26.2.dev20251202.data/scripts/lalapps_fftw_wisdom +6 -0
- lalsuite-7.26.2.dev20251202.data/scripts/lalapps_fftwf_wisdom +6 -0
- lalsuite-7.26.2.dev20251202.data/scripts/lalapps_fits_header_getval +6 -0
- lalsuite-7.26.2.dev20251202.data/scripts/lalapps_fits_header_list +6 -0
- lalsuite-7.26.2.dev20251202.data/scripts/lalapps_fits_overview +6 -0
- lalsuite-7.26.2.dev20251202.data/scripts/lalapps_fits_table_list +6 -0
- lalsuite-7.26.2.dev20251202.data/scripts/lalapps_fr_ninja +6 -0
- lalsuite-7.26.2.dev20251202.data/scripts/lalapps_frextr +6 -0
- lalsuite-7.26.2.dev20251202.data/scripts/lalapps_frinfo +6 -0
- lalsuite-7.26.2.dev20251202.data/scripts/lalapps_frjoin +6 -0
- lalsuite-7.26.2.dev20251202.data/scripts/lalapps_frread +6 -0
- lalsuite-7.26.2.dev20251202.data/scripts/lalapps_frview +6 -0
- lalsuite-7.26.2.dev20251202.data/scripts/lalapps_gwf2xml +6 -0
- lalsuite-7.26.2.dev20251202.data/scripts/lalapps_heterodyne_pulsar +6 -0
- lalsuite-7.26.2.dev20251202.data/scripts/lalapps_inspawgfile +6 -0
- lalsuite-7.26.2.dev20251202.data/scripts/lalapps_inspfrinj +6 -0
- lalsuite-7.26.2.dev20251202.data/scripts/lalapps_inspinj +6 -0
- lalsuite-7.26.2.dev20251202.data/scripts/lalapps_inspiralDistance +6 -0
- lalsuite-7.26.2.dev20251202.data/scripts/lalapps_knope +6 -0
- lalsuite-7.26.2.dev20251202.data/scripts/lalapps_knope_automation_script +6 -0
- lalsuite-7.26.2.dev20251202.data/scripts/lalapps_knope_collate_results +6 -0
- lalsuite-7.26.2.dev20251202.data/scripts/lalapps_knope_result_page +6 -0
- lalsuite-7.26.2.dev20251202.data/scripts/lalapps_makeblindinj +6 -0
- lalsuite-7.26.2.dev20251202.data/scripts/lalapps_makeblindinj_himass +6 -0
- lalsuite-7.26.2.dev20251202.data/scripts/lalapps_ninja +6 -0
- lalsuite-7.26.2.dev20251202.data/scripts/lalapps_path2cache +6 -0
- lalsuite-7.26.2.dev20251202.data/scripts/lalapps_power +6 -0
- {lalsuite-7.22.1.dev20240408.data → lalsuite-7.26.2.dev20251202.data}/scripts/lalapps_power_likelihood_pipe +2 -3
- {lalsuite-7.22.1.dev20240408.data → lalsuite-7.26.2.dev20251202.data}/scripts/lalapps_power_pipe +3 -12
- lalsuite-7.26.2.dev20251202.data/scripts/lalapps_pulsar_crosscorr_v2 +6 -0
- lalsuite-7.26.2.dev20251202.data/scripts/lalapps_pulsar_frequency_evolution +6 -0
- {lalsuite-7.22.1.dev20240408.data → lalsuite-7.26.2.dev20251202.data}/scripts/lalapps_pulsar_parameter_estimation_nested +1 -4
- lalsuite-7.26.2.dev20251202.data/scripts/lalapps_random_bank +6 -0
- lalsuite-7.26.2.dev20251202.data/scripts/lalapps_randombank +6 -0
- lalsuite-7.26.2.dev20251202.data/scripts/lalapps_run_pulsar_crosscorr_v2 +6 -0
- lalsuite-7.26.2.dev20251202.data/scripts/lalapps_searchsum2cache +6 -0
- lalsuite-7.26.2.dev20251202.data/scripts/lalapps_spec_avg +6 -0
- lalsuite-7.26.2.dev20251202.data/scripts/lalapps_spec_avg_long +6 -0
- lalsuite-7.26.2.dev20251202.data/scripts/lalapps_spec_coherence +6 -0
- lalsuite-7.26.2.dev20251202.data/scripts/lalapps_spininj +6 -0
- lalsuite-7.26.2.dev20251202.data/scripts/lalapps_splitSFTs +6 -0
- lalsuite-7.26.2.dev20251202.data/scripts/lalapps_splitbank +6 -0
- lalsuite-7.26.2.dev20251202.data/scripts/lalapps_ssbtodetector +6 -0
- {lalsuite-7.22.1.dev20240408.data → lalsuite-7.26.2.dev20251202.data}/scripts/lalapps_string_apply_vetoes +4 -5
- {lalsuite-7.22.1.dev20240408.data → lalsuite-7.26.2.dev20251202.data}/scripts/lalapps_string_calc_likelihood +1 -2
- {lalsuite-7.22.1.dev20240408.data → lalsuite-7.26.2.dev20251202.data}/scripts/lalapps_string_contour_plotter +0 -1
- {lalsuite-7.22.1.dev20240408.data → lalsuite-7.26.2.dev20251202.data}/scripts/lalapps_string_contour_plotter_largeloops +0 -1
- {lalsuite-7.22.1.dev20240408.data → lalsuite-7.26.2.dev20251202.data}/scripts/lalapps_string_cs_gamma +0 -1
- {lalsuite-7.22.1.dev20240408.data → lalsuite-7.26.2.dev20251202.data}/scripts/lalapps_string_cs_gamma_largeloops +0 -1
- {lalsuite-7.22.1.dev20240408.data → lalsuite-7.26.2.dev20251202.data}/scripts/lalapps_string_final +4 -5
- {lalsuite-7.22.1.dev20240408.data → lalsuite-7.26.2.dev20251202.data}/scripts/lalapps_string_meas_likelihood +6 -7
- {lalsuite-7.22.1.dev20240408.data → lalsuite-7.26.2.dev20251202.data}/scripts/lalapps_string_plot_binj +5 -6
- {lalsuite-7.22.1.dev20240408.data → lalsuite-7.26.2.dev20251202.data}/scripts/lalapps_string_plot_likelihood +1 -2
- lalsuite-7.26.2.dev20251202.data/scripts/lalapps_synthesizeBstatMC +6 -0
- lalsuite-7.26.2.dev20251202.data/scripts/lalapps_synthesizeLVStats +6 -0
- lalsuite-7.26.2.dev20251202.data/scripts/lalapps_synthesizeTransientStats +6 -0
- lalsuite-7.26.2.dev20251202.data/scripts/lalapps_tconvert +6 -0
- lalsuite-7.26.2.dev20251202.data/scripts/lalapps_tmpltbank +6 -0
- lalsuite-7.26.2.dev20251202.data/scripts/lalapps_version +6 -0
- lalsuite-7.26.2.dev20251202.data/scripts/lalapps_xtefitstoframe +6 -0
- {lalsuite-7.22.1.dev20240408.data → lalsuite-7.26.2.dev20251202.data}/scripts/lalburst_cluster +2 -8
- {lalsuite-7.22.1.dev20240408.data → lalsuite-7.26.2.dev20251202.data}/scripts/lalburst_coinc +5 -11
- {lalsuite-7.22.1.dev20240408.data → lalsuite-7.26.2.dev20251202.data}/scripts/lalburst_cut +9 -15
- {lalsuite-7.22.1.dev20240408.data → lalsuite-7.26.2.dev20251202.data}/scripts/lalburst_gen_timeslides +8 -13
- {lalsuite-7.22.1.dev20240408.data → lalsuite-7.26.2.dev20251202.data}/scripts/lalburst_inj_pic +6 -12
- {lalsuite-7.22.1.dev20240408.data → lalsuite-7.26.2.dev20251202.data}/scripts/lalburst_injfind +4 -9
- {lalsuite-7.22.1.dev20240408.data → lalsuite-7.26.2.dev20251202.data}/scripts/lalburst_plot_tisi +3 -8
- {lalsuite-7.22.1.dev20240408.data → lalsuite-7.26.2.dev20251202.data}/scripts/lalburst_power_calc_likelihood +1 -2
- {lalsuite-7.22.1.dev20240408.data → lalsuite-7.26.2.dev20251202.data}/scripts/lalburst_power_final +1 -2
- {lalsuite-7.22.1.dev20240408.data → lalsuite-7.26.2.dev20251202.data}/scripts/lalburst_power_meas_likelihood +3 -4
- {lalsuite-7.22.1.dev20240408.data → lalsuite-7.26.2.dev20251202.data}/scripts/lalburst_power_plot_binj +3 -4
- {lalsuite-7.22.1.dev20240408.data → lalsuite-7.26.2.dev20251202.data}/scripts/lalburst_power_plot_binjtf +4 -5
- lalsuite-7.26.2.dev20251202.data/scripts/lalburst_version +6 -0
- lalsuite-7.26.2.dev20251202.data/scripts/lalfr-cat +6 -0
- lalsuite-7.26.2.dev20251202.data/scripts/lalfr-cksum +6 -0
- lalsuite-7.26.2.dev20251202.data/scripts/lalfr-cut +6 -0
- lalsuite-7.26.2.dev20251202.data/scripts/lalfr-dump +6 -0
- lalsuite-7.26.2.dev20251202.data/scripts/lalfr-fmt +6 -0
- lalsuite-7.26.2.dev20251202.data/scripts/lalfr-paste +6 -0
- lalsuite-7.26.2.dev20251202.data/scripts/lalfr-print +6 -0
- lalsuite-7.26.2.dev20251202.data/scripts/lalfr-split +6 -0
- lalsuite-7.26.2.dev20251202.data/scripts/lalfr-stat +6 -0
- lalsuite-7.26.2.dev20251202.data/scripts/lalfr-stream +6 -0
- lalsuite-7.26.2.dev20251202.data/scripts/lalfr-vis +6 -0
- lalsuite-7.26.2.dev20251202.data/scripts/lalframe_version +6 -0
- lalsuite-7.26.2.dev20251202.data/scripts/lalinference_bench +6 -0
- lalsuite-7.26.2.dev20251202.data/scripts/lalinference_burst +6 -0
- {lalsuite-7.22.1.dev20240408.data → lalsuite-7.26.2.dev20251202.data}/scripts/lalinference_burst_pp_pipe +10 -7
- {lalsuite-7.22.1.dev20240408.data → lalsuite-7.26.2.dev20251202.data}/scripts/lalinference_coherence_test +0 -1
- {lalsuite-7.22.1.dev20240408.data → lalsuite-7.26.2.dev20251202.data}/scripts/lalinference_compute_roq_weights +1 -2
- {lalsuite-7.22.1.dev20240408.data → lalsuite-7.26.2.dev20251202.data}/scripts/lalinference_cpnest +12 -11
- lalsuite-7.26.2.dev20251202.data/scripts/lalinference_datadump +6 -0
- {lalsuite-7.22.1.dev20240408.data → lalsuite-7.26.2.dev20251202.data}/scripts/lalinference_evolve_spins_and_append_samples +0 -1
- lalsuite-7.26.2.dev20251202.data/scripts/lalinference_injectedlike +6 -0
- {lalsuite-7.22.1.dev20240408.data → lalsuite-7.26.2.dev20251202.data}/scripts/lalinference_merge_posteriors +0 -3
- lalsuite-7.26.2.dev20251202.data/scripts/lalinference_mpi_wrapper +6 -0
- {lalsuite-7.22.1.dev20240408.data → lalsuite-7.26.2.dev20251202.data}/scripts/lalinference_multi_pipe +5 -3
- lalsuite-7.26.2.dev20251202.data/scripts/lalinference_nest +6 -0
- {lalsuite-7.22.1.dev20240408.data → lalsuite-7.26.2.dev20251202.data}/scripts/lalinference_nest2pos +0 -1
- {lalsuite-7.22.1.dev20240408.data → lalsuite-7.26.2.dev20251202.data}/scripts/lalinference_pipe +11 -10
- {lalsuite-7.22.1.dev20240408.data → lalsuite-7.26.2.dev20251202.data}/scripts/lalinference_pp_pipe +10 -6
- {lalsuite-7.22.1.dev20240408.data → lalsuite-7.26.2.dev20251202.data}/scripts/lalinference_review_test +6 -5
- lalsuite-7.26.2.dev20251202.data/scripts/lalinference_version +6 -0
- {lalsuite-7.22.1.dev20240408.data → lalsuite-7.26.2.dev20251202.data}/scripts/lalinspiral_injfind +4 -5
- {lalsuite-7.22.1.dev20240408.data → lalsuite-7.26.2.dev20251202.data}/scripts/lalinspiral_thinca +7 -12
- lalsuite-7.26.2.dev20251202.data/scripts/lalinspiral_version +6 -0
- lalsuite-7.26.2.dev20251202.data/scripts/lalmetaio_version +6 -0
- lalsuite-7.26.2.dev20251202.data/scripts/lalpulsar_ComputeAntennaPattern +6 -0
- lalsuite-7.26.2.dev20251202.data/scripts/lalpulsar_ComputeFstatBenchmark +6 -0
- lalsuite-7.26.2.dev20251202.data/scripts/lalpulsar_ComputeFstatLatticeCount +6 -0
- lalsuite-7.26.2.dev20251202.data/scripts/lalpulsar_ComputeFstatMCUpperLimit +6 -0
- lalsuite-7.26.2.dev20251202.data/scripts/lalpulsar_ComputeFstatistic_v2 +6 -0
- lalsuite-7.26.2.dev20251202.data/scripts/lalpulsar_ComputePSD +6 -0
- {lalsuite-7.22.1.dev20240408.data → lalsuite-7.26.2.dev20251202.data}/scripts/lalpulsar_CopyPublicSFTs +18 -1
- lalsuite-7.26.2.dev20251202.data/scripts/lalpulsar_DriveHoughMulti +6 -0
- lalsuite-7.26.2.dev20251202.data/scripts/lalpulsar_FstatMetric_v2 +6 -0
- lalsuite-7.26.2.dev20251202.data/scripts/lalpulsar_HierarchSearchGCT +6 -0
- lalsuite-7.26.2.dev20251202.data/scripts/lalpulsar_HierarchicalSearch +6 -0
- {lalsuite-7.22.1.dev20240408.data → lalsuite-7.26.2.dev20251202.data}/scripts/lalpulsar_MakeSFTDAG +595 -390
- lalsuite-7.26.2.dev20251202.data/scripts/lalpulsar_MakeSFTs +6 -0
- lalsuite-7.26.2.dev20251202.data/scripts/lalpulsar_Makefakedata_v4 +6 -0
- lalsuite-7.26.2.dev20251202.data/scripts/lalpulsar_Makefakedata_v5 +6 -0
- lalsuite-7.26.2.dev20251202.data/scripts/lalpulsar_MoveSFTs +200 -0
- lalsuite-7.26.2.dev20251202.data/scripts/lalpulsar_PiecewiseSearch +963 -0
- lalsuite-7.26.2.dev20251202.data/scripts/lalpulsar_PredictFstat +6 -0
- lalsuite-7.26.2.dev20251202.data/scripts/lalpulsar_PrintDetectorState +6 -0
- lalsuite-7.26.2.dev20251202.data/scripts/lalpulsar_SFTclean +6 -0
- lalsuite-7.26.2.dev20251202.data/scripts/lalpulsar_SFTvalidate +6 -0
- lalsuite-7.26.2.dev20251202.data/scripts/lalpulsar_Weave +6 -0
- lalsuite-7.26.2.dev20251202.data/scripts/lalpulsar_WeaveCompare +6 -0
- lalsuite-7.26.2.dev20251202.data/scripts/lalpulsar_WeaveConcat +6 -0
- lalsuite-7.26.2.dev20251202.data/scripts/lalpulsar_WeaveSetup +6 -0
- lalsuite-7.26.2.dev20251202.data/scripts/lalpulsar_WriteSFTsfromSFDBs +6 -0
- lalsuite-7.26.2.dev20251202.data/scripts/lalpulsar_compareFstats +6 -0
- lalsuite-7.26.2.dev20251202.data/scripts/lalpulsar_compareSFTs +6 -0
- {lalsuite-7.22.1.dev20240408.data → lalsuite-7.26.2.dev20251202.data}/scripts/lalpulsar_create_time_correction_ephemeris +1 -4
- lalsuite-7.26.2.dev20251202.data/scripts/lalpulsar_crosscorr_v2 +6 -0
- lalsuite-7.26.2.dev20251202.data/scripts/lalpulsar_dumpSFT +6 -0
- lalsuite-7.26.2.dev20251202.data/scripts/lalpulsar_fits_header_getval +6 -0
- lalsuite-7.26.2.dev20251202.data/scripts/lalpulsar_fits_header_list +6 -0
- lalsuite-7.26.2.dev20251202.data/scripts/lalpulsar_fits_overview +6 -0
- lalsuite-7.26.2.dev20251202.data/scripts/lalpulsar_fits_table_list +6 -0
- lalsuite-7.26.2.dev20251202.data/scripts/lalpulsar_frequency_evolution +6 -0
- lalsuite-7.26.2.dev20251202.data/scripts/lalpulsar_heterodyne +6 -0
- {lalsuite-7.22.1.dev20240408.data → lalsuite-7.26.2.dev20251202.data}/scripts/lalpulsar_knope +8 -4
- {lalsuite-7.22.1.dev20240408.data → lalsuite-7.26.2.dev20251202.data}/scripts/lalpulsar_knope_automation_script +5 -2
- {lalsuite-7.22.1.dev20240408.data → lalsuite-7.26.2.dev20251202.data}/scripts/lalpulsar_knope_collate_results +12 -7
- {lalsuite-7.22.1.dev20240408.data → lalsuite-7.26.2.dev20251202.data}/scripts/lalpulsar_knope_result_page +9 -4
- lalsuite-7.26.2.dev20251202.data/scripts/lalpulsar_parameter_estimation_nested +6 -0
- lalsuite-7.26.2.dev20251202.data/scripts/lalpulsar_spec_avg +6 -0
- lalsuite-7.26.2.dev20251202.data/scripts/lalpulsar_spec_avg_long +6 -0
- lalsuite-7.26.2.dev20251202.data/scripts/lalpulsar_spec_coherence +6 -0
- lalsuite-7.26.2.dev20251202.data/scripts/lalpulsar_splitSFTs +6 -0
- lalsuite-7.26.2.dev20251202.data/scripts/lalpulsar_ssbtodetector +6 -0
- lalsuite-7.26.2.dev20251202.data/scripts/lalpulsar_synthesizeBstatMC +6 -0
- lalsuite-7.26.2.dev20251202.data/scripts/lalpulsar_synthesizeLVStats +6 -0
- lalsuite-7.26.2.dev20251202.data/scripts/lalpulsar_synthesizeTransientStats +6 -0
- lalsuite-7.26.2.dev20251202.data/scripts/lalpulsar_version +6 -0
- lalsuite-7.26.2.dev20251202.data/scripts/lalsim-bh-qnmode +6 -0
- lalsuite-7.26.2.dev20251202.data/scripts/lalsim-bh-ringdown +6 -0
- lalsuite-7.26.2.dev20251202.data/scripts/lalsim-bh-sphwf +6 -0
- lalsuite-7.26.2.dev20251202.data/scripts/lalsim-burst +6 -0
- lalsuite-7.26.2.dev20251202.data/scripts/lalsim-detector-noise +6 -0
- lalsuite-7.26.2.dev20251202.data/scripts/lalsim-detector-strain +6 -0
- lalsuite-7.26.2.dev20251202.data/scripts/lalsim-inject +6 -0
- lalsuite-7.26.2.dev20251202.data/scripts/lalsim-inspiral +6 -0
- lalsuite-7.26.2.dev20251202.data/scripts/lalsim-ns-eos-table +6 -0
- lalsuite-7.26.2.dev20251202.data/scripts/lalsim-ns-mass-radius +6 -0
- lalsuite-7.26.2.dev20251202.data/scripts/lalsim-ns-params +6 -0
- lalsuite-7.26.2.dev20251202.data/scripts/lalsim-sgwb +6 -0
- lalsuite-7.26.2.dev20251202.data/scripts/lalsim-unicorn +6 -0
- lalsuite-7.26.2.dev20251202.data/scripts/lalsimulation_version +6 -0
- {lalsuite-7.22.1.dev20240408.dist-info → lalsuite-7.26.2.dev20251202.dist-info}/METADATA +28 -11
- lalsuite-7.26.2.dev20251202.dist-info/RECORD +733 -0
- {lalsuite-7.22.1.dev20240408.dist-info → lalsuite-7.26.2.dev20251202.dist-info}/WHEEL +1 -1
- lalsuite.libs/libcfitsio-d1819b02.so.10.0.0 +0 -0
- lalsuite.libs/libframel-7c053be1.so.8.48.4 +0 -0
- lalsuite.libs/{libgsl-94dbbcc0.so.25.1.0 → libgsl-7aa43ddc.so.28.0.0} +0 -0
- lalsuite.libs/libgslcblas-3b2ae915.so.0.0.0 +0 -0
- lalsuite.libs/libhdf5-7a791ae9.so.310.5.1 +0 -0
- lalsuite.libs/libhdf5_hl-79b5d5b8.so.310.0.6 +0 -0
- lalsuite.libs/liblal-debd2aa1.so.20.5.0 +0 -0
- lalsuite.libs/liblalburst-308bbb81.so.8.0.0 +0 -0
- lalsuite.libs/liblalframe-6516e1c3.so.14.0.3 +0 -0
- lalsuite.libs/liblalinference-1721c8ba.so.23.1.7 +0 -0
- lalsuite.libs/liblalinspiral-98f96f4d.so.18.0.2 +0 -0
- lalsuite.libs/{liblalmetaio-e1c21f30.so.11.0.0 → liblalmetaio-62eed54a.so.11.0.1} +0 -0
- lalsuite.libs/liblalpulsar-044eaf70.so.30.1.1 +0 -0
- lalsuite.libs/{liblalsimulation-11365514.so.32.4.0 → liblalsimulation-c9131b72.so.37.2.0} +0 -0
- lalsuite.libs/liblalsupport-9153c561.so.14.4.0 +0 -0
- lalsuite.libs/{liblalburst-a9696b55.so.8.0.0 → libmetaio-b1be2527.so.1.1.0} +0 -0
- lalapps/bin/cbcBayesBurstPPAnalysis +0 -5
- lalapps/bin/cbcBayesBurstPostProc +0 -5
- lalapps/bin/cbcBayesCombinePTMCMCh5s +0 -5
- lalapps/bin/cbcBayesCombinePosteriors +0 -5
- lalapps/bin/cbcBayesCompPos +0 -5
- lalapps/bin/cbcBayesDIEvidence +0 -5
- lalapps/bin/cbcBayesGraceDBinfo +0 -5
- lalapps/bin/cbcBayesMCMC2pos +0 -5
- lalapps/bin/cbcBayesPPAnalysis +0 -5
- lalapps/bin/cbcBayesPlotSpinDisk +0 -5
- lalapps/bin/cbcBayesPosToSimBurst +0 -5
- lalapps/bin/cbcBayesPosToSimInspiral +0 -5
- lalapps/bin/cbcBayesPostProc +0 -5
- lalapps/bin/cbcBayesThermoInt +0 -5
- lalapps/bin/imrtgr_imr_consistency_test +0 -5
- lalapps/bin/lal_path2cache +0 -5
- lalapps/bin/lal_searchsum2cache +0 -5
- lalapps/bin/lalapps_cafe +0 -5
- lalapps/bin/lalapps_calcexpsnr +0 -0
- lalapps/bin/lalapps_cosmicstring_pipe +0 -5
- lalapps/bin/lalapps_create_solar_system_ephemeris +0 -16
- lalapps/bin/lalapps_create_solar_system_ephemeris_python +0 -16
- lalapps/bin/lalapps_power_likelihood_pipe +0 -5
- lalapps/bin/lalapps_power_pipe +0 -5
- lalapps/bin/lalapps_string_apply_vetoes +0 -5
- lalapps/bin/lalapps_string_calc_likelihood +0 -5
- lalapps/bin/lalapps_string_contour_plotter +0 -5
- lalapps/bin/lalapps_string_contour_plotter_largeloops +0 -5
- lalapps/bin/lalapps_string_cs_gamma +0 -5
- lalapps/bin/lalapps_string_cs_gamma_largeloops +0 -5
- lalapps/bin/lalapps_string_final +0 -5
- lalapps/bin/lalapps_string_meas_likelihood +0 -5
- lalapps/bin/lalapps_string_plot_binj +0 -5
- lalapps/bin/lalapps_string_plot_likelihood +0 -5
- lalapps/bin/lalburst_cluster +0 -5
- lalapps/bin/lalburst_coinc +0 -5
- lalapps/bin/lalburst_cut +0 -5
- lalapps/bin/lalburst_gen_timeslides +0 -5
- lalapps/bin/lalburst_inj_pic +0 -5
- lalapps/bin/lalburst_injfind +0 -5
- lalapps/bin/lalburst_plot_tisi +0 -5
- lalapps/bin/lalburst_power_calc_likelihood +0 -5
- lalapps/bin/lalburst_power_final +0 -5
- lalapps/bin/lalburst_power_meas_likelihood +0 -5
- lalapps/bin/lalburst_power_plot_binj +0 -5
- lalapps/bin/lalburst_power_plot_binjtf +0 -5
- lalapps/bin/lalinference_burst_pp_pipe +0 -5
- lalapps/bin/lalinference_coherence_test +0 -5
- lalapps/bin/lalinference_compute_roq_weights +0 -5
- lalapps/bin/lalinference_cpnest +0 -5
- lalapps/bin/lalinference_evolve_spins_and_append_samples +0 -5
- lalapps/bin/lalinference_kombine +0 -0
- lalapps/bin/lalinference_mcmc +0 -0
- lalapps/bin/lalinference_merge_posteriors +0 -5
- lalapps/bin/lalinference_multi_pipe +0 -5
- lalapps/bin/lalinference_nest2pos +0 -5
- lalapps/bin/lalinference_pipe +0 -5
- lalapps/bin/lalinference_pp_pipe +0 -5
- lalapps/bin/lalinference_review_test +0 -5
- lalapps/bin/lalinspiral_injfind +0 -5
- lalapps/bin/lalinspiral_thinca +0 -5
- lalapps/bin/lalpulsar_CopyPublicSFTs +0 -5
- lalapps/bin/lalpulsar_MakeSFTDAG +0 -5
- lalapps/bin/lalpulsar_combine_crosscorr_toplists +0 -5
- lalapps/bin/lalpulsar_create_solar_system_ephemeris +0 -0
- lalapps/bin/lalpulsar_create_solar_system_ephemeris_python +0 -5
- lalapps/bin/lalpulsar_knope +0 -5
- lalapps/bin/lalpulsar_knope_automation_script +0 -5
- lalapps/bin/lalpulsar_knope_collate_results +0 -5
- lalapps/bin/lalpulsar_knope_result_page +0 -5
- lalapps/bin/lalpulsar_run_crosscorr_v2 +0 -5
- lalapps/inspiral.py +0 -3394
- lalsuite-7.22.1.dev20240408.data/scripts/lal_cache +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lal_fftw_wisdom +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lal_fftwf_wisdom +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lal_simd_detect +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lal_tconvert +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lal_version +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalapps_ComputeAntennaPattern +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalapps_ComputeFstatBenchmark +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalapps_ComputeFstatLatticeCount +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalapps_ComputeFstatMCUpperLimit +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalapps_ComputeFstatistic_v2 +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalapps_ComputePSD +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalapps_CopySFTs +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalapps_DistanceVsMass +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalapps_DriveHoughMulti +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalapps_FstatMetric_v2 +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalapps_HierarchSearchGCT +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalapps_HierarchicalSearch +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalapps_MakeSFTDAG +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalapps_MakeSFTs +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalapps_Makefakedata_v4 +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalapps_Makefakedata_v5 +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalapps_PredictFstat +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalapps_PrintDetectorState +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalapps_SFTclean +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalapps_SFTvalidate +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalapps_StringAddFrame +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalapps_StringSearch +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalapps_Weave +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalapps_WeaveCompare +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalapps_WeaveConcat +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalapps_WeaveSetup +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalapps_WriteSFTsfromSFDBs +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalapps_animate +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalapps_binj +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalapps_blindinj +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalapps_cache +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalapps_calcexpsnr +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalapps_calfacs +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalapps_cbc_stochasticbank +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalapps_chirplen +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalapps_coh_PTF_inspiral +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalapps_coinj +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalapps_combine_crosscorr_toplists +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalapps_compareFstats +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalapps_compareSFTs +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalapps_create_solar_system_ephemeris +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalapps_create_solar_system_ephemeris_python +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalapps_dumpSFT +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalapps_effdist +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalapps_exc_resp +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalapps_fftw_wisdom +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalapps_fftwf_wisdom +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalapps_fits_header_getval +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalapps_fits_header_list +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalapps_fits_overview +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalapps_fits_table_list +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalapps_fr_ninja +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalapps_frextr +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalapps_frinfo +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalapps_frjoin +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalapps_frread +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalapps_frview +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalapps_gwf2xml +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalapps_heterodyne_pulsar +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalapps_inspawgfile +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalapps_inspfrinj +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalapps_inspinj +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalapps_inspiralDistance +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalapps_knope +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalapps_knope_automation_script +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalapps_knope_collate_results +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalapps_knope_result_page +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalapps_makeblindinj +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalapps_makeblindinj_himass +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalapps_ninja +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalapps_path2cache +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalapps_power +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalapps_pulsar_crosscorr_v2 +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalapps_pulsar_frequency_evolution +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalapps_random_bank +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalapps_randombank +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalapps_run_pulsar_crosscorr_v2 +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalapps_searchsum2cache +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalapps_spec_avg +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalapps_spec_avg_long +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalapps_spec_coherence +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalapps_spininj +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalapps_splitSFTs +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalapps_splitbank +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalapps_ssbtodetector +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalapps_synthesizeBstatMC +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalapps_synthesizeLVStats +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalapps_synthesizeTransientStats +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalapps_tconvert +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalapps_tmpltbank +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalapps_version +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalapps_xtefitstoframe +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalburst_version +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalfr-cat +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalfr-cksum +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalfr-cut +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalfr-dump +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalfr-fmt +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalfr-paste +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalfr-print +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalfr-split +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalfr-stat +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalfr-stream +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalfr-vis +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalframe_version +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalinference_bench +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalinference_burst +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalinference_datadump +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalinference_injectedlike +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalinference_kombine +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalinference_mcmc +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalinference_mpi_wrapper +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalinference_nest +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalinference_version +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalinspiral_version +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalmetaio_version +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalpulsar_ComputeAntennaPattern +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalpulsar_ComputeFstatBenchmark +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalpulsar_ComputeFstatLatticeCount +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalpulsar_ComputeFstatMCUpperLimit +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalpulsar_ComputeFstatistic_v2 +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalpulsar_ComputePSD +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalpulsar_DriveHoughMulti +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalpulsar_FstatMetric_v2 +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalpulsar_HierarchSearchGCT +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalpulsar_HierarchicalSearch +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalpulsar_MakeSFTs +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalpulsar_Makefakedata_v4 +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalpulsar_Makefakedata_v5 +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalpulsar_PredictFstat +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalpulsar_PrintDetectorState +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalpulsar_SFTclean +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalpulsar_SFTvalidate +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalpulsar_Weave +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalpulsar_WeaveCompare +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalpulsar_WeaveConcat +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalpulsar_WeaveSetup +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalpulsar_WriteSFTsfromSFDBs +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalpulsar_combine_crosscorr_toplists +0 -114
- lalsuite-7.22.1.dev20240408.data/scripts/lalpulsar_compareFstats +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalpulsar_compareSFTs +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalpulsar_create_solar_system_ephemeris +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalpulsar_create_solar_system_ephemeris_python +0 -314
- lalsuite-7.22.1.dev20240408.data/scripts/lalpulsar_crosscorr_v2 +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalpulsar_dumpSFT +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalpulsar_fits_header_getval +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalpulsar_fits_header_list +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalpulsar_fits_overview +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalpulsar_fits_table_list +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalpulsar_frequency_evolution +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalpulsar_heterodyne +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalpulsar_parameter_estimation_nested +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalpulsar_run_crosscorr_v2 +0 -114
- lalsuite-7.22.1.dev20240408.data/scripts/lalpulsar_spec_avg +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalpulsar_spec_avg_long +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalpulsar_spec_coherence +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalpulsar_splitSFTs +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalpulsar_ssbtodetector +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalpulsar_synthesizeBstatMC +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalpulsar_synthesizeLVStats +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalpulsar_synthesizeTransientStats +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalpulsar_version +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalsim-bh-qnmode +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalsim-bh-ringdown +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalsim-bh-sphwf +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalsim-burst +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalsim-detector-noise +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalsim-detector-strain +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalsim-inject +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalsim-inspiral +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalsim-ns-eos-table +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalsim-ns-mass-radius +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalsim-ns-params +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalsim-sgwb +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalsim-unicorn +0 -9
- lalsuite-7.22.1.dev20240408.data/scripts/lalsimulation_version +0 -9
- lalsuite-7.22.1.dev20240408.dist-info/RECORD +0 -801
- lalsuite.libs/libcfitsio-532e331a.so.9.4.1.0 +0 -0
- lalsuite.libs/libframel-aeb609a2.so.8.43.1 +0 -0
- lalsuite.libs/libgslcblas-54d609c0.so.0.0.0 +0 -0
- lalsuite.libs/libhdf5-ea33c527.so.310.1.0 +0 -0
- lalsuite.libs/libhdf5_hl-0d80d0b5.so.310.0.1 +0 -0
- lalsuite.libs/libhwloc-8ede5728.so.15.2.0 +0 -0
- lalsuite.libs/liblal-64dd038b.so.20.3.3 +0 -0
- lalsuite.libs/liblalframe-fbdbee2a.so.14.0.1 +0 -0
- lalsuite.libs/liblalinference-23be231c.so.23.1.4 +0 -0
- lalsuite.libs/liblalinspiral-c9370bff.so.18.0.0 +0 -0
- lalsuite.libs/liblalpulsar-81ec7d94.so.29.0.4 +0 -0
- lalsuite.libs/liblalsupport-58f59a0d.so.14.2.0 +0 -0
- lalsuite.libs/libmetaio-2ada2150.so.1.1.0 +0 -0
- lalsuite.libs/libmpi-917c0d24.so.12.1.11 +0 -0
- {lalsuite-7.22.1.dev20240408.dist-info → lalsuite-7.26.2.dev20251202.dist-info/licenses}/COPYING +0 -0
- {lalsuite-7.22.1.dev20240408.dist-info → lalsuite-7.26.2.dev20251202.dist-info}/top_level.txt +0 -0
{lalsuite-7.22.1.dev20240408.data → lalsuite-7.26.2.dev20251202.data}/scripts/lalpulsar_MakeSFTDAG
RENAMED
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
#!python
|
|
2
|
-
|
|
3
|
-
# Copyright (C) 2013, 2014, 2020--2022 Evan Goetz
|
|
2
|
+
# Copyright (C) 2013, 2014, 2020--2024 Evan Goetz
|
|
4
3
|
# Copyright (C) 2011, 2021, 2022 Karl Wette
|
|
5
4
|
# Copyright (C) 2005, 2007 Gregory Mendell
|
|
6
5
|
#
|
|
@@ -19,19 +18,35 @@
|
|
|
19
18
|
# Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
|
|
20
19
|
# MA 02110-1301 USA
|
|
21
20
|
|
|
21
|
+
## \file
|
|
22
|
+
## \ingroup lalpulsar_bin_SFTTools
|
|
22
23
|
"""Creates DAGs to run jobs that generates SFTs"""
|
|
23
24
|
|
|
24
25
|
import math
|
|
25
26
|
import argparse
|
|
26
27
|
import os
|
|
27
28
|
import re
|
|
29
|
+
from pathlib import Path
|
|
30
|
+
from urllib.parse import urlparse
|
|
28
31
|
|
|
29
|
-
from
|
|
32
|
+
from gwdatafind import find_urls
|
|
33
|
+
from gwdatafind.utils import filename_metadata, file_segment
|
|
34
|
+
|
|
35
|
+
from igwn_segments import segment, segmentlist
|
|
36
|
+
|
|
37
|
+
from lalpulsar import (
|
|
38
|
+
git_version,
|
|
39
|
+
SFTFilenameSpec,
|
|
40
|
+
FillSFTFilenameSpecStrings,
|
|
41
|
+
BuildSFTFilenameFromSpec,
|
|
42
|
+
)
|
|
30
43
|
|
|
31
44
|
__author__ = "Evan Goetz <evan.goetz@ligo.org>, Greg Mendell"
|
|
32
45
|
__version__ = git_version.id
|
|
33
46
|
__date__ = git_version.date
|
|
34
47
|
|
|
48
|
+
cache_re = re.compile(r"^([A-Z])(\s+)(\w+)(\s+)(\d+)(\s+)(\d+)(\s+)(.+gwf)")
|
|
49
|
+
|
|
35
50
|
|
|
36
51
|
# REVISIONS:
|
|
37
52
|
# 12/02/05 gam; generate datafind.sub and MakeSFTs.sub as well as dag file in
|
|
@@ -69,23 +84,139 @@ __date__ = git_version.date
|
|
|
69
84
|
# 11/2022 kww; -R command line option now used for --observing-revision
|
|
70
85
|
# instead of --output-jobs-per-node, which now uses -r
|
|
71
86
|
# 11/2022 kww; --datafind-path and --makesfts-path accept executable names
|
|
87
|
+
# 03/2023 eag; Allow user to pass a frame cache file --cache-file
|
|
88
|
+
# 04/2023 kww; Improve documentation of --window-type argument
|
|
89
|
+
# 05/2023 eag; Add the --gaps flag to gw_data_find
|
|
90
|
+
# 08/2023 eag; Allow for multiple channel names to be provided
|
|
91
|
+
# 09/2023 eag; Modify use of environment variables
|
|
92
|
+
# 01/2024 eag; Allow skipping of channels if not in frames or too low data
|
|
93
|
+
# rate
|
|
94
|
+
# 10/2024 eag; Modify workflow for version 3 SFTs and HTCondor file transfer
|
|
95
|
+
# workflow
|
|
96
|
+
# 12/2024 eag; Modify workflow to use lalpulsar_MoveSFTs script instead of
|
|
97
|
+
# remapping files
|
|
98
|
+
# 03/2025 eag; Rewrite to generate cache files running lalpulsar_MakeSFTDAG
|
|
99
|
+
# enabling frame files on /home or OSDF
|
|
100
|
+
|
|
101
|
+
|
|
102
|
+
def sft_name_from_vars(
|
|
103
|
+
obs,
|
|
104
|
+
gpsstart,
|
|
105
|
+
Tsft,
|
|
106
|
+
channel=None,
|
|
107
|
+
kind=None,
|
|
108
|
+
rev=None,
|
|
109
|
+
window="unknown",
|
|
110
|
+
par=None,
|
|
111
|
+
miscstr=None,
|
|
112
|
+
):
|
|
113
|
+
"""Create SFT file name from specification"""
|
|
114
|
+
|
|
115
|
+
spec = SFTFilenameSpec()
|
|
116
|
+
|
|
117
|
+
FillSFTFilenameSpecStrings(
|
|
118
|
+
spec=spec,
|
|
119
|
+
path=None,
|
|
120
|
+
extn=None,
|
|
121
|
+
detector=channel[:2],
|
|
122
|
+
window_type=window,
|
|
123
|
+
privMisc=miscstr,
|
|
124
|
+
pubObsKind=kind,
|
|
125
|
+
pubChannel=channel,
|
|
126
|
+
)
|
|
127
|
+
spec.pubObsRun = obs or 0
|
|
128
|
+
spec.pubRevision = rev or 0
|
|
129
|
+
spec.window_param = par or 0
|
|
130
|
+
spec.numSFTs = 1 # MakeSFTDAG will only ever generate 1 SFT per file
|
|
131
|
+
spec.SFTtimebase = Tsft
|
|
132
|
+
spec.gpsStart = gpsstart
|
|
133
|
+
spec.SFTspan = Tsft # MakeSFTDAG will only ever generate 1 SFT per file
|
|
72
134
|
|
|
135
|
+
return BuildSFTFilenameFromSpec(spec)
|
|
136
|
+
|
|
137
|
+
|
|
138
|
+
def get_urls(args):
|
|
139
|
+
"""Get frame file URL list from gwdatafind or cache file"""
|
|
140
|
+
|
|
141
|
+
if not args.cache_file:
|
|
142
|
+
urls = find_urls(
|
|
143
|
+
site,
|
|
144
|
+
args.input_data_type,
|
|
145
|
+
segList[0][0],
|
|
146
|
+
segList[-1][-1],
|
|
147
|
+
match=args.datafind_match,
|
|
148
|
+
urltype=args.datafind_urltype,
|
|
149
|
+
)
|
|
150
|
+
else:
|
|
151
|
+
urls = []
|
|
152
|
+
with open(args.cache_file, "r") as f:
|
|
153
|
+
for line in f:
|
|
154
|
+
m = cache_re.match(line)
|
|
155
|
+
if m:
|
|
156
|
+
framefile = m.group(9)
|
|
157
|
+
urls.append(framefile)
|
|
158
|
+
|
|
159
|
+
# sort the urls by gps time since find_urls() may not return a sorted list
|
|
160
|
+
sorted_urls = sorted(urls, key=lambda x: file_segment(x)[0])
|
|
161
|
+
|
|
162
|
+
return sorted_urls
|
|
163
|
+
|
|
164
|
+
|
|
165
|
+
def make_cache(
|
|
166
|
+
urls,
|
|
167
|
+
job_seg,
|
|
168
|
+
):
|
|
169
|
+
"""Make a frame list and cache list from a list of URLs"""
|
|
170
|
+
|
|
171
|
+
cache = [] # list of lines for the cache file
|
|
172
|
+
frames = [] # list of frame filenames used in the job
|
|
173
|
+
for idx, url in enumerate(urls):
|
|
174
|
+
obs, desc, dataseg = filename_metadata(url)
|
|
175
|
+
dataseg = segment(dataseg)
|
|
176
|
+
if dataseg.disjoint(job_seg) < 0:
|
|
177
|
+
continue
|
|
178
|
+
if dataseg.disjoint(job_seg) > 0:
|
|
179
|
+
break
|
|
180
|
+
if dataseg.intersects(job_seg):
|
|
181
|
+
framefileurl = urlparse(url)
|
|
182
|
+
framefilepath = Path(framefileurl.path)
|
|
183
|
+
|
|
184
|
+
# list in cache file if files not visible on execute node
|
|
185
|
+
# otherwise use file url
|
|
186
|
+
if "/home" in str(framefilepath.parent) or "osdf" in framefileurl.scheme:
|
|
187
|
+
newcache = (
|
|
188
|
+
f"{obs}\t{desc}\t{dataseg[0]}\t{abs(dataseg)}\t{framefilepath.name}"
|
|
189
|
+
)
|
|
190
|
+
else:
|
|
191
|
+
newcache = f"{obs}\t{desc}\t{dataseg[0]}\t{abs(dataseg)}\t{url}"
|
|
192
|
+
cache.append(newcache)
|
|
193
|
+
|
|
194
|
+
if "/home" in str(framefilepath.parent):
|
|
195
|
+
frames.append(framefilepath)
|
|
196
|
+
else:
|
|
197
|
+
frames.append(url)
|
|
198
|
+
|
|
199
|
+
return frames, cache
|
|
200
|
+
|
|
201
|
+
|
|
202
|
+
def writeToDag(dagFID, nodeCount, startTimeThisNode, endTimeThisNode, urls, args):
|
|
203
|
+
"""Write one job to DAG file"""
|
|
73
204
|
|
|
74
|
-
#
|
|
75
|
-
# FUNCTION THAT WRITE ONE JOB TO DAG FILE
|
|
76
|
-
#
|
|
77
|
-
def writeToDag(dagFID, nodeCount, startTimeThisNode, endTimeThisNode, site, args):
|
|
78
|
-
datafind = f"datafind_{nodeCount}"
|
|
79
205
|
MakeSFTs = f"MakeSFTs_{nodeCount}"
|
|
80
|
-
startTimeDatafind = startTimeThisNode - args.extra_datafind_time
|
|
81
|
-
endTimeDatafind = endTimeThisNode + args.extra_datafind_time
|
|
82
206
|
tagStringOut = f"{args.tag_string}_{nodeCount}"
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
207
|
+
|
|
208
|
+
job_segment = segment(
|
|
209
|
+
startTimeThisNode - args.extra_datafind_time,
|
|
210
|
+
endTimeThisNode + args.extra_datafind_time,
|
|
211
|
+
)
|
|
212
|
+
|
|
213
|
+
frames, cache = make_cache(urls, job_segment)
|
|
214
|
+
|
|
215
|
+
obs, desc, dataseg = filename_metadata(urls[0])
|
|
216
|
+
cacheFile = args.cache_path / f"{obs}-{job_segment[0]}-{job_segment[1]}.cache"
|
|
217
|
+
with open(cacheFile, "w") as f:
|
|
218
|
+
for l in cache:
|
|
219
|
+
f.write(f"{l}\n")
|
|
89
220
|
|
|
90
221
|
argList = []
|
|
91
222
|
argList.append(f"-O {args.observing_run}")
|
|
@@ -96,8 +227,14 @@ def writeToDag(dagFID, nodeCount, startTimeThisNode, endTimeThisNode, site, args
|
|
|
96
227
|
argList.append(f"-X {args.misc_desc}")
|
|
97
228
|
argList.append(f"-f {args.filter_knee_freq}")
|
|
98
229
|
argList.append(f"-t {args.time_baseline}")
|
|
99
|
-
|
|
100
|
-
|
|
230
|
+
# To work with the condor file transfer protocol, we save everything to the
|
|
231
|
+
# scratch directory because the files will have unique names. Since
|
|
232
|
+
# lalpulsar_MakeSFTs wants to have a path to save the file to, we provide .
|
|
233
|
+
argList.append(f"-p {','.join(['.' for p in args.output_sft_path])}")
|
|
234
|
+
# To work with the condor file transfer protocol, the cache file is saved
|
|
235
|
+
# to the scratch directory on transfer so we just need the name, not the
|
|
236
|
+
# full path
|
|
237
|
+
argList.append(f"-C {cacheFile.name}")
|
|
101
238
|
argList.append(f"-s {startTimeThisNode}")
|
|
102
239
|
argList.append(f"-e {endTimeThisNode}")
|
|
103
240
|
argList.append(f"-N {','.join(args.channel_name)}")
|
|
@@ -105,36 +242,59 @@ def writeToDag(dagFID, nodeCount, startTimeThisNode, endTimeThisNode, site, args
|
|
|
105
242
|
argList.append(f"-B {args.band}")
|
|
106
243
|
if args.comment_field:
|
|
107
244
|
argList.append(f"-c {args.comment_field}")
|
|
108
|
-
if args.window_type:
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
245
|
+
if ":" in args.window_type:
|
|
246
|
+
window_type, window_param = args.window_type.split(":")
|
|
247
|
+
window_param = float(window_param)
|
|
248
|
+
argList.append(f"-w {window_type} -r {window_param}")
|
|
249
|
+
else:
|
|
250
|
+
window_type = args.window_type
|
|
251
|
+
window_param = None
|
|
252
|
+
argList.append(f"-w {window_type}")
|
|
114
253
|
if args.overlap_fraction:
|
|
115
254
|
argList.append(f"-P {args.overlap_fraction}")
|
|
116
255
|
if args.allow_skipping:
|
|
117
256
|
argList.append("--allow-skipping TRUE")
|
|
118
257
|
argStr = " ".join(argList)
|
|
119
258
|
|
|
120
|
-
#
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
259
|
+
# The files are going to go to specific directories, so we need to map
|
|
260
|
+
# the files to their output directories
|
|
261
|
+
outputfiles = []
|
|
262
|
+
remap = []
|
|
263
|
+
sft_start = startTimeThisNode
|
|
264
|
+
sft_end = sft_start + args.time_baseline
|
|
265
|
+
# loop over start times
|
|
266
|
+
while sft_end <= endTimeThisNode:
|
|
267
|
+
# loop over channels
|
|
268
|
+
for idx, c in enumerate(args.channel_name):
|
|
269
|
+
filename = sft_name_from_vars(
|
|
270
|
+
args.observing_run,
|
|
271
|
+
sft_start,
|
|
272
|
+
args.time_baseline,
|
|
273
|
+
c,
|
|
274
|
+
kind=args.observing_kind,
|
|
275
|
+
rev=args.observing_revision,
|
|
276
|
+
window=window_type,
|
|
277
|
+
par=window_param,
|
|
278
|
+
miscstr=args.misc_desc,
|
|
279
|
+
)
|
|
280
|
+
outputfiles.append(filename)
|
|
281
|
+
remap.append(f"{filename}={args.output_sft_path[idx]/filename}")
|
|
282
|
+
|
|
283
|
+
# update start and end times
|
|
284
|
+
if args.overlap_fraction:
|
|
285
|
+
sft_start += int(round((1 - args.overlap_fraction) * args.time_baseline))
|
|
286
|
+
else:
|
|
287
|
+
sft_start += args.time_baseline
|
|
288
|
+
sft_end = sft_start + args.time_baseline
|
|
129
289
|
|
|
130
290
|
# MakeSFT job
|
|
131
|
-
dagFID.write(
|
|
132
|
-
f"JOB {MakeSFTs} {os.path.join(os.path.dirname(dagFID.name), 'MakeSFTs.sub')}\n"
|
|
133
|
-
)
|
|
291
|
+
dagFID.write(f"JOB {MakeSFTs} {Path(dagFID.name).parent / 'MakeSFTs.sub'}\n")
|
|
134
292
|
dagFID.write(f"RETRY {MakeSFTs} 1\n")
|
|
135
|
-
dagFID.write(f'VARS {MakeSFTs} argList="{argStr}"
|
|
136
|
-
if
|
|
137
|
-
|
|
293
|
+
dagFID.write(f'VARS {MakeSFTs} argList="{argStr}" cachefile="{cacheFile}" ')
|
|
294
|
+
if args.transfer_frame_files:
|
|
295
|
+
framefiles = ",".join([str(fr) for fr in frames])
|
|
296
|
+
dagFID.write(f'framefiles="{framefiles}" ')
|
|
297
|
+
dagFID.write(f'tagstring="{tagStringOut}"\n')
|
|
138
298
|
|
|
139
299
|
|
|
140
300
|
#
|
|
@@ -142,76 +302,157 @@ def writeToDag(dagFID, nodeCount, startTimeThisNode, endTimeThisNode, site, args
|
|
|
142
302
|
#
|
|
143
303
|
|
|
144
304
|
parser = argparse.ArgumentParser(
|
|
145
|
-
description="This script creates
|
|
305
|
+
description="This script creates MakeSFTs.sub, MoveSFTs.sub, and a dag \
|
|
146
306
|
file that generates SFTs based on the options given.",
|
|
147
307
|
fromfile_prefix_chars="@",
|
|
148
308
|
)
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
"
|
|
152
|
-
required=True,
|
|
153
|
-
type=int,
|
|
154
|
-
help="For public SFTs, observing run data the SFTs are generated from, or \
|
|
155
|
-
(in the case of mock data challenge data) the observing \
|
|
156
|
-
run on which the data is most closely based",
|
|
309
|
+
|
|
310
|
+
dag_group = parser.add_argument_group(
|
|
311
|
+
"DAG organization", "Options for workflow control"
|
|
157
312
|
)
|
|
158
|
-
parser.
|
|
159
|
-
"
|
|
160
|
-
"--observing-kind",
|
|
161
|
-
type=str,
|
|
162
|
-
choices=["RUN", "AUX", "SIM", "DEV"],
|
|
163
|
-
help='For public SFTs, one of: "RUN" for production SFTs of h(t) channels; \
|
|
164
|
-
"AUX" for SFTs of non-h(t) channels; \
|
|
165
|
-
"SIM" for mock data challenge or other simulated data; or \
|
|
166
|
-
"DEV" for development/testing purposes',
|
|
313
|
+
datafind_group = parser.add_argument_group(
|
|
314
|
+
"Datafind", "Options for locating frame files"
|
|
167
315
|
)
|
|
168
|
-
parser.
|
|
169
|
-
"
|
|
170
|
-
"--observing-revision",
|
|
171
|
-
type=int,
|
|
172
|
-
help="For public SFTs: revision number starts at 1, and should be incremented once \
|
|
173
|
-
SFTs have been widely distributed across clusters, advertised \
|
|
174
|
-
as being ready for use, etc. For example, if mistakes are found \
|
|
175
|
-
in the initial SFT production run after they have been published, \
|
|
176
|
-
regenerated SFTs should have a revision number of at least 2",
|
|
316
|
+
makesfts_group = parser.add_argument_group(
|
|
317
|
+
"SFT creation", "Options for SFT creation and output"
|
|
177
318
|
)
|
|
178
|
-
parser.
|
|
179
|
-
|
|
180
|
-
|
|
319
|
+
deprecated_group = parser.add_argument_group("DEPRECATED")
|
|
320
|
+
|
|
321
|
+
dag_group.add_argument(
|
|
322
|
+
"-f",
|
|
323
|
+
"--dag-file",
|
|
324
|
+
required=True,
|
|
325
|
+
type=Path,
|
|
326
|
+
help="filename for .dag file (should end in .dag)",
|
|
327
|
+
)
|
|
328
|
+
dag_group.add_argument(
|
|
329
|
+
"-G",
|
|
330
|
+
"--tag-string",
|
|
331
|
+
required=True,
|
|
181
332
|
type=str,
|
|
182
|
-
help="
|
|
183
|
-
|
|
333
|
+
help="tag string used in names of various files unique to \
|
|
334
|
+
jobs that will run under the DAG",
|
|
184
335
|
)
|
|
185
|
-
|
|
336
|
+
dag_group.add_argument(
|
|
186
337
|
"-a",
|
|
187
338
|
"--analysis-start-time",
|
|
188
339
|
type=int,
|
|
189
340
|
help="GPS start time of data from which to generate \
|
|
190
341
|
SFTs (optional and unused if a segment file is given)",
|
|
191
342
|
)
|
|
192
|
-
|
|
343
|
+
dag_group.add_argument(
|
|
193
344
|
"-b",
|
|
194
345
|
"--analysis-end-time",
|
|
195
346
|
type=int,
|
|
196
347
|
help="GPS end time of data from which to generate SFTs \
|
|
197
348
|
(optional and unused if a segment file is given)",
|
|
198
349
|
)
|
|
199
|
-
|
|
200
|
-
"-
|
|
201
|
-
"--
|
|
350
|
+
dag_group.add_argument(
|
|
351
|
+
"-L",
|
|
352
|
+
"--max-length-all-jobs",
|
|
353
|
+
type=int,
|
|
354
|
+
help="maximum total amount of data to process, in seconds \
|
|
355
|
+
(optional and unused if a segment file is given)",
|
|
356
|
+
)
|
|
357
|
+
dag_group.add_argument(
|
|
358
|
+
"-g",
|
|
359
|
+
"--segment-file",
|
|
360
|
+
type=Path,
|
|
361
|
+
help="alternative file with segments to use, rather than \
|
|
362
|
+
the input times",
|
|
363
|
+
)
|
|
364
|
+
dag_group.add_argument(
|
|
365
|
+
"-l",
|
|
366
|
+
"--min-seg-length",
|
|
367
|
+
type=int,
|
|
368
|
+
default=0,
|
|
369
|
+
help="minimum length segments to process in seconds (used \
|
|
370
|
+
only if a segment file is given)",
|
|
371
|
+
)
|
|
372
|
+
dag_group.add_argument(
|
|
373
|
+
"-y",
|
|
374
|
+
"--synchronize-start",
|
|
375
|
+
action="store_true",
|
|
376
|
+
help="synchronize the start times of the SFTs so that the \
|
|
377
|
+
start times are synchronized when there are gaps in the \
|
|
378
|
+
data",
|
|
379
|
+
)
|
|
380
|
+
dag_group.add_argument(
|
|
381
|
+
"-o",
|
|
382
|
+
"--log-path",
|
|
383
|
+
type=Path,
|
|
384
|
+
default="logs",
|
|
385
|
+
help="path to log, output, and error files (default \
|
|
386
|
+
is $PWD/logs; this directory is created if it does not \
|
|
387
|
+
exist and usually should be under a local file system)",
|
|
388
|
+
)
|
|
389
|
+
dag_group.add_argument(
|
|
390
|
+
"-m",
|
|
391
|
+
"--max-num-per-node",
|
|
392
|
+
type=int,
|
|
393
|
+
default=1,
|
|
394
|
+
help="maximum number of SFTs to generate on one node",
|
|
395
|
+
)
|
|
396
|
+
dag_group.add_argument(
|
|
397
|
+
"-J",
|
|
398
|
+
"--makesfts-path",
|
|
399
|
+
type=Path,
|
|
400
|
+
help="string specifying the lalpulsar_MakeSFTs executable, \
|
|
401
|
+
or a path to it; if not set, will use \
|
|
402
|
+
MAKESFTS_PATH env variable or system default (in that \
|
|
403
|
+
order)",
|
|
404
|
+
)
|
|
405
|
+
dag_group.add_argument(
|
|
406
|
+
"--movesfts-path",
|
|
407
|
+
type=Path,
|
|
408
|
+
help="string specifying the lalpulsar_MoveSFTs executable, \
|
|
409
|
+
or a path to it; if not set, will use \
|
|
410
|
+
MOVESFTS_PATH env variable or system default (in that \
|
|
411
|
+
order)",
|
|
412
|
+
)
|
|
413
|
+
dag_group.add_argument(
|
|
414
|
+
"-Y",
|
|
415
|
+
"--request-memory",
|
|
416
|
+
type=int,
|
|
417
|
+
default=4096,
|
|
418
|
+
help="memory allocation in MB to request from condor for \
|
|
419
|
+
lalpulsar_MakeSFTs step",
|
|
420
|
+
)
|
|
421
|
+
dag_group.add_argument(
|
|
422
|
+
"-s",
|
|
423
|
+
"--request-disk",
|
|
424
|
+
type=int,
|
|
425
|
+
default=4096,
|
|
426
|
+
help="disk space allocation in MB to request from condor \
|
|
427
|
+
for lalpulsar_MakeSFTs step",
|
|
428
|
+
)
|
|
429
|
+
dag_group.add_argument(
|
|
430
|
+
"-A",
|
|
431
|
+
"--accounting-group",
|
|
202
432
|
required=True,
|
|
203
433
|
type=str,
|
|
204
|
-
help="
|
|
434
|
+
help="Condor tag for the production of SFTs",
|
|
205
435
|
)
|
|
206
|
-
|
|
207
|
-
"-
|
|
208
|
-
"--
|
|
436
|
+
dag_group.add_argument(
|
|
437
|
+
"-U",
|
|
438
|
+
"--accounting-group-user",
|
|
209
439
|
required=True,
|
|
210
440
|
type=str,
|
|
211
|
-
help="
|
|
212
|
-
|
|
441
|
+
help="albert.einstein username (do not add @LIGO.ORG)",
|
|
442
|
+
)
|
|
443
|
+
dag_group.add_argument(
|
|
444
|
+
"-t",
|
|
445
|
+
"--transfer-frame-files",
|
|
446
|
+
action="store_true",
|
|
447
|
+
help="Transfer frame files via HTCondor file transfer system. \
|
|
448
|
+
This should be specified if frames are not visible to the \
|
|
449
|
+
compute node file system. Ex. this should be specified if \
|
|
450
|
+
frames are on /home or running on the open science grid. \
|
|
451
|
+
Usually frame files are visible on CIT, LHO, LLO clusters \
|
|
452
|
+
so that this does not need to be specified in that case.",
|
|
213
453
|
)
|
|
214
|
-
|
|
454
|
+
|
|
455
|
+
datafind_group.add_argument(
|
|
215
456
|
"-d",
|
|
216
457
|
"--input-data-type",
|
|
217
458
|
required=True,
|
|
@@ -219,7 +460,7 @@ parser.add_argument(
|
|
|
219
460
|
help="input data type for use with the gw_data_find --type \
|
|
220
461
|
option",
|
|
221
462
|
)
|
|
222
|
-
|
|
463
|
+
datafind_group.add_argument(
|
|
223
464
|
"-x",
|
|
224
465
|
"--extra-datafind-time",
|
|
225
466
|
type=int,
|
|
@@ -227,95 +468,136 @@ parser.add_argument(
|
|
|
227
468
|
help="extra time to subtract/add from/to start/end time \
|
|
228
469
|
arguments of gw_data_find",
|
|
229
470
|
)
|
|
230
|
-
|
|
471
|
+
datafind_group.add_argument(
|
|
231
472
|
"-M",
|
|
232
473
|
"--datafind-match",
|
|
233
474
|
type=str,
|
|
234
475
|
help="string to use with the gw_data_find --match option",
|
|
235
476
|
)
|
|
236
|
-
|
|
237
|
-
"-
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
477
|
+
datafind_group.add_argument(
|
|
478
|
+
"--datafind-urltype",
|
|
479
|
+
type=str,
|
|
480
|
+
default="file",
|
|
481
|
+
choices=["file", "osdf"],
|
|
482
|
+
help="String for the gw_data_find --urltype option. \
|
|
483
|
+
Use 'file' if creating SFTs on a local LDG cluster. \
|
|
484
|
+
Use 'osdf' if creating SFTs on the open science grid",
|
|
485
|
+
)
|
|
486
|
+
datafind_group.add_argument(
|
|
487
|
+
"-e",
|
|
488
|
+
"--cache-file",
|
|
489
|
+
type=Path,
|
|
490
|
+
help="path and filename to frame cache file to use instead \
|
|
491
|
+
of gw_data_find",
|
|
243
492
|
)
|
|
244
|
-
|
|
493
|
+
|
|
494
|
+
makesfts_group.add_argument(
|
|
495
|
+
"-O",
|
|
496
|
+
"--observing-run",
|
|
497
|
+
required=True,
|
|
498
|
+
type=int,
|
|
499
|
+
help="For public SFTs, observing run data the SFTs are generated from, or \
|
|
500
|
+
(in the case of mock data challenge data) the observing \
|
|
501
|
+
run on which the data is most closely based",
|
|
502
|
+
)
|
|
503
|
+
makesfts_group.add_argument(
|
|
504
|
+
"-K",
|
|
505
|
+
"--observing-kind",
|
|
506
|
+
type=str,
|
|
507
|
+
choices=["RUN", "AUX", "SIM", "DEV"],
|
|
508
|
+
help='For public SFTs, one of: "RUN" for production SFTs of h(t) channels; \
|
|
509
|
+
"AUX" for SFTs of non-h(t) channels; \
|
|
510
|
+
"SIM" for mock data challenge or other simulated data; or \
|
|
511
|
+
"DEV" for development/testing purposes',
|
|
512
|
+
)
|
|
513
|
+
makesfts_group.add_argument(
|
|
514
|
+
"-R",
|
|
515
|
+
"--observing-revision",
|
|
516
|
+
type=int,
|
|
517
|
+
help="For public SFTs: revision number starts at 1, and should be incremented once \
|
|
518
|
+
SFTs have been widely distributed across clusters, advertised \
|
|
519
|
+
as being ready for use, etc. For example, if mistakes are found \
|
|
520
|
+
in the initial SFT production run after they have been published, \
|
|
521
|
+
regenerated SFTs should have a revision number of at least 2",
|
|
522
|
+
)
|
|
523
|
+
makesfts_group.add_argument(
|
|
524
|
+
"-X",
|
|
525
|
+
"--misc-desc",
|
|
526
|
+
type=str,
|
|
527
|
+
help="For private SFTs, miscellaneous part of the SFT \
|
|
528
|
+
description field in the filename",
|
|
529
|
+
)
|
|
530
|
+
makesfts_group.add_argument(
|
|
245
531
|
"-k",
|
|
246
532
|
"--filter-knee-freq",
|
|
247
533
|
required=True,
|
|
248
|
-
type=
|
|
534
|
+
type=float,
|
|
249
535
|
help="high pass filter knee frequency used on time domain \
|
|
250
536
|
data before generating SFTs",
|
|
251
537
|
)
|
|
252
|
-
|
|
538
|
+
makesfts_group.add_argument(
|
|
253
539
|
"-T",
|
|
254
540
|
"--time-baseline",
|
|
255
541
|
required=True,
|
|
256
542
|
type=int,
|
|
257
543
|
help="time baseline of SFTs (e.g., 60 or 1800 seconds)",
|
|
258
544
|
)
|
|
259
|
-
|
|
260
|
-
"-p",
|
|
545
|
+
makesfts_group.add_argument(
|
|
546
|
+
"-p",
|
|
547
|
+
"--output-sft-path",
|
|
548
|
+
nargs="+",
|
|
549
|
+
type=Path,
|
|
550
|
+
help="Path where to save the SFT files. Can specify multiple options, \
|
|
551
|
+
If specifying multiple options then it is required to specify the \
|
|
552
|
+
same number of output-sft-path options as the number of channels. \
|
|
553
|
+
The first listed channel will have the SFTs go into the first \
|
|
554
|
+
listed output-sft-path. Otherwise specify only one output path. \
|
|
555
|
+
If one path is specified and more than 1 channels are specified \
|
|
556
|
+
then --observing-run must be >= 1 and --observing-kind and \
|
|
557
|
+
--observing-revision must be set",
|
|
261
558
|
)
|
|
262
|
-
|
|
559
|
+
makesfts_group.add_argument(
|
|
263
560
|
"-C",
|
|
264
561
|
"--cache-path",
|
|
265
|
-
type=
|
|
562
|
+
type=Path,
|
|
266
563
|
default="cache",
|
|
267
564
|
help="path to cache files that will be produced by \
|
|
268
565
|
gw_data_find (default is $PWD/cache; this directory is \
|
|
269
566
|
created if it does not exist and must agree with that \
|
|
270
567
|
given in .sub files)",
|
|
271
568
|
)
|
|
272
|
-
|
|
273
|
-
"-e",
|
|
274
|
-
"--cache-file",
|
|
275
|
-
type=str,
|
|
276
|
-
help="path and filename to frame cache file to use instead \
|
|
277
|
-
of gw_data_find",
|
|
278
|
-
)
|
|
279
|
-
parser.add_argument(
|
|
280
|
-
"-o",
|
|
281
|
-
"--log-path",
|
|
282
|
-
type=str,
|
|
283
|
-
default="logs",
|
|
284
|
-
help="path to log, output, and error files (default \
|
|
285
|
-
is $PWD/logs; this directory is created if it does not \
|
|
286
|
-
exist and usually should be under a local file system)",
|
|
287
|
-
)
|
|
288
|
-
parser.add_argument(
|
|
569
|
+
makesfts_group.add_argument(
|
|
289
570
|
"-N",
|
|
290
571
|
"--channel-name",
|
|
291
572
|
nargs="+",
|
|
292
573
|
type=str,
|
|
293
|
-
help="
|
|
294
|
-
|
|
574
|
+
help="Name of input time-domain channel to read from frames. \
|
|
575
|
+
Can specify multiple options. The number of channels must be \
|
|
576
|
+
equal to the number of output-sft-path options given. The \
|
|
577
|
+
first listed channel will have the SFTs go to the first listed \
|
|
578
|
+
output-sft-path. Can only specify one channel when generating \
|
|
579
|
+
private SFTs (--observing-run=0)",
|
|
295
580
|
)
|
|
296
|
-
|
|
297
|
-
"--
|
|
298
|
-
action="store_true",
|
|
299
|
-
help="allow channels to be skipped if not in frames or too low sampling \
|
|
300
|
-
frequency",
|
|
581
|
+
makesfts_group.add_argument(
|
|
582
|
+
"-c", "--comment-field", type=str, help="comment for SFT header"
|
|
301
583
|
)
|
|
302
|
-
|
|
303
|
-
parser.add_argument(
|
|
584
|
+
makesfts_group.add_argument(
|
|
304
585
|
"-F", "--start-freq", type=int, default=10, help="start frequency of the SFTs"
|
|
305
586
|
)
|
|
306
|
-
|
|
587
|
+
makesfts_group.add_argument(
|
|
307
588
|
"-B", "--band", type=int, default=1990, help="frequency band of the SFTs"
|
|
308
589
|
)
|
|
309
|
-
|
|
590
|
+
makesfts_group.add_argument(
|
|
310
591
|
"-w",
|
|
311
592
|
"--window-type",
|
|
312
593
|
type=str,
|
|
594
|
+
default="tukey:0.001",
|
|
313
595
|
help='type of windowing of time-domain to do \
|
|
314
596
|
before generating SFTs, e.g. "rectangular", \
|
|
315
597
|
"hann", "tukey:<beta in [0,1], required>"; \
|
|
316
|
-
|
|
598
|
+
(default is "tukey:0.001", standard choice for LVK production SFTs)',
|
|
317
599
|
)
|
|
318
|
-
|
|
600
|
+
makesfts_group.add_argument(
|
|
319
601
|
"-P",
|
|
320
602
|
"--overlap-fraction",
|
|
321
603
|
type=float,
|
|
@@ -323,112 +605,19 @@ parser.add_argument(
|
|
|
323
605
|
help="overlap fraction (for use with windows; e.g., use \
|
|
324
606
|
--overlap-fraction 0.5 with --window-type hann windows)",
|
|
325
607
|
)
|
|
326
|
-
|
|
327
|
-
"-
|
|
328
|
-
"
|
|
329
|
-
|
|
330
|
-
|
|
331
|
-
help="maximum number of SFTs to generate on one node",
|
|
332
|
-
)
|
|
333
|
-
parser.add_argument(
|
|
334
|
-
"-L",
|
|
335
|
-
"--max-length-all-jobs",
|
|
336
|
-
type=int,
|
|
337
|
-
help="maximum total amount of data to process, in seconds \
|
|
338
|
-
(optional and unused if a segment file is given)",
|
|
339
|
-
)
|
|
340
|
-
parser.add_argument(
|
|
341
|
-
"-g",
|
|
342
|
-
"--segment-file",
|
|
343
|
-
type=str,
|
|
344
|
-
help="alternative file with segments to use, rather than \
|
|
345
|
-
the input times",
|
|
346
|
-
)
|
|
347
|
-
parser.add_argument(
|
|
348
|
-
"-l",
|
|
349
|
-
"--min-seg-length",
|
|
350
|
-
type=int,
|
|
351
|
-
default=0,
|
|
352
|
-
help="minimum length segments to process in seconds (used \
|
|
353
|
-
only if a segment file is given)",
|
|
354
|
-
)
|
|
355
|
-
parser.add_argument(
|
|
356
|
-
"-q",
|
|
357
|
-
"--list-of-nodes",
|
|
358
|
-
type=str,
|
|
359
|
-
help="file with list of nodes on which to output SFTs",
|
|
360
|
-
)
|
|
361
|
-
parser.add_argument(
|
|
362
|
-
"-Q",
|
|
363
|
-
"--node-path",
|
|
364
|
-
type=str,
|
|
365
|
-
help="path to nodes to output SFTs; the node name is \
|
|
366
|
-
appended to this path, followed by path given by the -p \
|
|
367
|
-
option; for example, if -q point to file with the list \
|
|
368
|
-
node1 node2 ... and the -Q /data/ -p /frames/S5/sfts/LHO \
|
|
369
|
-
options are given, the first output file will go into \
|
|
370
|
-
/data/node1/frames/S5/sfts/LHO; the next node in the list \
|
|
371
|
-
is used in constructing the path when the number of jobs \
|
|
372
|
-
given by the -r option reached, and so on",
|
|
373
|
-
)
|
|
374
|
-
parser.add_argument(
|
|
375
|
-
"-r",
|
|
376
|
-
"--output-jobs-per-node",
|
|
377
|
-
type=int,
|
|
378
|
-
default=0,
|
|
379
|
-
help="number of jobs to output per node in the list of \
|
|
380
|
-
nodes given with the -q option",
|
|
381
|
-
)
|
|
382
|
-
parser.add_argument(
|
|
383
|
-
"-j",
|
|
384
|
-
"--datafind-path",
|
|
385
|
-
type=str,
|
|
386
|
-
help="string specifying the gw_data_find executable, \
|
|
387
|
-
or a path to it; if not set, will use \
|
|
388
|
-
LSC_DATAFIND_PATH env variable or system default (in \
|
|
389
|
-
that order)",
|
|
390
|
-
)
|
|
391
|
-
parser.add_argument(
|
|
392
|
-
"-J",
|
|
393
|
-
"--makesfts-path",
|
|
394
|
-
type=str,
|
|
395
|
-
help="string specifying the lalpulsar_MakeSFTs executable, \
|
|
396
|
-
or a path to it; if not set, will use \
|
|
397
|
-
MAKESFTS_PATH env variable or system default (in that \
|
|
398
|
-
order)",
|
|
399
|
-
)
|
|
400
|
-
parser.add_argument(
|
|
401
|
-
"-Y",
|
|
402
|
-
"--request-memory",
|
|
403
|
-
type=int,
|
|
404
|
-
default=2048,
|
|
405
|
-
help="memory allocation in MB to request from condor for \
|
|
406
|
-
lalpulsar_MakeSFTs step",
|
|
407
|
-
)
|
|
408
|
-
parser.add_argument(
|
|
409
|
-
"-s",
|
|
410
|
-
"--request-disk",
|
|
411
|
-
type=int,
|
|
412
|
-
default=1024,
|
|
413
|
-
help="disk space allocation in MB to request from condor \
|
|
414
|
-
for lalpulsar_MakeSFTs step",
|
|
608
|
+
makesfts_group.add_argument(
|
|
609
|
+
"--allow-skipping",
|
|
610
|
+
action="store_true",
|
|
611
|
+
help="allow channels to be skipped if not in frames or too low sampling \
|
|
612
|
+
frequency",
|
|
415
613
|
)
|
|
416
|
-
|
|
417
|
-
"-
|
|
418
|
-
"
|
|
419
|
-
|
|
420
|
-
|
|
421
|
-
help="Condor tag for the production of SFTs",
|
|
422
|
-
)
|
|
423
|
-
parser.add_argument(
|
|
424
|
-
"-U",
|
|
425
|
-
"--accounting-group-user",
|
|
426
|
-
required=True,
|
|
427
|
-
type=str,
|
|
428
|
-
help="albert.einstein username (do not add @LIGO.ORG)",
|
|
614
|
+
makesfts_group.add_argument(
|
|
615
|
+
"--no-validate",
|
|
616
|
+
dest="validate",
|
|
617
|
+
action="store_false",
|
|
618
|
+
help="do not validate created SFTs",
|
|
429
619
|
)
|
|
430
620
|
|
|
431
|
-
|
|
432
621
|
##### DEPRECATED OPTIONS #####
|
|
433
622
|
class DeprecateAction(argparse.Action):
|
|
434
623
|
def __call__(self, parser, namespace, values, option_string=None):
|
|
@@ -437,7 +626,7 @@ class DeprecateAction(argparse.Action):
|
|
|
437
626
|
)
|
|
438
627
|
|
|
439
628
|
|
|
440
|
-
|
|
629
|
+
deprecated_group.add_argument(
|
|
441
630
|
"-u",
|
|
442
631
|
"--frame-struct-type",
|
|
443
632
|
nargs=0,
|
|
@@ -445,15 +634,15 @@ parser.add_argument(
|
|
|
445
634
|
help="DEPRECATED. No longer required; \
|
|
446
635
|
the frame channel type is determined automatically",
|
|
447
636
|
)
|
|
448
|
-
|
|
637
|
+
deprecated_group.add_argument(
|
|
449
638
|
"-H",
|
|
450
|
-
"--use-
|
|
639
|
+
"--use-hoft",
|
|
451
640
|
nargs=0,
|
|
452
641
|
action=DeprecateAction,
|
|
453
642
|
help="DEPRECATED. No longer required; \
|
|
454
643
|
the frame channel type is determined automatically",
|
|
455
644
|
)
|
|
456
|
-
|
|
645
|
+
deprecated_group.add_argument(
|
|
457
646
|
"-i",
|
|
458
647
|
"--ifo",
|
|
459
648
|
nargs=0,
|
|
@@ -461,158 +650,160 @@ parser.add_argument(
|
|
|
461
650
|
help="DEPRECATED. No longer required; \
|
|
462
651
|
the detector prefix is deduced from the channel name",
|
|
463
652
|
)
|
|
464
|
-
|
|
653
|
+
deprecated_group.add_argument(
|
|
465
654
|
"-D",
|
|
466
655
|
"--make-gps-dirs",
|
|
467
656
|
nargs=0,
|
|
468
657
|
action=DeprecateAction,
|
|
469
658
|
help="DEPRECATED. No longer supported",
|
|
470
659
|
)
|
|
471
|
-
|
|
660
|
+
deprecated_group.add_argument(
|
|
472
661
|
"-Z",
|
|
473
662
|
"--make-tmp-file",
|
|
474
663
|
nargs=0,
|
|
475
664
|
action=DeprecateAction,
|
|
476
665
|
help="DEPRECATED. Default behaviour",
|
|
477
666
|
)
|
|
478
|
-
|
|
667
|
+
deprecated_group.add_argument(
|
|
479
668
|
"-v",
|
|
480
669
|
"--sft-version",
|
|
481
670
|
nargs=0,
|
|
482
671
|
action=DeprecateAction,
|
|
483
672
|
help="DEPRECATED. No longer supported",
|
|
484
673
|
)
|
|
485
|
-
|
|
674
|
+
deprecated_group.add_argument(
|
|
486
675
|
"-S",
|
|
487
676
|
"--use-single",
|
|
488
677
|
nargs=0,
|
|
489
678
|
action=DeprecateAction,
|
|
490
679
|
help="DEPRECATED. No longer supported",
|
|
491
680
|
)
|
|
681
|
+
deprecated_group.add_argument(
|
|
682
|
+
"-q",
|
|
683
|
+
"--list-of-nodes",
|
|
684
|
+
type=str,
|
|
685
|
+
action=DeprecateAction,
|
|
686
|
+
help="DEPCRECATED. No longer supported",
|
|
687
|
+
)
|
|
688
|
+
deprecated_group.add_argument(
|
|
689
|
+
"-Q",
|
|
690
|
+
"--node-path",
|
|
691
|
+
type=Path,
|
|
692
|
+
action=DeprecateAction,
|
|
693
|
+
help="DEPCRECATED. No longer supported",
|
|
694
|
+
)
|
|
695
|
+
deprecated_group.add_argument(
|
|
696
|
+
"-r",
|
|
697
|
+
"--output-jobs-per-node",
|
|
698
|
+
type=int,
|
|
699
|
+
default=0,
|
|
700
|
+
action=DeprecateAction,
|
|
701
|
+
help="DEPRECATED. No longer supported",
|
|
702
|
+
)
|
|
492
703
|
|
|
493
704
|
args = parser.parse_args()
|
|
494
705
|
|
|
495
706
|
# Some basic argument value checking
|
|
496
707
|
if args.observing_run < 0:
|
|
497
|
-
raise
|
|
708
|
+
raise parser.error("--observing-run must be >= 0")
|
|
498
709
|
|
|
499
710
|
if args.observing_run > 0 and not args.observing_kind:
|
|
500
|
-
raise
|
|
711
|
+
raise parser.error("--observing-run requires --observing-kind")
|
|
501
712
|
|
|
502
713
|
if args.observing_run > 0 and not args.observing_revision:
|
|
503
|
-
raise
|
|
714
|
+
raise parser.error("--observing-run requires --observing-revision")
|
|
504
715
|
|
|
505
716
|
if args.observing_revision and args.observing_revision <= 0:
|
|
506
|
-
raise
|
|
717
|
+
raise parser.error("--observing-revision must be > 0")
|
|
507
718
|
|
|
508
719
|
if args.observing_run > 0 and args.misc_desc:
|
|
509
|
-
raise
|
|
720
|
+
raise parser.error(
|
|
510
721
|
f"--observing-run={args.observing_run} incompatible with --misc-desc"
|
|
511
722
|
)
|
|
512
723
|
|
|
513
724
|
if args.misc_desc and not re.compile(r"^[A-Za-z0-9]+$").match(args.misc_desc):
|
|
514
|
-
raise
|
|
725
|
+
raise parser.error("--misc-desc may only contain A-Z, a-z, 0-9 characters")
|
|
515
726
|
|
|
516
727
|
if args.extra_datafind_time < 0:
|
|
517
|
-
raise
|
|
728
|
+
raise parser.error("--extra-datafind-time must be >= 0")
|
|
518
729
|
|
|
519
730
|
if args.filter_knee_freq < 0:
|
|
520
|
-
raise
|
|
731
|
+
raise parser.error("--filter-knee-freq must be >= 0")
|
|
521
732
|
|
|
522
733
|
if args.time_baseline <= 0:
|
|
523
|
-
raise
|
|
734
|
+
raise parser.error("--time-baseline must be > 0")
|
|
524
735
|
|
|
525
736
|
if args.overlap_fraction < 0.0 or args.overlap_fraction >= 1.0:
|
|
526
|
-
raise
|
|
737
|
+
raise parser.error("--overlap-fraction must be in the range [0,1)")
|
|
527
738
|
|
|
528
739
|
if args.start_freq < 0.0 or args.start_freq >= 7192.0:
|
|
529
|
-
raise
|
|
740
|
+
raise parser.error("--start-freq must be in the range [0,7192)")
|
|
530
741
|
|
|
531
742
|
if args.band <= 0 or args.band >= 8192.0:
|
|
532
|
-
raise
|
|
743
|
+
raise parser.error("--band must be in the range (0,8192)")
|
|
533
744
|
|
|
534
745
|
if args.start_freq + args.band >= 8192.0:
|
|
535
|
-
raise
|
|
746
|
+
raise parser.error("--start-freq + --band must be < 8192")
|
|
536
747
|
|
|
537
748
|
if args.max_num_per_node <= 0:
|
|
538
|
-
raise
|
|
749
|
+
raise parser.error("--max-num-per-node must be > 0")
|
|
539
750
|
|
|
540
751
|
if (
|
|
541
752
|
len(args.channel_name) != len(args.output_sft_path)
|
|
542
753
|
and len(args.output_sft_path) != 1
|
|
543
754
|
):
|
|
544
|
-
raise
|
|
755
|
+
raise parser.error(
|
|
545
756
|
"--channel-name and --output-sft-path must be the "
|
|
546
757
|
"same length or --output-sft-path must be length of 1"
|
|
547
758
|
)
|
|
548
759
|
|
|
549
|
-
|
|
550
|
-
|
|
551
|
-
|
|
552
|
-
|
|
553
|
-
|
|
554
|
-
|
|
555
|
-
|
|
556
|
-
|
|
557
|
-
|
|
558
|
-
|
|
559
|
-
|
|
760
|
+
if len(args.channel_name) > 1 and args.observing_run == 0:
|
|
761
|
+
raise parser.error(
|
|
762
|
+
"When creating SFTs from multiple channels, public SFT naming "
|
|
763
|
+
"convention must be used: --observing-run > 0 and set "
|
|
764
|
+
"--observing-kind and --observing-revision"
|
|
765
|
+
)
|
|
766
|
+
|
|
767
|
+
if args.datafind_urltype == "osdf" and not args.transfer_frame_files:
|
|
768
|
+
raise parser.error(
|
|
769
|
+
"--transfer-frame-files must be specified when --datafind-urltype=osdf"
|
|
770
|
+
)
|
|
560
771
|
|
|
772
|
+
# Set executables for lalpulsar_MakeSFTs, and lalpulsar_MoveSFTs
|
|
561
773
|
makeSFTsExe = "lalpulsar_MakeSFTs"
|
|
562
774
|
if args.makesfts_path:
|
|
563
|
-
if
|
|
775
|
+
if args.makesfts_path.is_file():
|
|
564
776
|
makeSFTsExe = args.makesfts_path
|
|
565
777
|
else:
|
|
566
|
-
makeSFTsExe =
|
|
778
|
+
makeSFTsExe = args.makesfts_path / makeSFTsExe
|
|
567
779
|
elif "MAKESFTS_PATH" in os.environ:
|
|
568
|
-
makeSFTsExe =
|
|
780
|
+
makeSFTsExe = Path("$ENV(MAKESFTS_PATH)") / makeSFTsExe
|
|
569
781
|
else:
|
|
570
|
-
makeSFTsExe =
|
|
571
|
-
|
|
572
|
-
# try and make a directory to store the cache files and job logs
|
|
573
|
-
try:
|
|
574
|
-
os.mkdir(args.log_path)
|
|
575
|
-
except:
|
|
576
|
-
pass
|
|
577
|
-
if not args.cache_file:
|
|
578
|
-
try:
|
|
579
|
-
os.mkdir(args.cache_path)
|
|
580
|
-
except:
|
|
581
|
-
pass
|
|
582
|
-
|
|
583
|
-
# Check if list of nodes is given, on which to output SFTs.
|
|
584
|
-
nodeList = []
|
|
585
|
-
useNodeList = False
|
|
586
|
-
savedOutputSFTPath = None
|
|
587
|
-
if args.list_of_nodes is not None:
|
|
588
|
-
if args.node_path is None:
|
|
589
|
-
raise argparse.error("Node file list given, but no node path specified")
|
|
590
|
-
|
|
591
|
-
if args.output_jobs_per_node < 1:
|
|
592
|
-
raise argparse.error(
|
|
593
|
-
"Node file list given, but invalid output jobs per node specified"
|
|
594
|
-
)
|
|
782
|
+
makeSFTsExe = Path("/builds/lscsoft/lalsuite/wheel/build/inst/bin") / makeSFTsExe
|
|
595
783
|
|
|
596
|
-
|
|
597
|
-
|
|
598
|
-
|
|
599
|
-
|
|
600
|
-
|
|
601
|
-
|
|
602
|
-
|
|
603
|
-
|
|
784
|
+
moveSFTsExe = "lalpulsar_MoveSFTs"
|
|
785
|
+
if args.movesfts_path:
|
|
786
|
+
if args.movesfts_path.is_file():
|
|
787
|
+
moveSFTsExe = args.movesfts_path
|
|
788
|
+
else:
|
|
789
|
+
moveSFTsExe = args.movesfts_path / moveSFTsExe
|
|
790
|
+
elif "MOVESFTS_PATH" in os.environ:
|
|
791
|
+
moveSFTsExe = Path("$ENV(MOVESFTS_PATH)") / moveSFTsExe
|
|
792
|
+
else:
|
|
793
|
+
moveSFTsExe = Path("/builds/lscsoft/lalsuite/wheel/build/inst/bin") / moveSFTsExe
|
|
604
794
|
|
|
605
|
-
|
|
606
|
-
|
|
607
|
-
|
|
608
|
-
|
|
795
|
+
# make directories to store the cache files, job logs, and SFTs
|
|
796
|
+
args.log_path.mkdir(exist_ok=True)
|
|
797
|
+
args.cache_path.mkdir(exist_ok=True)
|
|
798
|
+
for p in args.output_sft_path:
|
|
799
|
+
p.mkdir(exist_ok=True)
|
|
609
800
|
|
|
610
801
|
# Check if segment file was given, else set up one segment from the command line
|
|
611
|
-
segList =
|
|
802
|
+
segList = segmentlist()
|
|
612
803
|
adjustSegExtraTime = False
|
|
613
804
|
if args.segment_file is not None:
|
|
614
805
|
if args.min_seg_length < 0:
|
|
615
|
-
raise
|
|
806
|
+
raise parser.error("--min-seg-length must be >= 0")
|
|
616
807
|
|
|
617
808
|
# the next flag causes extra time that cannot be processes to be trimmed
|
|
618
809
|
# from the start and end of a segment
|
|
@@ -621,108 +812,125 @@ if args.segment_file is not None:
|
|
|
621
812
|
with open(args.segment_file) as fp_segfile:
|
|
622
813
|
for idx, line in enumerate(fp_segfile):
|
|
623
814
|
splitLine = line.split()
|
|
624
|
-
oneSeg = []
|
|
625
|
-
oneSeg.
|
|
626
|
-
oneSeg.append(int(splitLine[1]))
|
|
627
|
-
if (oneSeg[1] - oneSeg[0]) >= args.min_seg_length:
|
|
815
|
+
oneSeg = segment(int(splitLine[0]), int(splitLine[1]))
|
|
816
|
+
if abs(oneSeg) >= args.min_seg_length:
|
|
628
817
|
segList.append(oneSeg)
|
|
629
818
|
|
|
630
819
|
if len(segList) < 1:
|
|
631
|
-
raise ValueError(
|
|
632
|
-
"No segments found in segment file: {}".format(args.segment_file)
|
|
633
|
-
)
|
|
820
|
+
raise ValueError(f"No segments found in segment file: {args.segment_file}")
|
|
634
821
|
else:
|
|
635
822
|
if args.analysis_start_time is None:
|
|
636
|
-
raise
|
|
637
|
-
"--analysis-start-time must be specified if no segment file is
|
|
638
|
-
given"
|
|
823
|
+
raise parser.error(
|
|
824
|
+
"--analysis-start-time must be specified if no segment file is " "given"
|
|
639
825
|
)
|
|
640
826
|
|
|
641
827
|
if args.analysis_end_time is None:
|
|
642
|
-
raise
|
|
643
|
-
"--analysis-start-time must be specified if no segment file is
|
|
644
|
-
given"
|
|
828
|
+
raise parser.error(
|
|
829
|
+
"--analysis-start-time must be specified if no segment file is " "given"
|
|
645
830
|
)
|
|
646
831
|
|
|
647
832
|
if args.max_length_all_jobs is None:
|
|
648
|
-
raise
|
|
649
|
-
"--max-length-all-jobs must be specified if no segment file is
|
|
650
|
-
given"
|
|
833
|
+
raise parser.error(
|
|
834
|
+
"--max-length-all-jobs must be specified if no segment file is " "given"
|
|
651
835
|
)
|
|
652
836
|
|
|
653
837
|
# Make sure not to exceed maximum allow analysis
|
|
654
838
|
if args.analysis_end_time > (args.analysis_start_time + args.max_length_all_jobs):
|
|
655
839
|
args.analysis_end_time = args.analysis_start_time + args.max_length_all_jobs
|
|
656
840
|
|
|
657
|
-
oneSeg =
|
|
658
|
-
oneSeg.append(args.analysis_start_time)
|
|
659
|
-
oneSeg.append(args.analysis_end_time)
|
|
841
|
+
oneSeg = segment(args.analysis_start_time, args.analysis_end_time)
|
|
660
842
|
segList.append(oneSeg)
|
|
661
843
|
# END if (args.segment_file != None)
|
|
844
|
+
segList.coalesce()
|
|
662
845
|
|
|
663
846
|
# Get the IFO site, which is the first letter of the channel name.
|
|
664
847
|
site = args.channel_name[0][0]
|
|
665
848
|
|
|
849
|
+
# Get the frame file URL list
|
|
850
|
+
urls = get_urls(args)
|
|
851
|
+
|
|
852
|
+
# Basic check that the frame file url list are traditionally visible on EPs
|
|
853
|
+
if not args.transfer_frame_files:
|
|
854
|
+
for f in urls:
|
|
855
|
+
if "/home" in f:
|
|
856
|
+
raise parser.error(
|
|
857
|
+
"--transfer-frame-files must be specified when frame files are in /home"
|
|
858
|
+
)
|
|
859
|
+
|
|
860
|
+
# data segments created from the list of frame URLs
|
|
861
|
+
dataSegs = segmentlist()
|
|
862
|
+
for url in urls:
|
|
863
|
+
dataSegs.append(file_segment(url))
|
|
864
|
+
dataSegs.coalesce()
|
|
865
|
+
|
|
866
|
+
# intersection of segList with dataSegs
|
|
867
|
+
segList &= dataSegs
|
|
868
|
+
segList.coalesce() # just in case
|
|
869
|
+
|
|
666
870
|
# initialize count of nodes
|
|
667
871
|
nodeCount = 0
|
|
668
872
|
|
|
669
873
|
# Create .sub files
|
|
670
|
-
path_to_dag_file =
|
|
671
|
-
dag_filename =
|
|
672
|
-
|
|
673
|
-
|
|
674
|
-
|
|
675
|
-
# create datafind.sub
|
|
676
|
-
if not args.cache_file:
|
|
677
|
-
with open(datafind_sub, "w") as datafindFID:
|
|
678
|
-
datafindLogFile = f"{args.log_path}/datafind_{dag_filename}.log"
|
|
679
|
-
datafindFID.write("universe = vanilla\n")
|
|
680
|
-
datafindFID.write(f"executable = {dataFindExe}\n")
|
|
681
|
-
datafindFID.write("arguments = ")
|
|
682
|
-
datafindFID.write("--observatory $(observatory) --url-type file ")
|
|
683
|
-
datafindFID.write("--gps-start-time $(gpsstarttime) ")
|
|
684
|
-
datafindFID.write("--gps-end-time $(gpsendtime) --lal-cache --gaps ")
|
|
685
|
-
datafindFID.write(f"--type $(inputdatatype)")
|
|
686
|
-
if args.datafind_match:
|
|
687
|
-
datafindFID.write(f" --match {args.datafind_match}\n")
|
|
688
|
-
else:
|
|
689
|
-
datafindFID.write("\n")
|
|
690
|
-
datafindFID.write(
|
|
691
|
-
"getenv = *DATAFIND*, KRB5*, X509*, BEARER_TOKEN*, SCITOKEN*\n"
|
|
692
|
-
)
|
|
693
|
-
datafindFID.write("request_disk = 5MB\n")
|
|
694
|
-
datafindFID.write("request_memory = 2000MB\n")
|
|
695
|
-
datafindFID.write(f"accounting_group = {args.accounting_group}\n")
|
|
696
|
-
datafindFID.write(f"accounting_group_user = {args.accounting_group_user}\n")
|
|
697
|
-
datafindFID.write(f"log = {datafindLogFile}\n")
|
|
698
|
-
datafindFID.write(f"error = {args.log_path}/datafind_$(tagstring).err\n")
|
|
699
|
-
datafindFID.write(f"output = {args.cache_path}/")
|
|
700
|
-
datafindFID.write("$(observatory)-$(gpsstarttime)-$(gpsendtime).cache\n")
|
|
701
|
-
datafindFID.write("notification = never\n")
|
|
702
|
-
datafindFID.write("queue 1\n")
|
|
874
|
+
path_to_dag_file = args.dag_file.parent
|
|
875
|
+
dag_filename = args.dag_file.name
|
|
876
|
+
makesfts_sub = path_to_dag_file / "MakeSFTs.sub"
|
|
877
|
+
movesfts_sub = path_to_dag_file / "MoveSFTs.sub"
|
|
703
878
|
|
|
704
879
|
# create MakeSFTs.sub
|
|
705
880
|
with open(makesfts_sub, "w") as MakeSFTsFID:
|
|
706
|
-
MakeSFTsLogFile = "{}/MakeSFTs_{}.log"
|
|
881
|
+
MakeSFTsLogFile = f"{args.log_path}/MakeSFTs_{dag_filename}.log"
|
|
707
882
|
MakeSFTsFID.write("universe = vanilla\n")
|
|
708
|
-
MakeSFTsFID.write("executable = {}\n"
|
|
883
|
+
MakeSFTsFID.write(f"executable = {makeSFTsExe}\n")
|
|
709
884
|
MakeSFTsFID.write("arguments = $(argList)\n")
|
|
710
|
-
MakeSFTsFID.write("accounting_group = {}\n"
|
|
711
|
-
MakeSFTsFID.write("accounting_group_user = {}\n"
|
|
712
|
-
MakeSFTsFID.write("log = {}\n"
|
|
713
|
-
MakeSFTsFID.write("error = {}/MakeSFTs_$(tagstring).err\n"
|
|
714
|
-
MakeSFTsFID.write("output = {}/MakeSFTs_$(tagstring).out\n"
|
|
885
|
+
MakeSFTsFID.write(f"accounting_group = {args.accounting_group}\n")
|
|
886
|
+
MakeSFTsFID.write(f"accounting_group_user = {args.accounting_group_user}\n")
|
|
887
|
+
MakeSFTsFID.write(f"log = {MakeSFTsLogFile}\n")
|
|
888
|
+
MakeSFTsFID.write(f"error = {args.log_path}/MakeSFTs_$(tagstring).err\n")
|
|
889
|
+
MakeSFTsFID.write(f"output = {args.log_path}/MakeSFTs_$(tagstring).out\n")
|
|
715
890
|
MakeSFTsFID.write("notification = never\n")
|
|
716
891
|
MakeSFTsFID.write(f"request_memory = {args.request_memory}MB\n")
|
|
717
892
|
MakeSFTsFID.write(f"request_disk = {args.request_disk}MB\n")
|
|
718
893
|
MakeSFTsFID.write("RequestCpus = 1\n")
|
|
894
|
+
MakeSFTsFID.write("should_transfer_files = yes\n")
|
|
895
|
+
if args.transfer_frame_files:
|
|
896
|
+
MakeSFTsFID.write("transfer_input_files = $(cachefile),$(framefiles)\n")
|
|
897
|
+
else:
|
|
898
|
+
MakeSFTsFID.write("transfer_input_files = $(cachefile)\n")
|
|
899
|
+
if "MAKESFTS_PATH" in os.environ and not args.makesfts_path:
|
|
900
|
+
MakeSFTsFID.write("getenv = MAKESFTS_PATH\n")
|
|
901
|
+
if args.datafind_urltype == "osdf":
|
|
902
|
+
MakeSFTsFID.write("use_oauth_services = scitokens\n")
|
|
903
|
+
MakeSFTsFID.write(
|
|
904
|
+
"environment = BEARER_TOKEN_FILE=$$(CondorScratchDir)/.condor_creds/scitokens.use\n"
|
|
905
|
+
)
|
|
719
906
|
MakeSFTsFID.write("queue 1\n")
|
|
720
907
|
|
|
908
|
+
# create MoveSFTs.sub
|
|
909
|
+
with open(movesfts_sub, "w") as MoveSFTsFID:
|
|
910
|
+
MoveSFTsLogFile = f"{args.log_path}/MoveSFTs_{dag_filename}.log"
|
|
911
|
+
MoveSFTsFID.write("universe = local\n")
|
|
912
|
+
MoveSFTsFID.write(f"executable = {moveSFTsExe}\n")
|
|
913
|
+
MoveSFTsFID.write("arguments = ")
|
|
914
|
+
if not args.validate:
|
|
915
|
+
MoveSFTsFID.write("$(opts) ")
|
|
916
|
+
MoveSFTsFID.write("-s $(sourcedirectory) -c $(channels) -d $(destdirectory)\n")
|
|
917
|
+
MoveSFTsFID.write(f"accounting_group = {args.accounting_group}\n")
|
|
918
|
+
MoveSFTsFID.write(f"accounting_group_user = {args.accounting_group_user}\n")
|
|
919
|
+
MoveSFTsFID.write(f"log = {MoveSFTsLogFile}\n")
|
|
920
|
+
MoveSFTsFID.write(f"error = {args.log_path}/MoveSFTs.err\n")
|
|
921
|
+
MoveSFTsFID.write(f"output = {args.log_path}/MoveSFTs.out\n")
|
|
922
|
+
MoveSFTsFID.write("notification = never\n")
|
|
923
|
+
MoveSFTsFID.write(f"request_memory = 1GB\n")
|
|
924
|
+
MoveSFTsFID.write(f"request_disk = 10MB\n")
|
|
925
|
+
MoveSFTsFID.write("RequestCpus = 1\n")
|
|
926
|
+
if "MOVESFTS_PATH" in os.environ and not args.movesfts_path:
|
|
927
|
+
MoveSFTsFID.write("getenv = MOVESFTS_PATH\n")
|
|
928
|
+
MoveSFTsFID.write("queue 1\n")
|
|
929
|
+
|
|
721
930
|
# create the DAG file with the jobs to run
|
|
722
931
|
with open(args.dag_file, "w") as dagFID:
|
|
723
932
|
startTimeAllNodes = None
|
|
724
933
|
firstSFTstartTime = 0 # need this for the synchronized start option
|
|
725
|
-
nodeListIndex = 0
|
|
726
934
|
|
|
727
935
|
# Loop over the segment list to generate the SFTs for each segment
|
|
728
936
|
for seg in segList:
|
|
@@ -867,17 +1075,6 @@ with open(args.dag_file, "w") as dagFID:
|
|
|
867
1075
|
# write jobs to dag for this node
|
|
868
1076
|
nodeCount = nodeCount + 1
|
|
869
1077
|
|
|
870
|
-
if useNodeList:
|
|
871
|
-
args.output_sft_path = (
|
|
872
|
-
args.node_path
|
|
873
|
-
+ nodeList[nodeListIndex]
|
|
874
|
-
+ savedOutputSFTPath
|
|
875
|
-
)
|
|
876
|
-
if (nodeCount % args.output_jobs_per_node) == 0:
|
|
877
|
-
nodeListIndex = nodeListIndex + 1
|
|
878
|
-
# END if ((nodeCount % args.output_jobs_per_node) == 0L)
|
|
879
|
-
# END if (useNodeList)
|
|
880
|
-
|
|
881
1078
|
if nodeCount == 1:
|
|
882
1079
|
startTimeAllNodes = startTimeThisNode
|
|
883
1080
|
writeToDag(
|
|
@@ -885,7 +1082,7 @@ with open(args.dag_file, "w") as dagFID:
|
|
|
885
1082
|
nodeCount,
|
|
886
1083
|
startTimeThisNode,
|
|
887
1084
|
endTimeThisNode,
|
|
888
|
-
|
|
1085
|
+
urls,
|
|
889
1086
|
args,
|
|
890
1087
|
)
|
|
891
1088
|
# Update for next node
|
|
@@ -905,22 +1102,30 @@ with open(args.dag_file, "w") as dagFID:
|
|
|
905
1102
|
# write jobs to dag for this node
|
|
906
1103
|
nodeCount = nodeCount + 1
|
|
907
1104
|
|
|
908
|
-
if useNodeList:
|
|
909
|
-
args.output_sft_path = (
|
|
910
|
-
args.node_path + nodeList[nodeListIndex] + savedOutputSFTPath
|
|
911
|
-
)
|
|
912
|
-
if (nodeCount % args.output_jobs_per_node) == 0:
|
|
913
|
-
nodeListIndex = nodeListIndex + 1
|
|
914
|
-
# END if ((nodeCount % args.output_jobs_per_node) == 0L)
|
|
915
|
-
# END if (useNodeList)
|
|
916
|
-
|
|
917
1105
|
if nodeCount == 1:
|
|
918
1106
|
startTimeAllNodes = startTimeThisNode
|
|
919
1107
|
writeToDag(
|
|
920
|
-
dagFID, nodeCount, startTimeThisNode, endTimeThisNode,
|
|
1108
|
+
dagFID, nodeCount, startTimeThisNode, endTimeThisNode, urls, args
|
|
921
1109
|
)
|
|
922
1110
|
# END while (endTimeAllNodes < args.analysis_end_time)
|
|
923
1111
|
# END for seg in segList
|
|
1112
|
+
|
|
1113
|
+
# Write the move SFTs job to the DAG
|
|
1114
|
+
# Move SFTs
|
|
1115
|
+
dagFID.write(f"JOB MoveSFTs {Path(dagFID.name).parent / 'MoveSFTs.sub'}\n")
|
|
1116
|
+
dagFID.write(f"RETRY MoveSFTs 1\n")
|
|
1117
|
+
dagFID.write(f"VARS MoveSFTs ")
|
|
1118
|
+
if not args.validate:
|
|
1119
|
+
dagFID.write('opts="--no-validate" ')
|
|
1120
|
+
dagFID.write(
|
|
1121
|
+
f'sourcedirectory="." '
|
|
1122
|
+
f"channels=\"{' '.join(args.channel_name)}\" "
|
|
1123
|
+
f"destdirectory=\"{' '.join([str(p) for p in args.output_sft_path])}\"\n"
|
|
1124
|
+
)
|
|
1125
|
+
dagFID.write(
|
|
1126
|
+
f"PARENT {' '.join([f'MakeSFTs_{n}' for n in range(1, nodeCount+1)])} CHILD MoveSFTs\n"
|
|
1127
|
+
)
|
|
1128
|
+
|
|
924
1129
|
# Close the DAG file
|
|
925
1130
|
|
|
926
1131
|
# Update actual end time of the last job and print out the times all jobs will run on:
|