pyccl 3.3.2__tar.gz → 3.3.4__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (740) hide show
  1. {pyccl-3.3.2 → pyccl-3.3.4}/.github/environment.yml +2 -1
  2. {pyccl-3.3.2 → pyccl-3.3.4}/.github/workflows/ci.yml +6 -5
  3. pyccl-3.3.4/.github/workflows/publish.yml +111 -0
  4. {pyccl-3.3.2/pyccl.egg-info → pyccl-3.3.4}/PKG-INFO +1 -1
  5. {pyccl-3.3.2 → pyccl-3.3.4}/cmake/Modules/BuildFFTW.cmake +1 -1
  6. {pyccl-3.3.2 → pyccl-3.3.4}/cmake/Modules/FindPythonLibsNew.cmake +4 -4
  7. {pyccl-3.3.2 → pyccl-3.3.4}/pyccl/CMakeLists.txt +5 -7
  8. {pyccl-3.3.2 → pyccl-3.3.4}/pyccl/nonlimber/_nonlimber_FKEM.py +64 -13
  9. {pyccl-3.3.2 → pyccl-3.3.4}/pyccl/tests/test_cells.py +98 -0
  10. {pyccl-3.3.2 → pyccl-3.3.4/pyccl.egg-info}/PKG-INFO +1 -1
  11. {pyccl-3.3.2 → pyccl-3.3.4}/pyproject.toml +14 -4
  12. {pyccl-3.3.2 → pyccl-3.3.4}/setup.py +11 -2
  13. {pyccl-3.3.2 → pyccl-3.3.4}/src/ccl_fftlog.c +12 -16
  14. {pyccl-3.3.2 → pyccl-3.3.4}/src/ccl_power.c +5 -3
  15. pyccl-3.3.2/.github/workflows/publish.yml +0 -35
  16. {pyccl-3.3.2 → pyccl-3.3.4}/CHANGELOG.md +0 -0
  17. {pyccl-3.3.2 → pyccl-3.3.4}/CMakeLists.txt +0 -0
  18. {pyccl-3.3.2 → pyccl-3.3.4}/CONTRIBUTING.md +0 -0
  19. {pyccl-3.3.2 → pyccl-3.3.4}/LICENSE +0 -0
  20. {pyccl-3.3.2 → pyccl-3.3.4}/LICENSE_COSMICEMU +0 -0
  21. {pyccl-3.3.2 → pyccl-3.3.4}/MANIFEST.in +0 -0
  22. {pyccl-3.3.2 → pyccl-3.3.4}/Makefile +0 -0
  23. {pyccl-3.3.2 → pyccl-3.3.4}/README.md +0 -0
  24. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/ccl_test.c +0 -0
  25. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/ccl_test_f2d.c +0 -0
  26. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/ccl_test_f3d.c +0 -0
  27. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/ccl_test_utils.c +0 -0
  28. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/conftest.py +0 -0
  29. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/ctest.h +0 -0
  30. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/IA_halomodel_Cell_test.txt +0 -0
  31. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/IA_halomodel_norm_term.dat +0 -0
  32. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/Uchuu_m200-c200.crs.all +0 -0
  33. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/Uchuu_m200-c200.crs.relaxed +0 -0
  34. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/Uchuu_m200-c200.cvmax.all +0 -0
  35. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/Uchuu_m200-c200.cvmax.relaxed +0 -0
  36. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/Uchuu_m500-c500.crs.all +0 -0
  37. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/Uchuu_m500-c500.crs.relaxed +0 -0
  38. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/Uchuu_mvir-cvir.crs.all +0 -0
  39. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/Uchuu_mvir-cvir.crs.relaxed +0 -0
  40. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/Uchuu_mvir-cvir.cvmax.all +0 -0
  41. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/Uchuu_mvir-cvir.cvmax.relaxed +0 -0
  42. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/Xim_isitgr_linear_prediction.dat +0 -0
  43. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/Xim_isitgr_linear_scale_dependence_prediction.dat +0 -0
  44. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/Xim_linear_prediction.dat +0 -0
  45. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/Xim_linear_predictionSD.dat +0 -0
  46. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/Xim_linear_predictionSI.dat +0 -0
  47. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/Xip_isitgr_linear_prediction.dat +0 -0
  48. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/Xip_isitgr_linear_scale_dependence_prediction.dat +0 -0
  49. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/Xip_linear_prediction.dat +0 -0
  50. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/Xip_linear_predictionSD.dat +0 -0
  51. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/Xip_linear_predictionSI.dat +0 -0
  52. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/angpow_gg.txt +0 -0
  53. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/baccoemu_baryons_fk.txt +0 -0
  54. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/baccoemu_linear.txt +0 -0
  55. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/baccoemu_nonlinear.txt +0 -0
  56. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/bin1_histo.txt +0 -0
  57. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/bin2_histo.txt +0 -0
  58. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/chi_allz_class_CCL1-11.txt +0 -0
  59. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/chi_class_allz.txt +0 -0
  60. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/chi_class_extra_mnu.txt +0 -0
  61. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/chi_class_hiz.txt +0 -0
  62. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/chi_class_lowz.txt +0 -0
  63. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/chi_hiz_mnu_model1-5.txt +0 -0
  64. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/chi_hiz_model1-3.txt +0 -0
  65. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/chi_mnu_model1-5.txt +0 -0
  66. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/chi_model1-5.txt +0 -0
  67. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/cib_class_sz_szpowerspectrum.txt +0 -0
  68. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/cl_hod.txt +0 -0
  69. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/codes/3dcorr_benchmark.ipynb +0 -0
  70. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/codes/CosmicEmuMTII/P_cb/emu.c +0 -0
  71. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/codes/CosmicEmuMTII/P_cb/makefile +0 -0
  72. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/codes/CosmicEmuMTII/P_cb/params.h +0 -0
  73. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/codes/CosmicEmuMTII/P_tot/emu.c +0 -0
  74. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/codes/CosmicEmuMTII/P_tot/makefile +0 -0
  75. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/codes/CosmicEmuMTII/P_tot/params.h +0 -0
  76. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/codes/CosmicEmuMTII/get_bms.py +0 -0
  77. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/codes/CosmicEmuMTIV/P_cb/emu.c +0 -0
  78. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/codes/CosmicEmuMTIV/P_cb/makefile +0 -0
  79. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/codes/CosmicEmuMTIV/P_cb/params.h +0 -0
  80. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/codes/CosmicEmuMTIV/P_tot/emu.c +0 -0
  81. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/codes/CosmicEmuMTIV/P_tot/makefile +0 -0
  82. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/codes/CosmicEmuMTIV/P_tot/params.h +0 -0
  83. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/codes/CosmicEmuMTIV/get_bms.py +0 -0
  84. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/codes/IAhalo_normalisation_benchmark.py +0 -0
  85. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/codes/README.md +0 -0
  86. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/codes/angpow_benchmarks.c +0 -0
  87. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/codes/bbks_bm.py +0 -0
  88. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/codes/bcm_bm.c +0 -0
  89. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/codes/bocquet20mf.py +0 -0
  90. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/codes/cib_cl_benchmark.sh +0 -0
  91. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/codes/cl_cmbl_bm.py +0 -0
  92. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/codes/cl_cmblx_bm.py +0 -0
  93. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/codes/cl_corr_bm/Makefile +0 -0
  94. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/codes/cl_corr_bm/curves/bias.txt +0 -0
  95. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/codes/cl_corr_bm/curves/bin1_analytic.txt +0 -0
  96. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/codes/cl_corr_bm/curves/bin1_histo.txt +0 -0
  97. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/codes/cl_corr_bm/curves/bin2_analytic.txt +0 -0
  98. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/codes/cl_corr_bm/curves/bin2_histo.txt +0 -0
  99. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/codes/cl_corr_bm/curves/mk_bins.py +0 -0
  100. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/codes/cl_corr_bm/curves/old/LSST_gold_cl_b4_nz.txt +0 -0
  101. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/codes/cl_corr_bm/curves/old/bins.txt +0 -0
  102. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/codes/cl_corr_bm/curves/old/bz_blue.txt +0 -0
  103. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/codes/cl_corr_bm/curves/old/e_bias_test.txt +0 -0
  104. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/codes/cl_corr_bm/curves/old/pk.txt +0 -0
  105. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/codes/cl_corr_bm/curves/old/sz_blue.txt +0 -0
  106. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/codes/cl_corr_bm/curves/z_DESC-CC +0 -0
  107. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/codes/cl_corr_bm/run_all.py +0 -0
  108. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/codes/cl_corr_bm/src/common.c +0 -0
  109. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/codes/cl_corr_bm/src/common.h +0 -0
  110. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/codes/cl_corr_bm/src/cosmo.c +0 -0
  111. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/codes/cl_corr_bm/src/io.c +0 -0
  112. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/codes/cl_corr_bm/src/limberjack.c +0 -0
  113. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/codes/cl_corr_bm/src/params.h +0 -0
  114. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/codes/cl_corr_bm/src/spectra.c +0 -0
  115. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/codes/cl_corr_bm/src/transfers.c +0 -0
  116. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/codes/class_sz_P13.ini +0 -0
  117. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/codes/class_sz_cib.ini +0 -0
  118. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/codes/create_CLASS_distance_benchmarks.ipynb +0 -0
  119. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/codes/distances_bm.py +0 -0
  120. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/codes/distances_hiz_bm.py +0 -0
  121. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/codes/ehpk_bm.py +0 -0
  122. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/codes/ggl_benchmarks.zip +0 -0
  123. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/codes/growth_allz.py +0 -0
  124. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/codes/growth_hiz_bm.py +0 -0
  125. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/codes/growth_lowz_bm.py +0 -0
  126. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/codes/growth_paper.py +0 -0
  127. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/codes/halomod_IA_FFTLog_accuracy.ipynb +0 -0
  128. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/codes/halomod_bm.py +0 -0
  129. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/codes/hmf_bm.py +0 -0
  130. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/codes/hod_bm.py +0 -0
  131. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/codes/hod_cl_benchmark.sh +0 -0
  132. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/codes/kNL.txt +0 -0
  133. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/codes/kNL_benchmark.ipynb +0 -0
  134. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/codes/kNL_benchmark.py +0 -0
  135. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/codes/manually_test_power_mnu.ipynb +0 -0
  136. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/codes/mdef_colossus.py +0 -0
  137. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/codes/model1_nl_pk.dat +0 -0
  138. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/codes/model1_pk.dat +0 -0
  139. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/codes/model1_pk_eh.txt +0 -0
  140. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/codes/model1_pk_nu.ini +0 -0
  141. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/codes/model2_nl_pk.dat +0 -0
  142. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/codes/model2_pk.dat +0 -0
  143. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/codes/model2_pk_nu.ini +0 -0
  144. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/codes/model3_nl_pk.dat +0 -0
  145. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/codes/model3_pk.dat +0 -0
  146. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/codes/model3_pk_nu.ini +0 -0
  147. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/codes/multiple_neutrino_distances.ipynb +0 -0
  148. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/codes/numcosmo_halo_number_counts.py +0 -0
  149. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/codes/param_space.py +0 -0
  150. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/codes/pt_bm.py +0 -0
  151. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/codes/pt_bm_lpt.py +0 -0
  152. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/codes/run_pk_param_space.py +0 -0
  153. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/codes/sigmaM_bm.py +0 -0
  154. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/codes/sz_cl_benchmark.sh +0 -0
  155. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/conc_bm.txt +0 -0
  156. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/cosmo1_MTII_cb_0.txt +0 -0
  157. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/cosmo1_MTII_cb_1.txt +0 -0
  158. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/cosmo1_MTII_tot_0.txt +0 -0
  159. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/cosmo1_MTII_tot_1.txt +0 -0
  160. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/cosmo1_cb_0.txt +0 -0
  161. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/cosmo1_cb_1.txt +0 -0
  162. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/cosmo1_tot_0.txt +0 -0
  163. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/cosmo1_tot_1.txt +0 -0
  164. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/cosmo2_MTII_cb_0.txt +0 -0
  165. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/cosmo2_MTII_cb_1.txt +0 -0
  166. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/cosmo2_MTII_tot_0.txt +0 -0
  167. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/cosmo2_MTII_tot_1.txt +0 -0
  168. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/cosmo2_cb_0.txt +0 -0
  169. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/cosmo2_cb_1.txt +0 -0
  170. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/cosmo2_tot_0.txt +0 -0
  171. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/cosmo2_tot_1.txt +0 -0
  172. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/covariances/ssc_WL_cov_matrix.txt +0 -0
  173. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/covariances/ssc_WL_ell.txt +0 -0
  174. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/covariances/ssc_WL_nofz.txt +0 -0
  175. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/dNdzs.npz +0 -0
  176. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/dm_class_allz.txt +0 -0
  177. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/dm_class_extra_mnu.txt +0 -0
  178. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/dm_hiz_mnu_model1-5.txt +0 -0
  179. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/dm_mnu_model1-5.txt +0 -0
  180. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/dm_model1-5.txt +0 -0
  181. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/emu_cosmologies.txt +0 -0
  182. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/emu_input_cosmologies.txt +0 -0
  183. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/emu_nu_cosmologies.txt +0 -0
  184. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/emu_nu_smooth_pk_M38.txt +0 -0
  185. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/emu_nu_smooth_pk_M39.txt +0 -0
  186. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/emu_nu_smooth_pk_M40.txt +0 -0
  187. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/emu_nu_smooth_pk_M42.txt +0 -0
  188. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/emu_smooth_pk_M1.txt +0 -0
  189. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/emu_smooth_pk_M10.txt +0 -0
  190. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/emu_smooth_pk_M3.txt +0 -0
  191. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/emu_smooth_pk_M5.txt +0 -0
  192. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/emu_smooth_pk_M6.txt +0 -0
  193. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/emu_smooth_pk_M8.txt +0 -0
  194. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/gammat_corr_MG.dat +0 -0
  195. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/gammat_isitgr_linear_prediction.dat +0 -0
  196. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/gammat_isitgr_linear_scale_dependence_prediction.dat +0 -0
  197. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/gammat_linear_prediction.dat +0 -0
  198. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/gammat_linear_predictionSD.dat +0 -0
  199. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/gammat_linear_predictionSI.dat +0 -0
  200. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/gammat_mu_0p1_Sigma_0p1.dat +0 -0
  201. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/growth_allz_cosmomad_ccl1-5.txt +0 -0
  202. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/growth_cosmomad_allz.txt +0 -0
  203. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/growth_hiz_model1-3.txt +0 -0
  204. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/growth_model1-5.txt +0 -0
  205. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/haloprofile_einasto_colossus.txt +0 -0
  206. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/haloprofile_hernquist_colossus.txt +0 -0
  207. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/haloprofile_nfw_colossus.txt +0 -0
  208. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/haloprofile_nfw_wl_numcosmo.txt +0 -0
  209. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/haloprofile_projected_nfw_colossus.txt +0 -0
  210. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/hbf_bhattacharya11.txt +0 -0
  211. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/hbf_sheth01.txt +0 -0
  212. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/hbf_tinker10.txt +0 -0
  213. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/hmf_angulo12.txt +0 -0
  214. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/hmf_bocquet16.txt +0 -0
  215. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/hmf_despali16.txt +0 -0
  216. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/hmf_despali16_m200c.txt +0 -0
  217. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/hmf_jenkins01.txt +0 -0
  218. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/hmf_nishimichi19.txt +0 -0
  219. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/hmf_press74.txt +0 -0
  220. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/hmf_sheth99.txt +0 -0
  221. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/hmf_tinker08.txt +0 -0
  222. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/hmf_watson13.txt +0 -0
  223. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/ia_amp_analytic_1.txt +0 -0
  224. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/ia_amp_analytic_2.txt +0 -0
  225. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/ia_amp_histo_1.txt +0 -0
  226. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/ia_amp_histo_2.txt +0 -0
  227. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/kNL.txt +0 -0
  228. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/k_hod.txt +0 -0
  229. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/mdef_bm.txt +0 -0
  230. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/mf_bocquet20mf.py.npz +0 -0
  231. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/mfunc.txt +0 -0
  232. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/model0_pk_MG.dat +0 -0
  233. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/model0_pk_MG_matterpower.dat +0 -0
  234. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/model0_pk_isitgr_matterpower.dat +0 -0
  235. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/model1_chi.txt +0 -0
  236. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/model1_gf.txt +0 -0
  237. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/model1_hmf.txt +0 -0
  238. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/model1_nowig_pk_eh.txt +0 -0
  239. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/model1_pk.txt +0 -0
  240. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/model1_pk_MG.dat +0 -0
  241. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/model1_pk_MG_matterpower.dat +0 -0
  242. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/model1_pk_eh.txt +0 -0
  243. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/model1_pk_isitgr_matterpower.dat +0 -0
  244. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/model1_sm.txt +0 -0
  245. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/model1_xi.txt +0 -0
  246. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/model1_xiRSD.txt +0 -0
  247. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/model2_chi.txt +0 -0
  248. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/model2_gf.txt +0 -0
  249. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/model2_pk.txt +0 -0
  250. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/model2_pk_MG.dat +0 -0
  251. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/model2_pk_MG_matterpower.dat +0 -0
  252. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/model2_pk_isitgr_matterpower.dat +0 -0
  253. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/model2_sm.txt +0 -0
  254. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/model2_xi.txt +0 -0
  255. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/model2_xiRSD.txt +0 -0
  256. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/model3_chi.txt +0 -0
  257. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/model3_gf.txt +0 -0
  258. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/model3_pk.txt +0 -0
  259. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/model3_pk_MG.dat +0 -0
  260. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/model3_pk_MG_matterpower.dat +0 -0
  261. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/model3_pk_isitgr_matterpower.dat +0 -0
  262. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/model3_sm.txt +0 -0
  263. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/model3_xi.txt +0 -0
  264. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/model3_xiRSD.txt +0 -0
  265. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/model4_pk_MG.dat +0 -0
  266. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/model4_pk_MG_matterpower.dat +0 -0
  267. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/model4_pk_isitgr_matterpower.dat +0 -0
  268. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/nonlimber/background.npz +0 -0
  269. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/nonlimber/benchmarks_nl_full_clgg.npz +0 -0
  270. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/nonlimber/benchmarks_nl_full_clgs.npz +0 -0
  271. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/nonlimber/benchmarks_nl_full_clss.npz +0 -0
  272. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/nonlimber/dNdzs_fullwidth.npz +0 -0
  273. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/nonlimber/kernels_fullwidth.npz +0 -0
  274. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/nonlimber/pk.npz +0 -0
  275. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/numcosmo_cluster_counts.txt +0 -0
  276. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/oldcorrfiles/run_analytic_log_wt_dd.txt +0 -0
  277. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/oldcorrfiles/run_analytic_log_wt_ll_mm.txt +0 -0
  278. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/oldcorrfiles/run_analytic_log_wt_ll_pp.txt +0 -0
  279. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/oldcorrfiles/run_b1b1analytic_log_wt_dd.txt +0 -0
  280. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/oldcorrfiles/run_b1b1analytic_log_wt_ll_mm.txt +0 -0
  281. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/oldcorrfiles/run_b1b1analytic_log_wt_ll_pp.txt +0 -0
  282. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/oldcorrfiles/run_b1b1histo_log_wt_dd.txt +0 -0
  283. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/oldcorrfiles/run_b1b1histo_log_wt_ll_mm.txt +0 -0
  284. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/oldcorrfiles/run_b1b1histo_log_wt_ll_pp.txt +0 -0
  285. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/oldcorrfiles/run_b1b2analytic_log_wt_dd.txt +0 -0
  286. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/oldcorrfiles/run_b1b2analytic_log_wt_ll_mm.txt +0 -0
  287. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/oldcorrfiles/run_b1b2analytic_log_wt_ll_pp.txt +0 -0
  288. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/oldcorrfiles/run_b1b2histo_log_wt_dd.txt +0 -0
  289. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/oldcorrfiles/run_b1b2histo_log_wt_ll_mm.txt +0 -0
  290. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/oldcorrfiles/run_b1b2histo_log_wt_ll_pp.txt +0 -0
  291. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/oldcorrfiles/run_b2b2analytic_log_wt_dd.txt +0 -0
  292. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/oldcorrfiles/run_b2b2analytic_log_wt_ll_mm.txt +0 -0
  293. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/oldcorrfiles/run_b2b2analytic_log_wt_ll_pp.txt +0 -0
  294. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/oldcorrfiles/run_b2b2histo_log_wt_dd.txt +0 -0
  295. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/oldcorrfiles/run_b2b2histo_log_wt_ll_mm.txt +0 -0
  296. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/oldcorrfiles/run_b2b2histo_log_wt_ll_pp.txt +0 -0
  297. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/pk_hm_c1_z0.txt +0 -0
  298. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/pk_hm_c1_z1.txt +0 -0
  299. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/pk_hm_c2_z0.txt +0 -0
  300. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/pk_hm_c2_z1.txt +0 -0
  301. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/pk_hm_c3_z0.txt +0 -0
  302. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/pk_hm_c3_z1.txt +0 -0
  303. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/pk_hod.txt +0 -0
  304. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/pt_bm_bacco_lbias_z0.txt +0 -0
  305. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/pt_bm_bacco_lbias_z1.txt +0 -0
  306. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/pt_bm_lpt_z0.txt +0 -0
  307. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/pt_bm_lpt_z1.txt +0 -0
  308. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/pt_bm_z0.txt +0 -0
  309. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/pt_bm_z1.txt +0 -0
  310. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/run_analytic_log_cl_dd.txt +0 -0
  311. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/run_analytic_log_cl_ll.txt +0 -0
  312. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/run_analytic_log_wt_dd.txt +0 -0
  313. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/run_analytic_log_wt_ll_mm.txt +0 -0
  314. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/run_analytic_log_wt_ll_pp.txt +0 -0
  315. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/run_b1b1analytic_log_cl_dc.txt +0 -0
  316. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/run_b1b1analytic_log_cl_dd.txt +0 -0
  317. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/run_b1b1analytic_log_cl_di.txt +0 -0
  318. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/run_b1b1analytic_log_cl_dl.txt +0 -0
  319. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/run_b1b1analytic_log_cl_ii.txt +0 -0
  320. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/run_b1b1analytic_log_cl_lc.txt +0 -0
  321. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/run_b1b1analytic_log_cl_li.txt +0 -0
  322. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/run_b1b1analytic_log_cl_ll.txt +0 -0
  323. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/run_b1b1analytic_log_wt_dd.txt +0 -0
  324. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/run_b1b1analytic_log_wt_di.txt +0 -0
  325. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/run_b1b1analytic_log_wt_dl.txt +0 -0
  326. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/run_b1b1analytic_log_wt_dltot.txt +0 -0
  327. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/run_b1b1analytic_log_wt_ii_mm.txt +0 -0
  328. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/run_b1b1analytic_log_wt_ii_pp.txt +0 -0
  329. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/run_b1b1analytic_log_wt_li_mm.txt +0 -0
  330. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/run_b1b1analytic_log_wt_li_pp.txt +0 -0
  331. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/run_b1b1analytic_log_wt_ll_mm.txt +0 -0
  332. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/run_b1b1analytic_log_wt_ll_pp.txt +0 -0
  333. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/run_b1b1analytic_log_wt_lltot_mm.txt +0 -0
  334. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/run_b1b1analytic_log_wt_lltot_pp.txt +0 -0
  335. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/run_b1b1histo_log_cl_dc.txt +0 -0
  336. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/run_b1b1histo_log_cl_dd.txt +0 -0
  337. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/run_b1b1histo_log_cl_di.txt +0 -0
  338. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/run_b1b1histo_log_cl_dl.txt +0 -0
  339. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/run_b1b1histo_log_cl_ii.txt +0 -0
  340. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/run_b1b1histo_log_cl_lc.txt +0 -0
  341. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/run_b1b1histo_log_cl_li.txt +0 -0
  342. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/run_b1b1histo_log_cl_ll.txt +0 -0
  343. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/run_b1b1histo_log_wt_dd.txt +0 -0
  344. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/run_b1b1histo_log_wt_di.txt +0 -0
  345. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/run_b1b1histo_log_wt_dl.txt +0 -0
  346. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/run_b1b1histo_log_wt_dltot.txt +0 -0
  347. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/run_b1b1histo_log_wt_ii_mm.txt +0 -0
  348. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/run_b1b1histo_log_wt_ii_pp.txt +0 -0
  349. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/run_b1b1histo_log_wt_li_mm.txt +0 -0
  350. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/run_b1b1histo_log_wt_li_pp.txt +0 -0
  351. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/run_b1b1histo_log_wt_ll_mm.txt +0 -0
  352. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/run_b1b1histo_log_wt_ll_pp.txt +0 -0
  353. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/run_b1b1histo_log_wt_lltot_mm.txt +0 -0
  354. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/run_b1b1histo_log_wt_lltot_pp.txt +0 -0
  355. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/run_b1b2analytic_log_cl_dd.txt +0 -0
  356. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/run_b1b2analytic_log_cl_di.txt +0 -0
  357. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/run_b1b2analytic_log_cl_dl.txt +0 -0
  358. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/run_b1b2analytic_log_cl_ii.txt +0 -0
  359. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/run_b1b2analytic_log_cl_li.txt +0 -0
  360. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/run_b1b2analytic_log_cl_ll.txt +0 -0
  361. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/run_b1b2analytic_log_wt_dd.txt +0 -0
  362. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/run_b1b2analytic_log_wt_di.txt +0 -0
  363. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/run_b1b2analytic_log_wt_dl.txt +0 -0
  364. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/run_b1b2analytic_log_wt_dltot.txt +0 -0
  365. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/run_b1b2analytic_log_wt_ii_mm.txt +0 -0
  366. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/run_b1b2analytic_log_wt_ii_pp.txt +0 -0
  367. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/run_b1b2analytic_log_wt_li_mm.txt +0 -0
  368. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/run_b1b2analytic_log_wt_li_pp.txt +0 -0
  369. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/run_b1b2analytic_log_wt_ll_mm.txt +0 -0
  370. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/run_b1b2analytic_log_wt_ll_pp.txt +0 -0
  371. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/run_b1b2analytic_log_wt_lltot_mm.txt +0 -0
  372. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/run_b1b2analytic_log_wt_lltot_pp.txt +0 -0
  373. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/run_b1b2histo_log_cl_dd.txt +0 -0
  374. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/run_b1b2histo_log_cl_di.txt +0 -0
  375. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/run_b1b2histo_log_cl_dl.txt +0 -0
  376. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/run_b1b2histo_log_cl_ii.txt +0 -0
  377. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/run_b1b2histo_log_cl_li.txt +0 -0
  378. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/run_b1b2histo_log_cl_ll.txt +0 -0
  379. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/run_b1b2histo_log_wt_dd.txt +0 -0
  380. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/run_b1b2histo_log_wt_di.txt +0 -0
  381. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/run_b1b2histo_log_wt_dl.txt +0 -0
  382. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/run_b1b2histo_log_wt_dltot.txt +0 -0
  383. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/run_b1b2histo_log_wt_ii_mm.txt +0 -0
  384. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/run_b1b2histo_log_wt_ii_pp.txt +0 -0
  385. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/run_b1b2histo_log_wt_li_mm.txt +0 -0
  386. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/run_b1b2histo_log_wt_li_pp.txt +0 -0
  387. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/run_b1b2histo_log_wt_ll_mm.txt +0 -0
  388. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/run_b1b2histo_log_wt_ll_pp.txt +0 -0
  389. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/run_b1b2histo_log_wt_lltot_mm.txt +0 -0
  390. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/run_b1b2histo_log_wt_lltot_pp.txt +0 -0
  391. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/run_b2b1analytic_log_cl_di.txt +0 -0
  392. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/run_b2b1analytic_log_cl_dl.txt +0 -0
  393. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/run_b2b1analytic_log_wt_di.txt +0 -0
  394. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/run_b2b1analytic_log_wt_dl.txt +0 -0
  395. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/run_b2b1analytic_log_wt_dltot.txt +0 -0
  396. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/run_b2b1histo_log_cl_di.txt +0 -0
  397. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/run_b2b1histo_log_cl_dl.txt +0 -0
  398. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/run_b2b1histo_log_wt_di.txt +0 -0
  399. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/run_b2b1histo_log_wt_dl.txt +0 -0
  400. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/run_b2b1histo_log_wt_dltot.txt +0 -0
  401. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/run_b2b2analytic_log_cl_dc.txt +0 -0
  402. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/run_b2b2analytic_log_cl_dd.txt +0 -0
  403. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/run_b2b2analytic_log_cl_di.txt +0 -0
  404. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/run_b2b2analytic_log_cl_dl.txt +0 -0
  405. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/run_b2b2analytic_log_cl_ii.txt +0 -0
  406. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/run_b2b2analytic_log_cl_lc.txt +0 -0
  407. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/run_b2b2analytic_log_cl_li.txt +0 -0
  408. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/run_b2b2analytic_log_cl_ll.txt +0 -0
  409. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/run_b2b2analytic_log_wt_dd.txt +0 -0
  410. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/run_b2b2analytic_log_wt_di.txt +0 -0
  411. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/run_b2b2analytic_log_wt_dl.txt +0 -0
  412. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/run_b2b2analytic_log_wt_dltot.txt +0 -0
  413. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/run_b2b2analytic_log_wt_ii_mm.txt +0 -0
  414. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/run_b2b2analytic_log_wt_ii_pp.txt +0 -0
  415. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/run_b2b2analytic_log_wt_li_mm.txt +0 -0
  416. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/run_b2b2analytic_log_wt_li_pp.txt +0 -0
  417. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/run_b2b2analytic_log_wt_ll_mm.txt +0 -0
  418. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/run_b2b2analytic_log_wt_ll_pp.txt +0 -0
  419. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/run_b2b2analytic_log_wt_lltot_mm.txt +0 -0
  420. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/run_b2b2analytic_log_wt_lltot_pp.txt +0 -0
  421. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/run_b2b2histo_log_cl_dc.txt +0 -0
  422. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/run_b2b2histo_log_cl_dd.txt +0 -0
  423. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/run_b2b2histo_log_cl_di.txt +0 -0
  424. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/run_b2b2histo_log_cl_dl.txt +0 -0
  425. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/run_b2b2histo_log_cl_ii.txt +0 -0
  426. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/run_b2b2histo_log_cl_lc.txt +0 -0
  427. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/run_b2b2histo_log_cl_li.txt +0 -0
  428. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/run_b2b2histo_log_cl_ll.txt +0 -0
  429. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/run_b2b2histo_log_wt_dd.txt +0 -0
  430. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/run_b2b2histo_log_wt_di.txt +0 -0
  431. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/run_b2b2histo_log_wt_dl.txt +0 -0
  432. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/run_b2b2histo_log_wt_dltot.txt +0 -0
  433. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/run_b2b2histo_log_wt_ii_mm.txt +0 -0
  434. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/run_b2b2histo_log_wt_ii_pp.txt +0 -0
  435. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/run_b2b2histo_log_wt_li_mm.txt +0 -0
  436. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/run_b2b2histo_log_wt_li_pp.txt +0 -0
  437. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/run_b2b2histo_log_wt_ll_mm.txt +0 -0
  438. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/run_b2b2histo_log_wt_ll_pp.txt +0 -0
  439. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/run_b2b2histo_log_wt_lltot_mm.txt +0 -0
  440. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/run_b2b2histo_log_wt_lltot_pp.txt +0 -0
  441. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/run_log_cl_cc.txt +0 -0
  442. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/satellite_shear_profile_cosmoSIS_dev.txt +0 -0
  443. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/sigma_clustering_Nbin5 +0 -0
  444. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/sigma_ggl_Nbin5 +0 -0
  445. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/sigma_xi+_Nbin5 +0 -0
  446. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/sigma_xi-_Nbin5 +0 -0
  447. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/sz_cl_P13_szpowerspectrum.txt +0 -0
  448. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/tSZ_trispectrum_ref_for_cobaya.txt +0 -0
  449. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/theta_corr_MG.dat +0 -0
  450. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/trispectrum_terms.npz +0 -0
  451. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/w_baryonspk_nl.dat +0 -0
  452. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/wo_baryonspk_nl.dat +0 -0
  453. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/wtheta_corr_MG.dat +0 -0
  454. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/wtheta_isitgr_linear_prediction.dat +0 -0
  455. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/wtheta_isitgr_linear_scale_dependence_prediction.dat +0 -0
  456. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/wtheta_linear_prediction.dat +0 -0
  457. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/wtheta_linear_predictionSD.dat +0 -0
  458. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/wtheta_linear_predictionSI.dat +0 -0
  459. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/wtheta_mu_0p1_Sigma_0p1.dat +0 -0
  460. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/xim_corr_MG.dat +0 -0
  461. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/xim_mu_0p1_Sigma_0p1.dat +0 -0
  462. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/xip_corr_MG.dat +0 -0
  463. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/xip_mu_0p1_Sigma_0p1.dat +0 -0
  464. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/data/z_hod.txt +0 -0
  465. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/high_prec_pk_benchmarks.ipynb +0 -0
  466. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/test_baccoemu_baryons.py +0 -0
  467. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/test_baccoemu_linear.py +0 -0
  468. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/test_baccoemu_nonlinear.py +0 -0
  469. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/test_bbks.py +0 -0
  470. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/test_bcm.py +0 -0
  471. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/test_bocquet20_hmf.py +0 -0
  472. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/test_camb_class_consistent.py +0 -0
  473. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/test_cells.py +0 -0
  474. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/test_cib.py +0 -0
  475. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/test_concentration_Ishiyama21.py +0 -0
  476. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/test_correlation.py +0 -0
  477. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/test_correlation_3d.py +0 -0
  478. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/test_correlation_3drsd.py +0 -0
  479. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/test_correlation_MG.py +0 -0
  480. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/test_correlation_MG2.py +0 -0
  481. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/test_correlation_MG3.py +0 -0
  482. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/test_cosmicemu.py +0 -0
  483. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/test_covariances.py +0 -0
  484. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/test_distances.py +0 -0
  485. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/test_eh.py +0 -0
  486. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/test_growth.py +0 -0
  487. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/test_halomod.py +0 -0
  488. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/test_halomod_numbercounts.py +0 -0
  489. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/test_haloprofile.py +0 -0
  490. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/test_hbf.py +0 -0
  491. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/test_hmf.py +0 -0
  492. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/test_hod.py +0 -0
  493. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/test_ia_profile.py +0 -0
  494. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/test_isw.py +0 -0
  495. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/test_kNL.py +0 -0
  496. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/test_massdef.py +0 -0
  497. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/test_nishimichi19_hmf.py +0 -0
  498. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/test_nonlimber.py +0 -0
  499. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/test_pk_4pt.py +0 -0
  500. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/test_power_mg.py +0 -0
  501. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/test_power_mg2.py +0 -0
  502. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/test_power_nu.py +0 -0
  503. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/test_ptpk.py +0 -0
  504. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/test_ptpk_bacco_lbias.py +0 -0
  505. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/test_ptpk_lpt.py +0 -0
  506. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/test_sigmaM.py +0 -0
  507. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/test_sz.py +0 -0
  508. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/test_timing.py +0 -0
  509. {pyccl-3.3.2 → pyccl-3.3.4}/benchmarks/test_tracers.py +0 -0
  510. {pyccl-3.3.2 → pyccl-3.3.4}/cmake/Modules/BuildGSL.cmake +0 -0
  511. {pyccl-3.3.2 → pyccl-3.3.4}/cmake/Modules/BuildSWIG.cmake +0 -0
  512. {pyccl-3.3.2 → pyccl-3.3.4}/cmake/Modules/FindFFTW.cmake +0 -0
  513. {pyccl-3.3.2 → pyccl-3.3.4}/cmake/Modules/FindNumPy.cmake +0 -0
  514. {pyccl-3.3.2 → pyccl-3.3.4}/cmake/cmake_uninstall.cmake.in +0 -0
  515. {pyccl-3.3.2 → pyccl-3.3.4}/cmake/pkg-config.cmakein +0 -0
  516. {pyccl-3.3.2 → pyccl-3.3.4}/examples/.gitignore +0 -0
  517. {pyccl-3.3.2 → pyccl-3.3.4}/examples/analytic_xi.txt +0 -0
  518. {pyccl-3.3.2 → pyccl-3.3.4}/examples/analytic_xi_1.txt +0 -0
  519. {pyccl-3.3.2 → pyccl-3.3.4}/examples/analytic_xi_2.txt +0 -0
  520. {pyccl-3.3.2 → pyccl-3.3.4}/examples/cache_lin_pre.frac_dev.npy +0 -0
  521. {pyccl-3.3.2 → pyccl-3.3.4}/examples/cache_lin_pre.k_arr.npy +0 -0
  522. {pyccl-3.3.2 → pyccl-3.3.4}/examples/cache_lin_std.frac_dev.npy +0 -0
  523. {pyccl-3.3.2 → pyccl-3.3.4}/examples/cache_lin_std.k_arr.npy +0 -0
  524. {pyccl-3.3.2 → pyccl-3.3.4}/examples/cache_nl_pre.frac_dev.npy +0 -0
  525. {pyccl-3.3.2 → pyccl-3.3.4}/examples/cache_nl_pre.k_arr.npy +0 -0
  526. {pyccl-3.3.2 → pyccl-3.3.4}/examples/cache_nl_std.frac_dev.npy +0 -0
  527. {pyccl-3.3.2 → pyccl-3.3.4}/examples/cache_nl_std.k_arr.npy +0 -0
  528. {pyccl-3.3.2 → pyccl-3.3.4}/examples/larr_cls.txt +0 -0
  529. {pyccl-3.3.2 → pyccl-3.3.4}/examples/model1_xiRSD.txt +0 -0
  530. {pyccl-3.3.2 → pyccl-3.3.4}/examples/pk_spline_bm.npz +0 -0
  531. {pyccl-3.3.2 → pyccl-3.3.4}/examples/pk_spline_bm_v2.npz +0 -0
  532. {pyccl-3.3.2 → pyccl-3.3.4}/examples/pks_lin_comp.txt +0 -0
  533. {pyccl-3.3.2 → pyccl-3.3.4}/examples/pks_lin_test.txt +0 -0
  534. {pyccl-3.3.2 → pyccl-3.3.4}/examples/pks_nlin_comp.txt +0 -0
  535. {pyccl-3.3.2 → pyccl-3.3.4}/examples/pks_nlin_test.txt +0 -0
  536. {pyccl-3.3.2 → pyccl-3.3.4}/examples/std_params.dat +0 -0
  537. {pyccl-3.3.2 → pyccl-3.3.4}/include/ccl.h +0 -0
  538. {pyccl-3.3.2 → pyccl-3.3.4}/include/ccl_background.h +0 -0
  539. {pyccl-3.3.2 → pyccl-3.3.4}/include/ccl_bbks.h +0 -0
  540. {pyccl-3.3.2 → pyccl-3.3.4}/include/ccl_cls.h +0 -0
  541. {pyccl-3.3.2 → pyccl-3.3.4}/include/ccl_config.h +0 -0
  542. {pyccl-3.3.2 → pyccl-3.3.4}/include/ccl_core.h +0 -0
  543. {pyccl-3.3.2 → pyccl-3.3.4}/include/ccl_correlation.h +0 -0
  544. {pyccl-3.3.2 → pyccl-3.3.4}/include/ccl_defs.h +0 -0
  545. {pyccl-3.3.2 → pyccl-3.3.4}/include/ccl_eh.h +0 -0
  546. {pyccl-3.3.2 → pyccl-3.3.4}/include/ccl_error.h +0 -0
  547. {pyccl-3.3.2 → pyccl-3.3.4}/include/ccl_f1d.h +0 -0
  548. {pyccl-3.3.2 → pyccl-3.3.4}/include/ccl_f2d.h +0 -0
  549. {pyccl-3.3.2 → pyccl-3.3.4}/include/ccl_f3d.h +0 -0
  550. {pyccl-3.3.2 → pyccl-3.3.4}/include/ccl_fftlog.h +0 -0
  551. {pyccl-3.3.2 → pyccl-3.3.4}/include/ccl_halofit.h +0 -0
  552. {pyccl-3.3.2 → pyccl-3.3.4}/include/ccl_mass_conversion.h +0 -0
  553. {pyccl-3.3.2 → pyccl-3.3.4}/include/ccl_massfunc.h +0 -0
  554. {pyccl-3.3.2 → pyccl-3.3.4}/include/ccl_musigma.h +0 -0
  555. {pyccl-3.3.2 → pyccl-3.3.4}/include/ccl_neutrinos.h +0 -0
  556. {pyccl-3.3.2 → pyccl-3.3.4}/include/ccl_power.h +0 -0
  557. {pyccl-3.3.2 → pyccl-3.3.4}/include/ccl_tracers.h +0 -0
  558. {pyccl-3.3.2 → pyccl-3.3.4}/include/ccl_utils.h +0 -0
  559. {pyccl-3.3.2 → pyccl-3.3.4}/pyccl/.gitignore +0 -0
  560. {pyccl-3.3.2 → pyccl-3.3.4}/pyccl/__init__.py +0 -0
  561. {pyccl-3.3.2 → pyccl-3.3.4}/pyccl/_core/__init__.py +0 -0
  562. {pyccl-3.3.2 → pyccl-3.3.4}/pyccl/_core/caching.py +0 -0
  563. {pyccl-3.3.2 → pyccl-3.3.4}/pyccl/_core/deprecations.py +0 -0
  564. {pyccl-3.3.2 → pyccl-3.3.4}/pyccl/_core/parameters/__init__.py +0 -0
  565. {pyccl-3.3.2 → pyccl-3.3.4}/pyccl/_core/parameters/cosmology_params.py +0 -0
  566. {pyccl-3.3.2 → pyccl-3.3.4}/pyccl/_core/parameters/fftlog_params.py +0 -0
  567. {pyccl-3.3.2 → pyccl-3.3.4}/pyccl/_core/parameters/parameters_base.py +0 -0
  568. {pyccl-3.3.2 → pyccl-3.3.4}/pyccl/_core/repr_.py +0 -0
  569. {pyccl-3.3.2 → pyccl-3.3.4}/pyccl/_core/schema.py +0 -0
  570. {pyccl-3.3.2 → pyccl-3.3.4}/pyccl/background.py +0 -0
  571. {pyccl-3.3.2 → pyccl-3.3.4}/pyccl/baryons/__init__.py +0 -0
  572. {pyccl-3.3.2 → pyccl-3.3.4}/pyccl/baryons/baccoemu_baryons.py +0 -0
  573. {pyccl-3.3.2 → pyccl-3.3.4}/pyccl/baryons/baryons_base.py +0 -0
  574. {pyccl-3.3.2 → pyccl-3.3.4}/pyccl/baryons/schneider15.py +0 -0
  575. {pyccl-3.3.2 → pyccl-3.3.4}/pyccl/baryons/vandaalen19.py +0 -0
  576. {pyccl-3.3.2 → pyccl-3.3.4}/pyccl/boltzmann.py +0 -0
  577. {pyccl-3.3.2 → pyccl-3.3.4}/pyccl/ccl.i +0 -0
  578. {pyccl-3.3.2 → pyccl-3.3.4}/pyccl/ccl_background.i +0 -0
  579. {pyccl-3.3.2 → pyccl-3.3.4}/pyccl/ccl_cls.i +0 -0
  580. {pyccl-3.3.2 → pyccl-3.3.4}/pyccl/ccl_core.i +0 -0
  581. {pyccl-3.3.2 → pyccl-3.3.4}/pyccl/ccl_correlation.i +0 -0
  582. {pyccl-3.3.2 → pyccl-3.3.4}/pyccl/ccl_covs.i +0 -0
  583. {pyccl-3.3.2 → pyccl-3.3.4}/pyccl/ccl_f1d.i +0 -0
  584. {pyccl-3.3.2 → pyccl-3.3.4}/pyccl/ccl_fftlog.i +0 -0
  585. {pyccl-3.3.2 → pyccl-3.3.4}/pyccl/ccl_mass_conversion.i +0 -0
  586. {pyccl-3.3.2 → pyccl-3.3.4}/pyccl/ccl_musigma.i +0 -0
  587. {pyccl-3.3.2 → pyccl-3.3.4}/pyccl/ccl_neutrinos.i +0 -0
  588. {pyccl-3.3.2 → pyccl-3.3.4}/pyccl/ccl_pk2d.i +0 -0
  589. {pyccl-3.3.2 → pyccl-3.3.4}/pyccl/ccl_power.i +0 -0
  590. {pyccl-3.3.2 → pyccl-3.3.4}/pyccl/ccl_sigM.i +0 -0
  591. {pyccl-3.3.2 → pyccl-3.3.4}/pyccl/ccl_tk3d.i +0 -0
  592. {pyccl-3.3.2 → pyccl-3.3.4}/pyccl/ccl_tracers.i +0 -0
  593. {pyccl-3.3.2 → pyccl-3.3.4}/pyccl/ccl_utils.i +0 -0
  594. {pyccl-3.3.2 → pyccl-3.3.4}/pyccl/cells.py +0 -0
  595. {pyccl-3.3.2 → pyccl-3.3.4}/pyccl/correlations.py +0 -0
  596. {pyccl-3.3.2 → pyccl-3.3.4}/pyccl/cosmology.py +0 -0
  597. {pyccl-3.3.2 → pyccl-3.3.4}/pyccl/covariances.py +0 -0
  598. {pyccl-3.3.2 → pyccl-3.3.4}/pyccl/emulators/__init__.py +0 -0
  599. {pyccl-3.3.2 → pyccl-3.3.4}/pyccl/emulators/baccoemu_linear_pk.py +0 -0
  600. {pyccl-3.3.2 → pyccl-3.3.4}/pyccl/emulators/baccoemu_nonlinear_pk.py +0 -0
  601. {pyccl-3.3.2 → pyccl-3.3.4}/pyccl/emulators/cosmicemu_pk.py +0 -0
  602. {pyccl-3.3.2 → pyccl-3.3.4}/pyccl/emulators/data/CosmicEmu_MTII_2017_Pcb.npz +0 -0
  603. {pyccl-3.3.2 → pyccl-3.3.4}/pyccl/emulators/data/CosmicEmu_MTII_2017_Ptot.npz +0 -0
  604. {pyccl-3.3.2 → pyccl-3.3.4}/pyccl/emulators/data/CosmicEmu_MTIV_2022_Pcb.npz +0 -0
  605. {pyccl-3.3.2 → pyccl-3.3.4}/pyccl/emulators/data/CosmicEmu_MTIV_2022_Ptot.npz +0 -0
  606. {pyccl-3.3.2 → pyccl-3.3.4}/pyccl/emulators/emu_base.py +0 -0
  607. {pyccl-3.3.2 → pyccl-3.3.4}/pyccl/errors.py +0 -0
  608. {pyccl-3.3.2 → pyccl-3.3.4}/pyccl/halos/__init__.py +0 -0
  609. {pyccl-3.3.2 → pyccl-3.3.4}/pyccl/halos/concentration/__init__.py +0 -0
  610. {pyccl-3.3.2 → pyccl-3.3.4}/pyccl/halos/concentration/bhattacharya13.py +0 -0
  611. {pyccl-3.3.2 → pyccl-3.3.4}/pyccl/halos/concentration/constant.py +0 -0
  612. {pyccl-3.3.2 → pyccl-3.3.4}/pyccl/halos/concentration/diemer15.py +0 -0
  613. {pyccl-3.3.2 → pyccl-3.3.4}/pyccl/halos/concentration/duffy08.py +0 -0
  614. {pyccl-3.3.2 → pyccl-3.3.4}/pyccl/halos/concentration/ishiyama21.py +0 -0
  615. {pyccl-3.3.2 → pyccl-3.3.4}/pyccl/halos/concentration/klypin11.py +0 -0
  616. {pyccl-3.3.2 → pyccl-3.3.4}/pyccl/halos/concentration/prada12.py +0 -0
  617. {pyccl-3.3.2 → pyccl-3.3.4}/pyccl/halos/halo_model.py +0 -0
  618. {pyccl-3.3.2 → pyccl-3.3.4}/pyccl/halos/halo_model_base.py +0 -0
  619. {pyccl-3.3.2 → pyccl-3.3.4}/pyccl/halos/hbias/__init__.py +0 -0
  620. {pyccl-3.3.2 → pyccl-3.3.4}/pyccl/halos/hbias/bhattacharya11.py +0 -0
  621. {pyccl-3.3.2 → pyccl-3.3.4}/pyccl/halos/hbias/sheth01.py +0 -0
  622. {pyccl-3.3.2 → pyccl-3.3.4}/pyccl/halos/hbias/sheth99.py +0 -0
  623. {pyccl-3.3.2 → pyccl-3.3.4}/pyccl/halos/hbias/tinker10.py +0 -0
  624. {pyccl-3.3.2 → pyccl-3.3.4}/pyccl/halos/hmfunc/__init__.py +0 -0
  625. {pyccl-3.3.2 → pyccl-3.3.4}/pyccl/halos/hmfunc/angulo12.py +0 -0
  626. {pyccl-3.3.2 → pyccl-3.3.4}/pyccl/halos/hmfunc/bocquet16.py +0 -0
  627. {pyccl-3.3.2 → pyccl-3.3.4}/pyccl/halos/hmfunc/bocquet20.py +0 -0
  628. {pyccl-3.3.2 → pyccl-3.3.4}/pyccl/halos/hmfunc/despali16.py +0 -0
  629. {pyccl-3.3.2 → pyccl-3.3.4}/pyccl/halos/hmfunc/jenkins01.py +0 -0
  630. {pyccl-3.3.2 → pyccl-3.3.4}/pyccl/halos/hmfunc/nishimichi19.py +0 -0
  631. {pyccl-3.3.2 → pyccl-3.3.4}/pyccl/halos/hmfunc/press74.py +0 -0
  632. {pyccl-3.3.2 → pyccl-3.3.4}/pyccl/halos/hmfunc/sheth99.py +0 -0
  633. {pyccl-3.3.2 → pyccl-3.3.4}/pyccl/halos/hmfunc/tinker08.py +0 -0
  634. {pyccl-3.3.2 → pyccl-3.3.4}/pyccl/halos/hmfunc/tinker10.py +0 -0
  635. {pyccl-3.3.2 → pyccl-3.3.4}/pyccl/halos/hmfunc/watson13.py +0 -0
  636. {pyccl-3.3.2 → pyccl-3.3.4}/pyccl/halos/massdef.py +0 -0
  637. {pyccl-3.3.2 → pyccl-3.3.4}/pyccl/halos/pk_1pt.py +0 -0
  638. {pyccl-3.3.2 → pyccl-3.3.4}/pyccl/halos/pk_2pt.py +0 -0
  639. {pyccl-3.3.2 → pyccl-3.3.4}/pyccl/halos/pk_4pt.py +0 -0
  640. {pyccl-3.3.2 → pyccl-3.3.4}/pyccl/halos/profiles/__init__.py +0 -0
  641. {pyccl-3.3.2 → pyccl-3.3.4}/pyccl/halos/profiles/cib_shang12.py +0 -0
  642. {pyccl-3.3.2 → pyccl-3.3.4}/pyccl/halos/profiles/einasto.py +0 -0
  643. {pyccl-3.3.2 → pyccl-3.3.4}/pyccl/halos/profiles/hernquist.py +0 -0
  644. {pyccl-3.3.2 → pyccl-3.3.4}/pyccl/halos/profiles/hod.py +0 -0
  645. {pyccl-3.3.2 → pyccl-3.3.4}/pyccl/halos/profiles/ia.py +0 -0
  646. {pyccl-3.3.2 → pyccl-3.3.4}/pyccl/halos/profiles/nfw.py +0 -0
  647. {pyccl-3.3.2 → pyccl-3.3.4}/pyccl/halos/profiles/pressure_gnfw.py +0 -0
  648. {pyccl-3.3.2 → pyccl-3.3.4}/pyccl/halos/profiles/profile_base.py +0 -0
  649. {pyccl-3.3.2 → pyccl-3.3.4}/pyccl/halos/profiles_2pt.py +0 -0
  650. {pyccl-3.3.2 → pyccl-3.3.4}/pyccl/modified_gravity/__init__.py +0 -0
  651. {pyccl-3.3.2 → pyccl-3.3.4}/pyccl/modified_gravity/modified_gravity_base.py +0 -0
  652. {pyccl-3.3.2 → pyccl-3.3.4}/pyccl/modified_gravity/mu_Sigma.py +0 -0
  653. {pyccl-3.3.2 → pyccl-3.3.4}/pyccl/neutrinos.py +0 -0
  654. {pyccl-3.3.2 → pyccl-3.3.4}/pyccl/nl_pt/__init__.py +0 -0
  655. {pyccl-3.3.2 → pyccl-3.3.4}/pyccl/nl_pt/bacco_lbias.py +0 -0
  656. {pyccl-3.3.2 → pyccl-3.3.4}/pyccl/nl_pt/ept.py +0 -0
  657. {pyccl-3.3.2 → pyccl-3.3.4}/pyccl/nl_pt/lpt.py +0 -0
  658. {pyccl-3.3.2 → pyccl-3.3.4}/pyccl/nl_pt/tracers.py +0 -0
  659. {pyccl-3.3.2 → pyccl-3.3.4}/pyccl/nonlimber/__init__.py +0 -0
  660. {pyccl-3.3.2 → pyccl-3.3.4}/pyccl/numpy.i +0 -0
  661. {pyccl-3.3.2 → pyccl-3.3.4}/pyccl/pk2d.py +0 -0
  662. {pyccl-3.3.2 → pyccl-3.3.4}/pyccl/power.py +0 -0
  663. {pyccl-3.3.2 → pyccl-3.3.4}/pyccl/pyutils.py +0 -0
  664. {pyccl-3.3.2 → pyccl-3.3.4}/pyccl/tests/__init__.py +0 -0
  665. {pyccl-3.3.2 → pyccl-3.3.4}/pyccl/tests/conftest.py +0 -0
  666. {pyccl-3.3.2 → pyccl-3.3.4}/pyccl/tests/test__caching.py +0 -0
  667. {pyccl-3.3.2 → pyccl-3.3.4}/pyccl/tests/test_bacco_lbias_power.py +0 -0
  668. {pyccl-3.3.2 → pyccl-3.3.4}/pyccl/tests/test_baccoemu.py +0 -0
  669. {pyccl-3.3.2 → pyccl-3.3.4}/pyccl/tests/test_background.py +0 -0
  670. {pyccl-3.3.2 → pyccl-3.3.4}/pyccl/tests/test_baryons.py +0 -0
  671. {pyccl-3.3.2 → pyccl-3.3.4}/pyccl/tests/test_baryons_vd19.py +0 -0
  672. {pyccl-3.3.2 → pyccl-3.3.4}/pyccl/tests/test_cclerror.py +0 -0
  673. {pyccl-3.3.2 → pyccl-3.3.4}/pyccl/tests/test_cclobject.py +0 -0
  674. {pyccl-3.3.2 → pyccl-3.3.4}/pyccl/tests/test_concentration.py +0 -0
  675. {pyccl-3.3.2 → pyccl-3.3.4}/pyccl/tests/test_correlations.py +0 -0
  676. {pyccl-3.3.2 → pyccl-3.3.4}/pyccl/tests/test_cosmicemu.py +0 -0
  677. {pyccl-3.3.2 → pyccl-3.3.4}/pyccl/tests/test_cosmology.py +0 -0
  678. {pyccl-3.3.2 → pyccl-3.3.4}/pyccl/tests/test_cosmology_parameters.py +0 -0
  679. {pyccl-3.3.2 → pyccl-3.3.4}/pyccl/tests/test_covariances.py +0 -0
  680. {pyccl-3.3.2 → pyccl-3.3.4}/pyccl/tests/test_ept_power.py +0 -0
  681. {pyccl-3.3.2 → pyccl-3.3.4}/pyccl/tests/test_fftlog.py +0 -0
  682. {pyccl-3.3.2 → pyccl-3.3.4}/pyccl/tests/test_gsl_splines.py +0 -0
  683. {pyccl-3.3.2 → pyccl-3.3.4}/pyccl/tests/test_halofit_highz.py +0 -0
  684. {pyccl-3.3.2 → pyccl-3.3.4}/pyccl/tests/test_halomodel.py +0 -0
  685. {pyccl-3.3.2 → pyccl-3.3.4}/pyccl/tests/test_hashing.py +0 -0
  686. {pyccl-3.3.2 → pyccl-3.3.4}/pyccl/tests/test_hbias.py +0 -0
  687. {pyccl-3.3.2 → pyccl-3.3.4}/pyccl/tests/test_hmcalculator_integrals.py +0 -0
  688. {pyccl-3.3.2 → pyccl-3.3.4}/pyccl/tests/test_hmcalculator_number_counts.py +0 -0
  689. {pyccl-3.3.2 → pyccl-3.3.4}/pyccl/tests/test_hmfunc.py +0 -0
  690. {pyccl-3.3.2 → pyccl-3.3.4}/pyccl/tests/test_lpt_power.py +0 -0
  691. {pyccl-3.3.2 → pyccl-3.3.4}/pyccl/tests/test_m2r_sM.py +0 -0
  692. {pyccl-3.3.2 → pyccl-3.3.4}/pyccl/tests/test_massdef.py +0 -0
  693. {pyccl-3.3.2 → pyccl-3.3.4}/pyccl/tests/test_massfunction.py +0 -0
  694. {pyccl-3.3.2 → pyccl-3.3.4}/pyccl/tests/test_mg.py +0 -0
  695. {pyccl-3.3.2 → pyccl-3.3.4}/pyccl/tests/test_neutrinos.py +0 -0
  696. {pyccl-3.3.2 → pyccl-3.3.4}/pyccl/tests/test_nonlin_camb_power.py +0 -0
  697. {pyccl-3.3.2 → pyccl-3.3.4}/pyccl/tests/test_pk2d.py +0 -0
  698. {pyccl-3.3.2 → pyccl-3.3.4}/pyccl/tests/test_pkhm.py +0 -0
  699. {pyccl-3.3.2 → pyccl-3.3.4}/pyccl/tests/test_power.py +0 -0
  700. {pyccl-3.3.2 → pyccl-3.3.4}/pyccl/tests/test_power_mu_sigma_sigma8norm.py +0 -0
  701. {pyccl-3.3.2 → pyccl-3.3.4}/pyccl/tests/test_profiles.py +0 -0
  702. {pyccl-3.3.2 → pyccl-3.3.4}/pyccl/tests/test_pt_tracers.py +0 -0
  703. {pyccl-3.3.2 → pyccl-3.3.4}/pyccl/tests/test_pyutils.py +0 -0
  704. {pyccl-3.3.2 → pyccl-3.3.4}/pyccl/tests/test_resampling.py +0 -0
  705. {pyccl-3.3.2 → pyccl-3.3.4}/pyccl/tests/test_spline_integ.py +0 -0
  706. {pyccl-3.3.2 → pyccl-3.3.4}/pyccl/tests/test_swig_interface.py +0 -0
  707. {pyccl-3.3.2 → pyccl-3.3.4}/pyccl/tests/test_tk3d.py +0 -0
  708. {pyccl-3.3.2 → pyccl-3.3.4}/pyccl/tests/test_tkk1h.py +0 -0
  709. {pyccl-3.3.2 → pyccl-3.3.4}/pyccl/tests/test_tkk2h.py +0 -0
  710. {pyccl-3.3.2 → pyccl-3.3.4}/pyccl/tests/test_tkk3h.py +0 -0
  711. {pyccl-3.3.2 → pyccl-3.3.4}/pyccl/tests/test_tkk4h.py +0 -0
  712. {pyccl-3.3.2 → pyccl-3.3.4}/pyccl/tests/test_tkk_separable_growth.py +0 -0
  713. {pyccl-3.3.2 → pyccl-3.3.4}/pyccl/tests/test_tkkcNG.py +0 -0
  714. {pyccl-3.3.2 → pyccl-3.3.4}/pyccl/tests/test_tkkssc.py +0 -0
  715. {pyccl-3.3.2 → pyccl-3.3.4}/pyccl/tests/test_tracers.py +0 -0
  716. {pyccl-3.3.2 → pyccl-3.3.4}/pyccl/tests/test_yaml.py +0 -0
  717. {pyccl-3.3.2 → pyccl-3.3.4}/pyccl/tk3d.py +0 -0
  718. {pyccl-3.3.2 → pyccl-3.3.4}/pyccl/tracers.py +0 -0
  719. {pyccl-3.3.2 → pyccl-3.3.4}/pyccl.egg-info/SOURCES.txt +0 -0
  720. {pyccl-3.3.2 → pyccl-3.3.4}/pyccl.egg-info/dependency_links.txt +0 -0
  721. {pyccl-3.3.2 → pyccl-3.3.4}/pyccl.egg-info/requires.txt +0 -0
  722. {pyccl-3.3.2 → pyccl-3.3.4}/pyccl.egg-info/top_level.txt +0 -0
  723. {pyccl-3.3.2 → pyccl-3.3.4}/setup.cfg +0 -0
  724. {pyccl-3.3.2 → pyccl-3.3.4}/src/ccl_background.c +0 -0
  725. {pyccl-3.3.2 → pyccl-3.3.4}/src/ccl_bbks.c +0 -0
  726. {pyccl-3.3.2 → pyccl-3.3.4}/src/ccl_cls.c +0 -0
  727. {pyccl-3.3.2 → pyccl-3.3.4}/src/ccl_core.c +0 -0
  728. {pyccl-3.3.2 → pyccl-3.3.4}/src/ccl_correlation.c +0 -0
  729. {pyccl-3.3.2 → pyccl-3.3.4}/src/ccl_eh.c +0 -0
  730. {pyccl-3.3.2 → pyccl-3.3.4}/src/ccl_error.c +0 -0
  731. {pyccl-3.3.2 → pyccl-3.3.4}/src/ccl_f1d.c +0 -0
  732. {pyccl-3.3.2 → pyccl-3.3.4}/src/ccl_f2d.c +0 -0
  733. {pyccl-3.3.2 → pyccl-3.3.4}/src/ccl_f3d.c +0 -0
  734. {pyccl-3.3.2 → pyccl-3.3.4}/src/ccl_halofit.c +0 -0
  735. {pyccl-3.3.2 → pyccl-3.3.4}/src/ccl_mass_conversion.c +0 -0
  736. {pyccl-3.3.2 → pyccl-3.3.4}/src/ccl_massfunc.c +0 -0
  737. {pyccl-3.3.2 → pyccl-3.3.4}/src/ccl_musigma.c +0 -0
  738. {pyccl-3.3.2 → pyccl-3.3.4}/src/ccl_neutrinos.c +0 -0
  739. {pyccl-3.3.2 → pyccl-3.3.4}/src/ccl_tracers.c +0 -0
  740. {pyccl-3.3.2 → pyccl-3.3.4}/src/ccl_utils.c +0 -0
