Allow lalpulsar_MakeSFTs and lalpulsar_MakeSFTDAG.py take in multiple channel names
Description
This MR extends the capability of lalpulsar_MakeSFTs
and lalpulsar_MakeSFTDAG.py
so that multiple channels can be used to create SFTs within the same process. This should hopefully improve instances where multiple channels are needed within a workflow, like Fscan, and are limited by disk I/O.
This change does require that the file output is now a required list because I couldn't figure out how to set a default .
for all SFTs
An example of how these changes work. Below is 3600 s of data where two channels are provided (-N
), two output paths are provided (-p
):
$ lalpulsar_MakeSFTDAG -O 100 -K AUX -R 1 -a 1376179218 -b 1376182818 -f test.dag -G test -d L1_R -T 1800 -p . . -N L1:PEM-CS_ACC_HAM6_OMC_X_DQ L1:PEM-CS_ACC_HAM6_OMC_Y_DQ -F 10 -B 1990 -w rectangular -A ligo.dev.o4.detchar.linefind.fscan -U evan.goetz -k 7 -L 3600
$ condor_submit_dag test.dag
This results in 4 SFT files being generated:
$ ls *.sft
L-1_L1_1800SFT_O100AUX+R1+CPEMCSACCHAM6OMCXDQ+WRECT-1376179218-1800.sft
L-1_L1_1800SFT_O100AUX+R1+CPEMCSACCHAM6OMCXDQ+WRECT-1376181018-1800.sft
L-1_L1_1800SFT_O100AUX+R1+CPEMCSACCHAM6OMCYDQ+WRECT-1376179218-1800.sft
L-1_L1_1800SFT_O100AUX+R1+CPEMCSACCHAM6OMCYDQ+WRECT-1376181018-1800.sft
API Changes and Justification
Backwards Compatible Changes
-
This change does not modify any class/function/struct/type definitions in a public C header file or any Python class/function definitions -
This change adds new classes/functions/structs/types to a public C header file or Python module
Backwards Incompatible Changes
-
This change modifies an existing class/function/struct/type definition in a public C header file or Python module -
This change removes an existing class/function/struct/type from a public C header file or Python module
If any of the Backwards Incompatible check boxes are ticked please provide a justification why this change is necessary and why it needs to be done in a backwards incompatible way.
Review Status
This should be reviewed by @karl-wette once ready.