MFDv4 does not properly check if signals are outside of injection band
This one seems to have also fallen through the cracks when migrating from Redmine:
https://bugs.ligo.org/redmine/issues/5737
example case:
$ lalapps_Makefakedata_v4 --outSingleSFT=FALSE --outSFTbname=f1dot_-5e-3 --IFO=H1 --fmin=995.0 --Band=10 --Alpha=0 --Delta=0 --h0=7e-24 --cosi=0 --psi=0 --phi0=0 --Freq=1000 --startTime=1000000000 --duration=9000 --f1dot=-5e-3 --noiseSqrtSh=4e-24 --Tsft=45 --sourceDeltaT=10
--> generates without complaining
$ lalapps_Makefakedata_v5 --outSingleSFT=FALSE --outSFTdir="./" --IFO=H1 --fmin=995.0 --Band=10 --injectionSources="{Alpha=0; Delta=0; h0=7e-24; cosi=0; psi=0; phi0=0; Freq=1000; f1dot=-5e-3; refTime=1000004500}" --startTime=1000000000 --duration=9000 --sqrtSX=4e-24 --Tsft=45 --sourceDeltaT=10
XLAL Error - XLALCWMakeFakeData (CWMakeFakeData.c:304): Error: injection signal 0:'direct-string-input' needs frequency band [977.396436,1022.608332]Hz, injecting into [995.000000,1005.000000]Hz
The cleanest solution is probably to call the same XLALCWSignalCoveringBand() function that MFDv5 uses from somewhere within MFDv4, but I haven't yet checked if all necessary ingredients are readily available.