CCL
CCL copied to clipboard
Pass (more) CLASS accuracy parameters from pyccl
At the moment we cannot pass any accuracy parameters to CLASS from the python side, and even from within C we only pass two: z_max_pk and P_k_max_1/Mpc. CLASS has many more accuracy parameters.
Related to this: It has been shown (see e.g. this notebook)) that with (very) high accuracy settings, P(k)'s from CLASS and CAMB basically agree to 1e-4 for all k we care about. However, I checked this high-accuracy-setting CAMB output against P(k) as computed via CCL with our default accuracy settings (see a modified version of that notebook, here) and these agree only at >1e-3.
The result is that for functionality for which we need to benchmark against CAMB or codes based on CAMB (see e.g. PR #442 for mu / Sigma support) we currently need to relax the benchmark agreement requirements to this level.
I think this issue may be obsolete because we now include multiple boltzmann codes so we are no longer benchmarking against camb (since we integrated it). We may still want to pass these accuracy parameters though. Thoughts? @beckermr @damonge @elisachisari
Yes we should keep this open. Also, we in general need to clean up the accuracy parameters and create some simpler-to-understand options for people.