nmma 0.2.2__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.2 → 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.2/.github/workflows/continous_integration.yml → nmma-0.2.3/.github/workflows/continous_integration_macos.yml +48 -52
  4. {nmma-0.2.2 → nmma-0.2.3}/.github/workflows/dependency-installation.yml +5 -1
  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.2 → nmma-0.2.3}/PKG-INFO +31 -12
  8. {nmma-0.2.2 → nmma-0.2.3}/README.md +21 -3
  9. {nmma-0.2.2 → nmma-0.2.3}/api/Dockerfile +2 -2
  10. {nmma-0.2.2 → nmma-0.2.3}/api/environment.yml +1 -1
  11. {nmma-0.2.2 → nmma-0.2.3}/doc/index.rst +2 -2
  12. nmma-0.2.3/nmma/__init__.py +1 -0
  13. {nmma-0.2.2 → nmma-0.2.3}/nmma/em/analysis.py +6 -0
  14. {nmma-0.2.2 → nmma-0.2.3}/nmma/em/analysis_lbol.py +2 -1
  15. {nmma-0.2.2 → nmma-0.2.3}/nmma/em/combine_EOS.py +2 -1
  16. {nmma-0.2.2 → nmma-0.2.3}/nmma/em/create_lightcurves.py +2 -2
  17. {nmma-0.2.2 → nmma-0.2.3}/nmma/em/gwem_resampling_utils.py +3 -1
  18. {nmma-0.2.2 → nmma-0.2.3}/nmma/em/likelihood.py +5 -5
  19. {nmma-0.2.2 → nmma-0.2.3}/nmma/em/model.py +202 -59
  20. {nmma-0.2.2 → nmma-0.2.3}/nmma/em/svdmodel_benchmark.py +3 -1
  21. {nmma-0.2.2 → nmma-0.2.3}/nmma/em/training.py +5 -4
  22. {nmma-0.2.2 → nmma-0.2.3}/nmma/em/utils.py +179 -9
  23. {nmma-0.2.2 → nmma-0.2.3}/nmma/joint/conversion.py +1 -1
  24. {nmma-0.2.2 → nmma-0.2.3}/nmma/tests/analysis.py +16 -3
  25. nmma-0.2.3/nmma/tests/data/Bu2019nsbh_tf/2massks.h5 +0 -0
  26. nmma-0.2.3/nmma/tests/data/Bu2019nsbh_tf/sdssu.h5 +0 -0
  27. nmma-0.2.3/nmma/tests/data/systematics_with_time_combined_filters.yaml +16 -0
  28. {nmma-0.2.2 → nmma-0.2.3}/nmma/tests/injections.py +6 -4
  29. nmma-0.2.3/nmma/tests/utils.py +58 -0
  30. {nmma-0.2.2 → nmma-0.2.3}/nmma.egg-info/PKG-INFO +31 -12
  31. {nmma-0.2.2 → nmma-0.2.3}/nmma.egg-info/SOURCES.txt +6 -0
  32. {nmma-0.2.2 → nmma-0.2.3}/nmma.egg-info/requires.txt +5 -5
  33. nmma-0.2.3/priors/HoNa2020.prior +8 -0
  34. {nmma-0.2.2 → nmma-0.2.3}/pyproject.toml +5 -3
  35. {nmma-0.2.2 → nmma-0.2.3}/requirements.txt +6 -6
  36. nmma-0.2.2/.github/workflows/deploy-github-pages.yml +0 -56
  37. nmma-0.2.2/.github/workflows/publish-to-pypi.yml +0 -36
  38. nmma-0.2.2/nmma/__init__.py +0 -1
  39. {nmma-0.2.2 → nmma-0.2.3}/.flake8 +0 -0
  40. {nmma-0.2.2 → nmma-0.2.3}/.gitattributes +0 -0
  41. {nmma-0.2.2 → nmma-0.2.3}/.github/ISSUE_TEMPLATE/bug_report.md +0 -0
  42. {nmma-0.2.2 → nmma-0.2.3}/.github/ISSUE_TEMPLATE/feature_request.md +0 -0
  43. {nmma-0.2.2 → nmma-0.2.3}/.github/workflows/delete-branch-cache.yml +0 -0
  44. {nmma-0.2.2 → nmma-0.2.3}/.github/workflows/publish-to-anaconda.yml +0 -0
  45. {nmma-0.2.2 → nmma-0.2.3}/.github/workflows/rst-linter.yml +0 -0
  46. {nmma-0.2.2 → nmma-0.2.3}/.gitignore +0 -0
  47. {nmma-0.2.2 → nmma-0.2.3}/.pep8speaks.yml +0 -0
  48. {nmma-0.2.2 → nmma-0.2.3}/.pre-commit-config.yaml +0 -0
  49. {nmma-0.2.2 → nmma-0.2.3}/CITATION.cff +0 -0
  50. {nmma-0.2.2 → nmma-0.2.3}/Dockerfile +0 -0
  51. {nmma-0.2.2 → nmma-0.2.3}/LICENSE +0 -0
  52. {nmma-0.2.2 → nmma-0.2.3}/MANIFEST.in +0 -0
  53. {nmma-0.2.2 → nmma-0.2.3}/api/app.py +0 -0
  54. {nmma-0.2.2 → nmma-0.2.3}/api/log.py +0 -0
  55. {nmma-0.2.2 → nmma-0.2.3}/assets/a3d3.png +0 -0
  56. {nmma-0.2.2 → nmma-0.2.3}/assets/erc.png +0 -0
  57. {nmma-0.2.2 → nmma-0.2.3}/assets/nsf.png +0 -0
  58. {nmma-0.2.2 → nmma-0.2.3}/doc/.doctor-rst.yaml +0 -0
  59. {nmma-0.2.2 → nmma-0.2.3}/doc/Cluster_Resources.md +0 -0
  60. {nmma-0.2.2 → nmma-0.2.3}/doc/GW-EM-resampling.md +0 -0
  61. {nmma-0.2.2 → nmma-0.2.3}/doc/Makefile +0 -0
  62. {nmma-0.2.2 → nmma-0.2.3}/doc/_static/.nmma-docs.css.un~ +0 -0
  63. {nmma-0.2.2 → nmma-0.2.3}/doc/_static/favicon-light.png +0 -0
  64. {nmma-0.2.2 → nmma-0.2.3}/doc/_static/light-logo.svg +0 -0
  65. {nmma-0.2.2 → nmma-0.2.3}/doc/_static/nmma-docs.css +0 -0
  66. {nmma-0.2.2 → nmma-0.2.3}/doc/_static/nmma-docs.css~ +0 -0
  67. {nmma-0.2.2 → nmma-0.2.3}/doc/changelog.rst +0 -0
  68. {nmma-0.2.2 → nmma-0.2.3}/doc/combined_analysis.md +0 -0
  69. {nmma-0.2.2 → nmma-0.2.3}/doc/conf.py +0 -0
  70. {nmma-0.2.2 → nmma-0.2.3}/doc/contributing.md +0 -0
  71. {nmma-0.2.2 → nmma-0.2.3}/doc/data_inj_obs.md +0 -0
  72. {nmma-0.2.2 → nmma-0.2.3}/doc/fitting.md +0 -0
  73. {nmma-0.2.2 → nmma-0.2.3}/doc/gw_inference.md +0 -0
  74. {nmma-0.2.2 → nmma-0.2.3}/doc/gwemopt_light_curves_detection.md +0 -0
  75. {nmma-0.2.2 → nmma-0.2.3}/doc/images/Corner_narrow_Bulla.png +0 -0
  76. {nmma-0.2.2 → nmma-0.2.3}/doc/images/ZTF21abjvfbc_corner.png +0 -0
  77. {nmma-0.2.2 → nmma-0.2.3}/doc/images/ZTF21abjvfbc_lightcurves.png +0 -0
  78. {nmma-0.2.2 → nmma-0.2.3}/doc/images/ZTF_corner.png +0 -0
  79. {nmma-0.2.2 → nmma-0.2.3}/doc/images/ZTF_lightcurves.png +0 -0
  80. {nmma-0.2.2 → nmma-0.2.3}/doc/images/corner_samples.png +0 -0
  81. {nmma-0.2.2 → nmma-0.2.3}/doc/images/dark-logo.svg +0 -0
  82. {nmma-0.2.2 → nmma-0.2.3}/doc/images/injection_corner.png +0 -0
  83. {nmma-0.2.2 → nmma-0.2.3}/doc/images/injection_lightcurves.png +0 -0
  84. {nmma-0.2.2 → nmma-0.2.3}/doc/images/light-logo.svg +0 -0
  85. {nmma-0.2.2 → nmma-0.2.3}/doc/images/training_lightcurves.png +0 -0
  86. {nmma-0.2.2 → nmma-0.2.3}/doc/joint_inference.md +0 -0
  87. {nmma-0.2.2 → nmma-0.2.3}/doc/lfi_analysis.md +0 -0
  88. {nmma-0.2.2 → nmma-0.2.3}/doc/models.md +0 -0
  89. {nmma-0.2.2 → nmma-0.2.3}/doc/observing-scenarios-light-curves.md +0 -0
  90. {nmma-0.2.2 → nmma-0.2.3}/doc/quick-start-guide.rst +0 -0
  91. {nmma-0.2.2 → nmma-0.2.3}/doc/systematics.rst +0 -0
  92. {nmma-0.2.2 → nmma-0.2.3}/doc/training.md +0 -0
  93. {nmma-0.2.2 → nmma-0.2.3}/doc_requirements.txt +0 -0
  94. {nmma-0.2.2 → nmma-0.2.3}/docker-compose.yml +0 -0
  95. {nmma-0.2.2 → nmma-0.2.3}/example_files/NICER/J0030_3spot_RM.txt +0 -0
  96. {nmma-0.2.2 → nmma-0.2.3}/example_files/NICER/NICER+XMM_J0740_RM.txt +0 -0
  97. {nmma-0.2.2 → nmma-0.2.3}/example_files/NICER/NICER_x_XMM_J0740_XPSI_STU_NSX_FIH_radius_mass.txt +0 -0
  98. {nmma-0.2.2 → nmma-0.2.3}/example_files/candidate_data/ZTF20abwysqy.dat +0 -0
  99. {nmma-0.2.2 → nmma-0.2.3}/example_files/candidate_data/ZTF21abdequz.dat +0 -0
  100. {nmma-0.2.2 → nmma-0.2.3}/example_files/candidate_data/ZTF21abdhqle.dat +0 -0
  101. {nmma-0.2.2 → nmma-0.2.3}/example_files/candidate_data/ZTF21abdpqpq.dat +0 -0
  102. {nmma-0.2.2 → nmma-0.2.3}/example_files/candidate_data/ZTF21abinaiu.dat +0 -0
  103. {nmma-0.2.2 → nmma-0.2.3}/example_files/candidate_data/ZTF21abisoui.dat +0 -0
  104. {nmma-0.2.2 → nmma-0.2.3}/example_files/candidate_data/ZTF21abitmou.dat +0 -0
  105. {nmma-0.2.2 → nmma-0.2.3}/example_files/candidate_data/ZTF21abivhns.dat +0 -0
  106. {nmma-0.2.2 → nmma-0.2.3}/example_files/candidate_data/ZTF21abjpkvy.dat +0 -0
  107. {nmma-0.2.2 → nmma-0.2.3}/example_files/candidate_data/ZTF21abjrhzz.dat +0 -0
  108. {nmma-0.2.2 → nmma-0.2.3}/example_files/candidate_data/ZTF21abjrmes.dat +0 -0
  109. {nmma-0.2.2 → nmma-0.2.3}/example_files/candidate_data/ZTF21abjtdua.dat +0 -0
  110. {nmma-0.2.2 → nmma-0.2.3}/example_files/candidate_data/ZTF21abjvfbc.dat +0 -0
  111. {nmma-0.2.2 → nmma-0.2.3}/example_files/candidate_data/ZTF23aaxeacr.dat +0 -0
  112. {nmma-0.2.2 → nmma-0.2.3}/example_files/eos/ALF2.dat +0 -0
  113. {nmma-0.2.2 → nmma-0.2.3}/example_files/lbol/ztf23bqun/23bqun_bbdata.csv +0 -0
  114. {nmma-0.2.2 → nmma-0.2.3}/example_files/lbol/ztf23bqun/Arnett_modified.priors +0 -0
  115. {nmma-0.2.2 → nmma-0.2.3}/example_files/lbol/ztf23bqun/lbol_test_corner.png +0 -0
  116. {nmma-0.2.2 → nmma-0.2.3}/example_files/lbol/ztf23bqun/lbol_test_lightcurves.png +0 -0
  117. {nmma-0.2.2 → nmma-0.2.3}/example_files/lbol/ztf23bqun/run.sh +0 -0
  118. {nmma-0.2.2 → nmma-0.2.3}/example_files/lightcurves/AT2017gfo.dat +0 -0
  119. {nmma-0.2.2 → nmma-0.2.3}/example_files/lightcurves/AT2017gfo_GRB170817A_reduced.dat +0 -0
  120. {nmma-0.2.2 → nmma-0.2.3}/example_files/lightcurves/AT2017gfo_reduced.dat +0 -0
  121. {nmma-0.2.2 → nmma-0.2.3}/example_files/lightcurves/GRB211211A.txt +0 -0
  122. {nmma-0.2.2 → nmma-0.2.3}/example_files/multi_config_analysis/config.yaml +0 -0
  123. {nmma-0.2.2 → nmma-0.2.3}/example_files/multi_config_analysis/injection.json +0 -0
  124. {nmma-0.2.2 → nmma-0.2.3}/example_files/prior/GW170817_AT2017gfo.prior +0 -0
  125. {nmma-0.2.2 → nmma-0.2.3}/example_files/prior/GW170817_AT2017gfo_GRB170817A.prior +0 -0
  126. {nmma-0.2.2 → nmma-0.2.3}/example_files/prior/ZTF_Bu2019lm.prior +0 -0
  127. {nmma-0.2.2 → nmma-0.2.3}/example_files/sim_events/bns_O4_injections.dat +0 -0
  128. {nmma-0.2.2 → nmma-0.2.3}/example_files/sim_events/injections.dat +0 -0
  129. {nmma-0.2.2 → nmma-0.2.3}/example_files/tools/gwem_resampling/GRB211211A_NSBH_posterior_samples.dat +0 -0
  130. {nmma-0.2.2 → nmma-0.2.3}/example_files/tools/gwem_resampling/GRB211211A_posterior_samples.dat +0 -0
  131. {nmma-0.2.2 → nmma-0.2.3}/example_files/tools/gwem_resampling/GWsamples.dat +0 -0
  132. {nmma-0.2.2 → nmma-0.2.3}/example_files/tools/gwem_resampling/GWsamples_NSBH.dat +0 -0
  133. {nmma-0.2.2 → nmma-0.2.3}/example_files/tools/gwem_resampling/gwsamples_generation.py +0 -0
  134. {nmma-0.2.2 → nmma-0.2.3}/example_files/tools/gwem_resampling/posterior_probability.txt +0 -0
  135. {nmma-0.2.2 → nmma-0.2.3}/example_files/yaml/doc_example.yaml +0 -0
  136. {nmma-0.2.2 → nmma-0.2.3}/example_files/zenodo/gw_posteriors.txt +0 -0
  137. {nmma-0.2.2 → nmma-0.2.3}/grb_requirements.txt +0 -0
  138. {nmma-0.2.2 → nmma-0.2.3}/ml_requirements.txt +0 -0
  139. {nmma-0.2.2 → nmma-0.2.3}/nmma/__pycache__/__init__.cpython-37.pyc +0 -0
  140. {nmma-0.2.2 → nmma-0.2.3}/nmma/em/__init__.py +0 -0
  141. {nmma-0.2.2 → nmma-0.2.3}/nmma/em/__pycache__/__init__.cpython-37.pyc +0 -0
  142. {nmma-0.2.2 → nmma-0.2.3}/nmma/em/__pycache__/likelihood.cpython-37.pyc +0 -0
  143. {nmma-0.2.2 → nmma-0.2.3}/nmma/em/__pycache__/model.cpython-37.pyc +0 -0
  144. {nmma-0.2.2 → nmma-0.2.3}/nmma/em/__pycache__/utils.cpython-37.pyc +0 -0
  145. {nmma-0.2.2 → nmma-0.2.3}/nmma/em/analysis_condor.py +0 -0
  146. {nmma-0.2.2 → nmma-0.2.3}/nmma/em/create_injection_condor.py +0 -0
  147. {nmma-0.2.2 → nmma-0.2.3}/nmma/em/create_injection_slurm.py +0 -0
  148. {nmma-0.2.2 → nmma-0.2.3}/nmma/em/create_lightcurves_condor.py +0 -0
  149. {nmma-0.2.2 → nmma-0.2.3}/nmma/em/create_lightcurves_slurm.py +0 -0
  150. {nmma-0.2.2 → nmma-0.2.3}/nmma/em/create_svdmodel.py +0 -0
  151. {nmma-0.2.2 → nmma-0.2.3}/nmma/em/data/ZTF_revisit_kde_i.joblib +0 -0
  152. {nmma-0.2.2 → nmma-0.2.3}/nmma/em/data/ZTF_revisit_kde_public.joblib +0 -0
  153. {nmma-0.2.2 → nmma-0.2.3}/nmma/em/data/ZTF_sampling_public.pkl +0 -0
  154. {nmma-0.2.2 → nmma-0.2.3}/nmma/em/data/ZTF_uncer_params.pkl +0 -0
  155. {nmma-0.2.2 → nmma-0.2.3}/nmma/em/data/__init__.py +0 -0
  156. {nmma-0.2.2 → nmma-0.2.3}/nmma/em/data/__pycache__/__init__.cpython-38.pyc +0 -0
  157. {nmma-0.2.2 → nmma-0.2.3}/nmma/em/data/lims_ToO_180_g.joblib +0 -0
  158. {nmma-0.2.2 → nmma-0.2.3}/nmma/em/data/lims_ToO_180_r.joblib +0 -0
  159. {nmma-0.2.2 → nmma-0.2.3}/nmma/em/data/lims_ToO_300_g.joblib +0 -0
  160. {nmma-0.2.2 → nmma-0.2.3}/nmma/em/data/lims_ToO_300_r.joblib +0 -0
  161. {nmma-0.2.2 → nmma-0.2.3}/nmma/em/data/lims_i.joblib +0 -0
  162. {nmma-0.2.2 → nmma-0.2.3}/nmma/em/data/lims_public_g.joblib +0 -0
  163. {nmma-0.2.2 → nmma-0.2.3}/nmma/em/data/lims_public_r.joblib +0 -0
  164. {nmma-0.2.2 → nmma-0.2.3}/nmma/em/data/sampling_ToO_180.pkl +0 -0
  165. {nmma-0.2.2 → nmma-0.2.3}/nmma/em/data/sampling_ToO_300.pkl +0 -0
  166. {nmma-0.2.2 → nmma-0.2.3}/nmma/em/detect_lightcurves.py +0 -0
  167. {nmma-0.2.2 → nmma-0.2.3}/nmma/em/gwem_Hubble_estimate.py +0 -0
  168. {nmma-0.2.2 → nmma-0.2.3}/nmma/em/gwem_resampling.py +0 -0
  169. {nmma-0.2.2 → nmma-0.2.3}/nmma/em/gwem_resampling_condor.py +0 -0
  170. {nmma-0.2.2 → nmma-0.2.3}/nmma/em/gwsamples_creation.py +0 -0
  171. {nmma-0.2.2 → nmma-0.2.3}/nmma/em/injection.py +0 -0
  172. {nmma-0.2.2 → nmma-0.2.3}/nmma/em/injection_summary.py +0 -0
  173. {nmma-0.2.2 → nmma-0.2.3}/nmma/em/io.py +0 -0
  174. {nmma-0.2.2 → nmma-0.2.3}/nmma/em/lightcurve_marginalization.py +0 -0
  175. {nmma-0.2.2 → nmma-0.2.3}/nmma/em/manual.py +0 -0
  176. {nmma-0.2.2 → nmma-0.2.3}/nmma/em/model_lbol.py +0 -0
  177. {nmma-0.2.2 → nmma-0.2.3}/nmma/em/model_parameters.py +0 -0
  178. {nmma-0.2.2 → nmma-0.2.3}/nmma/em/multi_config_analysis.py +0 -0
  179. {nmma-0.2.2 → nmma-0.2.3}/nmma/em/prior.py +0 -0
  180. {nmma-0.2.2 → nmma-0.2.3}/nmma/em/systematics.py +0 -0
  181. {nmma-0.2.2 → nmma-0.2.3}/nmma/em/utils_lbol.py +0 -0
  182. {nmma-0.2.2 → nmma-0.2.3}/nmma/em/validate_lightcurve.py +0 -0
  183. {nmma-0.2.2 → nmma-0.2.3}/nmma/eos/__init__.py +0 -0
  184. {nmma-0.2.2 → nmma-0.2.3}/nmma/eos/__pycache__/__init__.cpython-37.pyc +0 -0
  185. {nmma-0.2.2 → nmma-0.2.3}/nmma/eos/__pycache__/eos.cpython-37.pyc +0 -0
  186. {nmma-0.2.2 → nmma-0.2.3}/nmma/eos/__pycache__/tov.cpython-37.pyc +0 -0
  187. {nmma-0.2.2 → nmma-0.2.3}/nmma/eos/__pycache__/utils.cpython-37.pyc +0 -0
  188. {nmma-0.2.2 → nmma-0.2.3}/nmma/eos/create_injection.py +0 -0
  189. {nmma-0.2.2 → nmma-0.2.3}/nmma/eos/eos.py +0 -0
  190. {nmma-0.2.2 → nmma-0.2.3}/nmma/eos/tov.py +0 -0
  191. {nmma-0.2.2 → nmma-0.2.3}/nmma/eos/utils.py +0 -0
  192. {nmma-0.2.2 → nmma-0.2.3}/nmma/gw/likelihood.py +0 -0
  193. {nmma-0.2.2 → nmma-0.2.3}/nmma/joint/__init__.py +0 -0
  194. {nmma-0.2.2 → nmma-0.2.3}/nmma/joint/__pycache__/__init__.cpython-37.pyc +0 -0
  195. {nmma-0.2.2 → nmma-0.2.3}/nmma/joint/__pycache__/constraints.cpython-37.pyc +0 -0
  196. {nmma-0.2.2 → nmma-0.2.3}/nmma/joint/__pycache__/conversion.cpython-37.pyc +0 -0
  197. {nmma-0.2.2 → nmma-0.2.3}/nmma/joint/__pycache__/likelihood.cpython-37.pyc +0 -0
  198. {nmma-0.2.2 → nmma-0.2.3}/nmma/joint/constraints.py +0 -0
  199. {nmma-0.2.2 → nmma-0.2.3}/nmma/joint/likelihood.py +0 -0
  200. {nmma-0.2.2 → nmma-0.2.3}/nmma/joint/maximum_mass_constraint.py +0 -0
  201. {nmma-0.2.2 → nmma-0.2.3}/nmma/joint/maximum_mass_constraint_utils.py +0 -0
  202. {nmma-0.2.2 → nmma-0.2.3}/nmma/mlmodel/dataprocessing.py +0 -0
  203. {nmma-0.2.2 → nmma-0.2.3}/nmma/mlmodel/embedding.py +0 -0
  204. {nmma-0.2.2 → nmma-0.2.3}/nmma/mlmodel/frozen-flow-weights.pth +0 -0
  205. {nmma-0.2.2 → nmma-0.2.3}/nmma/mlmodel/inference.py +0 -0
  206. {nmma-0.2.2 → nmma-0.2.3}/nmma/mlmodel/normalizingflows.py +0 -0
  207. {nmma-0.2.2 → nmma-0.2.3}/nmma/mlmodel/resnet.py +0 -0
  208. {nmma-0.2.2 → nmma-0.2.3}/nmma/mlmodel/similarity_embedding_weights.pth +0 -0
  209. {nmma-0.2.2 → nmma-0.2.3}/nmma/pbilby/analysis/__init__.py +0 -0
  210. {nmma-0.2.2 → nmma-0.2.3}/nmma/pbilby/analysis/analysis_run.py +0 -0
  211. {nmma-0.2.2 → nmma-0.2.3}/nmma/pbilby/analysis/likelihood.py +0 -0
  212. {nmma-0.2.2 → nmma-0.2.3}/nmma/pbilby/analysis/main.py +0 -0
  213. {nmma-0.2.2 → nmma-0.2.3}/nmma/pbilby/generation.py +0 -0
  214. {nmma-0.2.2 → nmma-0.2.3}/nmma/pbilby/parser/__init__.py +0 -0
  215. {nmma-0.2.2 → nmma-0.2.3}/nmma/pbilby/parser/analysis.py +0 -0
  216. {nmma-0.2.2 → nmma-0.2.3}/nmma/pbilby/parser/generation.py +0 -0
  217. {nmma-0.2.2 → nmma-0.2.3}/nmma/pbilby/parser/shared.py +0 -0
  218. {nmma-0.2.2 → nmma-0.2.3}/nmma/tests/__init__.py +0 -0
  219. {nmma-0.2.2 → nmma-0.2.3}/nmma/tests/analysis_lbol.py +0 -0
  220. {nmma-0.2.2 → nmma-0.2.3}/nmma/tests/data/Bu2019lm_injection.json +0 -0
  221. {nmma-0.2.2 → nmma-0.2.3}/nmma/tests/data/Bu2019nsbh/ztfr.joblib +0 -0
  222. {nmma-0.2.2 → nmma-0.2.3}/nmma/tests/data/Bu2019nsbh.joblib +0 -0
  223. {nmma-0.2.2 → nmma-0.2.3}/nmma/tests/data/Bu2019nsbh_tf/ztfr.h5 +0 -0
  224. {nmma-0.2.2 → nmma-0.2.3}/nmma/tests/data/GW+KN+GRB_posterior +0 -0
  225. {nmma-0.2.2 → nmma-0.2.3}/nmma/tests/data/Ka2017_injection.json +0 -0
  226. {nmma-0.2.2 → nmma-0.2.3}/nmma/tests/data/Me2017_injection.json +0 -0
  227. {nmma-0.2.2 → nmma-0.2.3}/nmma/tests/data/TrPi2018_pinned_parameters.prior +0 -0
  228. {nmma-0.2.2 → nmma-0.2.3}/nmma/tests/data/ZTF23aaxeacr_partial.csv +0 -0
  229. {nmma-0.2.2 → nmma-0.2.3}/nmma/tests/data/bulla/nsns_nph1.0e+06_mejdyn0.001_mejwind0.010_phi45_45.6.dat +0 -0
  230. {nmma-0.2.2 → nmma-0.2.3}/nmma/tests/data/bulla/nsns_nph1.0e+06_mejdyn0.001_mejwind0.030_phi45_45.6.dat +0 -0
  231. {nmma-0.2.2 → nmma-0.2.3}/nmma/tests/data/bulla/nsns_nph1.0e+06_mejdyn0.001_mejwind0.050_phi45_45.6.dat +0 -0
  232. {nmma-0.2.2 → nmma-0.2.3}/nmma/tests/data/bulla/nsns_nph1.0e+06_mejdyn0.001_mejwind0.070_phi45_45.6.dat +0 -0
  233. {nmma-0.2.2 → nmma-0.2.3}/nmma/tests/data/bulla/nsns_nph1.0e+06_mejdyn0.001_mejwind0.090_phi45_45.6.dat +0 -0
  234. {nmma-0.2.2 → nmma-0.2.3}/nmma/tests/data/bulla/nsns_nph1.0e+06_mejdyn0.001_mejwind0.110_phi45_45.6.dat +0 -0
  235. {nmma-0.2.2 → nmma-0.2.3}/nmma/tests/data/bulla/nsns_nph1.0e+06_mejdyn0.001_mejwind0.130_phi45_45.6.dat +0 -0
  236. {nmma-0.2.2 → nmma-0.2.3}/nmma/tests/data/bulla/nsns_nph1.0e+06_mejdyn0.005_mejwind0.010_phi45_45.6.dat +0 -0
  237. {nmma-0.2.2 → nmma-0.2.3}/nmma/tests/data/bulla/nsns_nph1.0e+06_mejdyn0.005_mejwind0.030_phi45_45.6.dat +0 -0
  238. {nmma-0.2.2 → nmma-0.2.3}/nmma/tests/data/bulla/nsns_nph1.0e+06_mejdyn0.005_mejwind0.050_phi45_45.6.dat +0 -0
  239. {nmma-0.2.2 → nmma-0.2.3}/nmma/tests/data/bulla/nsns_nph1.0e+06_mejdyn0.005_mejwind0.070_phi45_45.6.dat +0 -0
  240. {nmma-0.2.2 → nmma-0.2.3}/nmma/tests/data/bulla/nsns_nph1.0e+06_mejdyn0.005_mejwind0.090_phi45_45.6.dat +0 -0
  241. {nmma-0.2.2 → nmma-0.2.3}/nmma/tests/data/bulla/nsns_nph1.0e+06_mejdyn0.005_mejwind0.110_phi45_45.6.dat +0 -0
  242. {nmma-0.2.2 → nmma-0.2.3}/nmma/tests/data/bulla/nsns_nph1.0e+06_mejdyn0.005_mejwind0.130_phi45_45.6.dat +0 -0
  243. {nmma-0.2.2 → nmma-0.2.3}/nmma/tests/data/bulla/nsns_nph1.0e+06_mejdyn0.010_mejwind0.010_phi45_45.6.dat +0 -0
  244. {nmma-0.2.2 → nmma-0.2.3}/nmma/tests/data/bulla/nsns_nph1.0e+06_mejdyn0.010_mejwind0.030_phi45_45.6.dat +0 -0
  245. {nmma-0.2.2 → nmma-0.2.3}/nmma/tests/data/bulla/nsns_nph1.0e+06_mejdyn0.010_mejwind0.050_phi45_45.6.dat +0 -0
  246. {nmma-0.2.2 → nmma-0.2.3}/nmma/tests/data/bulla/nsns_nph1.0e+06_mejdyn0.010_mejwind0.070_phi45_45.6.dat +0 -0
  247. {nmma-0.2.2 → nmma-0.2.3}/nmma/tests/data/bulla/nsns_nph1.0e+06_mejdyn0.010_mejwind0.090_phi45_45.6.dat +0 -0
  248. {nmma-0.2.2 → nmma-0.2.3}/nmma/tests/data/bulla/nsns_nph1.0e+06_mejdyn0.010_mejwind0.110_phi45_45.6.dat +0 -0
  249. {nmma-0.2.2 → nmma-0.2.3}/nmma/tests/data/bulla/nsns_nph1.0e+06_mejdyn0.010_mejwind0.130_phi45_45.6.dat +0 -0
  250. {nmma-0.2.2 → nmma-0.2.3}/nmma/tests/data/bulla/nsns_nph1.0e+06_mejdyn0.020_mejwind0.010_phi45_45.6.dat +0 -0
  251. {nmma-0.2.2 → nmma-0.2.3}/nmma/tests/data/bulla/nsns_nph1.0e+06_mejdyn0.020_mejwind0.030_phi45_45.6.dat +0 -0
  252. {nmma-0.2.2 → nmma-0.2.3}/nmma/tests/data/bulla/nsns_nph1.0e+06_mejdyn0.020_mejwind0.050_phi45_45.6.dat +0 -0
  253. {nmma-0.2.2 → nmma-0.2.3}/nmma/tests/data/bulla/nsns_nph1.0e+06_mejdyn0.020_mejwind0.070_phi45_45.6.dat +0 -0
  254. {nmma-0.2.2 → nmma-0.2.3}/nmma/tests/data/bulla/nsns_nph1.0e+06_mejdyn0.020_mejwind0.090_phi45_45.6.dat +0 -0
  255. {nmma-0.2.2 → nmma-0.2.3}/nmma/tests/data/bulla/nsns_nph1.0e+06_mejdyn0.020_mejwind0.110_phi45_45.6.dat +0 -0
  256. {nmma-0.2.2 → nmma-0.2.3}/nmma/tests/data/bulla/nsns_nph1.0e+06_mejdyn0.020_mejwind0.130_phi45_45.6.dat +0 -0
  257. {nmma-0.2.2 → nmma-0.2.3}/nmma/tests/data/eos_macro/1.dat +0 -0
  258. {nmma-0.2.2 → nmma-0.2.3}/nmma/tests/data/eos_macro/10.dat +0 -0
  259. {nmma-0.2.2 → nmma-0.2.3}/nmma/tests/data/eos_macro/2.dat +0 -0
  260. {nmma-0.2.2 → nmma-0.2.3}/nmma/tests/data/eos_macro/3.dat +0 -0
  261. {nmma-0.2.2 → nmma-0.2.3}/nmma/tests/data/eos_macro/4.dat +0 -0
  262. {nmma-0.2.2 → nmma-0.2.3}/nmma/tests/data/eos_macro/5.dat +0 -0
  263. {nmma-0.2.2 → nmma-0.2.3}/nmma/tests/data/eos_macro/6.dat +0 -0
  264. {nmma-0.2.2 → nmma-0.2.3}/nmma/tests/data/eos_macro/7.dat +0 -0
  265. {nmma-0.2.2 → nmma-0.2.3}/nmma/tests/data/eos_macro/8.dat +0 -0
  266. {nmma-0.2.2 → nmma-0.2.3}/nmma/tests/data/eos_macro/9.dat +0 -0
  267. {nmma-0.2.2 → nmma-0.2.3}/nmma/tests/data/eos_micro/1.dat +0 -0
  268. {nmma-0.2.2 → nmma-0.2.3}/nmma/tests/data/eos_micro/10.dat +0 -0
  269. {nmma-0.2.2 → nmma-0.2.3}/nmma/tests/data/eos_micro/2.dat +0 -0
  270. {nmma-0.2.2 → nmma-0.2.3}/nmma/tests/data/eos_micro/3.dat +0 -0
  271. {nmma-0.2.2 → nmma-0.2.3}/nmma/tests/data/eos_micro/4.dat +0 -0
  272. {nmma-0.2.2 → nmma-0.2.3}/nmma/tests/data/eos_micro/5.dat +0 -0
  273. {nmma-0.2.2 → nmma-0.2.3}/nmma/tests/data/eos_micro/6.dat +0 -0
  274. {nmma-0.2.2 → nmma-0.2.3}/nmma/tests/data/eos_micro/7.dat +0 -0
  275. {nmma-0.2.2 → nmma-0.2.3}/nmma/tests/data/eos_micro/8.dat +0 -0
  276. {nmma-0.2.2 → nmma-0.2.3}/nmma/tests/data/eos_micro/9.dat +0 -0
  277. {nmma-0.2.2 → nmma-0.2.3}/nmma/tests/data/lowmass_collapsar_updated.h5 +0 -0
  278. {nmma-0.2.2 → nmma-0.2.3}/nmma/tests/data/multi_config_analysis/Me2017.prior +0 -0
  279. {nmma-0.2.2 → nmma-0.2.3}/nmma/tests/data/multi_config_analysis/config.yaml +0 -0
  280. {nmma-0.2.2 → nmma-0.2.3}/nmma/tests/data/multi_config_analysis/injection.json +0 -0
  281. {nmma-0.2.2 → nmma-0.2.3}/nmma/tests/data/systematics_with_time.yaml +0 -0
  282. {nmma-0.2.2 → nmma-0.2.3}/nmma/tests/data/systematics_without_time.yaml +0 -0
  283. {nmma-0.2.2 → nmma-0.2.3}/nmma/tests/maximum_mass.py +0 -0
  284. {nmma-0.2.2 → nmma-0.2.3}/nmma/tests/models.py +0 -0
  285. {nmma-0.2.2 → nmma-0.2.3}/nmma/tests/multi_config_analysis.py +0 -0
  286. {nmma-0.2.2 → nmma-0.2.3}/nmma/tests/systematics.py +0 -0
  287. {nmma-0.2.2 → nmma-0.2.3}/nmma/tests/tools.py +0 -0
  288. {nmma-0.2.2 → nmma-0.2.3}/nmma/tests/training.py +0 -0
  289. {nmma-0.2.2 → nmma-0.2.3}/nmma/utils/__init__.py +0 -0
  290. {nmma-0.2.2 → nmma-0.2.3}/nmma/utils/gitlab.py +0 -0
  291. {nmma-0.2.2 → nmma-0.2.3}/nmma/utils/models.py +0 -0
  292. {nmma-0.2.2 → nmma-0.2.3}/nmma/utils/models_tools.py +0 -0
  293. {nmma-0.2.2 → nmma-0.2.3}/nmma.egg-info/dependency_links.txt +0 -0
  294. {nmma-0.2.2 → nmma-0.2.3}/nmma.egg-info/entry_points.txt +0 -0
  295. {nmma-0.2.2 → nmma-0.2.3}/nmma.egg-info/top_level.txt +0 -0
  296. {nmma-0.2.2 → nmma-0.2.3}/priors/AnBa2022.prior +0 -0
  297. {nmma-0.2.2 → nmma-0.2.3}/priors/AnBa2022_sparse.prior +0 -0
  298. {nmma-0.2.2 → nmma-0.2.3}/priors/Bu2019lm.prior +0 -0
  299. {nmma-0.2.2 → nmma-0.2.3}/priors/Bu2019lm_TrPi2018GRB211211A.prior +0 -0
  300. {nmma-0.2.2 → nmma-0.2.3}/priors/Bu2019nsbh.prior +0 -0
  301. {nmma-0.2.2 → nmma-0.2.3}/priors/Bu2019nsbh_TrPi2018_GRB211211A.prior +0 -0
  302. {nmma-0.2.2 → nmma-0.2.3}/priors/Bu2022Ye.prior +0 -0
  303. {nmma-0.2.2 → nmma-0.2.3}/priors/Bu2023Ye.prior +0 -0
  304. {nmma-0.2.2 → nmma-0.2.3}/priors/GWBNS.prior +0 -0
  305. {nmma-0.2.2 → nmma-0.2.3}/priors/GWNSBH.prior +0 -0
  306. {nmma-0.2.2 → nmma-0.2.3}/priors/Ka2017.prior +0 -0
  307. {nmma-0.2.2 → nmma-0.2.3}/priors/LANL2022.prior +0 -0
  308. {nmma-0.2.2 → nmma-0.2.3}/priors/Me2017.prior +0 -0
  309. {nmma-0.2.2 → nmma-0.2.3}/priors/Piro2021.prior +0 -0
  310. {nmma-0.2.2 → nmma-0.2.3}/priors/Sr2023.prior +0 -0
  311. {nmma-0.2.2 → nmma-0.2.3}/priors/TrPi2018.prior +0 -0
  312. {nmma-0.2.2 → nmma-0.2.3}/priors/TrPi2018_onaxis.prior +0 -0
  313. {nmma-0.2.2 → nmma-0.2.3}/priors/ZTF_lgrb.prior +0 -0
  314. {nmma-0.2.2 → nmma-0.2.3}/priors/ZTF_sgrb.prior +0 -0
  315. {nmma-0.2.2 → nmma-0.2.3}/priors/injec_alspin.prior +0 -0
  316. {nmma-0.2.2 → nmma-0.2.3}/priors/maximum_mass_resampling.prior +0 -0
  317. {nmma-0.2.2 → nmma-0.2.3}/priors/salt2.prior +0 -0
  318. {nmma-0.2.2 → nmma-0.2.3}/priors/sncosmo-generic.prior +0 -0
  319. {nmma-0.2.2 → nmma-0.2.3}/priors/sncosmo-generic_TrPi2018.prior +0 -0
  320. {nmma-0.2.2 → nmma-0.2.3}/priors/systematics.yaml +0 -0
  321. {nmma-0.2.2 → nmma-0.2.3}/production_requirements.txt +0 -0
  322. {nmma-0.2.2 → nmma-0.2.3}/sampler_requirements.txt +0 -0
  323. {nmma-0.2.2 → nmma-0.2.3}/setup.cfg +0 -0
  324. {nmma-0.2.2 → nmma-0.2.3}/sklearn_requirements.txt +0 -0
  325. {nmma-0.2.2 → nmma-0.2.3}/slurm.sub +0 -0
  326. {nmma-0.2.2 → nmma-0.2.3}/tf_requirements.txt +0 -0
  327. {nmma-0.2.2 → nmma-0.2.3}/tools/__init__.py +0 -0
  328. {nmma-0.2.2 → nmma-0.2.3}/tools/analysis_slurm.py +0 -0
  329. {nmma-0.2.2 → nmma-0.2.3}/tools/convert_skyportal_lcs.py +0 -0
  330. {nmma-0.2.2 → nmma-0.2.3}/tools/corner_plot.py +0 -0
  331. {nmma-0.2.2 → nmma-0.2.3}/tools/make_lcs.py +0 -0
  332. {nmma-0.2.2 → nmma-0.2.3}/tools/make_lcs_LANL.py +0 -0
  333. {nmma-0.2.2 → nmma-0.2.3}/tools/make_lcs_hdf5.py +0 -0
  334. {nmma-0.2.2 → nmma-0.2.3}/tools/make_lcs_kasen.py +0 -0
  335. {nmma-0.2.2 → nmma-0.2.3}/tools/plot_svdmodel_benchmarks.py +0 -0
  336. {nmma-0.2.2 → nmma-0.2.3}/tools/resample_grid.py +0 -0
  337. {nmma-0.2.2 → nmma-0.2.3}/tools/tf_training_calls.sh +0 -0
  338. {nmma-0.2.2 → nmma-0.2.3}/tutorials/README.md +0 -0
  339. {nmma-0.2.2 → nmma-0.2.3}/tutorials/tutorial-KN-models-training.ipynb +0 -0
  340. {nmma-0.2.2 → 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,75 +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
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 python3-mpi4py
123
-
124
91
  - name: Install Python dependencies
125
92
  run: |
126
93
  python -m pip install --upgrade git+https://github.com/bitranox/wrapt_timeout_decorator.git
127
- 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"
128
95
  python -m pip install -r ml_requirements.txt -r grb_requirements.txt -r tf_requirements.txt -r sklearn_requirements.txt
129
96
  python -m pip install .
130
- 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 ../..
131
98
  pwd
132
-
133
99
  - name: Export Libraries
134
100
  run: |
135
101
  echo "LD_LIBRARY_PATH=$HOME/work/nmma/nmma/MultiNest/lib:$LD_LIBRARY_PATH" >> $GITHUB_ENV
136
102
  echo "DYLD_LIBRARY_PATH=$HOME/work/nmma/nmma/MultiNest/lib:$DYLD_LIBRARY_PATH" >> $GITHUB_ENV
137
-
138
103
  - name: Lint with flake8
139
104
  run: |
140
105
  # stop the build if there are Python syntax errors or undefined names
141
106
  flake8 . --count --select=E9,F63,F7,F82 --show-source --statistics --exclude docs
142
107
  # exit-zero treats all errors as warnings. The GitHub editor is 127 chars wide
143
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
144
-
145
109
  - name: Test with pytest
146
110
  run: |
147
111
  python -m coverage run --source nmma -m pytest nmma/tests/*.py
148
-
149
112
  - name: Run Coveralls
150
113
  if: ${{ success() }}
151
114
  run: |
152
115
  coveralls --service=github
153
116
  env:
154
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,12 +39,16 @@ 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: |
@@ -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.2
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,17 +24,17 @@ 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
37
+ Requires-Dist: pandas>2.0
38
38
  Requires-Dist: astropy>=5.3.4
39
39
  Requires-Dist: pymultinest
40
40
  Requires-Dist: sncosmo
@@ -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,15 +134,33 @@ 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
  ```
136
- If you are using the systematics error, please also cite the paper [A 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:
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:
137
138
  ```bibtex
138
139
  @article{Jhawar:2024ezm,
139
140
  author = "Jhawar, Sahil and Wouters, Thibeau and Pang, Peter T. H. and Bulla, Mattia and Coughlin, Michael W. and Dietrich, Tim",
140
- title = "{A data-driven approach for modeling the temporal and spectral evolution of kilonova systematic uncertainties}",
141
+ title = "{Data-driven approach for modeling the temporal and spectral evolution of kilonova systematic uncertainties}",
141
142
  eprint = "2410.21978",
142
143
  archivePrefix = "arXiv",
143
144
  primaryClass = "astro-ph.HE",
144
- month = "10",
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",
145
164
  year = "2024"
146
165
  }
147
166
  ```
@@ -54,15 +54,33 @@ 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 [A 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:
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
58
  ```bibtex
59
59
  @article{Jhawar:2024ezm,
60
60
  author = "Jhawar, Sahil and Wouters, Thibeau and Pang, Peter T. H. and Bulla, Mattia and Coughlin, Michael W. and Dietrich, Tim",
61
- title = "{A data-driven approach for modeling the temporal and spectral evolution of kilonova systematic uncertainties}",
61
+ title = "{Data-driven approach for modeling the temporal and spectral evolution of kilonova systematic uncertainties}",
62
62
  eprint = "2410.21978",
63
63
  archivePrefix = "arXiv",
64
64
  primaryClass = "astro-ph.HE",
65
- month = "10",
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",
66
84
  year = "2024"
67
85
  }
68
86
  ```
@@ -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):
@@ -0,0 +1 @@
1
+ __version__ = "0.2.3"
@@ -148,6 +148,12 @@ def get_parser(**kwargs):
148
148
  default=0,
149
149
  help="Jet type to used used for GRB afterglow light curve (default: 0)",
150
150
  )
151
+ parser.add_argument(
152
+ "--energy-injection",
153
+ action="store_true",
154
+ default=False,
155
+ help="To include energy injection for GRB model (default: False)",
156
+ )
151
157
  parser.add_argument(
152
158
  "--error-budget",
153
159
  type=str,
@@ -18,8 +18,10 @@ from bilby.core.likelihood import ZeroLikelihood
18
18
  from .likelihood import BolometricLightCurve
19
19
  from .model_lbol import SimpleBolometricLightCurveModel
20
20
  from .prior import create_prior_from_args
21
+ from .utils import running_in_ci
21
22
 
22
23
  matplotlib.use("agg")
24
+ matplotlib.rcParams['text.usetex'] = not running_in_ci()
23
25
 
24
26
 
25
27
  def get_parser(**kwargs):
@@ -367,7 +369,6 @@ def analysis(args):
367
369
 
368
370
  matplotlib.rcParams.update(
369
371
  {'font.size': 12,
370
- 'text.usetex': True,
371
372
  'font.family': 'Times New Roman'}
372
373
  )
373
374