@@ -25,11 +25,12 @@ dependencies:
25
25
  - wheel # for classy
26
26
  - cython < 3 # for classy
27
27
  - pip:
28
+ - scipy<1.14
28
29
  - classy # Note the benchmarks were generated with 2.9.4
29
30
  - isitgr # Note the benchmarks were generated with 1.0.2
30
31
  - velocileptors @ git+https://github.com/sfschen/velocileptors
31
32
  - baccoemu @ git+https://bitbucket.org/rangulo/baccoemu.git@master
32
33
  - MiraTitanHMFemulator
33
- - dark_emulator # Note the benchmarks were generated with 1.1.2
34
+ - dark_emulator @ git+https://github.com/DarkQuestCosmology/dark_emulator_public.git@main # Note the benchmarks were generated with 1.1.2
34
35
  - colossus
35
36
 
@@ -59,12 +59,13 @@ jobs:
59
59
  steps:
60
60
 
61
61
  - name: Checkout CCL repository
62
- uses: actions/checkout@v4
62
+ uses: actions/checkout@v6
63
63
 
64
64
  - name: Set up conda
65
- uses: conda-incubator/setup-miniconda@v3
65
+ uses: conda-incubator/setup-miniconda@v4
66
66
  with:
67
67
  channels: conda-forge
