Lower frequency cut-off (flow) not being passed to BayesWave properly for PSD generation
The format that was assumed in the template ini file here is not correct, which is
flow={ {% for ifo in ifos %}'{{ifo}}':{{ quality['minimum frequency'][ifo] }},{% endfor %} }
And bayeswave_pipe
actually expects flow
to just be a number. What bayeswave_pipe
will do is explicitly assigning the flow
(say 20 Hz) to each of the detectors, e.g. --H1-flow 20 --L1-flow 20
to BayesWave
. But since bayeswave_pipe
expects flow
to be a number and not a dictionary, the format above is not understood by bayeswave_pipe
and the default value of 16
is always used.
This is not a problem for most runs where the minimum frequency is set to 20 Hz, but there are cases where a lower flow is warranted.
There are multiple solutions to this problem --
- Allow the
--flow
option inbayeswave_pipe
to be either a number or a dictionary. And doing this would require changingbayeswave_pipe
- Change the template ini file for BayesWave in asimov to pass only one number for
flow
. That number could be the minimum out of the possibly different values offlow
for each detector. Note that while BayesWave will happily accept any "sensible" number forflow
, it is much faster if it is a power of 2, as per the usual reason with FFT
There is a separate issue with bayeswave_post
always using a lot more disk space than the default 4 GB. This makes a BW PSD job always gets held by condor. The solution would be to add this in the template ini file:
bayeswave_post-request-disk = {{ scheduler['request disk'] | default: 640000 }}