Skip to content

gh-346: Growth-Geometry Split OmegaM, Perturbation Classes - #560

Open
FelicitasKeil wants to merge 28 commits into
mainfrom
346-omegam-split-ODE-growth-rescale-power-spectrum
Open

gh-346: Growth-Geometry Split OmegaM, Perturbation Classes#560
FelicitasKeil wants to merge 28 commits into
mainfrom
346-omegam-split-ODE-growth-rescale-power-spectrum

Conversation

@FelicitasKeil

Copy link
Copy Markdown
Member

🚀 Pull Request Checklist

✅ Summary

This PR contains the basis implementation for the growth-geometry split of $\Omega_{\rm m}$.

🔄 Changes

  • cosmology/derived_cosmology.py: Added function for the Hubble rate (hubble_rate) outside of the EBS that we will need below
  • cosmology/derived_cosmology.py: Added a differential equation for the growth rate (growth_function_ODE_derivative and growth_function_ODE)
  • cosmology/split_cosmology.py (new): A new cosmology class that computes the split matter power spectrum (linear and non-linear). This follows the up-to-date cloelib perturbations protocol
  • replaced deprecated scipy functions

🛠 How to Test

  • tests/test_derived_cosmology contains new tests for the new functions (test_hubble_rate, test_growth_function_ODE)
  • tests/test_split_cosmology is a new file that tests our perturbation classes using CLASS as the baseline. We added extensive tests, similar to i.e. test_class_cosmology, including the new neutrino related tests.
  • In the playground repository, we added a new branch 346-omegam-split-ODE-growth-rescale-power-spectrum_alternative. The file is tutorials/cosmology/growth-geometry-split.ipynb. This validates our matter power spectrum against the CosmoSIS code we were using before. I did not upload the CosmoSIS pickles to the repository but you can see them in the plots and I am happy to provide them.

📝 Documentation

  • This PR updates documentation
  • This PR does not require documentation changes
  • Issue created for documentation update: Don't forget to link the task!

🏗 Related Issues

Resolves #346

📌 Additional Notes

This includes the main changes for our growth-geometry split project within DR1-KP-TH2. Some other changes are under way, see issue #498 and a planned likelihood of the CMB angular diameter distance that we want to use.

We have a paper draft for this project, which is a work in progress, but includes the equations implemented here.

We also merged the main branch into this branch. It is up to date at the time of the creation of the PR.

✅ PR Checklist for Developers

  • I have titled this PR before merging as "gh-#:", where "#" represents the task it closes
  • I have run locally pre-commit using pre-commit run --all-files
  • I have tested my changes locally
  • No new warnings or errors introduced
  • I have updated documentation (if applicable) - docstrings & instructions in cloelib/docs/
  • My changes do not introduce breaking changes (i.e: the package still gets installed)
  • I have added unit tests (if applicable)
  • I have consistently updated the GitHub information for the project, including milestones, task types, and other relevant details.

✅ PR Checklist for Reviewers

  • The next PR targets the correct branch
  • CI tests have run and passed for the latest commit on the source branch
  • Check that the code can still be installed if new packages are imported
  • If necessary, the notebooks in the playground will be updated in a corresponding follow-up PR
  • Coverage percentage is retained or increased
  • Quality of new/changed code is acceptable
  • Quality of new/changed unit tests is acceptable
  • No data files have been included in the commits
  • Implementation follows the agreed task description point by point
  • Check that any added folder/file has been added to the README.md file
  • Check that the documentation has been updated accordantly (docstrings & instructions in cloelib/docs/)
  • Check that the corresponding branch has been deleted after merging. If not, delete it

FelicitasKeil and others added 27 commits December 8, 2025 16:41
…o 346-omegam-split-ODE-growth-rescale-power-spectrum_alternative
…cale-power-spectrum_alternative

merging-between-branches: omegam split ode growth rescale power spectrum alternative

This adds the modular implementation of the perturbation classes, so that it is easier to switch between Einstein-Boltzmann solvers and/or emulators.
@FelicitasKeil FelicitasKeil added the weak-lensing Tasks related to the photometric observables label Jul 17, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

derived-cosmology th-2 weak-lensing Tasks related to the photometric observables

Projects

None yet

Development

Successfully merging this pull request may close these issues.

OmegaM split: Implement differential equation for the growth G(z), rescale the power spectrum

3 participants