external dark energy
Posted: August 17 2022
Hi,
I'm attempting to modify Cobaya to replicate the external_priomordial_pk functionality, but for the dark energy equation of state parameter w(a). I am using PolyChord as my sampler.
I have made a theory class which takes several (a, w) values as its parameters, and uses these to create a much denser linear spline which is added to the state dictionary. I have added a boolean external_wa parameter to cobaya.theories.camb.camb.CAMB, which if True then uses the set_dark_energy_wa() method to add these to the CAMB parameters in set(). I've reordered things so that this is set before all the other parameters, to avoid complications where dark energy needs to be set first.
To ensure that CAMB.set() is called when any of the dark energy parameters are changed, I've been manually putting those parameters in the same blocking as the other CAMB parameters (theta_MC_100, ombh2, omch2, tau) in the yaml file, but this means I also have to specify the oversampling factors. I think either must_provide() or get_requirements() should be used to indicate the CAMB theory depends on my dark energy theory, but I'm not sure how.
If anyone could explain how to specify this dependency that would be great!
Adam
I'm attempting to modify Cobaya to replicate the external_priomordial_pk functionality, but for the dark energy equation of state parameter w(a). I am using PolyChord as my sampler.
I have made a theory class which takes several (a, w) values as its parameters, and uses these to create a much denser linear spline which is added to the state dictionary. I have added a boolean external_wa parameter to cobaya.theories.camb.camb.CAMB, which if True then uses the set_dark_energy_wa() method to add these to the CAMB parameters in set(). I've reordered things so that this is set before all the other parameters, to avoid complications where dark energy needs to be set first.
To ensure that CAMB.set() is called when any of the dark energy parameters are changed, I've been manually putting those parameters in the same blocking as the other CAMB parameters (theta_MC_100, ombh2, omch2, tau) in the yaml file, but this means I also have to specify the oversampling factors. I think either must_provide() or get_requirements() should be used to indicate the CAMB theory depends on my dark energy theory, but I'm not sure how.
If anyone could explain how to specify this dependency that would be great!
Adam