There are cases when the cross correlation coefficient computed using MeshFFTCorrelator.__call__ is larger than 1 which is mathematically questionable. It happens because shot noise is removed from the autospectra. It would be nice to have an option to not remove the shot noise, or more generally, use the kwargs when computing the ratio in __call__. I believe all that would need to be changed is this line
https://github.com/cosmodesi/pyrecon/blob/26f5e828fe0619afe303fa4e7d137095c63f7f15/pyrecon/metrics.py#L148C9-L148C14
from
power = self.ratio
to
power = self.get_ratio(complex=complex, **kwargs)
Let me know what you think, thanks!
There are cases when the cross correlation coefficient computed using
MeshFFTCorrelator.__call__is larger than 1 which is mathematically questionable. It happens because shot noise is removed from the autospectra. It would be nice to have an option to not remove the shot noise, or more generally, use the kwargs when computing the ratio in__call__. I believe all that would need to be changed is this linehttps://github.com/cosmodesi/pyrecon/blob/26f5e828fe0619afe303fa4e7d137095c63f7f15/pyrecon/metrics.py#L148C9-L148C14
from
power = self.ratioto
power = self.get_ratio(complex=complex, **kwargs)Let me know what you think, thanks!