nmma 0.2.1__tar.gz → 0.2.3__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 (340) hide show
  1. {nmma-0.2.1 → nmma-0.2.3}/.github/workflows/build-deploy-container.yml +4 -3
  2. nmma-0.2.3/.github/workflows/continous_integration.yml +115 -0
  3. nmma-0.2.1/.github/workflows/continous_integration.yml → nmma-0.2.3/.github/workflows/continous_integration_macos.yml +49 -52
  4. {nmma-0.2.1 → nmma-0.2.3}/.github/workflows/dependency-installation.yml +12 -8
  5. nmma-0.2.3/.github/workflows/deploy-github-pages.yml +56 -0
  6. nmma-0.2.3/.github/workflows/publish-to-pypi.yml +36 -0
  7. {nmma-0.2.1 → nmma-0.2.3}/PKG-INFO +41 -10
  8. {nmma-0.2.1 → nmma-0.2.3}/README.md +30 -0
  9. {nmma-0.2.1 → nmma-0.2.3}/api/Dockerfile +2 -2
  10. {nmma-0.2.1 → nmma-0.2.3}/api/environment.yml +1 -1
  11. {nmma-0.2.1 → nmma-0.2.3}/doc/index.rst +3 -2
  12. nmma-0.2.3/doc/systematics.rst +87 -0
  13. nmma-0.2.3/example_files/multi_config_analysis/config.yaml +75 -0
  14. nmma-0.2.3/example_files/multi_config_analysis/injection.json +31 -0
  15. nmma-0.2.3/nmma/__init__.py +1 -0
  16. {nmma-0.2.1 → nmma-0.2.3}/nmma/em/analysis.py +33 -20
  17. {nmma-0.2.1 → nmma-0.2.3}/nmma/em/analysis_lbol.py +9 -1
  18. {nmma-0.2.1 → nmma-0.2.3}/nmma/em/combine_EOS.py +2 -1
  19. {nmma-0.2.1 → nmma-0.2.3}/nmma/em/create_lightcurves.py +2 -2
  20. {nmma-0.2.1 → nmma-0.2.3}/nmma/em/gwem_resampling_utils.py +3 -1
  21. {nmma-0.2.1 → nmma-0.2.3}/nmma/em/likelihood.py +93 -12
  22. {nmma-0.2.1 → nmma-0.2.3}/nmma/em/model.py +206 -58
  23. nmma-0.2.3/nmma/em/multi_config_analysis.py +107 -0
  24. {nmma-0.2.1 → nmma-0.2.3}/nmma/em/prior.py +26 -0
  25. {nmma-0.2.1 → nmma-0.2.3}/nmma/em/svdmodel_benchmark.py +3 -1
  26. nmma-0.2.3/nmma/em/systematics.py +190 -0
  27. {nmma-0.2.1 → nmma-0.2.3}/nmma/em/training.py +5 -4
  28. {nmma-0.2.1 → nmma-0.2.3}/nmma/em/utils.py +181 -11
  29. {nmma-0.2.1 → nmma-0.2.3}/nmma/joint/conversion.py +20 -17
  30. {nmma-0.2.1 → nmma-0.2.3}/nmma/tests/analysis.py +40 -4
  31. {nmma-0.2.1 → nmma-0.2.3}/nmma/tests/analysis_lbol.py +2 -1
  32. nmma-0.2.3/nmma/tests/data/Bu2019nsbh_tf/2massks.h5 +0 -0
  33. nmma-0.2.3/nmma/tests/data/Bu2019nsbh_tf/sdssu.h5 +0 -0
  34. nmma-0.2.3/nmma/tests/data/multi_config_analysis/config.yaml +35 -0
  35. nmma-0.2.3/nmma/tests/data/multi_config_analysis/injection.json +31 -0
  36. nmma-0.2.3/nmma/tests/data/systematics_with_time.yaml +14 -0
  37. nmma-0.2.3/nmma/tests/data/systematics_with_time_combined_filters.yaml +16 -0
  38. nmma-0.2.3/nmma/tests/data/systematics_without_time.yaml +14 -0
  39. {nmma-0.2.1 → nmma-0.2.3}/nmma/tests/injections.py +6 -4
  40. nmma-0.2.3/nmma/tests/multi_config_analysis.py +30 -0
  41. nmma-0.2.3/nmma/tests/systematics.py +203 -0
  42. nmma-0.2.3/nmma/tests/utils.py +58 -0
  43. {nmma-0.2.1 → nmma-0.2.3}/nmma.egg-info/PKG-INFO +41 -10
  44. {nmma-0.2.1 → nmma-0.2.3}/nmma.egg-info/SOURCES.txt +19 -0
  45. {nmma-0.2.1 → nmma-0.2.3}/nmma.egg-info/entry_points.txt +1 -0
  46. {nmma-0.2.1 → nmma-0.2.3}/nmma.egg-info/requires.txt +6 -6
  47. nmma-0.2.3/priors/HoNa2020.prior +8 -0
  48. nmma-0.2.3/priors/Me2017.prior +6 -0
  49. nmma-0.2.3/priors/systematics.yaml +19 -0
  50. {nmma-0.2.1 → nmma-0.2.3}/pyproject.toml +6 -3
  51. {nmma-0.2.1 → nmma-0.2.3}/requirements.txt +6 -6
  52. nmma-0.2.1/.github/workflows/deploy-github-pages.yml +0 -56
  53. nmma-0.2.1/.github/workflows/publish-to-pypi.yml +0 -36
  54. nmma-0.2.1/nmma/__init__.py +0 -1
  55. {nmma-0.2.1 → nmma-0.2.3}/.flake8 +0 -0
  56. {nmma-0.2.1 → nmma-0.2.3}/.gitattributes +0 -0
  57. {nmma-0.2.1 → nmma-0.2.3}/.github/ISSUE_TEMPLATE/bug_report.md +0 -0
  58. {nmma-0.2.1 → nmma-0.2.3}/.github/ISSUE_TEMPLATE/feature_request.md +0 -0
  59. {nmma-0.2.1 → nmma-0.2.3}/.github/workflows/delete-branch-cache.yml +0 -0
  60. {nmma-0.2.1 → nmma-0.2.3}/.github/workflows/publish-to-anaconda.yml +0 -0
  61. {nmma-0.2.1 → nmma-0.2.3}/.github/workflows/rst-linter.yml +0 -0
  62. {nmma-0.2.1 → nmma-0.2.3}/.gitignore +0 -0
  63. {nmma-0.2.1 → nmma-0.2.3}/.pep8speaks.yml +0 -0
  64. {nmma-0.2.1 → nmma-0.2.3}/.pre-commit-config.yaml +0 -0
  65. {nmma-0.2.1 → nmma-0.2.3}/CITATION.cff +0 -0
  66. {nmma-0.2.1 → nmma-0.2.3}/Dockerfile +0 -0
  67. {nmma-0.2.1 → nmma-0.2.3}/LICENSE +0 -0
  68. {nmma-0.2.1 → nmma-0.2.3}/MANIFEST.in +0 -0
  69. {nmma-0.2.1 → nmma-0.2.3}/api/app.py +0 -0
  70. {nmma-0.2.1 → nmma-0.2.3}/api/log.py +0 -0
  71. {nmma-0.2.1 → nmma-0.2.3}/assets/a3d3.png +0 -0
  72. {nmma-0.2.1 → nmma-0.2.3}/assets/erc.png +0 -0
  73. {nmma-0.2.1 → nmma-0.2.3}/assets/nsf.png +0 -0
  74. {nmma-0.2.1 → nmma-0.2.3}/doc/.doctor-rst.yaml +0 -0
  75. {nmma-0.2.1 → nmma-0.2.3}/doc/Cluster_Resources.md +0 -0
  76. {nmma-0.2.1 → nmma-0.2.3}/doc/GW-EM-resampling.md +0 -0
  77. {nmma-0.2.1 → nmma-0.2.3}/doc/Makefile +0 -0
  78. {nmma-0.2.1 → nmma-0.2.3}/doc/_static/.nmma-docs.css.un~ +0 -0
  79. {nmma-0.2.1 → nmma-0.2.3}/doc/_static/favicon-light.png +0 -0
  80. {nmma-0.2.1 → nmma-0.2.3}/doc/_static/light-logo.svg +0 -0
  81. {nmma-0.2.1 → nmma-0.2.3}/doc/_static/nmma-docs.css +0 -0
  82. {nmma-0.2.1 → nmma-0.2.3}/doc/_static/nmma-docs.css~ +0 -0
  83. {nmma-0.2.1 → nmma-0.2.3}/doc/changelog.rst +0 -0
  84. {nmma-0.2.1 → nmma-0.2.3}/doc/combined_analysis.md +0 -0
  85. {nmma-0.2.1 → nmma-0.2.3}/doc/conf.py +0 -0
  86. {nmma-0.2.1 → nmma-0.2.3}/doc/contributing.md +0 -0
  87. {nmma-0.2.1 → nmma-0.2.3}/doc/data_inj_obs.md +0 -0
  88. {nmma-0.2.1 → nmma-0.2.3}/doc/fitting.md +0 -0
  89. {nmma-0.2.1 → nmma-0.2.3}/doc/gw_inference.md +0 -0
  90. {nmma-0.2.1 → nmma-0.2.3}/doc/gwemopt_light_curves_detection.md +0 -0
  91. {nmma-0.2.1 → nmma-0.2.3}/doc/images/Corner_narrow_Bulla.png +0 -0
  92. {nmma-0.2.1 → nmma-0.2.3}/doc/images/ZTF21abjvfbc_corner.png +0 -0
  93. {nmma-0.2.1 → nmma-0.2.3}/doc/images/ZTF21abjvfbc_lightcurves.png +0 -0
  94. {nmma-0.2.1 → nmma-0.2.3}/doc/images/ZTF_corner.png +0 -0
  95. {nmma-0.2.1 → nmma-0.2.3}/doc/images/ZTF_lightcurves.png +0 -0
  96. {nmma-0.2.1 → nmma-0.2.3}/doc/images/corner_samples.png +0 -0
  97. {nmma-0.2.1 → nmma-0.2.3}/doc/images/dark-logo.svg +0 -0
  98. {nmma-0.2.1 → nmma-0.2.3}/doc/images/injection_corner.png +0 -0
  99. {nmma-0.2.1 → nmma-0.2.3}/doc/images/injection_lightcurves.png +0 -0
  100. {nmma-0.2.1 → nmma-0.2.3}/doc/images/light-logo.svg +0 -0
  101. {nmma-0.2.1 → nmma-0.2.3}/doc/images/training_lightcurves.png +0 -0
  102. {nmma-0.2.1 → nmma-0.2.3}/doc/joint_inference.md +0 -0
  103. {nmma-0.2.1 → nmma-0.2.3}/doc/lfi_analysis.md +0 -0
  104. {nmma-0.2.1 → nmma-0.2.3}/doc/models.md +0 -0
  105. {nmma-0.2.1 → nmma-0.2.3}/doc/observing-scenarios-light-curves.md +0 -0
  106. {nmma-0.2.1 → nmma-0.2.3}/doc/quick-start-guide.rst +0 -0
  107. {nmma-0.2.1 → nmma-0.2.3}/doc/training.md +0 -0
  108. {nmma-0.2.1 → nmma-0.2.3}/doc_requirements.txt +0 -0
  109. {nmma-0.2.1 → nmma-0.2.3}/docker-compose.yml +0 -0
  110. {nmma-0.2.1 → nmma-0.2.3}/example_files/NICER/J0030_3spot_RM.txt +0 -0
  111. {nmma-0.2.1 → nmma-0.2.3}/example_files/NICER/NICER+XMM_J0740_RM.txt +0 -0
  112. {nmma-0.2.1 → nmma-0.2.3}/example_files/NICER/NICER_x_XMM_J0740_XPSI_STU_NSX_FIH_radius_mass.txt +0 -0
  113. {nmma-0.2.1 → nmma-0.2.3}/example_files/candidate_data/ZTF20abwysqy.dat +0 -0
  114. {nmma-0.2.1 → nmma-0.2.3}/example_files/candidate_data/ZTF21abdequz.dat +0 -0
  115. {nmma-0.2.1 → nmma-0.2.3}/example_files/candidate_data/ZTF21abdhqle.dat +0 -0
  116. {nmma-0.2.1 → nmma-0.2.3}/example_files/candidate_data/ZTF21abdpqpq.dat +0 -0
  117. {nmma-0.2.1 → nmma-0.2.3}/example_files/candidate_data/ZTF21abinaiu.dat +0 -0
  118. {nmma-0.2.1 → nmma-0.2.3}/example_files/candidate_data/ZTF21abisoui.dat +0 -0
  119. {nmma-0.2.1 → nmma-0.2.3}/example_files/candidate_data/ZTF21abitmou.dat +0 -0
  120. {nmma-0.2.1 → nmma-0.2.3}/example_files/candidate_data/ZTF21abivhns.dat +0 -0
  121. {nmma-0.2.1 → nmma-0.2.3}/example_files/candidate_data/ZTF21abjpkvy.dat +0 -0
  122. {nmma-0.2.1 → nmma-0.2.3}/example_files/candidate_data/ZTF21abjrhzz.dat +0 -0
  123. {nmma-0.2.1 → nmma-0.2.3}/example_files/candidate_data/ZTF21abjrmes.dat +0 -0
  124. {nmma-0.2.1 → nmma-0.2.3}/example_files/candidate_data/ZTF21abjtdua.dat +0 -0
  125. {nmma-0.2.1 → nmma-0.2.3}/example_files/candidate_data/ZTF21abjvfbc.dat +0 -0
  126. {nmma-0.2.1 → nmma-0.2.3}/example_files/candidate_data/ZTF23aaxeacr.dat +0 -0
  127. {nmma-0.2.1 → nmma-0.2.3}/example_files/eos/ALF2.dat +0 -0
  128. {nmma-0.2.1 → nmma-0.2.3}/example_files/lbol/ztf23bqun/23bqun_bbdata.csv +0 -0
  129. {nmma-0.2.1 → nmma-0.2.3}/example_files/lbol/ztf23bqun/Arnett_modified.priors +0 -0
  130. {nmma-0.2.1 → nmma-0.2.3}/example_files/lbol/ztf23bqun/lbol_test_corner.png +0 -0
  131. {nmma-0.2.1 → nmma-0.2.3}/example_files/lbol/ztf23bqun/lbol_test_lightcurves.png +0 -0
  132. {nmma-0.2.1 → nmma-0.2.3}/example_files/lbol/ztf23bqun/run.sh +0 -0
  133. {nmma-0.2.1 → nmma-0.2.3}/example_files/lightcurves/AT2017gfo.dat +0 -0
  134. {nmma-0.2.1 → nmma-0.2.3}/example_files/lightcurves/AT2017gfo_GRB170817A_reduced.dat +0 -0
  135. {nmma-0.2.1 → nmma-0.2.3}/example_files/lightcurves/AT2017gfo_reduced.dat +0 -0
  136. {nmma-0.2.1 → nmma-0.2.3}/example_files/lightcurves/GRB211211A.txt +0 -0
  137. {nmma-0.2.1 → nmma-0.2.3}/example_files/prior/GW170817_AT2017gfo.prior +0 -0
  138. {nmma-0.2.1 → nmma-0.2.3}/example_files/prior/GW170817_AT2017gfo_GRB170817A.prior +0 -0
  139. {nmma-0.2.1 → nmma-0.2.3}/example_files/prior/ZTF_Bu2019lm.prior +0 -0
  140. {nmma-0.2.1 → nmma-0.2.3}/example_files/sim_events/bns_O4_injections.dat +0 -0
  141. {nmma-0.2.1 → nmma-0.2.3}/example_files/sim_events/injections.dat +0 -0
  142. {nmma-0.2.1 → nmma-0.2.3}/example_files/tools/gwem_resampling/GRB211211A_NSBH_posterior_samples.dat +0 -0
  143. {nmma-0.2.1 → nmma-0.2.3}/example_files/tools/gwem_resampling/GRB211211A_posterior_samples.dat +0 -0
  144. {nmma-0.2.1 → nmma-0.2.3}/example_files/tools/gwem_resampling/GWsamples.dat +0 -0
  145. {nmma-0.2.1 → nmma-0.2.3}/example_files/tools/gwem_resampling/GWsamples_NSBH.dat +0 -0
  146. {nmma-0.2.1 → nmma-0.2.3}/example_files/tools/gwem_resampling/gwsamples_generation.py +0 -0
  147. {nmma-0.2.1 → nmma-0.2.3}/example_files/tools/gwem_resampling/posterior_probability.txt +0 -0
  148. {nmma-0.2.1 → nmma-0.2.3}/example_files/yaml/doc_example.yaml +0 -0
  149. {nmma-0.2.1 → nmma-0.2.3}/example_files/zenodo/gw_posteriors.txt +0 -0
  150. {nmma-0.2.1 → nmma-0.2.3}/grb_requirements.txt +0 -0
  151. {nmma-0.2.1 → nmma-0.2.3}/ml_requirements.txt +0 -0
  152. {nmma-0.2.1 → nmma-0.2.3}/nmma/__pycache__/__init__.cpython-37.pyc +0 -0
  153. {nmma-0.2.1 → nmma-0.2.3}/nmma/em/__init__.py +0 -0
  154. {nmma-0.2.1 → nmma-0.2.3}/nmma/em/__pycache__/__init__.cpython-37.pyc +0 -0
  155. {nmma-0.2.1 → nmma-0.2.3}/nmma/em/__pycache__/likelihood.cpython-37.pyc +0 -0
  156. {nmma-0.2.1 → nmma-0.2.3}/nmma/em/__pycache__/model.cpython-37.pyc +0 -0
  157. {nmma-0.2.1 → nmma-0.2.3}/nmma/em/__pycache__/utils.cpython-37.pyc +0 -0
  158. {nmma-0.2.1 → nmma-0.2.3}/nmma/em/analysis_condor.py +0 -0
  159. {nmma-0.2.1 → nmma-0.2.3}/nmma/em/create_injection_condor.py +0 -0
  160. {nmma-0.2.1 → nmma-0.2.3}/nmma/em/create_injection_slurm.py +0 -0
  161. {nmma-0.2.1 → nmma-0.2.3}/nmma/em/create_lightcurves_condor.py +0 -0
  162. {nmma-0.2.1 → nmma-0.2.3}/nmma/em/create_lightcurves_slurm.py +0 -0
  163. {nmma-0.2.1 → nmma-0.2.3}/nmma/em/create_svdmodel.py +0 -0
  164. {nmma-0.2.1 → nmma-0.2.3}/nmma/em/data/ZTF_revisit_kde_i.joblib +0 -0
  165. {nmma-0.2.1 → nmma-0.2.3}/nmma/em/data/ZTF_revisit_kde_public.joblib +0 -0
  166. {nmma-0.2.1 → nmma-0.2.3}/nmma/em/data/ZTF_sampling_public.pkl +0 -0
  167. {nmma-0.2.1 → nmma-0.2.3}/nmma/em/data/ZTF_uncer_params.pkl +0 -0
  168. {nmma-0.2.1 → nmma-0.2.3}/nmma/em/data/__init__.py +0 -0
  169. {nmma-0.2.1 → nmma-0.2.3}/nmma/em/data/__pycache__/__init__.cpython-38.pyc +0 -0
  170. {nmma-0.2.1 → nmma-0.2.3}/nmma/em/data/lims_ToO_180_g.joblib +0 -0
  171. {nmma-0.2.1 → nmma-0.2.3}/nmma/em/data/lims_ToO_180_r.joblib +0 -0
  172. {nmma-0.2.1 → nmma-0.2.3}/nmma/em/data/lims_ToO_300_g.joblib +0 -0
  173. {nmma-0.2.1 → nmma-0.2.3}/nmma/em/data/lims_ToO_300_r.joblib +0 -0
  174. {nmma-0.2.1 → nmma-0.2.3}/nmma/em/data/lims_i.joblib +0 -0
  175. {nmma-0.2.1 → nmma-0.2.3}/nmma/em/data/lims_public_g.joblib +0 -0
  176. {nmma-0.2.1 → nmma-0.2.3}/nmma/em/data/lims_public_r.joblib +0 -0
  177. {nmma-0.2.1 → nmma-0.2.3}/nmma/em/data/sampling_ToO_180.pkl +0 -0
  178. {nmma-0.2.1 → nmma-0.2.3}/nmma/em/data/sampling_ToO_300.pkl +0 -0
  179. {nmma-0.2.1 → nmma-0.2.3}/nmma/em/detect_lightcurves.py +0 -0
  180. {nmma-0.2.1 → nmma-0.2.3}/nmma/em/gwem_Hubble_estimate.py +0 -0
  181. {nmma-0.2.1 → nmma-0.2.3}/nmma/em/gwem_resampling.py +0 -0
  182. {nmma-0.2.1 → nmma-0.2.3}/nmma/em/gwem_resampling_condor.py +0 -0
  183. {nmma-0.2.1 → nmma-0.2.3}/nmma/em/gwsamples_creation.py +0 -0
  184. {nmma-0.2.1 → nmma-0.2.3}/nmma/em/injection.py +0 -0
  185. {nmma-0.2.1 → nmma-0.2.3}/nmma/em/injection_summary.py +0 -0
  186. {nmma-0.2.1 → nmma-0.2.3}/nmma/em/io.py +0 -0
  187. {nmma-0.2.1 → nmma-0.2.3}/nmma/em/lightcurve_marginalization.py +0 -0
  188. {nmma-0.2.1 → nmma-0.2.3}/nmma/em/manual.py +0 -0
  189. {nmma-0.2.1 → nmma-0.2.3}/nmma/em/model_lbol.py +0 -0
  190. {nmma-0.2.1 → nmma-0.2.3}/nmma/em/model_parameters.py +0 -0
  191. {nmma-0.2.1 → nmma-0.2.3}/nmma/em/utils_lbol.py +0 -0
  192. {nmma-0.2.1 → nmma-0.2.3}/nmma/em/validate_lightcurve.py +0 -0
  193. {nmma-0.2.1 → nmma-0.2.3}/nmma/eos/__init__.py +0 -0
  194. {nmma-0.2.1 → nmma-0.2.3}/nmma/eos/__pycache__/__init__.cpython-37.pyc +0 -0
  195. {nmma-0.2.1 → nmma-0.2.3}/nmma/eos/__pycache__/eos.cpython-37.pyc +0 -0
  196. {nmma-0.2.1 → nmma-0.2.3}/nmma/eos/__pycache__/tov.cpython-37.pyc +0 -0
  197. {nmma-0.2.1 → nmma-0.2.3}/nmma/eos/__pycache__/utils.cpython-37.pyc +0 -0
  198. {nmma-0.2.1 → nmma-0.2.3}/nmma/eos/create_injection.py +0 -0
  199. {nmma-0.2.1 → nmma-0.2.3}/nmma/eos/eos.py +0 -0
  200. {nmma-0.2.1 → nmma-0.2.3}/nmma/eos/tov.py +0 -0
  201. {nmma-0.2.1 → nmma-0.2.3}/nmma/eos/utils.py +0 -0
  202. {nmma-0.2.1 → nmma-0.2.3}/nmma/gw/likelihood.py +0 -0
  203. {nmma-0.2.1 → nmma-0.2.3}/nmma/joint/__init__.py +0 -0
  204. {nmma-0.2.1 → nmma-0.2.3}/nmma/joint/__pycache__/__init__.cpython-37.pyc +0 -0
  205. {nmma-0.2.1 → nmma-0.2.3}/nmma/joint/__pycache__/constraints.cpython-37.pyc +0 -0
  206. {nmma-0.2.1 → nmma-0.2.3}/nmma/joint/__pycache__/conversion.cpython-37.pyc +0 -0
  207. {nmma-0.2.1 → nmma-0.2.3}/nmma/joint/__pycache__/likelihood.cpython-37.pyc +0 -0
  208. {nmma-0.2.1 → nmma-0.2.3}/nmma/joint/constraints.py +0 -0
  209. {nmma-0.2.1 → nmma-0.2.3}/nmma/joint/likelihood.py +0 -0
  210. {nmma-0.2.1 → nmma-0.2.3}/nmma/joint/maximum_mass_constraint.py +0 -0
  211. {nmma-0.2.1 → nmma-0.2.3}/nmma/joint/maximum_mass_constraint_utils.py +0 -0
  212. {nmma-0.2.1 → nmma-0.2.3}/nmma/mlmodel/dataprocessing.py +0 -0
  213. {nmma-0.2.1 → nmma-0.2.3}/nmma/mlmodel/embedding.py +0 -0
  214. {nmma-0.2.1 → nmma-0.2.3}/nmma/mlmodel/frozen-flow-weights.pth +0 -0
  215. {nmma-0.2.1 → nmma-0.2.3}/nmma/mlmodel/inference.py +0 -0
  216. {nmma-0.2.1 → nmma-0.2.3}/nmma/mlmodel/normalizingflows.py +0 -0
  217. {nmma-0.2.1 → nmma-0.2.3}/nmma/mlmodel/resnet.py +0 -0
  218. {nmma-0.2.1 → nmma-0.2.3}/nmma/mlmodel/similarity_embedding_weights.pth +0 -0
  219. {nmma-0.2.1 → nmma-0.2.3}/nmma/pbilby/analysis/__init__.py +0 -0
  220. {nmma-0.2.1 → nmma-0.2.3}/nmma/pbilby/analysis/analysis_run.py +0 -0
  221. {nmma-0.2.1 → nmma-0.2.3}/nmma/pbilby/analysis/likelihood.py +0 -0
  222. {nmma-0.2.1 → nmma-0.2.3}/nmma/pbilby/analysis/main.py +0 -0
  223. {nmma-0.2.1 → nmma-0.2.3}/nmma/pbilby/generation.py +0 -0
  224. {nmma-0.2.1 → nmma-0.2.3}/nmma/pbilby/parser/__init__.py +0 -0
  225. {nmma-0.2.1 → nmma-0.2.3}/nmma/pbilby/parser/analysis.py +0 -0
  226. {nmma-0.2.1 → nmma-0.2.3}/nmma/pbilby/parser/generation.py +0 -0
  227. {nmma-0.2.1 → nmma-0.2.3}/nmma/pbilby/parser/shared.py +0 -0
  228. {nmma-0.2.1 → nmma-0.2.3}/nmma/tests/__init__.py +0 -0
  229. {nmma-0.2.1 → nmma-0.2.3}/nmma/tests/data/Bu2019lm_injection.json +0 -0
  230. {nmma-0.2.1 → nmma-0.2.3}/nmma/tests/data/Bu2019nsbh/ztfr.joblib +0 -0
  231. {nmma-0.2.1 → nmma-0.2.3}/nmma/tests/data/Bu2019nsbh.joblib +0 -0
  232. {nmma-0.2.1 → nmma-0.2.3}/nmma/tests/data/Bu2019nsbh_tf/ztfr.h5 +0 -0
  233. {nmma-0.2.1 → nmma-0.2.3}/nmma/tests/data/GW+KN+GRB_posterior +0 -0
  234. {nmma-0.2.1 → nmma-0.2.3}/nmma/tests/data/Ka2017_injection.json +0 -0
  235. {nmma-0.2.1 → nmma-0.2.3}/nmma/tests/data/Me2017_injection.json +0 -0
  236. {nmma-0.2.1 → nmma-0.2.3}/nmma/tests/data/TrPi2018_pinned_parameters.prior +0 -0
  237. {nmma-0.2.1 → nmma-0.2.3}/nmma/tests/data/ZTF23aaxeacr_partial.csv +0 -0
  238. {nmma-0.2.1 → nmma-0.2.3}/nmma/tests/data/bulla/nsns_nph1.0e+06_mejdyn0.001_mejwind0.010_phi45_45.6.dat +0 -0
  239. {nmma-0.2.1 → nmma-0.2.3}/nmma/tests/data/bulla/nsns_nph1.0e+06_mejdyn0.001_mejwind0.030_phi45_45.6.dat +0 -0
  240. {nmma-0.2.1 → nmma-0.2.3}/nmma/tests/data/bulla/nsns_nph1.0e+06_mejdyn0.001_mejwind0.050_phi45_45.6.dat +0 -0
  241. {nmma-0.2.1 → nmma-0.2.3}/nmma/tests/data/bulla/nsns_nph1.0e+06_mejdyn0.001_mejwind0.070_phi45_45.6.dat +0 -0
  242. {nmma-0.2.1 → nmma-0.2.3}/nmma/tests/data/bulla/nsns_nph1.0e+06_mejdyn0.001_mejwind0.090_phi45_45.6.dat +0 -0
  243. {nmma-0.2.1 → nmma-0.2.3}/nmma/tests/data/bulla/nsns_nph1.0e+06_mejdyn0.001_mejwind0.110_phi45_45.6.dat +0 -0
  244. {nmma-0.2.1 → nmma-0.2.3}/nmma/tests/data/bulla/nsns_nph1.0e+06_mejdyn0.001_mejwind0.130_phi45_45.6.dat +0 -0
  245. {nmma-0.2.1 → nmma-0.2.3}/nmma/tests/data/bulla/nsns_nph1.0e+06_mejdyn0.005_mejwind0.010_phi45_45.6.dat +0 -0
  246. {nmma-0.2.1 → nmma-0.2.3}/nmma/tests/data/bulla/nsns_nph1.0e+06_mejdyn0.005_mejwind0.030_phi45_45.6.dat +0 -0
  247. {nmma-0.2.1 → nmma-0.2.3}/nmma/tests/data/bulla/nsns_nph1.0e+06_mejdyn0.005_mejwind0.050_phi45_45.6.dat +0 -0
  248. {nmma-0.2.1 → nmma-0.2.3}/nmma/tests/data/bulla/nsns_nph1.0e+06_mejdyn0.005_mejwind0.070_phi45_45.6.dat +0 -0
  249. {nmma-0.2.1 → nmma-0.2.3}/nmma/tests/data/bulla/nsns_nph1.0e+06_mejdyn0.005_mejwind0.090_phi45_45.6.dat +0 -0
  250. {nmma-0.2.1 → nmma-0.2.3}/nmma/tests/data/bulla/nsns_nph1.0e+06_mejdyn0.005_mejwind0.110_phi45_45.6.dat +0 -0
  251. {nmma-0.2.1 → nmma-0.2.3}/nmma/tests/data/bulla/nsns_nph1.0e+06_mejdyn0.005_mejwind0.130_phi45_45.6.dat +0 -0
  252. {nmma-0.2.1 → nmma-0.2.3}/nmma/tests/data/bulla/nsns_nph1.0e+06_mejdyn0.010_mejwind0.010_phi45_45.6.dat +0 -0
  253. {nmma-0.2.1 → nmma-0.2.3}/nmma/tests/data/bulla/nsns_nph1.0e+06_mejdyn0.010_mejwind0.030_phi45_45.6.dat +0 -0
  254. {nmma-0.2.1 → nmma-0.2.3}/nmma/tests/data/bulla/nsns_nph1.0e+06_mejdyn0.010_mejwind0.050_phi45_45.6.dat +0 -0
  255. {nmma-0.2.1 → nmma-0.2.3}/nmma/tests/data/bulla/nsns_nph1.0e+06_mejdyn0.010_mejwind0.070_phi45_45.6.dat +0 -0
  256. {nmma-0.2.1 → nmma-0.2.3}/nmma/tests/data/bulla/nsns_nph1.0e+06_mejdyn0.010_mejwind0.090_phi45_45.6.dat +0 -0
  257. {nmma-0.2.1 → nmma-0.2.3}/nmma/tests/data/bulla/nsns_nph1.0e+06_mejdyn0.010_mejwind0.110_phi45_45.6.dat +0 -0
  258. {nmma-0.2.1 → nmma-0.2.3}/nmma/tests/data/bulla/nsns_nph1.0e+06_mejdyn0.010_mejwind0.130_phi45_45.6.dat +0 -0
  259. {nmma-0.2.1 → nmma-0.2.3}/nmma/tests/data/bulla/nsns_nph1.0e+06_mejdyn0.020_mejwind0.010_phi45_45.6.dat +0 -0
  260. {nmma-0.2.1 → nmma-0.2.3}/nmma/tests/data/bulla/nsns_nph1.0e+06_mejdyn0.020_mejwind0.030_phi45_45.6.dat +0 -0
  261. {nmma-0.2.1 → nmma-0.2.3}/nmma/tests/data/bulla/nsns_nph1.0e+06_mejdyn0.020_mejwind0.050_phi45_45.6.dat +0 -0
  262. {nmma-0.2.1 → nmma-0.2.3}/nmma/tests/data/bulla/nsns_nph1.0e+06_mejdyn0.020_mejwind0.070_phi45_45.6.dat +0 -0
  263. {nmma-0.2.1 → nmma-0.2.3}/nmma/tests/data/bulla/nsns_nph1.0e+06_mejdyn0.020_mejwind0.090_phi45_45.6.dat +0 -0
  264. {nmma-0.2.1 → nmma-0.2.3}/nmma/tests/data/bulla/nsns_nph1.0e+06_mejdyn0.020_mejwind0.110_phi45_45.6.dat +0 -0
  265. {nmma-0.2.1 → nmma-0.2.3}/nmma/tests/data/bulla/nsns_nph1.0e+06_mejdyn0.020_mejwind0.130_phi45_45.6.dat +0 -0
  266. {nmma-0.2.1 → nmma-0.2.3}/nmma/tests/data/eos_macro/1.dat +0 -0
  267. {nmma-0.2.1 → nmma-0.2.3}/nmma/tests/data/eos_macro/10.dat +0 -0
  268. {nmma-0.2.1 → nmma-0.2.3}/nmma/tests/data/eos_macro/2.dat +0 -0
  269. {nmma-0.2.1 → nmma-0.2.3}/nmma/tests/data/eos_macro/3.dat +0 -0
  270. {nmma-0.2.1 → nmma-0.2.3}/nmma/tests/data/eos_macro/4.dat +0 -0
  271. {nmma-0.2.1 → nmma-0.2.3}/nmma/tests/data/eos_macro/5.dat +0 -0
  272. {nmma-0.2.1 → nmma-0.2.3}/nmma/tests/data/eos_macro/6.dat +0 -0
  273. {nmma-0.2.1 → nmma-0.2.3}/nmma/tests/data/eos_macro/7.dat +0 -0
  274. {nmma-0.2.1 → nmma-0.2.3}/nmma/tests/data/eos_macro/8.dat +0 -0
  275. {nmma-0.2.1 → nmma-0.2.3}/nmma/tests/data/eos_macro/9.dat +0 -0
  276. {nmma-0.2.1 → nmma-0.2.3}/nmma/tests/data/eos_micro/1.dat +0 -0
  277. {nmma-0.2.1 → nmma-0.2.3}/nmma/tests/data/eos_micro/10.dat +0 -0
  278. {nmma-0.2.1 → nmma-0.2.3}/nmma/tests/data/eos_micro/2.dat +0 -0
  279. {nmma-0.2.1 → nmma-0.2.3}/nmma/tests/data/eos_micro/3.dat +0 -0
  280. {nmma-0.2.1 → nmma-0.2.3}/nmma/tests/data/eos_micro/4.dat +0 -0
  281. {nmma-0.2.1 → nmma-0.2.3}/nmma/tests/data/eos_micro/5.dat +0 -0
  282. {nmma-0.2.1 → nmma-0.2.3}/nmma/tests/data/eos_micro/6.dat +0 -0
  283. {nmma-0.2.1 → nmma-0.2.3}/nmma/tests/data/eos_micro/7.dat +0 -0
  284. {nmma-0.2.1 → nmma-0.2.3}/nmma/tests/data/eos_micro/8.dat +0 -0
  285. {nmma-0.2.1 → nmma-0.2.3}/nmma/tests/data/eos_micro/9.dat +0 -0
  286. {nmma-0.2.1 → nmma-0.2.3}/nmma/tests/data/lowmass_collapsar_updated.h5 +0 -0
  287. {nmma-0.2.1/priors → nmma-0.2.3/nmma/tests/data/multi_config_analysis}/Me2017.prior +0 -0
  288. {nmma-0.2.1 → nmma-0.2.3}/nmma/tests/maximum_mass.py +0 -0
  289. {nmma-0.2.1 → nmma-0.2.3}/nmma/tests/models.py +0 -0
  290. {nmma-0.2.1 → nmma-0.2.3}/nmma/tests/tools.py +0 -0
  291. {nmma-0.2.1 → nmma-0.2.3}/nmma/tests/training.py +0 -0
  292. {nmma-0.2.1 → nmma-0.2.3}/nmma/utils/__init__.py +0 -0
  293. {nmma-0.2.1 → nmma-0.2.3}/nmma/utils/gitlab.py +0 -0
  294. {nmma-0.2.1 → nmma-0.2.3}/nmma/utils/models.py +0 -0
  295. {nmma-0.2.1 → nmma-0.2.3}/nmma/utils/models_tools.py +0 -0
  296. {nmma-0.2.1 → nmma-0.2.3}/nmma.egg-info/dependency_links.txt +0 -0
  297. {nmma-0.2.1 → nmma-0.2.3}/nmma.egg-info/top_level.txt +0 -0
  298. {nmma-0.2.1 → nmma-0.2.3}/priors/AnBa2022.prior +0 -0
  299. {nmma-0.2.1 → nmma-0.2.3}/priors/AnBa2022_sparse.prior +0 -0
  300. {nmma-0.2.1 → nmma-0.2.3}/priors/Bu2019lm.prior +0 -0
  301. {nmma-0.2.1 → nmma-0.2.3}/priors/Bu2019lm_TrPi2018GRB211211A.prior +0 -0
  302. {nmma-0.2.1 → nmma-0.2.3}/priors/Bu2019nsbh.prior +0 -0
  303. {nmma-0.2.1 → nmma-0.2.3}/priors/Bu2019nsbh_TrPi2018_GRB211211A.prior +0 -0
  304. {nmma-0.2.1 → nmma-0.2.3}/priors/Bu2022Ye.prior +0 -0
  305. {nmma-0.2.1 → nmma-0.2.3}/priors/Bu2023Ye.prior +0 -0
  306. {nmma-0.2.1 → nmma-0.2.3}/priors/GWBNS.prior +0 -0
  307. {nmma-0.2.1 → nmma-0.2.3}/priors/GWNSBH.prior +0 -0
  308. {nmma-0.2.1 → nmma-0.2.3}/priors/Ka2017.prior +0 -0
  309. {nmma-0.2.1 → nmma-0.2.3}/priors/LANL2022.prior +0 -0
  310. {nmma-0.2.1 → nmma-0.2.3}/priors/Piro2021.prior +0 -0
  311. {nmma-0.2.1 → nmma-0.2.3}/priors/Sr2023.prior +0 -0
  312. {nmma-0.2.1 → nmma-0.2.3}/priors/TrPi2018.prior +0 -0
  313. {nmma-0.2.1 → nmma-0.2.3}/priors/TrPi2018_onaxis.prior +0 -0
  314. {nmma-0.2.1 → nmma-0.2.3}/priors/ZTF_lgrb.prior +0 -0
  315. {nmma-0.2.1 → nmma-0.2.3}/priors/ZTF_sgrb.prior +0 -0
  316. {nmma-0.2.1 → nmma-0.2.3}/priors/injec_alspin.prior +0 -0
  317. {nmma-0.2.1 → nmma-0.2.3}/priors/maximum_mass_resampling.prior +0 -0
  318. {nmma-0.2.1 → nmma-0.2.3}/priors/salt2.prior +0 -0
  319. {nmma-0.2.1 → nmma-0.2.3}/priors/sncosmo-generic.prior +0 -0
  320. {nmma-0.2.1 → nmma-0.2.3}/priors/sncosmo-generic_TrPi2018.prior +0 -0
  321. {nmma-0.2.1 → nmma-0.2.3}/production_requirements.txt +0 -0
  322. {nmma-0.2.1 → nmma-0.2.3}/sampler_requirements.txt +0 -0
  323. {nmma-0.2.1 → nmma-0.2.3}/setup.cfg +0 -0
  324. {nmma-0.2.1 → nmma-0.2.3}/sklearn_requirements.txt +0 -0
  325. {nmma-0.2.1 → nmma-0.2.3}/slurm.sub +0 -0
  326. {nmma-0.2.1 → nmma-0.2.3}/tf_requirements.txt +0 -0
  327. {nmma-0.2.1 → nmma-0.2.3}/tools/__init__.py +0 -0
  328. {nmma-0.2.1 → nmma-0.2.3}/tools/analysis_slurm.py +0 -0
  329. {nmma-0.2.1 → nmma-0.2.3}/tools/convert_skyportal_lcs.py +0 -0
  330. {nmma-0.2.1 → nmma-0.2.3}/tools/corner_plot.py +0 -0
  331. {nmma-0.2.1 → nmma-0.2.3}/tools/make_lcs.py +0 -0
  332. {nmma-0.2.1 → nmma-0.2.3}/tools/make_lcs_LANL.py +0 -0
  333. {nmma-0.2.1 → nmma-0.2.3}/tools/make_lcs_hdf5.py +0 -0
  334. {nmma-0.2.1 → nmma-0.2.3}/tools/make_lcs_kasen.py +0 -0
  335. {nmma-0.2.1 → nmma-0.2.3}/tools/plot_svdmodel_benchmarks.py +0 -0
  336. {nmma-0.2.1 → nmma-0.2.3}/tools/resample_grid.py +0 -0
  337. {nmma-0.2.1 → nmma-0.2.3}/tools/tf_training_calls.sh +0 -0
  338. {nmma-0.2.1 → nmma-0.2.3}/tutorials/README.md +0 -0
  339. {nmma-0.2.1 → nmma-0.2.3}/tutorials/tutorial-KN-models-training.ipynb +0 -0
  340. {nmma-0.2.1 → nmma-0.2.3}/tutorials/tutorial-lightcurve_simulation.ipynb +0 -0
