flipcosmo 1.0.0__py3-none-any.whl → 1.2.1__py3-none-any.whl

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 (113) hide show
  1. docs/conf.py +154 -0
  2. flip/__init__.py +4 -11
  3. flip/covariance/__init__.py +7 -8
  4. flip/covariance/analytical/__init__.py +11 -0
  5. flip/covariance/{adamsblake17plane → analytical/adamsblake17}/coefficients.py +1 -1
  6. flip/covariance/{adamsblake17plane → analytical/adamsblake17}/fisher_terms.py +1 -1
  7. flip/covariance/{adamsblake17 → analytical/adamsblake17}/flip_terms.py +0 -1
  8. flip/covariance/{adamsblake17 → analytical/adamsblake17plane}/coefficients.py +1 -1
  9. flip/covariance/{adamsblake17 → analytical/adamsblake17plane}/fisher_terms.py +1 -1
  10. flip/covariance/{adamsblake17plane → analytical/adamsblake17plane}/flip_terms.py +0 -1
  11. flip/covariance/{adamsblake17plane → analytical/adamsblake17plane}/generator.py +103 -19
  12. flip/covariance/{adamsblake20 → analytical/adamsblake20}/coefficients.py +1 -1
  13. flip/covariance/{adamsblake20 → analytical/adamsblake20}/fisher_terms.py +1 -1
  14. flip/covariance/{adamsblake20 → analytical/adamsblake20}/flip_terms.py +0 -1
  15. flip/covariance/{carreres23 → analytical/carreres23}/coefficients.py +1 -4
  16. flip/covariance/{ravouxnoanchor25 → analytical/carreres23}/fisher_terms.py +1 -1
  17. flip/covariance/{carreres23 → analytical/carreres23}/flip_terms.py +0 -1
  18. flip/covariance/analytical/carreres23/generator.py +198 -0
  19. flip/covariance/analytical/genericzdep/__init__.py +5 -0
  20. flip/covariance/analytical/genericzdep/coefficients.py +53 -0
  21. flip/covariance/analytical/genericzdep/flip_terms.py +99 -0
  22. flip/covariance/{lai22 → analytical/lai22}/coefficients.py +2 -3
  23. flip/covariance/{lai22 → analytical/lai22}/fisher_terms.py +1 -1
  24. flip/covariance/{lai22 → analytical/lai22}/flip_terms.py +0 -1
  25. flip/covariance/{lai22 → analytical/lai22}/generator.py +263 -58
  26. flip/covariance/{lai22 → analytical/lai22}/symbolic.py +55 -19
  27. flip/covariance/{ravouxcarreres → analytical/ravouxcarreres}/coefficients.py +1 -1
  28. flip/covariance/{ravouxcarreres → analytical/ravouxcarreres}/fisher_terms.py +1 -1
  29. flip/covariance/{ravouxcarreres → analytical/ravouxcarreres}/flip_terms.py +0 -1
  30. flip/covariance/{ravouxnoanchor25 → analytical/ravouxnoanchor25}/coefficients.py +3 -2
  31. flip/covariance/{carreres23 → analytical/ravouxnoanchor25}/fisher_terms.py +1 -1
  32. flip/covariance/{ravouxnoanchor25 → analytical/ravouxnoanchor25}/flip_terms.py +0 -9
  33. flip/covariance/{rcrk24 → analytical/rcrk24}/coefficients.py +6 -6
  34. flip/covariance/{rcrk24 → analytical/rcrk24}/fisher_terms.py +7 -9
  35. flip/covariance/{rcrk24 → analytical/rcrk24}/flip_terms.py +0 -8
  36. flip/covariance/contraction.py +82 -40
  37. flip/covariance/cov_utils.py +89 -81
  38. flip/covariance/covariance.py +172 -141
  39. flip/covariance/emulators/__init__.py +1 -1
  40. flip/covariance/emulators/generator.py +73 -3
  41. flip/covariance/emulators/gpmatrix.py +40 -1
  42. flip/covariance/emulators/nnmatrix.py +57 -1
  43. flip/covariance/emulators/skgpmatrix.py +125 -0
  44. flip/covariance/fisher.py +307 -0
  45. flip/{fit_utils.py → covariance/fit_utils.py} +185 -10
  46. flip/{fitter.py → covariance/fitter.py} +151 -125
  47. flip/covariance/generator.py +82 -106
  48. flip/{likelihood.py → covariance/likelihood.py} +286 -64
  49. flip/{plot_utils.py → covariance/plot_utils.py} +79 -4
  50. flip/covariance/symbolic.py +89 -44
  51. flip/data/__init__.py +1 -1
  52. flip/data/data_density.parquet +0 -0
  53. flip/data/data_velocity.parquet +0 -0
  54. flip/data/{grid_window_m.parquet → data_window_density.parquet} +0 -0
  55. flip/{gridding.py → data/gridding.py} +125 -130
  56. flip/data/load_data_test.py +102 -0
  57. flip/data/power_spectrum_mm.txt +2 -2
  58. flip/data/power_spectrum_mt.txt +2 -2
  59. flip/data/power_spectrum_tt.txt +2 -2
  60. flip/data/test_covariance_reference_values.json +145 -0
  61. flip/data/test_e2e_reference_values.json +14 -0
  62. flip/data_vector/basic.py +118 -101
  63. flip/data_vector/cosmo_utils.py +18 -0
  64. flip/data_vector/galaxypv_vectors.py +58 -94
  65. flip/data_vector/snia_vectors.py +60 -3
  66. flip/data_vector/vector_utils.py +47 -1
  67. flip/power_spectra/class_engine.py +36 -1
  68. flip/power_spectra/cosmoprimo_engine.py +37 -2
  69. flip/power_spectra/generator.py +47 -25
  70. flip/power_spectra/models.py +30 -31
  71. flip/power_spectra/pyccl_engine.py +36 -1
  72. flip/simulation/__init__.py +0 -0
  73. flip/utils.py +62 -91
  74. flipcosmo-1.2.1.dist-info/METADATA +78 -0
  75. flipcosmo-1.2.1.dist-info/RECORD +109 -0
  76. {flipcosmo-1.0.0.dist-info → flipcosmo-1.2.1.dist-info}/WHEEL +1 -1
  77. flipcosmo-1.2.1.dist-info/top_level.txt +7 -0
  78. scripts/flip_compute_correlation_model.py +70 -0
  79. scripts/flip_compute_power_spectra.py +50 -0
  80. scripts/flip_fisher_forecast_velocity.py +70 -0
  81. scripts/flip_fisher_rcrk24.py +164 -0
  82. scripts/flip_launch_minuit_density_fit.py +91 -0
  83. scripts/flip_launch_minuit_full_fit.py +117 -0
  84. scripts/flip_launch_minuit_velocity_fit.py +78 -0
  85. scripts/flip_launch_minuit_velocity_fit_full.py +107 -0
  86. scripts/flip_launch_minuit_velocity_fit_interpolation.py +93 -0
  87. test/refresh_reference_values.py +43 -0
  88. test/test_covariance_assembly.py +102 -0
  89. test/test_covariance_reference_values.py +125 -0
  90. test/test_covariance_utils.py +34 -0
  91. test/test_e2e_density.py +50 -0
  92. test/test_e2e_joint.py +65 -0
  93. test/test_e2e_velocity.py +53 -0
  94. test/test_likelihood_inversions.py +31 -0
  95. flip/covariance/carreres23/generator.py +0 -132
  96. flip/data/density_data.parquet +0 -0
  97. flip/data/velocity_data.parquet +0 -0
  98. flip/fisher.py +0 -190
  99. flipcosmo-1.0.0.dist-info/METADATA +0 -32
  100. flipcosmo-1.0.0.dist-info/RECORD +0 -82
  101. flipcosmo-1.0.0.dist-info/top_level.txt +0 -1
  102. /flip/{config.py → _config.py} +0 -0
  103. /flip/covariance/{adamsblake17 → analytical/adamsblake17}/__init__.py +0 -0
  104. /flip/covariance/{adamsblake17plane → analytical/adamsblake17plane}/__init__.py +0 -0
  105. /flip/covariance/{adamsblake20 → analytical/adamsblake20}/__init__.py +0 -0
  106. /flip/covariance/{carreres23 → analytical/carreres23}/__init__.py +0 -0
  107. /flip/covariance/{lai22 → analytical/lai22}/__init__.py +0 -0
  108. /flip/covariance/{lai22 → analytical/lai22}/h_terms.py +0 -0
  109. /flip/covariance/{ravouxcarreres → analytical/ravouxcarreres}/__init__.py +0 -0
  110. /flip/covariance/{ravouxcarreres → analytical/ravouxcarreres}/flip_terms_lmax.py +0 -0
  111. /flip/covariance/{ravouxnoanchor25 → analytical/ravouxnoanchor25}/__init__.py +0 -0
  112. /flip/covariance/{rcrk24 → analytical/rcrk24}/__init__.py +0 -0
  113. {flipcosmo-1.0.0.dist-info → flipcosmo-1.2.1.dist-info}/licenses/LICENSE +0 -0
