Skip to content

New feature: alternative definition of transfer function - #90

Merged
adrien-laposta merged 18 commits into
mainfrom
mcm_tf_flip
Oct 2, 2026
Merged

adrien-laposta merged 18 commits into
mainfrom
mcm_tf_flip

Conversation

@adrien-laposta

Copy link
Copy Markdown
Collaborator

This PR implements a new feature in soopercool which allows the user to flip between two alternative definitions of the transfer function.

It includes new fields in the parameter file in the transfer_settings block, tf_ordering and power_law_c_ell.
Transfer function estimation now relies on input Cl instead of pseudo-Cl of unfiltered simulations.

@adrien-laposta

Copy link
Copy Markdown
Collaborator Author

A few more words on how to write a parameter file. The transfer function section should be

transfer_settings:
  transfer_directory: /where/to/save/the/tf
  tf_est_num_sims: N
  sim_id_start: 0
  power_law_c_ell: /path/to/powerlaw/cell [format should be a npz file with key ["l", "cl"]
  tf_ordering: "MT"/"TM"
  filtered_map_dir:
    ftag1: /path/to/maps
    ftag2: /path/to/maps
  filtered_map_template:
    ftag1: {pure_type}_{...}_{id_sim:04d}_{...}.fits
    ftag2: {pure_type}_{...}_{id_sim:04d}_{...}.fits

@adrien-laposta

Copy link
Copy Markdown
Collaborator Author

Now added a tutorials directory in the repo to start accumulating small, self-contained notebook numerical breakdown of what we do within the software. The first one is about transfer function definitions and the related linear algebra.

@adrien-laposta
adrien-laposta marked this pull request as ready for review September 14, 2026 15:09
@adrien-laposta

Copy link
Copy Markdown
Collaborator Author

Additional comment:
I did not delete the previous approach relying on the computation of both unfiltered and filtered power law spectra for TF. compute_pseudo_cells_tf_estimation.py will still compute both even if they're not used in the current script to get the transfer function.

I'd like to get your opinion, should we completely remove it ? I have the feeling that letting too many options will lead to confusion. If we need it, we'll still be able to come back to a previous version and compare.

@adrien-laposta adrien-laposta mentioned this pull request Sep 14, 2026
Comment thread soopercool/coupling_utils.py Outdated
Comment thread soopercool/coupling_utils.py
Comment thread soopercool/coupling_utils.py
Comment thread soopercool/coupling_utils.py
Comment thread soopercool/coupling_utils.py
Comment thread soopercool/coupling_utils.py Outdated
Comment thread soopercool/coupling_utils.py Outdated

@kwolz kwolz left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Sound good to me, happy for this to merged!

@damonge damonge left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Just a few small comments. Looks good to me.

Comment thread pipeline/transfer/compute_transfer_function.py Outdated
Comment thread soopercool/coupling_utils.py Outdated
Comment thread soopercool/coupling_utils.py Outdated
@adrien-laposta
adrien-laposta merged commit 6191a79 into main Oct 2, 2026
1 check passed
@adrien-laposta
adrien-laposta deleted the mcm_tf_flip branch October 2, 2026 16:48
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.

3 participants