68
+ conda-remove-defaults: true
68
69
  show-channel-urls: true
69
70
  miniforge-version: latest
70
71
  miniforge-variant: Miniforge3
@@ -85,7 +86,7 @@ jobs:
85
86
  run: echo "TODAY=$(date +'%Y.%m.%d')" >> $GITHUB_ENV
86
87
 
87
88
  - name: Get cached environment
88
- uses: actions/cache@v4
89
+ uses: actions/cache@v5
89
90
  id: cache
90
91
  with:
91
92
  path: ${{ matrix.prefix }}
@@ -108,7 +109,7 @@ jobs:
108
109
  run: echo "dir=$(pip cache dir)" >> $GITHUB_OUTPUT
109
110
 
110
111
  - name: Cache pip packages
111
- uses: actions/cache@v4
112
+ uses: actions/cache@v5
112
113
  with:
113
114
  path: ${{ steps.pip-cache.outputs.dir }}
114
115
  key: pip-py${{ matrix.python-version }}-${{ runner.os }}-${{ hashFiles('**/environment.yml') }}-${{ hashFiles('setup.py') }}
@@ -146,7 +147,7 @@ jobs:
146
147
  contents: read
147
148
  steps:
148
149
  - name: Checkout CCL repository
149
- uses: actions/checkout@v4
150
+ uses: actions/checkout@v6
150
151
 
151
152
  - name: Lint
152
153
  uses: py-actions/flake8@v2
@@ -0,0 +1,111 @@
1
+ name: Build and publish to PyPI
2
+
3
+ on:
4
+ release:
5
+ types: [published]
6
+ workflow_dispatch:
7
+
8
+ jobs:
9
+ build_wheels:
10
+ name: Build wheels on ${{ matrix.os }}
11
+ runs-on: ${{ matrix.os }}
12
+ strategy:
13
+ fail-fast: false
14
+ matrix:
15
+ include:
16
+ - os: ubuntu-latest
17
+ cibw_archs: x86_64
18
+ - os: macos-latest
19
+ cibw_archs: arm64
20
+
21
+ steps:
22
+ - name: Checkout repository
23
+ uses: actions/checkout@v6
24
+ with:
25
+ fetch-depth: 0
26
+
27
+ - name: Build wheels
28
+ uses: pypa/cibuildwheel@v3.3.1
29
+ env:
30
+ CIBW_ARCHS: ${{ matrix.cibw_archs }}
31
+
32
+ - name: Upload wheels
33
+ uses: actions/upload-artifact@v7
34
+ with:
35
+ name: cibw-wheels-${{ matrix.os }}-${{ matrix.cibw_archs }}
36
+ path: ./wheelhouse/*.whl
37
+
38
+ build_sdist:
39
+ name: Build source distribution
40
+ runs-on: ubuntu-latest
41
+
42
+ steps:
43
+ - name: Checkout repository
44
+ uses: actions/checkout@v6
45
+ with:
46
+ fetch-depth: 0
47
+
48
+ - name: Setup Python
49
+ uses: actions/setup-python@v6
50
+ with:
51
+ python-version: "3.10"
52
+
53
+ - name: Install build dependencies
54
+ run: python -m pip install --upgrade pip build
55
+
56
+ - name: Build sdist
57
+ run: python -m build --sdist
58
+
59
+ - name: Upload sdist
60
+ uses: actions/upload-artifact@v7
61
+ with:
62
+ name: cibw-sdist
63
+ path: dist/*.tar.gz
64
+
65
+ publish_testpypi:
66
+ name: Publish to TestPyPI
67
+ needs: [build_wheels, build_sdist]
68
+ runs-on: ubuntu-latest
69
+ if: github.event_name == 'workflow_dispatch'
70
+ environment:
71
+ name: testpypi
72
+ url: https://test.pypi.org/p/pyccl
73
+ permissions:
74
+ contents: read
75
+ id-token: write
76
+
77
+ steps:
78
+ - name: Download all artifacts
79
+ uses: actions/download-artifact@v8
80
+ with:
81
+ pattern: cibw-*
82
+ path: dist
83
+ merge-multiple: true
84
+
85
+ - name: Publish to TestPyPI
86
+ uses: pypa/gh-action-pypi-publish@release/v1
87
+ with:
88
+ repository-url: https://test.pypi.org/legacy/
89
+
90
+ publish:
91
+ name: Publish to PyPI
92
+ needs: [build_wheels, build_sdist]
93
+ runs-on: ubuntu-latest
94
+ if: github.event_name == 'release'
95
+ environment:
96
+ name: pypi
97
+ url: https://pypi.org/p/pyccl
98
+ permissions:
99
+ contents: read
100
+ id-token: write
101
+
102
+ steps:
103
+ - name: Download all artifacts
104
+ uses: actions/download-artifact@v8
105
+ with:
106
+ pattern: cibw-*
107
+ path: dist
108
+ merge-multiple: true
109
+
110
+ - name: Publish to PyPI
111
+ uses: pypa/gh-action-pypi-publish@release/v1
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: pyccl
3
- Version: 3.3.2
3
+ Version: 3.3.4
4
4
  Summary: Library of validated cosmological functions.
5
5
  Author: LSST DESC
6
6
  License: BSD
@@ -11,7 +11,7 @@ if(NOT FFTW_FOUND )
11
11
  ExternalProject_Add(FFTW
12
12
  PREFIX FFTW
13
13
  URL http://www.fftw.org/fftw-${FFTWVersion}.tar.gz
14
- URL_MD5 ${GSLMD5}
14
+ URL_MD5 ${FFTWMD5}
15
15
  DOWNLOAD_NO_PROGRESS 1
16
16
  CONFIGURE_COMMAND ./configure --prefix=${CMAKE_BINARY_DIR}/extern --enable-shared=no --with-pic=yes
17
17
  BUILD_COMMAND make -j8
@@ -74,12 +74,12 @@ endif()
74
74
  # The library suffix is from the config var LDVERSION sometimes, otherwise
75
75
  # VERSION. VERSION will typically be like "2.7" on unix, and "27" on windows.
76
76
  execute_process(COMMAND "${PYTHON_EXECUTABLE}" "-c"
77
- "from distutils import sysconfig as s;import sys;import struct;
77
+ "import sysconfig as s;import sys;import struct;
78
78
  print('.'.join(str(v) for v in sys.version_info));
79
79
  print(sys.prefix);
80
- print(s.get_python_inc(plat_specific=True));
81
- print(s.get_python_lib(plat_specific=True));
82
- print(s.get_config_var('SO'));
80
+ print(s.get_path('platinclude'));
81
+ print(s.get_path('platlib'));
82
+ print(s.get_config_var('EXT_SUFFIX') or s.get_config_var('SO') or '');
83
83
  print(hasattr(sys, 'gettotalrefcount')+0);
84
84
  print(struct.calcsize('@P'));
85
85
  print(s.get_config_var('LDVERSION') or s.get_config_var('VERSION'));
@@ -29,14 +29,12 @@ else()
29
29
  endif()
30
30
  swig_link_libraries(ccllib ccl_static)
31
31
 
32
+ # SWIG>=4.4 triggers int-conversion warning/error while calling numpy's import_array()
33
+ # GCC 14+ and Clang both treat this as an error.
34
+ target_compile_options(${SWIG_MODULE_ccllib_REAL_NAME} PRIVATE "-Wno-error=int-conversion")
35
+
32
36
  if(APPLE)
33
- # SWIG>=4.4 triggers int-conversion warning/error while calling numpy's import_array()
34
- # GCC seems to be raising warnings but clang raises an error, instead.
35
- # We make clang to treat them as warnings with next line.
36
- target_compile_options(${SWIG_MODULE_ccllib_REAL_NAME} PRIVATE "-Wno-error=int-conversion")
37
- # Unpleasant subtelty for linking on osx
37
+ # On macOS, allow undefined symbols to be resolved at runtime by the Python interpreter.
38
38
  set_target_properties(${SWIG_MODULE_ccllib_REAL_NAME} PROPERTIES LINK_FLAGS "-undefined dynamic_lookup")
39
- else(APPLE)
40
- swig_link_libraries(ccllib ${PYTHON_LIBRARIES})
41
39
  endif()
42
40
  set_target_properties(${SWIG_MODULE_ccllib_REAL_NAME} PROPERTIES SUFFIX .so)
@@ -41,6 +41,30 @@ def _get_general_params(b):
41
41
  return nu, deriv, plaw
42
42
 
43
43
 
44
+ def _get_k_common(ks_1, ks_2):
45
+ """Get the common k array for the two tracers to perform the final
46
+ chi-integral integration over.
47
+ Args:
48
+ ks_1 (array): List of wavenumbers at which to evaluate
49
+ the chi integrands for tracer 1.
50
+ ks_2 (array): List of wavenumbers at which to evaluate
51
+ the chi integrands for tracer 2.
52
+ Returns:
53
+ k_common (array): Common wavenumbers at which to evaluate the
54
+ chi-integral integration for all tracers.
55
+ """
56
+ all_ks = [np.asarray(k, dtype=float) for k in (*ks_1, *ks_2)]
57
+
58
+ k_mins = [k[np.isfinite(k) & (k > 0.0)].min() for k in all_ks]
59
+ k_maxs = [k[np.isfinite(k) & (k > 0.0)].max() for k in all_ks]
60
+
61
+ k_min = max(k_mins) # overlap lower bound
62
+ k_max = min(k_maxs) # overlap upper bound
63
+
64
+ n_k = max(len(k) for k in all_ks)
65
+ return np.logspace(np.log10(k_min), np.log10(k_max), n_k)
66
+
67
+
44
68
  def _chi_integrands(cosmo, clt,
45
69
  Nchi, chi_min, chi_max,
46
70
  ell, k_low,
@@ -77,6 +101,7 @@ def _chi_integrands(cosmo, clt,
77
101
 
78
102
  fks = np.zeros((len(kernels), Nchi))
79
103
  transfers = np.zeros((len(kernels), Nchi))
104
+ ks = []
80
105
  for i in range(len(kernels)):
81
106
  k, fk = clt._get_fkem_fft(
82
107
  clt._trc[i], Nchi, chi_min, chi_max, ell, cosmo,
@@ -124,10 +149,11 @@ def _chi_integrands(cosmo, clt,
124
149
  clt._set_fkem_fft(
125
150
  clt._trc[i], cosmo, Nchi, chi_min, chi_max, ell, k, fk,
126
151
  )
152
+ ks.append(k)
127
153
  fks[i] = fk
128
154
  transfers[i] = np.array(clt.get_transfer(np.log(k), avg_as[i]))[i]
129
155
 
130
- return k, fks, transfers
156
+ return ks, fks, transfers
131
157
 
132
158
 
133
159
  def _auto_limber_transition_ell(clt1, clt2, cosmo, psp_lin, psp_nonlin,
@@ -243,6 +269,10 @@ def _auto_limber_transition_ell(clt1, clt2, cosmo, psp_lin, psp_nonlin,
243
269
  + cls_nonlimber_lin_temp
244
270
  )
245
271
  thresh = cl_temp / cl_limber_nonlin_temp[-1] - 1.0
272
+
273
+ lib.cl_tracer_collection_t_free(t1_temp)
274
+ lib.cl_tracer_collection_t_free(t2_temp)
275
+
246
276
  if np.abs(thresh) >= limber_max_error:
247
277
  return status, False
248
278
  return status, True
@@ -273,7 +303,8 @@ def _nonlimber_FKEM(
273
303
  - chi_min: Minimum comoving distance used by FKEM to sample
274
304
  the tracer radial kernels. Must be greater than zero.
275
305
  - Nchi: Number of values of the comoving distance over which
276
- FKEM will interpolate the radial kernels.
306
+ FKEM will interpolate the radial kernels. Default is
307
+ two times the maximum number of chi samples across the tracers.
277
308
  - pk_linear: Linear power spectrum to use for growth factor
278
309
  scaling. If a string, it must correspond to one of the
279
310
  linear power spectra stored in `cosmo`
@@ -314,12 +345,16 @@ def _nonlimber_FKEM(
314
345
  if Nchi is None or not isinstance(Nchi, int) or Nchi <= 0:
315
346
  warnings.warn("Nchi must be a positive integer. "
316
347
  "Setting to match tracer with"
317
- " fewest chi samples.",
348
+ " large chi samples x 2.",
318
349
  category=CCLWarning,
319
350
  importance='high'
320
351
  )
321
- Nchi = min(min(len(i) for i in chis_t1),
322
- min(len(i) for i in chis_t2))
352
+ # We put factor of 2 to help reduce spikes when comparing
353
+ # the decomposed and direct integration approaches to order 1e-6
354
+ # for at least a simple Gaussian density kernel.
355
+ # May need to go higher for different cases.
356
+ Nchi = 2 * max(max(len(i) for i in chis_t1),
357
+ max(len(i) for i in chis_t2))
323
358
  if chi_min is None or not isinstance(chi_min, (float)) or chi_min <= 0.0:
324
359
  warnings.warn("chi_min must be greater than zero."
325
360
  "Setting to default 1e-6 Mpc.",
@@ -404,14 +439,15 @@ def _nonlimber_FKEM(
404
439
  check(status, cosmo=cosmo)
405
440
 
406
441
  # chi-integral integrand splines
407
- k, fks_1, transfers_t1 = _chi_integrands(
442
+ ks, fks_1, transfers_t1 = _chi_integrands(
408
443
  cosmo, clt1,
409
444
  Nchi, chi_min, chi_max,
410
445
  ell, k_low,
411
446
  chi_logspace_arr, status
412
447
  )
448
+
413
449
  if clt1 != clt2:
414
- k, fks_2, transfers_t2 = _chi_integrands(
450
+ ks_2, fks_2, transfers_t2 = _chi_integrands(
415
451
  cosmo, clt2,
416
452
  Nchi, chi_min, chi_max,
417
453
  ell, k_low,
@@ -420,12 +456,25 @@ def _nonlimber_FKEM(
420
456
  else:
421
457
  fks_2 = fks_1
422
458
  transfers_t2 = transfers_t1
459
+ ks_2 = ks
460
+ k = _get_k_common(ks, ks_2)
461
+ # need to interpolate the fks and transfers to the common k array
462
+ fks_1_interp = np.zeros((len(clt1._trc), len(k)))
463
+ fks_2_interp = np.zeros((len(clt2._trc), len(k)))
464
+ transfers_t1_interp = np.zeros((len(clt1._trc), len(k)))
465
+ transfers_t2_interp = np.zeros((len(clt2._trc), len(k)))
466
+ for i in range(len(clt1._trc)):
467
+ fks_1_interp[i] = np.interp(k, ks[i], fks_1[i])
468
+ transfers_t1_interp[i] = np.interp(k, ks[i], transfers_t1[i])
469
+ for i in range(len(clt2._trc)):
470
+ fks_2_interp[i] = np.interp(k, ks_2[i], fks_2[i])
471
+ transfers_t2_interp[i] = np.interp(k, ks_2[i], transfers_t2[i])
423
472
 
424
473
  cls_nonlimber_lin = np.sum(
425
- fks_1[:, None, :]
426
- * transfers_t1[:, None, :]
427
- * fks_2[None, :, :]
428
- * transfers_t2[None, :, :]
474
+ fks_1_interp[:, None, :]
475
+ * transfers_t1_interp[:, None, :]
476
+ * fks_2_interp[None, :, :]
477
+ * transfers_t2_interp[None, :, :]
429
478
  * (k**kpow
430
479
  * pk(k, 1.0, cosmo))[None, None, :]
431
480
  * dlnr
@@ -456,8 +505,8 @@ def _nonlimber_FKEM(
456
505
  # the limber threshold
457
506
  status, is_limber = _auto_limber_transition_ell(
458
507
  clt1, clt2, cosmo, psp_lin,
459
- psp_nonlin, fks_1, fks_2,
460
- transfers_t1, transfers_t2,
508
+ psp_nonlin, fks_1_interp, fks_2_interp,
509
+ transfers_t1_interp, transfers_t2_interp,
461
510
  fll_t1, fll_t2, k, kpow,
462
511
  pk, dlnr, el, ell,
463
512
  limber_max_error, status
@@ -469,4 +518,6 @@ def _nonlimber_FKEM(
469
518
  l_limber = ls[-1]
470
519
  if False in np.isfinite(cells):
471
520
  status = 1
521
+ lib.cl_tracer_collection_t_free(t1)
522
+ lib.cl_tracer_collection_t_free(t2)
472
523
  return l_limber, np.array(cells), status
@@ -279,6 +279,104 @@ def test_fkem_multicomponent_tracer():
279
279
  assert np.all(np.isfinite(cl_gk))
280
280
 
281
281
 
282
+ def test_fkem_decomposed_matches_direct_number_counts_mag():
283
+ z = np.linspace(0.01, 2.0, 200)
284
+ nz = np.exp(-((z - 1.0) ** 2) / 0.1)
285
+ ells = np.arange(2, 200)
286
+ cosmo = ccl.CosmologyVanillaLCDM()
287
+
288
+ ccl_kwargs = dict(
289
+ l_limber=210,
290
+ non_limber_integration_method="FKEM",
291
+ fkem_Nchi=200,
292
+ fkem_chi_min=1e-6,
293
+ )
294
+
295
+ tracer_den = ccl.NumberCountsTracer(
296
+ cosmo,
297
+ dndz=(z, nz),
298
+ bias=(z, 1.5 * np.ones_like(z)),
299
+ has_rsd=False,
300
+ mag_bias=None,
301
+ )
302
+ tracer_mag = ccl.NumberCountsTracer(
303
+ cosmo,
304
+ dndz=(z, nz),
305
+ bias=None,
306
+ has_rsd=False,
307
+ mag_bias=(z, 1.0 * np.ones_like(z)),
308
+ )
309
+ tracer_full = ccl.NumberCountsTracer(
310
+ cosmo,
311
+ dndz=(z, nz),
312
+ bias=(z, 1.5 * np.ones_like(z)),
313
+ has_rsd=False,
314
+ mag_bias=(z, 1.0 * np.ones_like(z)),
315
+ )
316
+
317
+ cl_dd = ccl.angular_cl(cosmo, tracer_den, tracer_den, ells, **ccl_kwargs)
318
+ cl_dM = ccl.angular_cl(cosmo, tracer_den, tracer_mag, ells, **ccl_kwargs)
319
+ cl_MM = ccl.angular_cl(cosmo, tracer_mag, tracer_mag, ells, **ccl_kwargs)
320
+ cl_decomposed = cl_dd + 2.0 * cl_dM + cl_MM
321
+
322
+ cl_direct = ccl.angular_cl(cosmo, tracer_full, tracer_full, ells,
323
+ **ccl_kwargs)
324
+
325
+ rel = np.abs(cl_direct / cl_decomposed - 1.0)
326
+ assert np.all(np.isfinite(rel))
327
+ assert np.max(rel) < 5e-3
328
+
329
+
330
+ def test_fkem_decomposed_matches_direct_weak_lensing_ia():
331
+ z = np.linspace(0.01, 2.0, 200)
332
+ nz = np.exp(-((z - 1.0) ** 2) / 0.1)
333
+ ia_amp = 0.5 * np.ones_like(z)
334
+ ells = np.arange(2, 200)
335
+ cosmo = ccl.CosmologyVanillaLCDM()
336
+
337
+ ccl_kwargs = dict(
338
+ l_limber=210,
339
+ non_limber_integration_method="FKEM",
340
+ fkem_Nchi=200,
341
+ fkem_chi_min=1e-6,
342
+ )
343
+
344
+ tracer_lens = ccl.WeakLensingTracer(
345
+ cosmo,
346
+ dndz=(z, nz),
347
+ has_shear=True,
348
+ ia_bias=None,
349
+ )
350
+ tracer_ia = ccl.WeakLensingTracer(
351
+ cosmo,
352
+ dndz=(z, nz),
353
+ has_shear=False,
354
+ ia_bias=(z, ia_amp),
355
+ use_A_ia=False,
356
+ )
357
+ tracer_full = ccl.WeakLensingTracer(
358
+ cosmo,
359
+ dndz=(z, nz),
360
+ has_shear=True,
361
+ ia_bias=(z, ia_amp),
362
+ use_A_ia=False,
363
+ )
364
+
365
+ cl_gg = ccl.angular_cl(cosmo, tracer_lens, tracer_lens, ells,
366
+ **ccl_kwargs)
367
+ cl_gi = ccl.angular_cl(cosmo, tracer_lens, tracer_ia, ells,
368
+ **ccl_kwargs)
369
+ cl_ii = ccl.angular_cl(cosmo, tracer_ia, tracer_ia, ells, **ccl_kwargs)
370
+ cl_decomposed = cl_gg + 2.0 * cl_gi + cl_ii
371
+
372
+ cl_direct = ccl.angular_cl(cosmo, tracer_full, tracer_full, ells,
373
+ **ccl_kwargs)
374
+
375
+ rel = np.abs(cl_direct / cl_decomposed - 1.0)
376
+ assert np.all(np.isfinite(rel))
377
+ assert np.max(rel) < 5e-3
378
+
379
+
282
380
  def test_cells_mg():
283
381
  # Check that if we feed the non-linear matter power spectrum from a MG
284
382
  # cosmology into a Calculator and get Cells using MG tracers, we get the
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: pyccl
3
- Version: 3.3.2
3
+ Version: 3.3.4
4
4
  Summary: Library of validated cosmological functions.
5
5
  Author: LSST DESC
6
6
  License: BSD
@@ -37,10 +37,7 @@ documentation = "https://ccl.readthedocs.io/en/latest/"
37
37
  repository = "https://github.com/LSSTDESC/CCL"
38
38
 
39
39
  [project.optional-dependencies]
40
- dev = [
41
- "pytest",
42
- "pytest-cov",
43
- ]
40
+ dev = ["pytest", "pytest-cov"]
44
41
 
45
42
  [tool.setuptools.packages.find]
46
43
  include = ["pyccl*"]
@@ -49,3 +46,16 @@ include = ["pyccl*"]
49
46
  pyccl = ["_ccllib.so", "emulators/data/*.npz"]
50
47
 
51
48
  [tool.setuptools_scm]
49
+
50
+ [tool.cibuildwheel]
51
+ build = "cp310-* cp311-* cp312-* cp313-* cp314-*"
52
+ skip = "pp* *-musllinux_* *-win* *-manylinux_i686 *-manylinux_s390x *-manylinux_ppc64le"
53
+ test-command = "python -c \"import pyccl; print(pyccl.__version__)\""
54
+
55
+ [tool.cibuildwheel.linux]
56
+ manylinux-x86_64-image = "manylinux_2_28"
57
+ manylinux-aarch64-image = "manylinux_2_28"
58
+ before-all = "dnf install -y pcre-devel automake autoconf libtool bison"
59
+
60
+ [tool.cibuildwheel.macos]
61
+ environment = { MACOSX_DEPLOYMENT_TARGET = "11.0" }
@@ -1,4 +1,5 @@
1
1
  import os
2
+ import shutil
2
3
  import sys
3
4
  from subprocess import call
4
5
 
@@ -9,10 +10,15 @@ from setuptools.command.develop import develop as _develop
9
10
 
10
11
 
11
12
  def _compile_ccl(debug=False):
12
- call(["mkdir", "-p", "build"])
13
+ # Clean stale CMake cache to avoid cross-version contamination
14
+ # (e.g. when cibuildwheel builds multiple Python versions sequentially).
15
+ if os.path.exists("build/CMakeCache.txt"):
16
+ shutil.rmtree("build")
17
+ os.makedirs("build", exist_ok=True)
13
18
  v = sys.version_info
14
19
  cmd = ["cmake", "-H.", "-Bbuild",
15
- "-DPYTHON_VERSION=%d.%d.%d" % (v.major, v.minor, v.micro)]
20
+ "-DPYTHON_VERSION=%d.%d.%d" % (v.major, v.minor, v.micro),
21
+ "-DPYTHON_EXECUTABLE=%s" % sys.executable]
16
22
  if debug:
17
23
  cmd += ["-DCMAKE_BUILD_TYPE=Debug"]
18
24
  if call(cmd) != 0:
@@ -45,6 +51,9 @@ class Distribution(_distribution):
45
51
  self.debug = False
46
52
  super().__init__(attr)
47
53
 
54
+ def has_ext_modules(self):
55
+ return True
56
+
48
57
 
49
58
  class Build(_build):
50
59
  """Specialized Python source builder."""
@@ -208,7 +208,7 @@ static void fht(int npk, int N,
208
208
  double dim, double mu, double q, double kcrc,
209
209
  int noring, double complex* u, int *status)
210
210
  {
211
- fftw_plan forward_plan, reverse_plan;
211
+ fftw_plan forward_plan = NULL, reverse_plan = NULL;
212
212
  double L = log(k[N-1]/k[0]) * N/(N-1.);
213
213
  double complex* ulocal = NULL;
214
214
  if(u == NULL) {
@@ -225,8 +225,8 @@ static void fht(int npk, int N,
225
225
  }
226
226
  }
227
227
 
228
- fftw_complex* a_tmp;
229
- fftw_complex* b_tmp;
228
+ fftw_complex* a_tmp = NULL;
229
+ fftw_complex* b_tmp = NULL;
230
230
  if(*status == 0) {
231
231
  a_tmp = fftw_alloc_complex(N);
232
232
  if(a_tmp==NULL)
@@ -336,10 +336,8 @@ static void fht(int npk, int N,
336
336
  } //end omp parallel
337
337
  }
338
338
 
339
- if(*status == 0) {
340
- fftw_destroy_plan(forward_plan);
341
- fftw_destroy_plan(reverse_plan);
342
- }
339
+ if(forward_plan != NULL) fftw_destroy_plan(forward_plan);
340
+ if(reverse_plan != NULL) fftw_destroy_plan(reverse_plan);
343
341
 
344
342
  free(ulocal);
345
343
  //TODO: free this up
@@ -347,7 +345,7 @@ static void fht(int npk, int N,
347
345
  fftw_free(b_tmp);
348
346
  }
349
347
 
350
- /* Compute the discrete Hankel transform of the function a(r)
348
+ /* Compute the discrete Hankel transform of the function a(r)
351
349
  * weighted by a power law and the nth derivative of the
352
350
  * (spherical) bessel function. Explicitly, this function computes
353
351
  * \tilde{a}(k)= \int \frac{dr}{(xk)^plaw} a(r) (J/j)^(n)_\mu(xk)
@@ -369,11 +367,11 @@ static void general_fht(int npk, int N,
369
367
  kcrc = mu+1.0;
370
368
  mu = mu+0.5*spherical_bessel;
371
369
 
372
- fftw_plan forward_plan, reverse_plan;
370
+ fftw_plan forward_plan = NULL, reverse_plan = NULL;
373
371
  double L = log(k[N-1]/k[0]) * N/(N-1.);
374
372
  double complex* ulocal = NULL;
375
373
  if(u == NULL) {
376
-
374
+
377
375
  kcrc = goodkr_new_deriv(N, mu, q, L, spherical_bessel, bessel_deriv,plaw, kcrc);
378
376
 
379
377
  ulocal = malloc (sizeof(complex double)*N);
@@ -386,8 +384,8 @@ static void general_fht(int npk, int N,
386
384
  }
387
385
  }
388
386
 
389
- fftw_complex* a_tmp;
390
- fftw_complex* b_tmp;
387
+ fftw_complex* a_tmp = NULL;
388
+ fftw_complex* b_tmp = NULL;
391
389
  if(*status == 0) {
392
390
  a_tmp = fftw_alloc_complex(N);
393
391
  if(a_tmp==NULL)
@@ -500,10 +498,8 @@ static void general_fht(int npk, int N,
500
498
  } //end omp parallel
501
499
  }
502
500
 
503
- if(*status == 0) {
504
- fftw_destroy_plan(forward_plan);
505
- fftw_destroy_plan(reverse_plan);
506
- }
501
+ if(forward_plan != NULL) fftw_destroy_plan(forward_plan);
502
+ if(reverse_plan != NULL) fftw_destroy_plan(reverse_plan);
507
503
 
508
504
  free(ulocal);
509
505
  //TODO: free this up
@@ -129,10 +129,12 @@ static ccl_f2d_t *ccl_compute_linpower_analytic(ccl_cosmology* cosmo, void* par,
129
129
  y2d[j] += log_sigma8;
130
130
  }
131
131
 
132
+ // Free the first spline unconditionally; re-allocate with normalisation only on success.
133
+ // Without this, ccl_sigma8 failure above would leak the first psp_out.
134
+ ccl_f2d_t_free(psp_out);
135
+ psp_out = NULL;
136
+
132
137
  if(*status==0) {
133
- // Free the previous P(k,a) spline, and allocate a new one to store the
134
- // properly-normalized P(k,a)
135
- ccl_f2d_t_free(psp_out);
136
138
  psp_out = ccl_f2d_t_new(na,z,nk,x,y2d,NULL,NULL,0,
137
139
  1,2,ccl_f2d_cclgrowth,1,0,2,
138
140
  ccl_f2d_3,status);