@@ -0,0 +1,109 @@
1
+ docs/conf.py,sha256=oQH2FVsFdgs7Z2z0qyORgjUz1Wn35TS-oyd3GaQ8Uos,4694
2
+ flip/__init__.py,sha256=nvvWo-nfwNPaATqooXCW0p6EPun32rOQ385ilNb2H_A,419
3
+ flip/_config.py,sha256=wf09C_i7q-G8v3ADk63WtrSEZyXQhy4zNzQ9AY3Qq9U,19
4
+ flip/utils.py,sha256=mkLEW-qDWYRSpycnF6MxWUtTOAqogKZb708I8ys14p0,5462
5
+ flip/covariance/__init__.py,sha256=bzxPuQOFUX7YfFb5WmoWE-ykQWK7sLh_zQHyRuvF2ng,233
6
+ flip/covariance/contraction.py,sha256=p3PyF_YufUxxC3ZqBe0OUPGXRWGOMUrdXXCaVpD4R2g,14085
7
+ flip/covariance/cov_utils.py,sha256=uYbrtlLs8-NJTfmdNgyywvo96et8ukyhztGfhbCy9zo,14797
8
+ flip/covariance/covariance.py,sha256=-1grj42Bbq8x9OUitJFck4tPx8mKD7_ebjgkeRaOpCk,31553
9
+ flip/covariance/fisher.py,sha256=0iu_jRcgfJYG3WnchaKP5QuhMPAOAwpaQ4AiHb_qS9o,10743
10
+ flip/covariance/fit_utils.py,sha256=jeC2rMCzy3gcxFFgg1QpkKeh_uI6oB_LrdVbHUI6QcI,34513
11
+ flip/covariance/fitter.py,sha256=xeHdoSN_jEOV-c6XJf-nsxFsdcWx2mX1SqRF0ekAbNM,18884
12
+ flip/covariance/generator.py,sha256=WZ13KZMcfa1sCgqaAmpMrFF7INmoo05WD1Tb7Rihef8,25667
13
+ flip/covariance/likelihood.py,sha256=jiGE0aGuKqnBkz8OXOV7z7IqHQGdXuWD_fpjv6oc4zo,28834
14
+ flip/covariance/plot_utils.py,sha256=UZl5-JC862eKAfd8OxKSlDQmvuXEsUhuSyUP9QW60B0,20311
15
+ flip/covariance/symbolic.py,sha256=xtbOjqXHweFiTCNEnDKgYaq7pW49WxEyLJJ1nVtJbgw,46150
16
+ flip/covariance/analytical/__init__.py,sha256=FTyOWgE55JzfCgLIAI00zrGvnVUZiKoppqJ3WvMSsxw,175
17
+ flip/covariance/analytical/adamsblake17/__init__.py,sha256=94NXeySXL0ZqT_-bBk_CmsB0-aOMm5qp8kG-r7UbrBI,148
18
+ flip/covariance/analytical/adamsblake17/coefficients.py,sha256=OXVyHIdJz7xO8IjpL4G-O960LQklI8qdMY7oO7N7JZ4,972
19
+ flip/covariance/analytical/adamsblake17/fisher_terms.py,sha256=L8p--sXm4SuwtfOl4a3DvdJUk8k1Z8Y51xN75Y0JZjo,8683
20
+ flip/covariance/analytical/adamsblake17/flip_terms.py,sha256=OY_wyOA_l46o0J0nTyOMCUYGNR70jnrtFGHRIMkHA3U,1208
21
+ flip/covariance/analytical/adamsblake17plane/__init__.py,sha256=94NXeySXL0ZqT_-bBk_CmsB0-aOMm5qp8kG-r7UbrBI,148
22
+ flip/covariance/analytical/adamsblake17plane/coefficients.py,sha256=OXVyHIdJz7xO8IjpL4G-O960LQklI8qdMY7oO7N7JZ4,972
23
+ flip/covariance/analytical/adamsblake17plane/fisher_terms.py,sha256=L8p--sXm4SuwtfOl4a3DvdJUk8k1Z8Y51xN75Y0JZjo,8683
24
+ flip/covariance/analytical/adamsblake17plane/flip_terms.py,sha256=kuvD6CD4WHqP-V3stHJxvsaOdDz5InYso2EpvvPwQhs,1105
25
+ flip/covariance/analytical/adamsblake17plane/generator.py,sha256=svprrN4mjqjcX5cDoDWJ8LgRjeOUQX2Vr7Edu1boMG4,10775
26
+ flip/covariance/analytical/adamsblake20/__init__.py,sha256=TYS1sGySDUru6s5Wk4wd-3TnRa3PVjEsIQEuwOkXhr8,239
27
+ flip/covariance/analytical/adamsblake20/coefficients.py,sha256=hJ8VMmHKF9BRuelqnaJvWPHuxxWn7f-boZa4Gah7f08,1837
28
+ flip/covariance/analytical/adamsblake20/fisher_terms.py,sha256=-1sMM2Ydsb35hhH2xYDc9Itn7ElyGzBNSsyOyIe8EYM,27920
29
+ flip/covariance/analytical/adamsblake20/flip_terms.py,sha256=45TFyFv0CRsmFjEfhvTbQz9BO0AWOAjwfSeOHlBZmLY,8069
30
+ flip/covariance/analytical/carreres23/__init__.py,sha256=X8EBISybyz4sgkXE2q8dEkZjqGHi6oqgb6QU0_isM2Q,165
31
+ flip/covariance/analytical/carreres23/coefficients.py,sha256=uw96hxCLDra_0qLFpKHITORb15ZcHQATX8rpxEHXpm0,433
32
+ flip/covariance/analytical/carreres23/fisher_terms.py,sha256=CsPlO6gtnm0XwRkGoiM48HrPkduvikX_YC_A5p0UJIE,1453
33
+ flip/covariance/analytical/carreres23/flip_terms.py,sha256=2taKNb4OjyszZ5g03bgGk1KIaDPrO5fA0S9erKtXaJY,770
34
+ flip/covariance/analytical/carreres23/generator.py,sha256=FcegRe3rCXigsg_q1B19Jp67cTq-dLKrhyXZvrnDAh8,5882
35
+ flip/covariance/analytical/genericzdep/__init__.py,sha256=xX5ncmn3AyUz8ReiC5Hb6v_qeeWXiu8c4ET7dtLNBSU,111
36
+ flip/covariance/analytical/genericzdep/coefficients.py,sha256=9J0iPiOAfwjcojnhg_mpctUMaNRO-BoEshwlcD6Ymmo,1351
37
+ flip/covariance/analytical/genericzdep/flip_terms.py,sha256=Xo_esbVyOr2aGuiAmaDa67rURTcucmwC__tMzwdQ3mI,1599
38
+ flip/covariance/analytical/lai22/__init__.py,sha256=hnYxdGuS7nSAUuvpckk7VA_WCAUe6SHPYGz32tGLUWM,240
39
+ flip/covariance/analytical/lai22/coefficients.py,sha256=MrZe1N85atAGGUKGckv-FUqfz-mrUdJSeWmBmybBisQ,3336
40
+ flip/covariance/analytical/lai22/fisher_terms.py,sha256=nvvvwIL8w_jub_3mvkjSZmKuciWO9L5PFQMlZHjvhro,170032
41
+ flip/covariance/analytical/lai22/flip_terms.py,sha256=fPi2nu38GI5S9Ie57zyRgXH-OyLoICg9jyNPZhuED4k,472248
42
+ flip/covariance/analytical/lai22/generator.py,sha256=YqfJ4HLs5Kew0l0_P4ai6wNbVwEdeAlgtPKCdVGrE70,36164
43
+ flip/covariance/analytical/lai22/h_terms.py,sha256=RWIAabFHhvaXQnz9QO9MCUKT0mVAsKTKAqcvH4ZKOcU,78216
44
+ flip/covariance/analytical/lai22/symbolic.py,sha256=Unp_75EkUX2XN8Yxm_MVTXdwcIblKjFG5G7T7efZ6co,6074
45
+ flip/covariance/analytical/ravouxcarreres/__init__.py,sha256=TYS1sGySDUru6s5Wk4wd-3TnRa3PVjEsIQEuwOkXhr8,239
46
+ flip/covariance/analytical/ravouxcarreres/coefficients.py,sha256=hJ8VMmHKF9BRuelqnaJvWPHuxxWn7f-boZa4Gah7f08,1837
47
+ flip/covariance/analytical/ravouxcarreres/fisher_terms.py,sha256=-1sMM2Ydsb35hhH2xYDc9Itn7ElyGzBNSsyOyIe8EYM,27920
48
+ flip/covariance/analytical/ravouxcarreres/flip_terms.py,sha256=3o_xlQRU3Pfuw_gmxw9FJFYgadTTTV7WgxwUXnrY6k8,23089
49
+ flip/covariance/analytical/ravouxcarreres/flip_terms_lmax.py,sha256=4parR15Q9oepgYN39rm3DGdnTmbw3Zi5SjmGhpUUqOo,100630
50
+ flip/covariance/analytical/ravouxnoanchor25/__init__.py,sha256=AYe85mOOwW9pjQ4nSCeNPTj2IHJA8T_o9rFmVnFs53M,152
51
+ flip/covariance/analytical/ravouxnoanchor25/coefficients.py,sha256=5JEXibojBvlIXUCq90sK_se27CM2Q-_-Va1gy65w8SY,1505
52
+ flip/covariance/analytical/ravouxnoanchor25/fisher_terms.py,sha256=CsPlO6gtnm0XwRkGoiM48HrPkduvikX_YC_A5p0UJIE,1453
53
+ flip/covariance/analytical/ravouxnoanchor25/flip_terms.py,sha256=PlyYRlNCnRT55piDdnunl7QIwEkNbGotOfo6kIGOqs0,780
54
+ flip/covariance/analytical/rcrk24/__init__.py,sha256=_ebQvTeBW0pZAZ9KO7vHwdc1qTkMgOoNGr2ki_ahOUs,252
55
+ flip/covariance/analytical/rcrk24/coefficients.py,sha256=XhPU_3-QzcBkJcakcmzThN3ZcZCeTXekqxWI6cwq0_g,6427
56
+ flip/covariance/analytical/rcrk24/fisher_terms.py,sha256=tipukrVhe4s9y4CC6aPsPfhyxoIILTsLFt5jUKLrItA,3372
57
+ flip/covariance/analytical/rcrk24/flip_terms.py,sha256=M4DkzboJBtYuGVFWqwG4-2ceWPrYHjDKE7pDFrwJ-D4,785
58
+ flip/covariance/emulators/__init__.py,sha256=3izGJjEL-aBelpfUsuts1dWqha_JBaKDSUVnrNHootw,115
59
+ flip/covariance/emulators/generator.py,sha256=Uvtz1DcpQVKBW3qJzHHm_XqrvqwRKe1-CssKCJGGgNU,12868
60
+ flip/covariance/emulators/gpmatrix.py,sha256=INa1IkBjVOKKi44-GVVEYTVPcZzp2xf42KeKhK04cHQ,4748
61
+ flip/covariance/emulators/nnmatrix.py,sha256=yzR3q1S5egvJ2IYCxlJvfPhO_i4clW7q3UaAtxSu8K8,9057
62
+ flip/covariance/emulators/skgpmatrix.py,sha256=JGQiPvuVLN2oZkwwHaC3i1llzzqfWg5vwZWiEh3WI2U,3877
63
+ flip/data/__init__.py,sha256=8OBjUqbJBny0jMSCxCyKVi4-MNjR6vg3ZTGCGX8Vgf4,72
64
+ flip/data/data_density.parquet,sha256=_156O6Q05FQDqQj9QaStQBpiS1eWngTHN_QdBsfos2M,14061
65
+ flip/data/data_velocity.parquet,sha256=m5WkL3LRzwHKl-AgxMVnhn_8IaB5extm1Fipo3fKR1c,181039
66
+ flip/data/data_window_density.parquet,sha256=vSF7GGJzIkzGNTnhksFa-zJlEs9i5THugEzUl52si2o,40372
67
+ flip/data/gridding.py,sha256=_3PHazY-KbxQyHKWxQguB4LGJ1yU-uHNcQqzQSk5O8c,30864
68
+ flip/data/load_data_test.py,sha256=DmHn3gJTDtGqJCGObnpvhKm0YDGlhTM8kJuHIZUxZ9Q,2871
69
+ flip/data/power_spectrum_mm.txt,sha256=TltaM8gxTnyUR3eLM1GHf6HCctRA1F6cHmuhjRYkj8M,50085
70
+ flip/data/power_spectrum_mt.txt,sha256=S9fuSnNoW9qwJL7xuRUoVSz_EzmgEJENy3td8u9FkXU,50085
71
+ flip/data/power_spectrum_tt.txt,sha256=Ws3b8XtzZJ0aNKT7g3PRb0NQWDtvpFBTU6nCi0G5ZXc,50085
72
+ flip/data/style.mplstyle,sha256=2og3sSZU3SqBBB1Jm4alodk3jJF-PMyf7XZqCvItwdA,2341
73
+ flip/data/test_covariance_reference_values.json,sha256=O6Z-QeDBMjWQUKpLqbhwilGfO-fQaGGRjAdfHuq_WvQ,3360
74
+ flip/data/test_e2e_reference_values.json,sha256=qfqJDGL2CCiR4xiiYW6SX4_FdzawXQLodFXQREmT_Y0,256
75
+ flip/data_vector/__init__.py,sha256=ZUGmpWl3D_PvZSmQNte4L-sW7trfL-SJj7jtzeysnwM,129
76
+ flip/data_vector/basic.py,sha256=e5hsvSB19JA5QDeaNMdAQndLbDqcrNxx6zdCKeTTM5o,12362
77
+ flip/data_vector/cosmo_utils.py,sha256=WvrQmWM0lPkdy1Ak8NMe3IzauRcBV9bubAQ3YGCdqQo,624
78
+ flip/data_vector/galaxypv_vectors.py,sha256=VI897662S5s7g6iwAsQssvKK6ydBto1LBmvjBez6mfA,14890
79
+ flip/data_vector/snia_vectors.py,sha256=IzM2nH7y1y9puWGugLfLUJURpRksBNg2w5XZxypoWPY,7978
80
+ flip/data_vector/vector_utils.py,sha256=P0AfdyYUU5F6ClgrhyASmqs3ai6PsKmB_o_KnHlWVJY,6715
81
+ flip/power_spectra/__init__.py,sha256=9XDOGCo4YFXg0QdQ6gEC66oVaB1Q_NtCmqMn8PZs30w,118
82
+ flip/power_spectra/class_engine.py,sha256=MWKvSFKOK242JRpc4wNxbT_1ldH9c00umVW75A4px-A,5964
83
+ flip/power_spectra/cosmoprimo_engine.py,sha256=tftCtZO1YTQTKie44qdRPzT3WNTpZmW5fbw66qnKchk,3005
84
+ flip/power_spectra/generator.py,sha256=X6AAsuiYWXNjfJDdYGd0Pna1wgXH0_eNEZefGNcxZEM,6656
85
+ flip/power_spectra/models.py,sha256=bRR5lIQHyoRtE0lqQKjiPxCdQNqwK1ZG5zrjMPQmzoo,3544
86
+ flip/power_spectra/pyccl_engine.py,sha256=D8PTQaB43L6A0VhiQs55kuk8t6uOcDIxwLNW6i8Ja6w,3527
87
+ flip/simulation/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
88
+ flipcosmo-1.2.1.dist-info/licenses/LICENSE,sha256=jQfEFGXoNPb52M0jMfnWZtz8reTMYXItOx9-wevuHWg,1071
89
+ scripts/flip_compute_correlation_model.py,sha256=9IhGD2rctHIuE_FeOuTze22EEqGVWUqFzoTle1HNQ6k,1710
90
+ scripts/flip_compute_power_spectra.py,sha256=Ez36BS8bmxPs0iSeHVGIhzXcohlRb8BG6NxsioN7S0Y,1298
91
+ scripts/flip_fisher_forecast_velocity.py,sha256=coQ_YdsSouq-4AGXExwojr1fIC_tO0wz4-3HU9ZYTco,1838
92
+ scripts/flip_fisher_rcrk24.py,sha256=NhfGJgxuzKnodl2tzl5YS3MD_Cs2MDqWKgCGirvH3Fk,4899
93
+ scripts/flip_launch_minuit_density_fit.py,sha256=0sBaCGhvszBJ2_iwUPJh1LMT9duEe9jxEr_jWxuMQCU,2185
94
+ scripts/flip_launch_minuit_full_fit.py,sha256=PJiyhP5Nrguu_oogRTjlRXcr_0RDBsUY5EOaAg1CR-w,3225
95
+ scripts/flip_launch_minuit_velocity_fit.py,sha256=rcBa8CO04TVMeIRGdB_Oyp-RdFud_uU8tv9Wx_vuE24,1946
96
+ scripts/flip_launch_minuit_velocity_fit_full.py,sha256=wzHp-cns2ADzp02vQVyySbpNMS2EPddBM5NX3S3O1ew,2537
97
+ scripts/flip_launch_minuit_velocity_fit_interpolation.py,sha256=KAK7A_HU-FYorUEcPAXVCtBqRPEL3cugSUxcHVcEu24,2401
98
+ test/refresh_reference_values.py,sha256=T5Fs5iiKpeWUIyC0OHBrnXoPjfdAyfXMjE-YVK-pXLY,1148
99
+ test/test_covariance_assembly.py,sha256=kq8i9I6iYPwXAZ1zW9nHoxHL3e_3ppJ9dJ5Owy8OfQY,3601
100
+ test/test_covariance_reference_values.py,sha256=jwL1aLVGwRm0UcIMf7vUSrlLrG50vrN_rdfCxOBwdlo,4104
101
+ test/test_covariance_utils.py,sha256=mSd5FrjQI9HTtAUo_qJCO8XGdQl2TtG-0MPCqoZxtAU,1051
102
+ test/test_e2e_density.py,sha256=vVaRphhfGdHxKknzVOYbH3YMGma7BUk7o2PCqebHSr0,1833
103
+ test/test_e2e_joint.py,sha256=GfQkm2_NGPXiZWRxmbk1xX0Q8JXtfue59klDD6tHOBE,2386
104
+ test/test_e2e_velocity.py,sha256=FebMsWwzqvfhkest5kkXTdkW6Me-q1gTypcU6Qc4Kh4,1796
105
+ test/test_likelihood_inversions.py,sha256=RE2IiCtBPKJzlvEaFQysYh1nht9wTQo2Bfsfa0hChaY,830
106
+ flipcosmo-1.2.1.dist-info/METADATA,sha256=WxnK7RJ3Nxyc0gaH7IipR1SepPDVo4AUaWsVuMZj8iE,3616
107
+ flipcosmo-1.2.1.dist-info/WHEEL,sha256=wUyA8OaulRlbfwMtmQsvNngGrxQHAvkKcvRmdizlJi0,92
108
+ flipcosmo-1.2.1.dist-info/top_level.txt,sha256=9MRA5iw3NarUSIfyQLBZB_b_44iHdvuTW9CjqvMi8_4,44
109
+ flipcosmo-1.2.1.dist-info/RECORD,,
@@ -1,5 +1,5 @@
1
1
  Wheel-Version: 1.0
