float *ip_signal,int nenv_chan, float **rp_env,float **ip_env,

float *rho2_pairwise, complex *A,complex *B,float *modx2sum)

This function takes sections of length `length` of the Fourier
transform of the `signal' channel and `nenv_chan` environmental
channels and estimates the transfer function on the basis of
correlations over a width of `correlation_width` bins at an
offset frequency of `offset` bins. It returns an array `rho2_pairwise`
containing the values of that would arise from a
cross-correlation with each single channel thereby giving information
on *which*
environmental channels contain the strongest evidence for correlation with
the signal.

The arguments are:

`length:`Input. The total length of the Fourier transform.`offset:`Input. The offset to the beginning of the section of the Fourier transform over which correlations are being searched for.`correlation_width:`Input. The width of the section of the Fourier transform over which correlations are being searched for.`threshold:`Input. The threshold for determining whether a correlation is statistically significant.`rp_signal:`Input.`rp_signal[0..length-1]`contains the real parts of the Fourier transform of the signal.`ip_signal:`Input.`ip_signal[0..length-1]`contains the imaginary parts of the Fourier transform of the signal.`nenv_chan:`Input. The number of environmental channels under consideration.`rp_env:`Input.`rp_env[0..nenv_chan-1][0..length-1]`contains the real parts of the Fourier transform of the nenv_chan environmental channels.`ip_env:`Input.`ip_env[0..nenv_chan-1][0..length-1]`contains the imaginary parts of the Fourier transform of the nenv_chan environmental channels.`rho2_pairwise:`Output.`rho2_pairwise[0..nenv_chan-1]`contain the level of*pairwise*correlation between the signal and each environmental channel in turn,*i.e.*, the value of obtained if just the th environmental channel had been used.`A:`Input/Output.`A[0.. -1]`is a working array that is used by the*clapack*routine`chesv()`called by`clean_chan()`. The elements of the array are structure of type`complex`(see note above). Memory allocation should be performed in the calling routine.`B:`Input/Output.`B[0.. -1]`is a working array used by the*clapack*routine`chesv()`called by`clean_chan()`. The elements of the array are structure of type`complex`(see note above). Memory allocation should be performed in the calling routine.`modx2sum:`Output. A float used by`clean_chan`.

- Author: Bruce Allen (ballen@dirac.phys.uwm.edu), Wensheng Hua (hua@bondi.phys.uwm.edu) and Adrian Ottewill (ottewill@relativity.ucd.ie).
- Comments: