gh-380: cluster hmf bias - #497
Conversation
* docs: add inigosaezcasares as a contributor for code, and ideas (#482) Co-authored-by: allcontributors[bot] <46447321+allcontributors[bot]@users.noreply.github.com> * docs: add neelcosmo as a contributor for code, and ideas (#483) Co-authored-by: allcontributors[bot] <46447321+allcontributors[bot]@users.noreply.github.com> * docs: add FelicitasKeil as a contributor for code, and ideas (#484) Co-authored-by: allcontributors[bot] <46447321+allcontributors[bot]@users.noreply.github.com> * gh-459: added new cosebis methods with integration using jax/jit (#460) Co-authored-by: jaimerzp <jaimerz011235813@gmail.com> * docs: add jipdebuck as a contributor for userTesting (#486) Co-authored-by: allcontributors[bot] <46447321+allcontributors[bot]@users.noreply.github.com> --------- Co-authored-by: allcontributors[bot] <46447321+allcontributors[bot]@users.noreply.github.com> Co-authored-by: Guadalupe Cañas-Herrera <canasherrera@strw.leidenuniv.nl> Co-authored-by: jaimerzp <jaimerz011235813@gmail.com>
* docs: add inigosaezcasares as a contributor for code, and ideas (#482) Co-authored-by: allcontributors[bot] <46447321+allcontributors[bot]@users.noreply.github.com> * docs: add neelcosmo as a contributor for code, and ideas (#483) Co-authored-by: allcontributors[bot] <46447321+allcontributors[bot]@users.noreply.github.com> * docs: add FelicitasKeil as a contributor for code, and ideas (#484) Co-authored-by: allcontributors[bot] <46447321+allcontributors[bot]@users.noreply.github.com> * gh-459: added new cosebis methods with integration using jax/jit (#460) Co-authored-by: jaimerzp <jaimerz011235813@gmail.com> * docs: add jipdebuck as a contributor for userTesting (#486) Co-authored-by: allcontributors[bot] <46447321+allcontributors[bot]@users.noreply.github.com> --------- Co-authored-by: allcontributors[bot] <46447321+allcontributors[bot]@users.noreply.github.com> Co-authored-by: Guadalupe Cañas-Herrera <canasherrera@strw.leidenuniv.nl> Co-authored-by: jaimerzp <jaimerz011235813@gmail.com>
|
Dear @zsirap and other clusters contributors, I'm personally surprised about the length of this PR. This is precisely what we wanted to avoid by interacting closer with you: having more manageable PRs to review. This PR contains modifications to nine (!) files and contains hundreds of lines. This is not in compliance with our contributors guidelines. Please, could you explain why this PR is so big and what's the reason behind pursuing this approach now? |
|
Hello @gcanasherrera
6 files effectively. Two are
I'm sorry. In my view, this is very easily manageable. We could keep only the following files:
The reason why we included the HMF protocol (in the |
|
still in draft but was going to make it not and ask for Amandine and your review after I check a small commit by Aguena done recently ... tomorrow we have a meeting and maybe after concerting I reply better but as a quick reply we followed the procedure so we opened a first general issue #364 in which we detailed the different smaller issues/PR we are going to open one after another #380 #381 #382 #383 etc ... it might seems big because it lays the ground structure for the others but logically that's one coherent PR ... so only one observable among three would be implemented ... later there will be e.g. summary statistics PR for each of the 3 cluster probes as well etc ... if you want to break it more, we can try no worries .... I see @GiorgioLesci already replied in a more practical way when I was writing this msg so I will let him continue the discussion ... |
|
Hi @zsirap @GiorgioLesci, Thanks for your replies! I agree that the PR is scientifically coherent—apologies if my earlier comments focused too much on its size and complexity. My main concern relates to the guidelines around discussing changes in advance. For example, when I open the issue (#380), it’s difficult to understand what parts of the fork are intended to be merged and what the overall plan is. The purpose of these guidelines is to avoid unnecessary work and ensure alignment early on. From a first look, a few points stand out that would have benefited from prior discussion:
These are exactly the kinds of design decisions it would be helpful to align on before opening a PR. |
that I agree ... it was written by @m-aguena when he opened several issues at the same time ... but I should have elaborated more later because the fork should be considered as our clusters group internal code and not an alternative to cloe .. so the user or reader should not check it but rather stay within main cloe and everthing should be (or end up to be) self explanatory ... we will get back later to the other more technical or design point concerns mentioned which are totally legit at first examination ... no worries |
|
Sure mates, I'm sure we will make it work, I was just concerned you will end up hating me requesting changes. Remember that we envision to make a full code consistent internally among all probes. The challenge is huge, but I'm sure we can make it work! Ping me back when this is no longer a draft. |
@gcanasherrera We are prepared for receiving a bunch of requests for changes, I am used to a multi person PR process and won't take it personally 😉 . As @zsirap mentioned, this PR is still in draft mode as it is a work in progress. But it was good to already have some feedback on the implementations we have, especially with regards of all the auxiliary functions and classes we have. So, where is the correct place to have those design discussions? Direcly on the issue #380? Or is there a telecon where this type of things are discuessed? Cheers, |
|
I guess that at this stage that the PR is still in place, we could continue the discussion here. For the future, please, make the issue a bit more consistent and solid in terms of proposals. Cheers! |
|
@gcanasherrera thanks for the pacience, we are leaning how to work with you guys' framework. After your comments, I have a couple of questions:
|
let's discuss tomorrow among us such major restructuring before we continue here .. in particular we might elaborate on the rationale in the issue on why we considered this structure (if we decide to keep it as is) and continue from there the discussion here with main Cloe maintainers ... |
|
@zsirap if we get the @cloe-org/cloe-maintainers feedback, we don't have to keep guessing what is best structure on our side 😉 |
|
please, following what I commented in task #382, create a |
|
Hi @gcanasherrera , I thought we might discuss the following in the related issue and not here and that after updating and elaborating the description there, but then i thought maybe it is better to sort things out here and then we update the info there .. So after discussing among us here is what we reached: first some clarifications
a) keep it as it is now as we committed it to b) the other side ... which would be moving all what you consider auxiliary alike files to cloelib auxiliary folder + not having any sub folder inside the folder observable + putting all remaining files next or on the same level as the main probes files in the folder observables ...
c) first drop the big folder cluster We are happy to do any of those even b) though we think things will become crowded and less clear to the user in that option Two last minor things we can skip replying/discussing if there is nothing more to add about them and focus on the above:
|
|
I would add a more practical view of the option c) described by Ziad. In that case, we would implement
The final implementation in
The need for folders is easily explained: we can have potentially ~10 models for the halo mass function and ~5 models for halo profiles. Each model lives in a separate py file. @zsirap @m-aguena @gcanasherrera please let me know your thoughts |
* make HaloAbundanceBase a parent class * mv clusters.aux to aux folder * mv dn_dn to parent * mv tests to same folder * add cluster part in doc * rename test * update docs/code_structure/observables/index.md to accomodate for clusters * rename matter_statistics -> halo_model_properties
|
Hello @gcanasherrera. One last point we'd like to raise, following Michel's latest commits, is to replace the word "cluster" with "halo" everywhere except in the Within the
These subpackages contain the theory for dark matter halo statistics, which is used not only in galaxy cluster studies, but also in analyses based on galaxy samples (e.g. shape of galaxy mass profiles from galaxy-galaxy lensing, HMF constraints from galaxy abundance). This renaming would involve the following changes:
|
🚀 Pull Request Checklist
✅ Summary
closes #380
🔄 Changes
🛠 How to Test
to do : maybe transfer parts of the clusters DEMO notebook
📝 Documentation
to do : check if documentation changes are needed
📌 Additional Notes
tagging remaining galaxy clusters developer leads @m-aguena and @GiorgioLesci
✅ PR Checklist for Developers
pre-commit run --all-files✅ PR Checklist for Reviewers
playgroundwill be updated in a corresponding follow-up PRREADME.mdfile