Mass concentration bhattacharya13#234
Conversation
…ss_concentration_bhattacharya13
…ss_concentration_bhattacharya13
…ss_concentration_bhattacharya13
…ocumentation...) and typo in some equations. Diemer15 is not complete yet. Transfer functions: - Created No-baryon EH transfer function, to be used in the Diemer15 mass-concentration relation. - Updated (GObject's sintax) all transfer function objects. Watson multiplicity function: fixed the properties list (included PROP_LEN).
Codecov Report❌ Patch coverage is Additional details and impacted files@@ Coverage Diff @@
## master #234 +/- ##
==========================================
+ Coverage 76.21% 76.28% +0.06%
==========================================
Files 604 616 +12
Lines 102030 102603 +573
==========================================
+ Hits 77767 78272 +505
- Misses 24263 24331 +68 ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
Mass function as properties: Diemer15. Unit test for the concentration-mass relations (in progress).
Updating tests.
There was a problem hiding this comment.
Pull request overview
This PR introduces new concentration-mass relations (Prada12, Bhattacharya13, Diemer15, Dutton14) and adds support for the Eisenstein-Hu transfer function with no baryon limit. The changes include new implementations, comprehensive test coverage, and necessary type stub updates for Python bindings.
- New concentration-mass relation implementations with validation against Colossus reference data
- New transfer function implementation (EH no baryon) with test coverage
- Refactored test infrastructure with improved fixtures and parametrization
- Code cleanup including modernization of GObject macro usage and spelling fixes
Reviewed changes
Copilot reviewed 39 out of 39 changed files in this pull request and generated 2 comments.
Show a summary per file
| File | Description |
|---|---|
| tests/test_py_transfer_func_*.py | New comprehensive test suites for transfer functions (EH, EH no baryon, BBKS) |
| tests/test_py_halo_mass_summary.py | Refactored with new fixtures for testing concentration-mass relations |
| tests/test_py_concentration_mass_relations.py | Added Bhattacharya13 tests and comprehensive validation suite |
| tests/test_ncm_generic.c | Added basic C tests for new concentration-mass relation classes |
| numcosmo/lss/nc_halo_cm_*.c/h | New implementations for Prada12, Bhattacharya13, Dutton14, Diemer15 |
| numcosmo/lss/nc_transfer_func_eh_no_baryon.c/h | New EH no baryon transfer function implementation |
| numcosmo/lss/nc_transfer_func*.c/h | Refactored to use G_DECLARE macros and private structures |
| numcosmo/math/ncm_powspec.c/h | Added deriv_k method for power spectrum derivatives with respect to k |
| numcosmo_py/*.pyi | Updated type stubs for new classes and methods |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
| } | ||
|
|
||
| static void | ||
| _nc_halo_cm_battacharya13_set_property (GObject *object, guint prop_id, const GValue *value, GParamSpec *pspec) |
There was a problem hiding this comment.
Spelling error in the function name: "_nc_halo_cm_battacharya13_set_property" should be "_nc_halo_cm_bhattacharya13_set_property" (missing 'h' after 'b').
| _nc_halo_cm_battacharya13_set_property (GObject *object, guint prop_id, const GValue *value, GParamSpec *pspec) | |
| _nc_halo_cm_bhattacharya13_set_property (GObject *object, guint prop_id, const GValue *value, GParamSpec *pspec) |
| """Unit tests for NcTransferFuncBBKS.""" | ||
|
|
||
| import numpy as np | ||
| from numpy.testing import assert_allclose |
There was a problem hiding this comment.
Import of 'assert_allclose' is not used.
New concentration-mass relations: Prada12, Battacharya13, Diemer15 and Dutton14.
Transferfunction: Eisentein-Hu - No baryon limit.