2
- Generator: setuptools (80.9.0)
2
+ Generator: setuptools (80.10.2)
3
3
  Root-Is-Purelib: true
4
4
  Tag: py3-none-any
5
5
 
@@ -0,0 +1,7 @@
1
+ dist
2
+ docs
3
+ flip
4
+ notebook
5
+ scripts
6
+ slides
7
+ test
@@ -0,0 +1,70 @@
1
+ import os
2
+
3
+ import numpy as np
4
+ from flip.covariance import contraction
5
+ from pkg_resources import resource_filename
6
+ from scipy.interpolate import RegularGridInterpolator
7
+
8
+ from flip import utils
9
+
10
+ flip_base = resource_filename("flip", ".")
11
+ data_path = os.path.join(flip_base, "data")
12
+
13
+ sigmau_fiducial = 15.0
14
+ sigmag_fiducial = 3.0
15
+
16
+ r_array = np.linspace(10, 200, 100)
17
+ mu_array = np.linspace(-1, 1, 100)
18
+
19
+ r_reference = 10_000
20
+ mu_reference = 0
21
+
22
+
23
+ ktt, ptt = np.loadtxt(os.path.join(data_path, "power_spectrum_tt.txt"))
24
+ kmt, pmt = np.loadtxt(os.path.join(data_path, "power_spectrum_mt.txt"))
25
+ kmm, pmm = np.loadtxt(os.path.join(data_path, "power_spectrum_mm.txt"))
26
+
27
+
28
+ power_spectrum_dict = {
29
+ "gg": [[kmm, pmm], [kmt, pmt], [ktt, ptt]],
30
+ "gv": [
31
+ [kmt, pmt * utils.Du(kmt, sigmau_fiducial)],
32
+ [ktt, ptt * utils.Du(kmt, sigmau_fiducial)],
33
+ ],
34
+ "vv": [[ktt, ptt * utils.Du(ktt, sigmau_fiducial) ** 2]],
35
+ }
36
+
37
+
38
+ correlation = contraction.Contraction.init_from_flip(
39
+ "adamsblake20",
40
+ "full",
41
+ power_spectrum_dict,
42
+ r_array,
43
+ mu_array,
44
+ r_reference,
45
+ mu_reference,
46
+ additional_parameters_values=(sigmag_fiducial,),
47
+ coordinate_type="rmu",
48
+ basis_definition="bisector",
49
+ number_worker=8,
50
+ hankel=True,
51
+ variant="nobeta",
52
+ )
53
+
54
+
55
+ parameter_dict = {
56
+ "fs8": 0.4,
57
+ "bs8": 1.8,
58
+ }
59
+
60
+
61
+ contraction_sum = correlation.compute_contraction_sum(parameter_dict)
62
+ xi_vv_interp = RegularGridInterpolator(
63
+ (r_array, mu_array), contraction_sum["vv"], method="cubic"
64
+ )
65
+ xi_vg_interp = RegularGridInterpolator(
66
+ (r_array, mu_array), contraction_sum["gv"], method="cubic"
67
+ )
68
+ xi_gg_interp = RegularGridInterpolator(
69
+ (r_array, mu_array), contraction_sum["gg"], method="cubic"
70
+ )
@@ -0,0 +1,50 @@
1
+ from flip.power_spectra import generator
2
+
3
+ power_spectrum_engine = "class_engine"
4
+
5
+ power_spectrum_settings = {
6
+ "h": 0.6766,
7
+ "omega_b": 0.02242,
8
+ "omega_cdm": 0.11933,
9
+ "sigma8": 0.8102,
10
+ "n_s": 0.9665,
11
+ }
12
+
13
+
14
+ minimal_wavenumber = 0.0005
15
+ maximal_wavenumber = 1.000
16
+ number_points = 1000
17
+ logspace = True
18
+ redshift = 0.0
19
+
20
+ # Can be changed by "growth_rate" (fsigma_8^fid normalization) or "no_normalization"
21
+ # Here, it normalize by sigma_8^fid
22
+ normalization_power_spectrum = "growth_amplitude"
23
+
24
+ # If you want to add non linearity, what model to use
25
+ power_spectrum_non_linear_model = "halofit"
26
+
27
+ # Model used to compute matter and velocity divergence power spectra
28
+ power_spectrum_model = "linearbel"
29
+
30
+ save_path = "./" # If not None, will save all calculated power spectra in this folder
31
+
32
+ (
33
+ wavenumber,
34
+ power_spectrum_mm,
35
+ power_spectrum_mt,
36
+ power_spectrum_tt,
37
+ fiducial,
38
+ ) = generator.compute_power_spectra(
39
+ power_spectrum_engine,
40
+ power_spectrum_settings,
41
+ redshift,
42
+ minimal_wavenumber,
43
+ maximal_wavenumber,
44
+ number_points,
45
+ logspace=logspace,
46
+ normalization_power_spectrum=normalization_power_spectrum,
47
+ power_spectrum_non_linear_model=power_spectrum_non_linear_model,
48
+ power_spectrum_model=power_spectrum_model,
49
+ save_path=save_path,
50
+ )
@@ -0,0 +1,70 @@
1
+ import os
2
+
3
+ import numpy as np
4
+ import pandas as pd
5
+ from flip.covariance import covariance, fisher
6
+ from pkg_resources import resource_filename
7
+
8
+ from flip import data_vector, utils
9
+
10
+ flip_base = resource_filename("flip", ".")
11
+ data_path = os.path.join(flip_base, "data")
12
+
13
+ ### Load data
14
+ sn_data = pd.read_parquet(os.path.join(data_path, "data_velocity.parquet"))
15
+
16
+ coordinates_velocity = np.array([sn_data["ra"], sn_data["dec"], sn_data["rcom_zobs"]])
17
+
18
+ data_velocity = sn_data.to_dict("list")
19
+ for key in data_velocity.keys():
20
+ data_velocity[key] = np.array(data_velocity[key])
21
+ data_velocity["velocity"] = data_velocity.pop("vpec")
22
+ data_velocity["velocity_error"] = np.zeros_like(data_velocity["velocity"])
23
+
24
+ data_velocity_object = data_vector.DirectVel(data_velocity)
25
+
26
+ ktt, ptt = np.loadtxt(os.path.join(data_path, "power_spectrum_tt.txt"))
27
+ kmt, pmt = np.loadtxt(os.path.join(data_path, "power_spectrum_mt.txt"))
28
+ kmm, pmm = np.loadtxt(os.path.join(data_path, "power_spectrum_mm.txt"))
29
+
30
+ sigmau_fiducial = 15
31
+
32
+ power_spectrum_dict = {"vv": [[ktt, ptt * utils.Du(ktt, sigmau_fiducial) ** 2]]}
33
+
34
+ ### Compute covariance
35
+ size_batch = 10_000
36
+ number_worker = 16
37
+
38
+ covariance_fit = covariance.CovMatrix.init_from_flip(
39
+ "carreres23",
40
+ "velocity",
41
+ power_spectrum_dict,
42
+ coordinates_velocity=coordinates_velocity,
43
+ size_batch=size_batch,
44
+ number_worker=number_worker,
45
+ )
46
+
47
+
48
+ ### Load fitter
49
+
50
+ fisher_properties = {
51
+ "inversion_method": "inverse",
52
+ "velocity_type": "scatter",
53
+ }
54
+
55
+ variant = None # can be replaced by growth_index
56
+
57
+ parameter_dict = {
58
+ "fs8": 0.4,
59
+ "sigv": 200,
60
+ "sigma_M": 0.12,
61
+ }
62
+
63
+ Fisher = fisher.FisherMatrix.init_from_covariance(
64
+ covariance_fit,
65
+ data_velocity_object,
66
+ parameter_dict,
67
+ fisher_properties=fisher_properties,
68
+ )
69
+
70
+ parameter_name_list, fisher_matrix = Fisher.compute_fisher_matrix()
@@ -0,0 +1,164 @@
1
+ import os
2
+
3
+ import numpy as np
4
+ import pandas as pd
5
+ from flip.covariance import covariance, fisher
6
+ from pkg_resources import resource_filename
7
+
8
+ from flip import data_vector, utils
9
+
10
+
11
+ def main(parameter_dict=None, variant="growth_rate"):
12
+ flip_base = resource_filename("flip", ".")
13
+ data_path = os.path.join(flip_base, "data")
14
+
15
+ ### Load data
16
+ sn_data = pd.read_parquet(os.path.join(data_path, "data_velocity.parquet"))
17
+
18
+ coordinates_velocity = np.array(
19
+ [sn_data["ra"], sn_data["dec"], sn_data["rcom_zobs"]]
20
+ )
21
+
22
+ data_velocity = sn_data.to_dict("list")
23
+ for key in data_velocity.keys():
24
+ data_velocity[key] = np.array(data_velocity[key])
25
+ data_velocity["velocity"] = data_velocity.pop("vpec")
26
+ data_velocity["velocity_error"] = np.zeros_like(data_velocity["velocity"])
27
+
28
+ data_velocity_object = data_vector.DirectVel(data_velocity)
29
+
30
+ ktt, ptt = np.loadtxt(os.path.join(data_path, "power_spectrum_tt.txt"))
31
+
32
+ sigmau_fiducial = 15
33
+
34
+ power_spectrum_dict = {"vv": [[ktt, ptt * utils.Du(ktt, sigmau_fiducial) ** 2]]}
35
+
36
+ size_batch = 10_000
37
+ number_worker = 16
38
+
39
+ covariance_fit = covariance.CovMatrix.init_from_flip(
40
+ "rcrk24",
41
+ "velocity",
42
+ power_spectrum_dict,
43
+ coordinates_velocity=coordinates_velocity,
44
+ size_batch=size_batch,
45
+ number_worker=number_worker,
46
+ variant=variant,
47
+ )
48
+
49
+ ### Load fitter
50
+
51
+ fisher_properties = {
52
+ "inversion_method": "inverse",
53
+ "velocity_type": "scatter",
54
+ }
55
+
56
+ Fisher = fisher.FisherMatrix.init_from_covariance(
57
+ covariance_fit,
58
+ data_velocity_object,
59
+ parameter_dict,
60
+ fisher_properties=fisher_properties,
61
+ covariance_prefactor_dict={"redshift_velocity": data_velocity["zobs"]},
62
+ )
63
+
64
+ parameter_name_list, fisher_matrix = Fisher.compute_fisher_matrix(
65
+ covariance_prefactor_dict={"redshift_velocity": np.array(data_velocity["zobs"])}
66
+ )
67
+ return parameter_name_list, fisher_matrix
68
+
69
+
70
+ def lnD(a, parameter_values_dict):
71
+ f0 = parameter_values_dict["Om0"] ** parameter_values_dict["gamma"]
72
+ return np.log(a) * (
73
+ f0
74
+ + f0 * 3 * parameter_values_dict["gamma"] * (1 - parameter_values_dict["Om0"])
75
+ ) + (1 - a) * f0 * 3 * parameter_values_dict["gamma"] * (
76
+ 1 - parameter_values_dict["Om0"]
77
+ )
78
+
79
+
80
+ def dlnDdOm0(a, parameter_values_dict):
81
+ lna = np.log(a)
82
+ return (
83
+ parameter_values_dict["gamma"]
84
+ * parameter_values_dict["Om0"] ** (parameter_values_dict["gamma"] - 1)
85
+ * (
86
+ 3
87
+ * parameter_values_dict["gamma"]
88
+ * (parameter_values_dict["Om0"] - 1)
89
+ * (a - lna - 1)
90
+ + 3 * (a - 1) * parameter_values_dict["Om0"]
91
+ - 3 * np.log(a) * parameter_values_dict["Om0"]
92
+ + lna
93
+ )
94
+ )
95
+
96
+
97
+ def dlnDdgamma(a, parameter_values_dict):
98
+ lna = np.log(a)
99
+ f0 = parameter_values_dict["Om0"] ** parameter_values_dict["gamma"]
100
+ return f0 * (
101
+ np.log(parameter_values_dict["Om0"])
102
+ * (
103
+ 3
104
+ * parameter_values_dict["gamma"]
105
+ * (parameter_values_dict["Om0"] - 1)
106
+ * (a - lna - 1)
107
+ + lna
108
+ )
109
+ + 3 * (parameter_values_dict["Om0"] - 1) * (a - lna - 1)
110
+ )
111
+
112
+
113
+ if __name__ == "__main__":
114
+
115
+ # dictionary that describes the fiducial power spectrum
116
+ # should be specified by the
117
+ #
118
+ # parameters of the model
119
+ # s8 of the fiducial power spectrum
120
+ # z of the fiduccial power spectrum
121
+
122
+ # for now the dictionaries conflate the two models.
123
+ # Really should be for one model
124
+
125
+ parameter_dict = {
126
+ "gamma": 0.55,
127
+ "Om0": 0.3,
128
+ "s80": 0.832,
129
+ "fs8": 0.3**0.55 * 0.832,
130
+ "s8_cmb": 0.832 * 0.001176774706956903,
131
+ "sigv": 200,
132
+ "sigma_M": 0.12,
133
+ }
134
+
135
+ Om0_prior = 0.1
136
+
137
+ # growth index
138
+ parameter_name_list, fisher_matrix = main(
139
+ parameter_dict=parameter_dict, variant="growth_index"
140
+ )
141
+ cov = np.linalg.inv(fisher_matrix + np.array([[1 / Om0_prior**2, 0], [0, 0]]))
142
+ partials = parameter_dict["s80"] * np.array(
143
+ [
144
+ parameter_dict["gamma"]
145
+ * parameter_dict["Om0"] ** (parameter_dict["gamma"] - 1),
146
+ np.log(parameter_dict["Om0"])
147
+ * parameter_dict["Om0"] ** parameter_dict["gamma"],
148
+ ]
149
+ )
150
+ partials = partials + parameter_dict["Om0"] ** parameter_dict[
151
+ "gamma"
152
+ ] * parameter_dict["s80"] * np.array(
153
+ [dlnDdOm0(1.0, parameter_dict), dlnDdgamma(1.0, parameter_dict)]
154
+ )
155
+ print(
156
+ parameter_dict["Om0"] ** parameter_dict["gamma"] * parameter_dict["s80"],
157
+ np.sqrt(partials.T @ cov @ partials),
158
+ )
159
+
160
+ # growth rate
161
+ parameter_name_list, fisher_matrix = main(
162
+ parameter_dict=parameter_dict, variant="growth_rate"
163
+ )
164
+ print(parameter_dict["fs8"], 1 / np.sqrt(fisher_matrix))
@@ -0,0 +1,91 @@
1
+ import os
2
+
3
+ import numpy as np
4
+ import pandas as pd
5
+ from flip.covariance import covariance, fitter
6
+ from pkg_resources import resource_filename
7
+
8
+ from flip import data_vector
9
+
10
+ flip_base = resource_filename("flip", ".")
11
+ data_path = os.path.join(flip_base, "data")
12
+
13
+ ### Load data
14
+ grid = pd.read_parquet(os.path.join(data_path, "data_density.parquet"))
15
+ grid_window = pd.read_parquet(os.path.join(data_path, "data_window_density.parquet"))
16
+
17
+ coordinates_density = np.array([grid["ra"], grid["dec"], grid["rcom_zobs"]])
18
+ data_density = {
19
+ "density": np.array(grid["density"]),
20
+ "density_error": np.array(grid["density_error"]),
21
+ }
22
+
23
+ data_density_object = data_vector.Dens(data_density)
24
+
25
+
26
+ ktt, ptt = np.loadtxt(os.path.join(data_path, "power_spectrum_tt.txt"))
27
+ kmt, pmt = np.loadtxt(os.path.join(data_path, "power_spectrum_mt.txt"))
28
+ kmm, pmm = np.loadtxt(os.path.join(data_path, "power_spectrum_mm.txt"))
29
+
30
+ sigmag_fiducial = 3.0
31
+
32
+
33
+ power_spectrum_dict_bias = {
34
+ "gg": [[kmm, pmm * np.array(grid_window["window_mm"]) ** 2]]
35
+ }
36
+ power_spectrum_dict = {
37
+ "gg": [
38
+ [kmm, pmm * np.array(grid_window["window_mm"]) ** 2],
39
+ [kmt, pmt * np.array(grid_window["window_mt"])],
40
+ [ktt, ptt],
41
+ ]
42
+ }
43
+
44
+
45
+ ### Compute covariance
46
+ size_batch = 500_000
47
+ number_worker = 8
48
+
49
+ covariance_fit = covariance.CovMatrix.init_from_flip(
50
+ "adamsblake20",
51
+ "density",
52
+ power_spectrum_dict,
53
+ coordinates_density=coordinates_density,
54
+ size_batch=size_batch,
55
+ number_worker=number_worker,
56
+ additional_parameters_values=(sigmag_fiducial,),
57
+ variant="nobeta",
58
+ )
59
+
60
+
61
+ ### Load fitter
62
+ likelihood_type = "multivariate_gaussian"
63
+ likelihood_properties = {"inversion_method": "cholesky_inverse"}
64
+
65
+ parameter_dict = {
66
+ "bs8": {
67
+ "value": 1.0,
68
+ "limit_low": 0.0,
69
+ "limit_up": 3.0,
70
+ "fixed": False,
71
+ },
72
+ "fs8": {
73
+ "value": 0.4,
74
+ "limit_low": 0.0,
75
+ "limit_up": 1.0,
76
+ "fixed": False,
77
+ },
78
+ }
79
+
80
+
81
+ minuit_fitter = fitter.FitMinuit.init_from_covariance(
82
+ covariance_fit,
83
+ data_density_object,
84
+ parameter_dict,
85
+ likelihood_type=likelihood_type,
86
+ likelihood_properties=likelihood_properties,
87
+ )
88
+
89
+
90
+ ### Fit
91
+ minuit_fitter.run()