maho3 / ltu-cmass

A modular simulator of CMASS-NGC galaxy clustering
9 stars 1 forks source link

Fix the BORGLPT transfer function #2

Closed maho3 closed 7 months ago

maho3 commented 1 year ago

Currently, there is a power discrepancy between outputs of BORGLPT and pmwd's internal 2LPT.

image

Everything seems to be in the right configuration, but at about 30% difference in power. This power differential seems to be dependent on cosmology (linearly anticorrelated with Omega_m).

The likely culprit is that, though the transfer function for both codes is Eisenstein-Hu, pmwd fits A_s with a boltzmann code, while BORG seems to use some sort of crude emulator. This results in a different initial scaling to the power spectrum.

Solutions:

As a temporary solution, I think we should pursue the latter. However, when jax_lpt becomes independent of BORG we should consider using that one to make everything self-consistent

maho3 commented 7 months ago

Somehow, in the new versions of pmwd, this isn't a problem.

Either they fixed pmwd to match the BORG LPT, or pmwd's PM code can automatically take its own LPT and produce the right z=0 fields. I tested this exhaustively across many cosmologies and both BORG-LPT and PMWD were consistent with Quijote.

In any case, this isn't a problem anymore.