@@ -3,6 +3,7 @@ name: CI to Docker Hub
3
3
  on:
4
4
  push:
5
5
  branches: [ main ]
6
+ workflow_dispatch:
6
7
  env:
7
8
  REGISTRY_IMAGE: nmma/nmma_api
8
9
 
@@ -14,7 +15,7 @@ jobs:
14
15
  strategy:
15
16
  fail-fast: false
16
17
  matrix:
17
- platform: ['linux/amd64', 'linux/arm64/v8']
18
+ platform: ['linux/amd64']
18
19
 
19
20
  steps:
20
21
 
@@ -57,7 +58,7 @@ jobs:
57
58
  touch "/tmp/digests/${digest#sha256:}"
58
59
 
59
60
  - name: Upload digest
60
- uses: actions/upload-artifact@v3
61
+ uses: actions/upload-artifact@v4
61
62
  with:
62
63
  name: digests
63
64
  path: /tmp/digests/*
@@ -71,7 +72,7 @@ jobs:
71
72
  - build
72
73
  steps:
73
74
  - name: Download digests
74
- uses: actions/download-artifact@v3
75
+ uses: actions/download-artifact@v4
75
76
  with:
76
77
  name: digests
77
78
  path: /tmp/digests
@@ -0,0 +1,115 @@
1
+ name: Unit Test nmma [ubuntu]
2
+
3
+ on:
4
+ push:
5
+ branches: [main]
6
+ paths-ignore:
7
+ - "doc/**"
8
+ pull_request:
9
+ branches: [main]
10
+ paths-ignore:
11
+ - "doc/**"
12
+ workflow_dispatch:
13
+
14
+ jobs:
15
+ build:
16
+ runs-on: "ubuntu-latest"
17
+ defaults:
18
+ run:
19
+ shell: bash -el {0}
20
+ strategy:
21
+ fail-fast: false
22
+ matrix:
23
+ python-version: ["3.10", "3.11", "3.12", "3.13"]
24
+
25
+ steps:
26
+ - name: Checkout branch being tested
27
+ uses: actions/checkout@v4
28
+
29
+ - name: Set up Python with Conda ${{ matrix.python-version }}
30
+ uses: conda-incubator/setup-miniconda@v3
31
+ with:
32
+ python-version: ${{ matrix.python-version }}
33
+ miniforge-version: latest
34
+ use-mamba: true
35
+ mamba-version: "*"
36
+ activate-environment: nmma_env
37
+ channels: defaults
38
+
39
+ - name: Restore SVD models from cache
40
+ uses: actions/cache/restore@v4
41
+ with:
42
+ path: svdmodels
43
+ key: svdmodels-${{ hashFiles('**/LICENSE') }}
44
+ restore-keys: svdmodels-
45
+
46
+ - name: Get pip cache dir
47
+ id: pip-cache
48
+ run: |
49
+ python -m pip install --upgrade pip setuptools wheel
50
+ echo "dir=$(pip cache dir)" >> $GITHUB_OUTPUT
51
+
52
+ - name: Restore pip cache
53
+ uses: actions/cache/restore@v4
54
+ with:
55
+ path: ${{ steps.pip-cache.outputs.dir }}
56
+ key: ${{ runner.os }}-pip-2-${{ hashFiles('**/pyproject.toml', '**/requirements.txt') }}
57
+ restore-keys: |
58
+ ${{ runner.os }}-pip-2-
59
+
60
+ - name: Install dependencies (Ubuntu)
61
+ run: |
62
+ sudo apt-get update
63
+ sudo apt-get install -y libblas3 libblas-dev python3-mpi4py \
64
+ build-essential openmpi-bin libopenmpi-dev liblapack3 \
65
+ liblapack-dev libatlas-base-dev gfortran
66
+
67
+ - name: Install Python dependencies
68
+ run: |
69
+ python -m pip install --upgrade git+https://github.com/bitranox/wrapt_timeout_decorator.git
70
+ python -m pip install pytest pytest-cov flake8 pytest-aiohttp sqlparse freezegun PyJWT joblib "coveralls==3.3.1"
71
+ python -m pip install -r ml_requirements.txt -r grb_requirements.txt -r tf_requirements.txt -r sklearn_requirements.txt
72
+ python -m pip install .
73
+ git clone https://github.com/JohannesBuchner/MultiNest && cd MultiNest/build && rm -rf * && cmake -DCMAKE_POLICY_VERSION_MINIMUM=3.5 .. && make && cd ../..
74
+
75
+ - name: Export Libraries
76
+ run: |
77
+ echo "LD_LIBRARY_PATH=$GITHUB_WORKSPACE/MultiNest/lib:$LD_LIBRARY_PATH" >> $GITHUB_ENV
78
+ echo "DYLD_LIBRARY_PATH=$GITHUB_WORKSPACE/MultiNest/lib:$DYLD_LIBRARY_PATH" >> $GITHUB_ENV
79
+
80
+ - name: Lint with flake8
81
+ run: |
82
+ # stop the build if there are Python syntax errors or undefined names
83
+ flake8 . --count --select=E9,F63,F7,F82 --show-source --statistics --exclude docs
84
+ # exit-zero treats all errors as warnings. The GitHub editor is 127 chars wide
85
+ flake8 . --count --exit-zero --max-complexity=10 --max-line-length=127 --statistics --exclude docs,versioneer.py,nmma/_version.py,nmma/tests,nmma/*/__init__.py
86
+
87
+ - name: Test with pytest
88
+ run: |
89
+ echo "LD_LIBRARY_PATH: $LD_LIBRARY_PATH"
90
+ echo "DYLD_LIBRARY_PATH: $DYLD_LIBRARY_PATH"
91
+ python -m coverage run --source nmma -m pytest nmma/tests/*.py
92
+ env:
93
+ LD_LIBRARY_PATH: ${{ env.LD_LIBRARY_PATH }}
94
+ DYLD_LIBRARY_PATH: ${{ env.DYLD_LIBRARY_PATH }}
95
+
96
+ - name: Run Coveralls
97
+ if: ${{ success() }}
98
+ run: |
99
+ coveralls --service=github
100
+ env:
101
+ GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
102
+
103
+ - name: Save SVD models cache
104
+ uses: actions/cache/save@v4
105
+ if: always()
106
+ with:
107
+ path: svdmodels
108
+ key: svdmodels-${{ hashFiles('**/LICENSE') }}
109
+
110
+ - name: Save pip cache
111
+ uses: actions/cache/save@v4
112
+ if: always()
113
+ with:
114
+ path: ${{ steps.pip-cache.outputs.dir }}
115
+ key: ${{ runner.os }}-pip-2-${{ hashFiles('**/pyproject.toml', '**/requirements.txt') }}
@@ -1,4 +1,4 @@
1
- name: Unit Test nmma
1
+ name: Unit Test nmma [MacOS]
2
2
 
