We present a new method for calculating CMB anisotropies in a non-flat Friedmann universe, relying on a very stable algorithm for the calculation of hyperspherical Bessel functions, that can be pushed to arbitrary precision levels. We also introduce a new approximation scheme which gradually takes over in the flat space limit and leads to significant reductions of the computation time. Our method is implemented in the Boltzmann code CLASS. It can be used to benchmark the accuracy of the CAMB code in curved space, which is found to match expectations. For default precision settings, corresponding to 0.1% for scalar temperature spectra and 0.2% for scalar polarisation spectra, our code is two to three times faster, depending on curvature. We also simplify the temperature and polarisation source terms significantly, so the different contributions to the C-l's are easy to identify inside the code.
Georges Meylan, Frédéric Courbin, Fabio Finelli, Richard Massey, Maurizio Martinelli, Gianluca Castignani, Marcello Farina, Austin Chandler Peel, Yi Wang
Slobodan Ilic, Malte Tewes, Georges Meylan, Frédéric Courbin, Fabio Finelli, Richard Massey, Maurizio Martinelli, Alessandro Pezzotta, Gianluca Castignani, Marcello Farina, Yi Wang
Nan Li, Jean-Paul Richard Kneib, Huanyuan Shan