This routine implements the two-phase statistic test. It returns the value of the statistic as defined in Eq. (). It is algorithmically similar to

Note: The GRASP library includes two additional functions which are
operationally identical to `splitup_freq3()`, called
`splitup_freq4()` and `splitup_freq5()`. The last of
these is currently the most efficient implementation of the two-phase
test. All the arguments of `splitup_freq[3-5]()` are
*identical*.

The arguments are:

`c0:`Input. Used in the same way as in`splitup_freq2()`.`c90:`Input. Used in the same way as in`splitup_freq2()`. Note that if templates have unit norm you can set .`chirp0:`Input. An array`chirp0[0..n-1]`containing the FFT of the 0-phase chirp.`chirp90:`Input. An array`chirp90[0..n-1]`containing the FFT of the -phase chirp.`norm:`Input. The normalization of the 0-phase chirp.`twice_inv_noise:`Input. The array`twice_inv_noise[0..n/2]`contains , as described previously. The array element`twice_inv_noise[0]`contains the DC value, and the array element`twice_inv_noise[n/2]`contains the value at the Nyquist frequency.`n:`Input. Defines the lengths of the previous arrays.`offset:`Input. The offset of the moment of maximum signal in the filter output.`p:`Input. The number of frequency bands for the vetoing test.`indices:`Output. An array`indices[0..p-1]`used for internal storage of the frequency subintervals (see`splitup()`.`stats:`Output. An array`stats[0..2p-1]`containing the real and imaginary parts of the for .`working:`Output. An array`working[0..n-1]`used for internal storage.`htilde:`Input. An array`htilde[0..n-1]`containing the positive frequency part of .

- Authors Bruce Allen, ballen@dirac.phys.uwm.edu, and Patrick Brady, patrick@tapir.caltech.edu, and Jolien Creighton jolien@tapir.caltech.edu.
- Comments: None.