3
3
  on:
4
4
  push:
@@ -13,15 +13,14 @@ on:
13
13
 
14
14
  jobs:
15
15
  build:
16
- runs-on: ${{ matrix.os }}
16
+ runs-on: "macos-latest"
17
17
  defaults:
18
18
  run:
19
19
  shell: bash -el {0}
20
20
  strategy:
21
21
  fail-fast: false
22
22
  matrix:
23
- os: ["ubuntu-latest", "macos-latest"]
24
- python-version: ["3.9", "3.10", "3.11", "3.12"]
23
+ python-version: ["3.10", "3.11", "3.12", "3.13"]
25
24
 
26
25
  steps:
27
26
  - name: Checkout branch being tested
@@ -31,43 +30,37 @@ jobs:
31
30
  uses: conda-incubator/setup-miniconda@v3
32
31
  with:
33
32
  python-version: ${{ matrix.python-version }}
34
- architecture: ${{ matrix.os == 'macos-latest' && 'arm64' || 'x86_64' }}
33
+ architecture: "arm64"
35
34
  miniforge-version: latest
36
35
  use-mamba: true
37
36
  mamba-version: "*"
38
37
  activate-environment: nmma_env
38
+ channels: defaults
39
39
 
40
40
  - name: Restore SVD models from cache
41
- uses: actions/cache@v4
41
+ uses: actions/cache/restore@v4
42
42
  with:
43
43
  path: svdmodels
44
44
  key: svdmodels-${{ hashFiles('**/LICENSE') }}
45
45
  restore-keys: svdmodels-
46
- save-always: true
47
46
 
48
47
  - name: Get pip cache dir
49
48
  id: pip-cache
50
49
  run: |
51
50
  python -m pip install --upgrade pip setuptools wheel
52
- echo "::set-output name=dir::$(pip cache dir)"
53
-
54
- - name: pip cache
55
- uses: actions/cache@v4
51
+ echo "dir=$(pip cache dir)" >> $GITHUB_OUTPUT
52
+ - name: Restore pip cache
53
+ uses: actions/cache/restore@v4
56
54
  with:
57
55
  path: ${{ steps.pip-cache.outputs.dir }}
58
56
  key: ${{ runner.os }}-pip-2-${{ hashFiles('**/pyproject.toml', '**/requirements.txt') }}
59
57
  restore-keys: |
60
58
  ${{ runner.os }}-pip-2-
61
- save-always: true
62
-
63
59
  - name: Update Homebrew
64
- if: matrix.os == 'macos-latest'
65
60
  run: |
66
- brew update --preinstall
67
-
68
- - name: Configure Homebrew cache
69
- if: matrix.os == 'macos-latest'
70
- uses: actions/cache@v4
61
+ brew update --auto-update
62
+ - name: Restore Homebrew cache
63
+ uses: actions/cache/restore@v4
71
64
  with:
72
65
  path: |
73
66
  ~/Library/Caches/Homebrew/openmpi--*
@@ -80,74 +73,78 @@ jobs:
80
73
  ~/Library/Caches/Homebrew/downloads/*--openblas-*
81
74
  ~/Library/Caches/Homebrew/lapack--*
82
75
  ~/Library/Caches/Homebrew/downloads/*--lapack-*
83
- ~/Library/Caches/Homebrew/basictex--*
84
- ~/Library/Caches/Homebrew/downloads/*--basictex-*
85
76
  ~/Library/Caches/Homebrew/cmake--*
86
77
  ~/Library/Caches/Homebrew/downloads/*--cmake-*
87
-
88
78
  key: brew-${{ hashFiles('**/pyproject.toml') }}
89
79
  restore-keys: brew-
90
- save-always: true
91
80
 
92
81
  - name: Install Homebrew dependencies
93
- if: matrix.os == 'macos-latest'
94
82
  run: |
95
- env HOMEBREW_NO_AUTO_UPDATE=1 brew install openmpi hdf5 gcc openblas lapack basictex cmake
83
+ env HOMEBREW_NO_AUTO_UPDATE=1 brew install openmpi hdf5 gcc openblas lapack cmake
96
84
  eval "$(/usr/libexec/path_helper)"
97
- sudo tlmgr update --self
98
- sudo tlmgr install collection-latex
99
- sudo tlmgr install collection-fontsrecommended
100
- sudo tlmgr install dvipng
101
- sudo tlmgr install cm-super
102
- sudo tlmgr install type1cm
103
- - name: Install Linux Dependencies
104
- if: matrix.os == 'ubuntu-latest'
105
- uses: awalsh128/cache-apt-pkgs-action@latest
106
- with:
107
- packages: openmpi-bin libopenmpi-dev gfortran build-essential libblas3 libblas-dev liblapack3 liblapack-dev libatlas-base-dev texlive texlive-latex-extra texlive-fonts-recommended dvipng cm-super
108
- execute_install_scripts: true
109
-
110
85
  - name: Install dependencies (macOS)
111
- if: matrix.os == 'macos-latest'
112
86
  run: |
113
87
  conda install -c conda-forge pyfftw c-compiler ligo-segments python-ligo-lw
114
- echo "FC=$(which gfortran-11)" >> $GITHUB_ENV
88
+ echo "FC=$(which gfortran-14)" >> $GITHUB_ENV
115
89
  echo "CC=$(which gcc)" >> $GITHUB_ENV
116
90
  echo "CXX=$(which g++)" >> $GITHUB_ENV
117
-
118
- - name: Install dependencies (Ubuntu)
119
- if: matrix.os == 'ubuntu-latest'
120
- run: |
121
- sudo apt-get update
122
- sudo apt-get install -y texlive texlive-latex-extra texlive-fonts-recommended dvipng cm-super
123
91
  - name: Install Python dependencies
124
92
  run: |
125
93
  python -m pip install --upgrade git+https://github.com/bitranox/wrapt_timeout_decorator.git
126
- python -m pip install pytest pytest-cov flake8 pytest-aiohttp sqlparse freezegun PyJWT joblib coveralls
94
+ python -m pip install pytest pytest-cov flake8 pytest-aiohttp sqlparse freezegun PyJWT joblib "coveralls==3.3.1"
127
95
  python -m pip install -r ml_requirements.txt -r grb_requirements.txt -r tf_requirements.txt -r sklearn_requirements.txt
128
96
  python -m pip install .
129
- git clone https://github.com/JohannesBuchner/MultiNest && cd MultiNest/build && rm -rf * && cmake .. && make && cd ../..
97
+ git clone https://github.com/JohannesBuchner/MultiNest && cd MultiNest/build && rm -rf * && cmake -DCMAKE_POLICY_VERSION_MINIMUM=3.5 .. && make && cd ../..
130
98
  pwd
131
-
132
99
  - name: Export Libraries
133
100
  run: |
134
101
  echo "LD_LIBRARY_PATH=$HOME/work/nmma/nmma/MultiNest/lib:$LD_LIBRARY_PATH" >> $GITHUB_ENV
135
102
  echo "DYLD_LIBRARY_PATH=$HOME/work/nmma/nmma/MultiNest/lib:$DYLD_LIBRARY_PATH" >> $GITHUB_ENV
136
-
137
103
  - name: Lint with flake8
138
104
  run: |
139
105
  # stop the build if there are Python syntax errors or undefined names
140
106
  flake8 . --count --select=E9,F63,F7,F82 --show-source --statistics --exclude docs
141
107
  # exit-zero treats all errors as warnings. The GitHub editor is 127 chars wide
142
108
  flake8 . --count --exit-zero --max-complexity=10 --max-line-length=127 --statistics --exclude docs,versioneer.py,nmma/_version.py,nmma/tests,nmma/*/__init__.py
143
-
144
109
  - name: Test with pytest
145
110
  run: |
146
111
  python -m coverage run --source nmma -m pytest nmma/tests/*.py
147
-
148
112
  - name: Run Coveralls
149
113
  if: ${{ success() }}
150
114
  run: |
151
115
  coveralls --service=github
152
116
  env:
153
117
  GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
118
+
119
+ - name: Save SVD models cache
120
+ uses: actions/cache/save@v4
121
+ if: always()
122
+ with:
123
+ path: svdmodels
124
+ key: svdmodels-${{ hashFiles('**/LICENSE') }}
125
+
126
+ - name: Save pip cache
127
+ uses: actions/cache/save@v4
128
+ if: always()
129
+ with:
130
+ path: ${{ steps.pip-cache.outputs.dir }}
131
+ key: ${{ runner.os }}-pip-2-${{ hashFiles('**/pyproject.toml', '**/requirements.txt') }}
132
+
133
+ - name: Save Homebrew cache
134
+ if: always()
135
+ uses: actions/cache/save@v4
136
+ with:
137
+ path: |
138
+ ~/Library/Caches/Homebrew/openmpi--*
139
+ ~/Library/Caches/Homebrew/downloads/*--openmpi-*
140
+ ~/Library/Caches/Homebrew/hdf5--*
141
+ ~/Library/Caches/Homebrew/downloads/*--hdf5-*
142
+ ~/Library/Caches/Homebrew/gcc--*
143
+ ~/Library/Caches/Homebrew/downloads/*--gcc-*
144
+ ~/Library/Caches/Homebrew/openblas--*
145
+ ~/Library/Caches/Homebrew/downloads/*--openblas-*
146
+ ~/Library/Caches/Homebrew/lapack--*
147
+ ~/Library/Caches/Homebrew/downloads/*--lapack-*
148
+ ~/Library/Caches/Homebrew/cmake--*
149
+ ~/Library/Caches/Homebrew/downloads/*--cmake-*
150
+ key: brew-${{ hashFiles('**/pyproject.toml') }}
@@ -18,7 +18,7 @@ jobs:
18
18
  fail-fast: false
19
19
  matrix:
20
20
  os: ["ubuntu-latest", "macos-latest"]
21
- python-version: ["3.9", "3.10", "3.11", "3.12"]
21
+ python-version: ["3.10", "3.11", "3.12", "3.13"]
22
22
 
23
23
  steps:
24
24
  - name: Checkout branch being tested
@@ -39,16 +39,20 @@ jobs:
39
39
  run: |
40
40
  sudo apt-get update
41
41
  sudo apt-get install -y openmpi-bin libopenmpi-dev
42
+ pip install --upgrade pip setuptools wheel
43
+
42
44
 
43
45
  - name: Install Homebrew packages
44
46
  if: matrix.os == 'macos-latest'
45
47
  run: |
46
48
  brew install openmpi hdf5
47
49
  conda install ligo-segments python-ligo-lw
50
+ pip install --upgrade pip setuptools wheel
51
+
48
52
 
49
53
  - name: Install NMMA (base)
50
54
  run: |
51
- python -m pip install 'nmma @ git+https://github.com/sahiljhawar/nmma.git@dependencies'
55
+ python -m pip install nmma
52
56
 
53
57
  - name: Verify base NMMA installation
54
58
  run: |
@@ -56,30 +60,30 @@ jobs:
56
60
 
57
61
  - name: Install and verify NMMA [grb]
58
62
  run: |
59
- python -m pip install 'nmma[grb] @ git+https://github.com/sahiljhawar/nmma.git@dependencies'
63
+ python -m pip install 'nmma[grb]'
60
64
  python -c "import nmma, afterglowpy; print(f'Successfully imported {nmma.__name__}, {afterglowpy.__name__}')"
61
65
 
62
66
  - name: Install and verify NMMA [production]
63
67
  run: |
64
- python -m pip install 'nmma[production] @ git+https://github.com/sahiljhawar/nmma.git@dependencies'
68
+ python -m pip install 'nmma[production]'
65
69
  python -c "import nmma, parallel_bilby, nestcheck, mpi4py; print(f'Successfully imported {nmma.__name__}, {parallel_bilby.__name__}, {nestcheck.__name__}, {mpi4py.__name__}')"
66
70
 
67
71
  - name: Install and verify NMMA [neuralnet]
68
72
  run: |
69
- python -m pip install 'nmma[neuralnet] @ git+https://github.com/sahiljhawar/nmma.git@dependencies'
73
+ python -m pip install 'nmma[neuralnet]'
70
74
  python -c "import nmma, torch, nflows, torchvision; print(f'Successfully imported {nmma.__name__}, {torch.__name__}, {nflows.__name__}, {torchvision.__name__}')"
71
75
 
72
76
  - name: Install and verify NMMA [tf]
73
77
  run: |
74
- python -m pip install 'nmma[tf] @ git+https://github.com/sahiljhawar/nmma.git@dependencies'
78
+ python -m pip install 'nmma[tf]'
75
79
  python -c "import nmma, tensorflow; print(f'Successfully imported {nmma.__name__}, {tensorflow.__name__}')"
76
80
 
77
81
  - name: Install and verify NMMA [sklearn]
78
82
  run: |
79
- python -m pip install 'nmma[sklearn] @ git+https://github.com/sahiljhawar/nmma.git@dependencies'
83
+ python -m pip install 'nmma[sklearn]'
80
84
  python -c "import nmma, sklearn; print(f'Successfully imported {nmma.__name__}, {sklearn.__name__}')"
81
85
 
82
86
  - name: Install and verify NMMA [sampler]
83
87
  run: |
84
- python -m pip install 'nmma[sampler] @ git+https://github.com/sahiljhawar/nmma.git@dependencies'
88
+ python -m pip install 'nmma[sampler]'
85
89
  python -c "import nmma, ultranest; print(f'Successfully imported {nmma.__name__}, {ultranest.__name__}')"
@@ -0,0 +1,56 @@
1
+ name: Website Deploy
2
+
3
+ on:
4
+ push:
5
+ branches: [main]
6
+
7
+ jobs:
8
+ build:
9
+ runs-on: ubuntu-latest
10
+ strategy:
11
+ fail-fast: false
12
+ matrix:
13
+ python-version: [3.12]
14
+
15
+ steps:
16
+ - uses: actions/checkout@v3
17
+ - uses: mpi4py/setup-mpi@v1
18
+ - name: Set up Python ${{ matrix.python-version }}
19
+ uses: actions/setup-python@v3
20
+ with:
21
+ python-version: ${{ matrix.python-version }}
22
+ - name: Get pip cache dir
23
+ id: pip-cache
24
+ run: |
25
+ python -m pip install --upgrade pip setuptools wheel
26
+ echo "::set-output name=dir::$(pip cache dir)"
27
+ - name: pip cache
28
+ uses: actions/cache@v3
29
+ with:
30
+ path: ${{ steps.pip-cache.outputs.dir }}
31
+ key: ${{ runner.os }}-pip-2-${{ hashFiles('**/pyproject.toml', '**/requirements.txt') }}
32
+ restore-keys: |
33
+ ${{ runner.os }}-pip-2-
34
+ - name: Install dependencies
35
+ run: |
36
+ #sudo apt-get install gfortran swig libhdf5-serial-dev libmpich-dev
37
+ python -m pip install --upgrade git+https://github.com/bitranox/wrapt_timeout_decorator.git
38
+ python -m pip install coverage cpp-coveralls flake8 pytest
39
+ python -m pip install .[doc]
40
+
41
+ - name: Make dependencies
42
+ env:
43
+ SPHINX_GITHUB_CHANGELOG_TOKEN: ${{ secrets.SPHINX_GITHUB_CHANGELOG_TOKEN }}
44
+ run: |
45
+ cd doc && make html; cd ../
46
+ touch doc/_build/html/.nojekyll
47
+
48
+ - name: Deploy to GitHub Pages
49
+ if: success() && github.repository_owner == 'nuclear-multimessenger-astronomy'
50
+ uses: crazy-max/ghaction-github-pages@v2
51
+ with:
52
+ target_branch: gh-pages
53
+ build_dir: doc/_build/html/
54
+ env:
55
+ GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
56
+ SPHINX_GITHUB_CHANGELOG_TOKEN: ${{ secrets.SPHINX_GITHUB_CHANGELOG_TOKEN }}
@@ -0,0 +1,36 @@
1
+ name: Publish Python 🐍 distributions 📦 to PyPI and TestPyPI
2
+
3
+ on:
4
+ release:
5
+ types: [published]
6
+
7
+ jobs:
8
+ build-and-publish-to-pypi:
9
+ name: Build and publish Python 🐍 distributions 📦 to PyPI and TestPyPI
10
+ runs-on: ubuntu-latest
11
+
12
+ steps:
13
+ - uses: actions/checkout@main
14
+ - name: Set up Python 3.12
15
+ uses: actions/setup-python@v3
16
+ with:
17
+ python-version: "3.12"
18
+ - name: Install pypa/build
19
+ run: >-
20
+ python -m
21
+ pip install
22
+ build
23
+ --user
24
+ - name: Build a binary wheel and a source tarball
25
+ run: >-
26
+ python -m
27
+ build
28
+ --sdist
29
+ --wheel
30
+ --outdir dist/
31
+ .
32
+ - name: Publish distribution 📦 to PyPI
33
+ if: startsWith(github.ref, 'refs/tags')
34
+ uses: pypa/gh-action-pypi-publish@release/v1
35
+ with:
36
+ password: ${{ secrets.PYPI_API_TOKEN }}
@@ -1,6 +1,6 @@
1
- Metadata-Version: 2.1
1
+ Metadata-Version: 2.4
2
2
  Name: nmma
3
- Version: 0.2.1
3
+ Version: 0.2.3
4
4
  Summary: A nuclear physics multi-messenger Bayesian inference library
5
5
  Author-email: "Peter Tsun Ho Pang, Michael Coughlin, Tim Dietrich, Ingo Tews" <nuclear_multimessenger_astronomy@googlegroups.com>
6
6
  License: GPLv3
@@ -9,10 +9,10 @@ Project-URL: Documentation, https://nuclear-multimessenger-astronomy.github.io/n
9
9
  Project-URL: Download, https://pypi.org/project/nmma/#files
10
10
  Project-URL: Tracker, https://github.com/nuclear-multimessenger-astronomy/nmma/issues
11
11
  Classifier: Programming Language :: Python :: 3
12
- Classifier: Programming Language :: Python :: 3.9
13
12
  Classifier: Programming Language :: Python :: 3.10
14
13
  Classifier: Programming Language :: Python :: 3.11
15
14
  Classifier: Programming Language :: Python :: 3.12
15
+ Classifier: Programming Language :: Python :: 3.13
16
16
  Classifier: Intended Audience :: Science/Research
17
17
  Classifier: Intended Audience :: End Users/Desktop
18
18
  Classifier: Intended Audience :: Developers
@@ -24,18 +24,18 @@ Classifier: Operating System :: POSIX
24
24
  Classifier: Operating System :: Unix
25
25
  Classifier: Operating System :: MacOS
26
26
  Classifier: License :: OSI Approved :: GNU General Public License v3 (GPLv3)
27
- Requires-Python: <3.13,>=3.9
27
+ Requires-Python: <3.14,>=3.10
28
28
  Description-Content-Type: text/markdown
29
29
  License-File: LICENSE
30
30
  Requires-Dist: future
31
- Requires-Dist: bilby>=2.1.1
32
- Requires-Dist: bilby_pipe>=1.1.0
31
+ Requires-Dist: bilby>=2.4.1
32
+ Requires-Dist: bilby_pipe==1.5.0
33
33
  Requires-Dist: colorcet
34
- Requires-Dist: numpy>=1.9
35
- Requires-Dist: matplotlib<3.8,>=2.0
34
+ Requires-Dist: numpy>2.0
35
+ Requires-Dist: matplotlib>3.8
36
36
  Requires-Dist: scipy>=1.10
37
- Requires-Dist: pandas<2.0,>=1.3.4
38
- Requires-Dist: astropy>=4.3.1
37
+ Requires-Dist: pandas>2.0
38
+ Requires-Dist: astropy>=5.3.4
39
39
  Requires-Dist: pymultinest
40
40
  Requires-Dist: sncosmo
41
41
  Requires-Dist: dust_extinction
@@ -76,6 +76,7 @@ Provides-Extra: tf
76
76
  Requires-Dist: tensorflow; extra == "tf"
77
77
  Provides-Extra: sampler
78
78
  Requires-Dist: ultranest; extra == "sampler"
79
+ Dynamic: license-file
79
80
 
80
81
  <p align="center">
81
82
  <picture>
@@ -133,6 +134,36 @@ When utilizing this code for a publication, kindly make a reference to the packa
133
134
  url={https://doi.org/10.1038/s41467-023-43932-6}
134
135
  }
135
136
  ```
137
+ If you are using the systematics error, please also cite the paper [Data-driven approach for modeling the temporal and spectral evolution of kilonova systematic uncertainties](https://arxiv.org/abs/2410.21978). The BibTeX entry for the paper is:
138
+ ```bibtex
139
+ @article{Jhawar:2024ezm,
140
+ author = "Jhawar, Sahil and Wouters, Thibeau and Pang, Peter T. H. and Bulla, Mattia and Coughlin, Michael W. and Dietrich, Tim",
141
+ title = "{Data-driven approach for modeling the temporal and spectral evolution of kilonova systematic uncertainties}",
142
+ eprint = "2410.21978",
143
+ archivePrefix = "arXiv",
144
+ primaryClass = "astro-ph.HE",
145
+ doi = "10.1103/PhysRevD.111.043046",
146
+ journal = "Phys. Rev. D",
147
+ volume = "111",
148
+ number = "4",
149
+ pages = "043046",
150
+ year = "2025"
151
+ }
152
+ ```
153
+
154
+ If you are using likelihood free inference, please also cite the paper [Rapid parameter estimation for kilonovae using likelihood-free inference](https://www.arxiv.org/abs/2408.06947). The BibTeX entry for the paper is:
155
+ ```bibtex
156
+ @article{Desai:2024hlp,
157
+ author = "Desai, Malina and Chatterjee, Deep and Jhawar, Sahil and Harris, Philip and Katsavounidis, Erik and Coughlin, Michael",
158
+ title = "{Kilonova Light Curve Parameter Estimation Using Likelihood-Free Inference}",
159
+ eprint = "2408.06947",
160
+ archivePrefix = "arXiv",
161
+ primaryClass = "astro-ph.IM",
162
+ doi = "10.1093/mnras/staf1045",
163
+ month = "8",
164
+ year = "2024"
165
+ }
166
+ ```
136
167
 
137
168
  ### Acknowledgments
138
169
  If you benefited from participating in our community, we ask that you please acknowledge the Nuclear Multi-Messenger Astronomy collaboration, and particular individuals who helped you, in any publications.
@@ -54,6 +54,36 @@ When utilizing this code for a publication, kindly make a reference to the packa
54
54
  url={https://doi.org/10.1038/s41467-023-43932-6}
55
55
  }
56
56
  ```
57
+ If you are using the systematics error, please also cite the paper [Data-driven approach for modeling the temporal and spectral evolution of kilonova systematic uncertainties](https://arxiv.org/abs/2410.21978). The BibTeX entry for the paper is:
58
+ ```bibtex
59
+ @article{Jhawar:2024ezm,
60
+ author = "Jhawar, Sahil and Wouters, Thibeau and Pang, Peter T. H. and Bulla, Mattia and Coughlin, Michael W. and Dietrich, Tim",
61
+ title = "{Data-driven approach for modeling the temporal and spectral evolution of kilonova systematic uncertainties}",
62
+ eprint = "2410.21978",
63
+ archivePrefix = "arXiv",
64
+ primaryClass = "astro-ph.HE",
65
+ doi = "10.1103/PhysRevD.111.043046",
66
+ journal = "Phys. Rev. D",
67
+ volume = "111",
68
+ number = "4",
69
+ pages = "043046",
70
+ year = "2025"
71
+ }
72
+ ```
73
+
74
+ If you are using likelihood free inference, please also cite the paper [Rapid parameter estimation for kilonovae using likelihood-free inference](https://www.arxiv.org/abs/2408.06947). The BibTeX entry for the paper is:
75
+ ```bibtex
76
+ @article{Desai:2024hlp,
77
+ author = "Desai, Malina and Chatterjee, Deep and Jhawar, Sahil and Harris, Philip and Katsavounidis, Erik and Coughlin, Michael",
78
+ title = "{Kilonova Light Curve Parameter Estimation Using Likelihood-Free Inference}",
79
+ eprint = "2408.06947",
80
+ archivePrefix = "arXiv",
81
+ primaryClass = "astro-ph.IM",
82
+ doi = "10.1093/mnras/staf1045",
83
+ month = "8",
84
+ year = "2024"
85
+ }
86
+ ```
57
87
 
58
88
  ### Acknowledgments
59
89
  If you benefited from participating in our community, we ask that you please acknowledge the Nuclear Multi-Messenger Astronomy collaboration, and particular individuals who helped you, in any publications.
@@ -8,8 +8,8 @@ COPY requirements.txt .
8
8
  RUN mamba env create -f environment.yml
9
9
  RUN conda clean -afy
10
10
  RUN find -name '__pycache__' -type d -exec rm -rf '{}' '+'
11
- RUN rm -rf /opt/conda/envs/nmma/lib/python3.9/site-packages/pip
12
- RUN rm -rf /opt/conda/envs/nmma/lib/python3.9/i{dlelib, ensurepip}
11
+ RUN rm -rf /opt/conda/envs/nmma/lib/python3.12/site-packages/pip
12
+ RUN rm -rf /opt/conda/envs/nmma/lib/python3.12/i{dlelib, ensurepip}
13
13
  RUN rm -rf /opt/conda/envs/nmma/lib{a,t,l,u}san.so
14
14
  RUN find -name '*.a' -delete
15
15
 
@@ -4,7 +4,7 @@ channels:
4
4
  - conda-forge
5
5
 
6
6
  dependencies:
7
- - python=3.9.*
7
+ - python=3.12.*
8
8
  - numpy
9
9
  - numcodecs
10
10
  - h5py
@@ -120,7 +120,7 @@ Check python and pip version like this:
120
120
  python --version
121
121
  pip --version
122
122
 
123
- Python 3.9 and above and Pip 21.2 and above is ideal for this
123
+ Python 3.10 and above and Pip 21.2 and above is ideal for this
124
124
  installation. It is recommended to update these for your installation.
125
125
 
126
126
 
@@ -348,7 +348,7 @@ If you want to install a custom lalsuite version (e.g. with a certain GW templat
348
348
 
349
349
  .. code::
350
350
 
351
- conda create -c conda-forge --prefix=YOUR_PREFIX python=3.9
351
+ conda create -c conda-forge --prefix=YOUR_PREFIX python=3.10
352
352
  conda activate YOUR_PREFIX
353
353
 
354
354
  and then installing mpi4py first before installing the required packages for the build process (here the second line):
@@ -485,6 +485,7 @@ User Guide
485
485
  models
486
486
  training
487
487
  data_inj_obs
488
+ systematics
488
489
  fitting
489
490
  lfi_analysis
490
491
  gw_inference