Skip to content

Conversation

@chrgeorgiou
Copy link
Member

This PR adds support for computing projected correlation functions with CCL. These have the form:

$w_{ab}(r_p)=\int dz \ W(z)\int\frac{dk \ k}{2\pi^2} \ P(k,a) \ J_n(k \ r_p)$

with $W(z)$ a window function that depends on the redshift distribution, $P(k,a)$ the relevant power spectrum and $J_n$ the bessel function. This function is often used in direct measurements of galaxy clustering and intrinsic alignments.

This PR uses the FFTLog wrapper in CCL (similarly to what is used in the halo model) to speed-up the integration.

@coveralls
Copy link

coveralls commented Oct 18, 2023

Pull Request Test Coverage Report for Build 14642990103

Warning: This coverage report may be inaccurate.

This pull request's base commit is no longer the HEAD commit of its target branch. This means it includes changes from outside the original pull request, including, potentially, unrelated coverage changes.

Details

  • 35 of 51 (68.63%) changed or added relevant lines in 1 file are covered.
  • 41 unchanged lines in 7 files lost coverage.
  • Overall coverage decreased (-0.2%) to 97.241%

Changes Missing Coverage Covered Lines Changed/Added Lines %
pyccl/correlations.py 35 51 68.63%
Files with Coverage Reduction New Missed Lines %
pyccl/baryons/baccoemu_baryons.py 1 98.72%
pyccl/cells.py 1 97.92%
pyccl/nl_pt/ept.py 1 99.63%
pyccl/pk2d.py 3 98.71%
pyccl/_nonlimber_FKEM.py 5 96.12%
pyccl/tracers.py 14 95.1%
pyccl/halos/pk_4pt.py 16 96.25%
Totals Coverage Status
Change from base Build 11816689318: -0.2%
Covered Lines: 6591
Relevant Lines: 6778

💛 - Coveralls

@chrgeorgiou chrgeorgiou marked this pull request as ready for review October 18, 2023 10:03
@elisachisari
Copy link
Collaborator

elisachisari commented Dec 7, 2023

Some top level feedback without going into the details:

  • could you add a benchmark?
  • could you add an example in CCLX?
  • could you edit the docs files so this new function is included there?

@damonge
Copy link
Collaborator

damonge commented Feb 21, 2024

@chrgeorgiou can I check what the status of this PR is?

@chrgeorgiou
Copy link
Member Author

Hi @damonge, I just received a benchmark code from Elisa, I will tick the points raised above soon and update the PR.

@chrgeorgiou
Copy link
Member Author

@elisachisari Here is an update on this. I have run the benchmark code, saved the resulting file in the benchmark data and created a benchmark test. I also created an example in the CellsCorrelations.ipynb in CCLX. In terms of documentation, I take it you are referring to the CCL/doc, I can add this there too.

I have to note that the code developed here is only able to compute the projected correlations over infinite baseline (so $\Pi_\mathrm{max}=\infty$). Having an arbitrarily defined $\Pi_\mathrm{max}$ will need more development if the FFTLog method is to be used. I am happy to continue with this PR as is and add this feature at a later time if requested.

@damonge damonge closed this Jun 18, 2024
@damonge damonge reopened this Jun 18, 2024
@damonge
Copy link
Collaborator

damonge commented Nov 14, 2024

@chrgeorgiou @elisachisari can I check what the status of this is? Is it meant to be ready for review?

@chrgeorgiou
Copy link
Member Author

Hi David, I think the development is enough to have this merged from my side, but I would like to hear what Elisa thinks as well.

@nikosarcevic
Copy link
Contributor

Hi David, I think the development is enough to have this merged from my side, but I would like to hear what Elisa thinks as well.

what is the status of this? woudl be great if this was in ccl now.

@chrgeorgiou
Copy link
Member Author

Hi Niko, I think the work is implemented and ready but there are some drawbacks to the implementation:

  1. The current implementation re-codes the fftlog code in the correlations.py file, which is okay but not ideal.
  2. The correlations assume infinite baseline (Pi_max to infinity) which is also not ideal, but speeds up the computation significantly.

It is likely still a useful implementation to be in CCL and I am happy to move forward with this but I'm curious if @elisachisari has a comment on this.

@elisachisari
Copy link
Collaborator

I think it's useful to have for now. I think we could add later a case with Pimax and also multipoles.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants