Extrapolation at low k issue in cosmic emu power spectrum
The example scripts show a significant discrepancy at k < 10^-3 between the matter power spectrum of cosmic Emu and the linear power spectra implemented:

The lower k limit of the emulator is 0.001 Mpc^-1 (note no h factor), so this should be the hand-over limit between the cosmic emulator and the low-k extrapolation. There seems to be an issue in this hand-over causing a 10% level error.
We should check whether this is truly an extrapolation issue. The other issue here that we discussed was the fact that none of the linear power spectra options of CCL are consistent with the emulator. This is actually thrown as a warning already (by core.py).
We are seeing a difference between the linear power out of CAMB and the nonlinear emulated power at large scales. Possible reasons:
- The emulated power at large scales should be within a few % of the CAMB linear power spectrum, by construction.
- But we are also seeing a larger difference at k<1e-3/Mpc. This could be because we extrapolate CAMB or we extrapolate the emulator. We need to check which of those.
- We should also check the accuracy of our extrapolation at high-k as well as low-k #499. @patricialarsen suggests Padé at high-k.
I've checked and the issue here is extrapolating the emulated P(k). At k=0.001 the slope is about 0.87, which is sufficiently far from n_s=0.96 to cause this. I can't really see an easy solution to this beyond throwing a warning. The other solutions I can think of are:
- Using the linear P(k) below k=0.001. But in this case we know that Emu doesn't really match any of our linear P(k) predictions, so this may cause a discontinuity.
- Making the low-k extrapolation a bit more complicated, so that it can taper off between whatever the slope is at k_min and the slope we know (n_s) at k~0.0001. There are many ways of parametrising this, but I'm not convinced that this level of complexity is required.
Any thoughts @elisachisari ?