diffsky 0.1.2__tar.gz → 0.2.1__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 (355) hide show
  1. diffsky-0.2.1/.github/dependabot.yml +10 -0
  2. diffsky-0.1.2/.github/workflows/linting.yml → diffsky-0.2.1/.github/workflows/linting.yaml +6 -6
  3. diffsky-0.1.2/.github/workflows/monthly-warning-test.yml → diffsky-0.2.1/.github/workflows/monthly-warning-test.yaml +12 -6
  4. diffsky-0.1.2/.github/workflows/tests.yml → diffsky-0.2.1/.github/workflows/test_latest_releases.yaml +15 -11
  5. diffsky-0.2.1/.github/workflows/test_main_branch.yaml +91 -0
  6. diffsky-0.1.2/.github/workflows/tests_cron.yml → diffsky-0.2.1/.github/workflows/tests_cron.yaml +14 -7
  7. {diffsky-0.1.2 → diffsky-0.2.1}/.gitignore +3 -0
  8. {diffsky-0.1.2 → diffsky-0.2.1}/.readthedocs.yml +1 -1
  9. diffsky-0.2.1/CHANGES.rst +26 -0
  10. {diffsky-0.1.2/diffsky.egg-info → diffsky-0.2.1}/PKG-INFO +7 -5
  11. {diffsky-0.1.2 → diffsky-0.2.1}/diffsky/__init__.py +2 -2
  12. diffsky-0.2.1/diffsky/_version.py +1 -0
  13. diffsky-0.2.1/diffsky/burstpop/diagnostics/plot_tburstpop.py +115 -0
  14. diffsky-0.2.1/diffsky/burstpop/diagnostics/tests/test_plot_tburstpop.py +16 -0
  15. diffsky-0.2.1/diffsky/burstpop/diffqburstpop_mono.py +107 -0
  16. diffsky-0.2.1/diffsky/burstpop/diffqburstpop_mono_noise.py +136 -0
  17. {diffsky-0.1.2 → diffsky-0.2.1}/diffsky/burstpop/fburstpop.py +10 -0
  18. diffsky-0.2.1/diffsky/burstpop/fburstpop_mono.py +164 -0
  19. {diffsky-0.1.2 → diffsky-0.2.1}/diffsky/burstpop/freqburst_mono.py +20 -12
  20. diffsky-0.2.1/diffsky/burstpop/tests/test_diffqburstpop_mono.py +128 -0
  21. diffsky-0.2.1/diffsky/burstpop/tests/test_diffqburstpop_mono_noise.py +137 -0
  22. {diffsky-0.1.2 → diffsky-0.2.1}/diffsky/burstpop/tests/test_fburstpop.py +36 -3
  23. diffsky-0.2.1/diffsky/burstpop/tests/test_fburstpop_mono.py +200 -0
  24. {diffsky-0.1.2 → diffsky-0.2.1}/diffsky/burstpop/tests/test_freqburst_mono.py +47 -2
  25. diffsky-0.2.1/diffsky/cosmos_utils/cosmos_mstar_model.py +185 -0
  26. diffsky-0.2.1/diffsky/cosmos_utils/tests/test_cosmos_mstar_model.py +36 -0
  27. diffsky-0.2.1/diffsky/data_loaders/__init__.py +5 -0
  28. diffsky-0.2.1/diffsky/data_loaders/cosmos20_loader.py +106 -0
  29. diffsky-0.2.1/diffsky/data_loaders/hacc_utils/__init__.py +7 -0
  30. diffsky-0.2.1/diffsky/data_loaders/hacc_utils/data_validation/tests/test_validate_lc_cores.py +89 -0
  31. diffsky-0.2.1/diffsky/data_loaders/hacc_utils/data_validation/validate_lc_cores.py +104 -0
  32. diffsky-0.2.1/diffsky/data_loaders/hacc_utils/defaults.py +14 -0
  33. diffsky-0.2.1/diffsky/data_loaders/hacc_utils/hacc_core_utils.py +104 -0
  34. diffsky-0.2.1/diffsky/data_loaders/hacc_utils/lc_mock_production.py +162 -0
  35. diffsky-0.2.1/diffsky/data_loaders/hacc_utils/lightcone_utils.py +390 -0
  36. diffsky-0.2.1/diffsky/data_loaders/hacc_utils/load_hacc_cores.py +470 -0
  37. diffsky-0.2.1/diffsky/data_loaders/hacc_utils/load_lc_cf.py +142 -0
  38. diffsky-0.2.1/diffsky/data_loaders/hacc_utils/load_lc_cf_synthetic.py +72 -0
  39. diffsky-0.2.1/diffsky/data_loaders/hacc_utils/load_lc_mock.py +39 -0
  40. diffsky-0.2.1/diffsky/data_loaders/hacc_utils/metadata_sfh_mock.py +125 -0
  41. diffsky-0.2.1/diffsky/data_loaders/hacc_utils/tests/test_defaults.py +9 -0
  42. diffsky-0.2.1/diffsky/data_loaders/hacc_utils/tests/test_hacc_core_utils.py +79 -0
  43. diffsky-0.2.1/diffsky/data_loaders/hacc_utils/tests/test_lc_mock_production.py +35 -0
  44. diffsky-0.2.1/diffsky/data_loaders/hacc_utils/tests/test_lightcone_utils.py +50 -0
  45. diffsky-0.2.1/diffsky/data_loaders/hacc_utils/tests/test_load_hacc_cores.py +131 -0
  46. diffsky-0.2.1/diffsky/data_loaders/hacc_utils/tests/test_load_lc_cf.py +37 -0
  47. diffsky-0.2.1/diffsky/data_loaders/hacc_utils/tests/testing_data/lc_cores-decomposition.txt +1538 -0
  48. diffsky-0.2.1/diffsky/data_loaders/io_utils.py +21 -0
  49. diffsky-0.2.1/diffsky/data_loaders/mpi_utils.py +46 -0
  50. diffsky-0.2.1/diffsky/data_loaders/tests/test_cosmos_loader.py +80 -0
  51. diffsky-0.2.1/diffsky/data_loaders/tests/test_imports.py +7 -0
  52. diffsky-0.2.1/diffsky/data_loaders/tests/testing_data/cosmos20_shasum.dat +1 -0
  53. diffsky-0.2.1/diffsky/data_loaders/um_binary_loader.py +33 -0
  54. diffsky-0.2.1/diffsky/diagnostics/plot_delta_mag_burstiness.py +251 -0
  55. diffsky-0.2.1/diffsky/diagnostics/plot_diffstar_fq.py +121 -0
  56. diffsky-0.2.1/diffsky/diagnostics/tests/test_plot_delta_mag_burstiness.py +14 -0
  57. diffsky-0.2.1/diffsky/diagnostics/tests/test_plot_diffstar_fq.py +14 -0
  58. diffsky-0.2.1/diffsky/diagnostics/utils.py +87 -0
  59. {diffsky-0.1.2 → diffsky-0.2.1}/diffsky/dustpop/avpop_mono.py +16 -0
  60. {diffsky-0.1.2 → diffsky-0.2.1}/diffsky/dustpop/sbl18_dust_kernels.py +3 -3
  61. {diffsky-0.1.2 → diffsky-0.2.1}/diffsky/dustpop/tests/test_avpop_mono.py +33 -0
  62. diffsky-0.2.1/diffsky/dustpop/tests/test_tw_dustpop_mono.py +146 -0
  63. diffsky-0.2.1/diffsky/dustpop/tests/test_tw_dustpop_mono_noise.py +42 -0
  64. {diffsky-0.1.2 → diffsky-0.2.1}/diffsky/dustpop/tw_dust_kernels.py +3 -3
  65. diffsky-0.2.1/diffsky/dustpop/tw_dustpop_mono.py +175 -0
  66. diffsky-0.2.1/diffsky/dustpop/tw_dustpop_mono_noise.py +75 -0
  67. diffsky-0.2.1/diffsky/experimental/lc_phot_kern.py +407 -0
  68. diffsky-0.2.1/diffsky/experimental/mc_diffsky_phot.py +545 -0
  69. diffsky-0.2.1/diffsky/experimental/mc_lightcone_halos.py +1032 -0
  70. diffsky-0.2.1/diffsky/experimental/phot_utils.py +67 -0
  71. {diffsky-0.1.2 → diffsky-0.2.1}/diffsky/experimental/photometry_interpolation.py +7 -2
  72. diffsky-0.2.1/diffsky/experimental/precompute_ssp_phot.py +155 -0
  73. diffsky-0.2.1/diffsky/experimental/scatter.py +80 -0
  74. diffsky-0.2.1/diffsky/experimental/ssp_err_pop.py +147 -0
  75. diffsky-0.2.1/diffsky/experimental/tests/test_lc_phot_kern.py +158 -0
  76. diffsky-0.2.1/diffsky/experimental/tests/test_mc_diffsky_phot.py +61 -0
  77. diffsky-0.2.1/diffsky/experimental/tests/test_mc_lightcone_halos.py +340 -0
  78. {diffsky-0.1.2 → diffsky-0.2.1}/diffsky/experimental/tests/test_photometry_interpolation.py +1 -0
  79. diffsky-0.2.1/diffsky/experimental/tests/test_precompute_ssp_phot.py +43 -0
  80. diffsky-0.2.1/diffsky/experimental/tests/test_scatter.py +94 -0
  81. diffsky-0.2.1/diffsky/experimental/tests/test_ssp_err_pop.py +96 -0
  82. diffsky-0.2.1/diffsky/fake_sats/ellipsoidal_nfw_phase_space.py +39 -0
  83. diffsky-0.2.1/diffsky/fake_sats/ellipsoidal_velocities.py +99 -0
  84. diffsky-0.2.1/diffsky/fake_sats/halo_boundary_functions.py +65 -0
  85. diffsky-0.2.1/diffsky/fake_sats/nfw_config_space.py +174 -0
  86. diffsky-0.2.1/diffsky/fake_sats/rotations3d.py +94 -0
  87. diffsky-0.2.1/diffsky/fake_sats/tests/test_ellipsoidal_nfw_phase_space.py +29 -0
  88. diffsky-0.2.1/diffsky/fake_sats/tests/test_halo_boundary_functions.py +49 -0
  89. diffsky-0.2.1/diffsky/fake_sats/tests/test_mc_ellipticial_velocities.py +19 -0
  90. diffsky-0.2.1/diffsky/fake_sats/tests/test_nfw_config_space.py +30 -0
  91. diffsky-0.2.1/diffsky/fake_sats/tests/test_rotations3d.py +28 -0
  92. diffsky-0.2.1/diffsky/fake_sats/tests/testing_data/halo_mass_ht_test.txt +250 -0
  93. diffsky-0.2.1/diffsky/fake_sats/tests/testing_data/halo_radius_200c_ht_test.txt +250 -0
  94. diffsky-0.2.1/diffsky/fake_sats/tests/testing_data/redshift_ht_test.txt +250 -0
  95. diffsky-0.2.1/diffsky/fake_sats/vector_utilities.py +243 -0
  96. diffsky-0.2.1/diffsky/mass_functions/fitting_utils/calibrations/hacc_core_shmf_params.py +41 -0
  97. diffsky-0.2.1/diffsky/mass_functions/fitting_utils/calibrations/tests/test_hacc_core_shmf_params.py +11 -0
  98. diffsky-0.2.1/diffsky/mass_functions/fitting_utils/diagnostics/hmf_fit_diagnostics.py +42 -0
  99. diffsky-0.2.1/diffsky/mass_functions/fitting_utils/diagnostics/tests/test_hmf_fit_diagnostics.py +26 -0
  100. {diffsky-0.1.2 → diffsky-0.2.1}/diffsky/mass_functions/fitting_utils/fit_hmf_model.py +2 -2
  101. {diffsky-0.1.2 → diffsky-0.2.1}/diffsky/mass_functions/fitting_utils/tests/test_fit_hmf_model.py +3 -5
  102. diffsky-0.2.1/diffsky/mass_functions/hmf_calibrations/__init__.py +4 -0
  103. diffsky-0.2.1/diffsky/mass_functions/hmf_calibrations/smdpl_hmf.py +41 -0
  104. diffsky-0.2.1/diffsky/mass_functions/hmf_calibrations/smdpl_hmf_fitting_helpers.py +46 -0
  105. diffsky-0.2.1/diffsky/mass_functions/hmf_calibrations/smdpl_hmf_subs.py +42 -0
  106. diffsky-0.2.1/diffsky/mass_functions/hmf_calibrations/tests/__init__.py +0 -0
  107. diffsky-0.2.1/diffsky/mass_functions/hmf_calibrations/tests/test_smdpl_hmf.py +49 -0
  108. diffsky-0.2.1/diffsky/mass_functions/hmf_calibrations/tests/testing_data/sfr_catalog_0.219000.subhalos.lgcuml_density.npy +0 -0
  109. diffsky-0.2.1/diffsky/mass_functions/hmf_calibrations/tests/testing_data/sfr_catalog_0.219000.subhalos.logmp_bins.npy +0 -0
  110. diffsky-0.2.1/diffsky/mass_functions/hmf_calibrations/tests/testing_data/sfr_catalog_0.460000.hosthalos.lgcuml_density.npy +0 -0
  111. diffsky-0.2.1/diffsky/mass_functions/hmf_calibrations/tests/testing_data/sfr_catalog_0.460000.hosthalos.logmp_bins.npy +0 -0
  112. diffsky-0.2.1/diffsky/mass_functions/hmf_calibrations/tests/testing_data/sfr_catalog_0.460000.subhalos.lgcuml_density.npy +0 -0
  113. diffsky-0.2.1/diffsky/mass_functions/hmf_calibrations/tests/testing_data/sfr_catalog_0.460000.subhalos.logmp_bins.npy +0 -0
  114. diffsky-0.2.1/diffsky/mass_functions/hmf_calibrations/tests/testing_data/sfr_catalog_1.000000.hosthalos.lgcuml_density.npy +0 -0
  115. diffsky-0.2.1/diffsky/mass_functions/hmf_calibrations/tests/testing_data/sfr_catalog_1.000000.hosthalos.logmp_bins.npy +0 -0
  116. diffsky-0.2.1/diffsky/mass_functions/hmf_calibrations/tests/testing_data/sfr_catalog_1.000000.subhalos.lgcuml_density.npy +0 -0
  117. diffsky-0.2.1/diffsky/mass_functions/hmf_calibrations/tests/testing_data/sfr_catalog_1.000000.subhalos.logmp_bins.npy +0 -0
  118. {diffsky-0.1.2 → diffsky-0.2.1}/diffsky/mass_functions/hmf_model.py +4 -33
  119. diffsky-0.2.1/diffsky/mass_functions/io_utils/__init__.py +0 -0
  120. diffsky-0.2.1/diffsky/mass_functions/kernels/__init__.py +0 -0
  121. diffsky-0.2.1/diffsky/mass_functions/kernels/tests/__init__.py +0 -0
  122. {diffsky-0.1.2 → diffsky-0.2.1}/diffsky/mass_functions/mc_diffmah_tpeak.py +121 -33
  123. {diffsky-0.1.2 → diffsky-0.2.1}/diffsky/mass_functions/mc_hosts.py +19 -8
  124. {diffsky-0.1.2 → diffsky-0.2.1}/diffsky/mass_functions/mc_subs.py +9 -10
  125. diffsky-0.2.1/diffsky/mass_functions/smhm_kernels/__init__.py +0 -0
  126. diffsky-0.2.1/diffsky/mass_functions/smhm_kernels/tests/__init__.py +0 -0
  127. diffsky-0.2.1/diffsky/mass_functions/tests/__init__.py +0 -0
  128. {diffsky-0.1.2 → diffsky-0.2.1}/diffsky/mass_functions/tests/test_hmf_model.py +9 -15
  129. diffsky-0.2.1/diffsky/mass_functions/tests/test_mc_diffmah_tpeak.py +94 -0
  130. {diffsky-0.1.2 → diffsky-0.2.1}/diffsky/mass_functions/tests/test_mc_hosts.py +8 -2
  131. diffsky-0.2.1/diffsky/mass_functions/tests/testing_data/__init__.py +0 -0
  132. diffsky-0.2.1/diffsky/mass_functions/upweighting/__init__.py +0 -0
  133. {diffsky-0.1.2 → diffsky-0.2.1}/diffsky/mass_functions/upweighting/namedtuple_cat_utils.py +1 -1
  134. diffsky-0.2.1/diffsky/mass_functions/upweighting/tests/__init__.py +0 -0
  135. {diffsky-0.1.2 → diffsky-0.2.1}/diffsky/mass_functions/upweighting/tests/test_mc_gen_upweighting.py +3 -3
  136. diffsky-0.2.1/diffsky/mc_diffsky.py +253 -0
  137. diffsky-0.2.1/diffsky/merging/__init__.py +0 -0
  138. diffsky-0.2.1/diffsky/merging/diagnostics/__init__.py +0 -0
  139. diffsky-0.2.1/diffsky/merging/diagnostics/plot_pmerge_vs_time.py +66 -0
  140. diffsky-0.2.1/diffsky/merging/diagnostics/tests/__init__.py +0 -0
  141. diffsky-0.2.1/diffsky/merging/diagnostics/tests/test_plot_pmerge_vs_time.py +14 -0
  142. diffsky-0.2.1/diffsky/merging/fitmerge_multi_redshift.py +486 -0
  143. diffsky-0.2.1/diffsky/merging/merging_model.py +590 -0
  144. diffsky-0.2.1/diffsky/merging/tests/__init__.py +0 -0
  145. diffsky-0.2.1/diffsky/merging/tests/test_fitmerge_multi_redshift.py +247 -0
  146. diffsky-0.2.1/diffsky/merging/tests/test_merging_model.py +293 -0
  147. diffsky-0.2.1/diffsky/param_utils/__init__.py +0 -0
  148. diffsky-0.2.1/diffsky/param_utils/diffsky_param_wrapper.py +309 -0
  149. diffsky-0.2.1/diffsky/param_utils/spspop_param_utils.py +132 -0
  150. diffsky-0.2.1/diffsky/param_utils/tests/__init__.py +0 -0
  151. diffsky-0.2.1/diffsky/param_utils/tests/test_diffsky_param_wrapper.py +94 -0
  152. diffsky-0.2.1/diffsky/param_utils/tests/test_spspop_param_utils.py +41 -0
  153. diffsky-0.2.1/diffsky/phot_utils.py +115 -0
  154. {diffsky-0.1.2 → diffsky-0.2.1}/diffsky/sbl18_photgrad.py +3 -3
  155. diffsky-0.2.1/diffsky/ssp_err_model/__init__.py +0 -0
  156. diffsky-0.2.1/diffsky/ssp_err_model/ssp_err_model.py +580 -0
  157. diffsky-0.2.1/diffsky/ssp_err_model/tests/__init__.py +0 -0
  158. diffsky-0.2.1/diffsky/ssp_err_model/tests/test_ssp_err_model.py +211 -0
  159. diffsky-0.2.1/diffsky/sumstats/__init__.py +0 -0
  160. diffsky-0.2.1/diffsky/sumstats/tests/__init__.py +0 -0
  161. diffsky-0.2.1/diffsky/systematics/__init__.py +0 -0
  162. {diffsky-0.1.2 → diffsky-0.2.1}/diffsky/systematics/ssp_errors.py +12 -17
  163. diffsky-0.2.1/diffsky/systematics/tests/__init__.py +0 -0
  164. {diffsky-0.1.2 → diffsky-0.2.1}/diffsky/systematics/tests/test_ssp_errors.py +4 -4
  165. diffsky-0.2.1/diffsky/tests/__init__.py +0 -0
  166. diffsky-0.2.1/diffsky/tests/test_mc_diffsky.py +55 -0
  167. diffsky-0.2.1/diffsky/tests/test_phot_utils.py +54 -0
  168. diffsky-0.2.1/diffsky/tests/testing_data/__init__.py +0 -0
  169. {diffsky-0.1.2 → diffsky-0.2.1}/diffsky/tw_photgrad.py +3 -3
  170. diffsky-0.2.1/diffsky/utils/__init__.py +7 -0
  171. diffsky-0.2.1/diffsky/utils/crossmatch_utils.py +214 -0
  172. diffsky-0.2.1/diffsky/utils/sfh_utils.py +47 -0
  173. diffsky-0.2.1/diffsky/utils/tests/__init__.py +0 -0
  174. diffsky-0.2.1/diffsky/utils/tests/test_crossmatch_utils.py +132 -0
  175. diffsky-0.2.1/diffsky/utils/tests/test_sfh_utils.py +27 -0
  176. diffsky-0.2.1/diffsky/utils/tests/test_tw_utils.py +29 -0
  177. diffsky-0.1.2/diffsky/tests/test_utils.py → diffsky-0.2.1/diffsky/utils/tests/test_utility_funcs.py +7 -4
  178. {diffsky-0.1.2/diffsky → diffsky-0.2.1/diffsky/utils}/tw_utils.py +22 -9
  179. {diffsky-0.1.2 → diffsky-0.2.1/diffsky.egg-info}/PKG-INFO +7 -5
  180. diffsky-0.2.1/diffsky.egg-info/SOURCES.txt +342 -0
  181. diffsky-0.2.1/diffsky.egg-info/requires.txt +7 -0
  182. {diffsky-0.1.2 → diffsky-0.2.1}/docs/source/demo_diffmahpop_t_peak.ipynb +8 -10
  183. {diffsky-0.1.2 → diffsky-0.2.1}/docs/source/rtd_environment.yaml +4 -3
  184. {diffsky-0.1.2 → diffsky-0.2.1}/pyproject.toml +3 -3
  185. diffsky-0.2.1/requirements.txt +7 -0
  186. diffsky-0.2.1/scripts/JOBS/run_sfh_mock_serial.sh +28 -0
  187. diffsky-0.2.1/scripts/__init__.py +0 -0
  188. diffsky-0.2.1/scripts/inspect_lightcone_mock.py +43 -0
  189. diffsky-0.2.1/scripts/lc_cf_crossmatch_script.py +233 -0
  190. diffsky-0.2.1/scripts/make_diffsky_lj_mock.py +492 -0
  191. diffsky-0.2.1/scripts/make_sfh_lc_mock_lj_serial.py +180 -0
  192. diffsky-0.2.1/scripts/make_sfh_lightcone_last_journey.py +159 -0
  193. diffsky-0.2.1/scripts/make_sfh_lj_mock.py +183 -0
  194. diffsky-0.2.1/scripts/mass_functions/fit_smdpl_hmf_script.py +52 -0
  195. diffsky-0.2.1/scripts/mass_functions/measure_smdpl_hmf_script.py +65 -0
  196. diffsky-0.2.1/scripts/tabulate_coreforest_overlap.py +80 -0
  197. diffsky-0.2.1/scripts/tests/__init__.py +0 -0
  198. diffsky-0.2.1/scripts/tests/test_inspect_lightcone_mock.py +5 -0
  199. diffsky-0.2.1/scripts/tests/test_lc_cf_crossmatch_script.py +5 -0
  200. diffsky-0.2.1/scripts/tests/test_make_sfh_lj_mock.py +5 -0
  201. diffsky-0.2.1/scripts/tests/test_tabulate_coreforest_overlap.py +5 -0
  202. diffsky-0.1.2/CHANGES.rst +0 -13
  203. diffsky-0.1.2/diffsky/_version.py +0 -1
  204. diffsky-0.1.2/diffsky/mass_functions/mc_subhalo_catalog.py +0 -129
  205. diffsky-0.1.2/diffsky/mass_functions/tests/test_mc_diffmah_tpeak.py +0 -26
  206. diffsky-0.1.2/diffsky/mass_functions/tests/test_mc_subhalo_catalog.py +0 -21
  207. diffsky-0.1.2/diffsky/mass_functions/tests/testing_data/smdpl_hmf_cuml_redshift_0.05.txt +0 -48
  208. diffsky-0.1.2/diffsky/mass_functions/tests/testing_data/smdpl_hmf_cuml_redshift_1.00.txt +0 -47
  209. diffsky-0.1.2/diffsky/mass_functions/tests/testing_data/smdpl_hmf_cuml_redshift_2.14.txt +0 -44
  210. diffsky-0.1.2/diffsky/mass_functions/tests/testing_data/smdpl_hmf_cuml_redshift_3.95.txt +0 -45
  211. diffsky-0.1.2/diffsky.egg-info/SOURCES.txt +0 -191
  212. diffsky-0.1.2/diffsky.egg-info/requires.txt +0 -6
  213. diffsky-0.1.2/requirements.txt +0 -6
  214. {diffsky-0.1.2 → diffsky-0.2.1}/.coveragerc +0 -0
  215. {diffsky-0.1.2 → diffsky-0.2.1}/.git_archival.txt +0 -0
  216. {diffsky-0.1.2 → diffsky-0.2.1}/.gitattributes +0 -0
  217. {diffsky-0.1.2 → diffsky-0.2.1}/LICENSE.rst +0 -0
  218. {diffsky-0.1.2 → diffsky-0.2.1}/README.rst +0 -0
  219. {diffsky-0.1.2 → diffsky-0.2.1}/diffsky/burstpop/__init__.py +0 -0
  220. {diffsky-0.1.2 → diffsky-0.2.1}/diffsky/burstpop/diagnostics/__init__.py +0 -0
  221. {diffsky-0.1.2 → diffsky-0.2.1}/diffsky/burstpop/diagnostics/plot_fburstpop.py +0 -0
  222. {diffsky-0.1.2 → diffsky-0.2.1}/diffsky/burstpop/diagnostics/tests/__init__.py +0 -0
  223. {diffsky-0.1.2 → diffsky-0.2.1}/diffsky/burstpop/diagnostics/tests/test_plot_fburstpop.py +0 -0
  224. {diffsky-0.1.2 → diffsky-0.2.1}/diffsky/burstpop/diffburstpop.py +0 -0
  225. {diffsky-0.1.2 → diffsky-0.2.1}/diffsky/burstpop/diffqburstpop.py +0 -0
  226. {diffsky-0.1.2 → diffsky-0.2.1}/diffsky/burstpop/freqburst.py +0 -0
  227. {diffsky-0.1.2 → diffsky-0.2.1}/diffsky/burstpop/tburstpop.py +0 -0
  228. {diffsky-0.1.2 → diffsky-0.2.1}/diffsky/burstpop/tests/__init__.py +0 -0
  229. {diffsky-0.1.2 → diffsky-0.2.1}/diffsky/burstpop/tests/test_diffburstpop.py +0 -0
  230. {diffsky-0.1.2 → diffsky-0.2.1}/diffsky/burstpop/tests/test_diffqburstpop.py +0 -0
  231. {diffsky-0.1.2 → diffsky-0.2.1}/diffsky/burstpop/tests/test_freqburst.py +0 -0
  232. {diffsky-0.1.2 → diffsky-0.2.1}/diffsky/burstpop/tests/test_tburstpop.py +0 -0
  233. {diffsky-0.1.2/diffsky/dustpop/diagnostics → diffsky-0.2.1/diffsky/cosmos_utils}/__init__.py +0 -0
  234. {diffsky-0.1.2/diffsky/dustpop/diagnostics → diffsky-0.2.1/diffsky/cosmos_utils}/tests/__init__.py +0 -0
  235. {diffsky-0.1.2/diffsky/dustpop/tests → diffsky-0.2.1/diffsky/data_loaders/hacc_utils/data_validation}/__init__.py +0 -0
  236. {diffsky-0.1.2/diffsky/experimental → diffsky-0.2.1/diffsky/data_loaders/hacc_utils/data_validation/tests}/__init__.py +0 -0
  237. {diffsky-0.1.2/diffsky/experimental/dspspop → diffsky-0.2.1/diffsky/data_loaders/hacc_utils/tests}/__init__.py +0 -0
  238. {diffsky-0.1.2/diffsky/experimental/dspspop → diffsky-0.2.1/diffsky/data_loaders}/tests/__init__.py +0 -0
  239. {diffsky-0.1.2/diffsky/experimental/tests → diffsky-0.2.1/diffsky/data_loaders/tests/testing_data}/__init__.py +0 -0
  240. {diffsky-0.1.2/diffsky/mass_functions/fitting_utils → diffsky-0.2.1/diffsky/diagnostics}/__init__.py +0 -0
  241. {diffsky-0.1.2/diffsky/mass_functions/fitting_utils → diffsky-0.2.1/diffsky/diagnostics}/tests/__init__.py +0 -0
  242. {diffsky-0.1.2 → diffsky-0.2.1}/diffsky/diffndhist.py +0 -0
  243. {diffsky-0.1.2 → diffsky-0.2.1}/diffsky/dustpop/__init__.py +0 -0
  244. {diffsky-0.1.2 → diffsky-0.2.1}/diffsky/dustpop/avpop.py +0 -0
  245. {diffsky-0.1.2 → diffsky-0.2.1}/diffsky/dustpop/avpop_flex.py +0 -0
  246. {diffsky-0.1.2 → diffsky-0.2.1}/diffsky/dustpop/deltapop.py +0 -0
  247. {diffsky-0.1.2/diffsky/mass_functions/io_utils → diffsky-0.2.1/diffsky/dustpop/diagnostics}/__init__.py +0 -0
  248. {diffsky-0.1.2 → diffsky-0.2.1}/diffsky/dustpop/diagnostics/plot_avpop_flex.py +0 -0
  249. {diffsky-0.1.2 → diffsky-0.2.1}/diffsky/dustpop/diagnostics/plot_funopop_simple.py +0 -0
  250. {diffsky-0.1.2/diffsky/mass_functions/kernels → diffsky-0.2.1/diffsky/dustpop/diagnostics/tests}/__init__.py +0 -0
  251. {diffsky-0.1.2 → diffsky-0.2.1}/diffsky/dustpop/diagnostics/tests/test_plot_avpop_flex.py +0 -0
  252. {diffsky-0.1.2 → diffsky-0.2.1}/diffsky/dustpop/diagnostics/tests/test_plot_funopop_simple.py +0 -0
  253. {diffsky-0.1.2 → diffsky-0.2.1}/diffsky/dustpop/funopop.py +0 -0
  254. {diffsky-0.1.2 → diffsky-0.2.1}/diffsky/dustpop/funopop_simple.py +0 -0
  255. {diffsky-0.1.2 → diffsky-0.2.1}/diffsky/dustpop/funopop_ssfr.py +0 -0
  256. {diffsky-0.1.2 → diffsky-0.2.1}/diffsky/dustpop/sbl18_dust.py +0 -0
  257. {diffsky-0.1.2 → diffsky-0.2.1}/diffsky/dustpop/sbl18_dustpop.py +0 -0
  258. {diffsky-0.1.2/diffsky/mass_functions/kernels → diffsky-0.2.1/diffsky/dustpop}/tests/__init__.py +0 -0
  259. {diffsky-0.1.2 → diffsky-0.2.1}/diffsky/dustpop/tests/test_avpop.py +0 -0
  260. {diffsky-0.1.2 → diffsky-0.2.1}/diffsky/dustpop/tests/test_avpop_flex.py +0 -0
  261. {diffsky-0.1.2 → diffsky-0.2.1}/diffsky/dustpop/tests/test_deltapop.py +0 -0
  262. {diffsky-0.1.2 → diffsky-0.2.1}/diffsky/dustpop/tests/test_funopop_model.py +0 -0
  263. {diffsky-0.1.2 → diffsky-0.2.1}/diffsky/dustpop/tests/test_funopop_simple.py +0 -0
  264. {diffsky-0.1.2 → diffsky-0.2.1}/diffsky/dustpop/tests/test_funopop_ssfr.py +0 -0
  265. {diffsky-0.1.2 → diffsky-0.2.1}/diffsky/dustpop/tests/test_sbl18_dustpop.py +0 -0
  266. {diffsky-0.1.2 → diffsky-0.2.1}/diffsky/dustpop/tests/test_tw_dust_kernels.py +0 -0
  267. {diffsky-0.1.2 → diffsky-0.2.1}/diffsky/dustpop/tests/test_tw_dustpop.py +0 -0
  268. {diffsky-0.1.2 → diffsky-0.2.1}/diffsky/dustpop/tests/test_tw_dustpop_new.py +0 -0
  269. {diffsky-0.1.2 → diffsky-0.2.1}/diffsky/dustpop/tw_dust.py +0 -0
  270. {diffsky-0.1.2 → diffsky-0.2.1}/diffsky/dustpop/tw_dustpop.py +0 -0
  271. {diffsky-0.1.2 → diffsky-0.2.1}/diffsky/dustpop/tw_dustpop_new.py +0 -0
  272. {diffsky-0.1.2/diffsky/mass_functions/smhm_kernels → diffsky-0.2.1/diffsky/experimental}/__init__.py +0 -0
  273. {diffsky-0.1.2/diffsky/mass_functions/smhm_kernels/tests → diffsky-0.2.1/diffsky/experimental/dspspop}/__init__.py +0 -0
  274. {diffsky-0.1.2 → diffsky-0.2.1}/diffsky/experimental/dspspop/boris_dust.py +0 -0
  275. {diffsky-0.1.2 → diffsky-0.2.1}/diffsky/experimental/dspspop/burstshapepop.py +0 -0
  276. {diffsky-0.1.2 → diffsky-0.2.1}/diffsky/experimental/dspspop/dust_deltapop.py +0 -0
  277. {diffsky-0.1.2 → diffsky-0.2.1}/diffsky/experimental/dspspop/dustpop.py +0 -0
  278. {diffsky-0.1.2 → diffsky-0.2.1}/diffsky/experimental/dspspop/lgavpop.py +0 -0
  279. {diffsky-0.1.2 → diffsky-0.2.1}/diffsky/experimental/dspspop/lgfburstpop.py +0 -0
  280. {diffsky-0.1.2 → diffsky-0.2.1}/diffsky/experimental/dspspop/nagaraj22_dust.py +0 -0
  281. {diffsky-0.1.2 → diffsky-0.2.1}/diffsky/experimental/dspspop/photpop.py +0 -0
  282. {diffsky-0.1.2/diffsky/mass_functions → diffsky-0.2.1/diffsky/experimental/dspspop}/tests/__init__.py +0 -0
  283. {diffsky-0.1.2 → diffsky-0.2.1}/diffsky/experimental/dspspop/tests/test_attavpop.py +0 -0
  284. {diffsky-0.1.2 → diffsky-0.2.1}/diffsky/experimental/dspspop/tests/test_boris_dust.py +0 -0
  285. {diffsky-0.1.2 → diffsky-0.2.1}/diffsky/experimental/dspspop/tests/test_burstshapepop.py +0 -0
  286. {diffsky-0.1.2 → diffsky-0.2.1}/diffsky/experimental/dspspop/tests/test_dustdeltapop.py +0 -0
  287. {diffsky-0.1.2 → diffsky-0.2.1}/diffsky/experimental/dspspop/tests/test_lgfburstpop.py +0 -0
  288. {diffsky-0.1.2 → diffsky-0.2.1}/diffsky/experimental/dspspop/tests/test_photpop.py +0 -0
  289. {diffsky-0.1.2/diffsky/mass_functions/tests/testing_data → diffsky-0.2.1/diffsky/experimental/tests}/__init__.py +0 -0
  290. {diffsky-0.1.2/diffsky/mass_functions/upweighting → diffsky-0.2.1/diffsky/fake_sats}/__init__.py +0 -0
  291. {diffsky-0.1.2/diffsky/mass_functions/upweighting → diffsky-0.2.1/diffsky/fake_sats}/tests/__init__.py +0 -0
  292. {diffsky-0.1.2 → diffsky-0.2.1}/diffsky/mass_functions/__init__.py +0 -0
  293. {diffsky-0.1.2 → diffsky-0.2.1}/diffsky/mass_functions/ccshmf_model.py +0 -0
  294. {diffsky-0.1.2 → diffsky-0.2.1}/diffsky/mass_functions/fitting_utils/README.rst +0 -0
  295. {diffsky-0.1.2/diffsky/sumstats → diffsky-0.2.1/diffsky/mass_functions/fitting_utils}/__init__.py +0 -0
  296. {diffsky-0.1.2/diffsky/sumstats/tests → diffsky-0.2.1/diffsky/mass_functions/fitting_utils/calibrations}/__init__.py +0 -0
  297. {diffsky-0.1.2/diffsky/systematics → diffsky-0.2.1/diffsky/mass_functions/fitting_utils/calibrations/tests}/__init__.py +0 -0
  298. {diffsky-0.1.2/diffsky/systematics/tests → diffsky-0.2.1/diffsky/mass_functions/fitting_utils/diagnostics}/__init__.py +0 -0
  299. {diffsky-0.1.2/diffsky → diffsky-0.2.1/diffsky/mass_functions/fitting_utils/diagnostics}/tests/__init__.py +0 -0
  300. {diffsky-0.1.2 → diffsky-0.2.1}/diffsky/mass_functions/fitting_utils/fit_ccshmf.py +0 -0
  301. {diffsky-0.1.2 → diffsky-0.2.1}/diffsky/mass_functions/fitting_utils/fit_ccshmf_kernels.py +0 -0
  302. {diffsky-0.1.2 → diffsky-0.2.1}/diffsky/mass_functions/fitting_utils/fit_hmf_kernels.py +0 -0
  303. {diffsky-0.1.2 → diffsky-0.2.1}/diffsky/mass_functions/fitting_utils/fitting_helpers.py +0 -0
  304. {diffsky-0.1.2/diffsky/tests/testing_data → diffsky-0.2.1/diffsky/mass_functions/fitting_utils/tests}/__init__.py +0 -0
  305. {diffsky-0.1.2 → diffsky-0.2.1}/diffsky/mass_functions/fitting_utils/tests/test_fit_ccshmf.py +0 -0
  306. {diffsky-0.1.2 → diffsky-0.2.1}/diffsky/mass_functions/fitting_utils/tests/test_fit_ccshmf_kernels.py +0 -0
  307. {diffsky-0.1.2 → diffsky-0.2.1}/diffsky/mass_functions/fitting_utils/tests/test_fit_hmf_kernels.py +0 -0
  308. {diffsky-0.1.2 → diffsky-0.2.1}/diffsky/mass_functions/io_utils/README.txt +0 -0
  309. {diffsky-0.1.2 → diffsky-0.2.1}/diffsky/mass_functions/io_utils/loader.py +0 -0
  310. {diffsky-0.1.2 → diffsky-0.2.1}/diffsky/mass_functions/io_utils/smdpl_helpers.py +0 -0
  311. {diffsky-0.1.2 → diffsky-0.2.1}/diffsky/mass_functions/kernels/ccshmf_kernels.py +0 -0
  312. {diffsky-0.1.2 → diffsky-0.2.1}/diffsky/mass_functions/kernels/hmf_kernels.py +0 -0
  313. {diffsky-0.1.2 → diffsky-0.2.1}/diffsky/mass_functions/kernels/tests/test_ccshmf_kernels.py +0 -0
  314. {diffsky-0.1.2 → diffsky-0.2.1}/diffsky/mass_functions/kernels/tests/test_hmf_kernels.py +0 -0
  315. {diffsky-0.1.2 → diffsky-0.2.1}/diffsky/mass_functions/mc_tinfall.py +0 -0
  316. {diffsky-0.1.2 → diffsky-0.2.1}/diffsky/mass_functions/measure_ccshmf.py +0 -0
  317. {diffsky-0.1.2 → diffsky-0.2.1}/diffsky/mass_functions/measure_hmf.py +0 -0
  318. {diffsky-0.1.2 → diffsky-0.2.1}/diffsky/mass_functions/smhm_kernels/tests/test_threeroll_smhm.py +0 -0
  319. {diffsky-0.1.2 → diffsky-0.2.1}/diffsky/mass_functions/smhm_kernels/threeroll_kernels.py +0 -0
  320. {diffsky-0.1.2 → diffsky-0.2.1}/diffsky/mass_functions/smhm_kernels/threeroll_smhm.py +0 -0
  321. {diffsky-0.1.2 → diffsky-0.2.1}/diffsky/mass_functions/tests/test_ccshmf.py +0 -0
  322. {diffsky-0.1.2 → diffsky-0.2.1}/diffsky/mass_functions/tests/test_mc_subs.py +0 -0
  323. {diffsky-0.1.2 → diffsky-0.2.1}/diffsky/mass_functions/tests/test_mc_tinfall.py +0 -0
  324. {diffsky-0.1.2 → diffsky-0.2.1}/diffsky/mass_functions/tests/test_measure_hmf.py +0 -0
  325. {diffsky-0.1.2 → diffsky-0.2.1}/diffsky/mass_functions/tests/testing_data/README.txt +0 -0
  326. {diffsky-0.1.2 → diffsky-0.2.1}/diffsky/mass_functions/tests/testing_data/smdpl_cshmf_cuml_redshift_0.00_lgmhost_12.32.txt +0 -0
  327. {diffsky-0.1.2 → diffsky-0.2.1}/diffsky/mass_functions/tests/testing_data/smdpl_cshmf_cuml_redshift_0.00_lgmhost_13.00.txt +0 -0
  328. {diffsky-0.1.2 → diffsky-0.2.1}/diffsky/mass_functions/tests/testing_data/smdpl_cshmf_cuml_redshift_0.00_lgmhost_13.55.txt +0 -0
  329. {diffsky-0.1.2 → diffsky-0.2.1}/diffsky/mass_functions/tests/testing_data/smdpl_cshmf_cuml_redshift_0.00_lgmhost_14.08.txt +0 -0
  330. {diffsky-0.1.2 → diffsky-0.2.1}/diffsky/mass_functions/tests/testing_data/smdpl_cshmf_cuml_redshift_1.00_lgmhost_12.31.txt +0 -0
  331. {diffsky-0.1.2 → diffsky-0.2.1}/diffsky/mass_functions/tests/testing_data/smdpl_cshmf_cuml_redshift_1.00_lgmhost_12.99.txt +0 -0
  332. {diffsky-0.1.2 → diffsky-0.2.1}/diffsky/mass_functions/tests/testing_data/smdpl_cshmf_cuml_redshift_1.00_lgmhost_13.51.txt +0 -0
  333. {diffsky-0.1.2 → diffsky-0.2.1}/diffsky/mass_functions/tests/testing_data/smdpl_cshmf_cuml_redshift_1.00_lgmhost_14.05.txt +0 -0
  334. {diffsky-0.1.2 → diffsky-0.2.1}/diffsky/mass_functions/upweighting/upweighting.py +0 -0
  335. {diffsky-0.1.2 → diffsky-0.2.1}/diffsky/mass_functions/utils.py +0 -0
  336. {diffsky-0.1.2 → diffsky-0.2.1}/diffsky/sumstats/diffndhist.py +0 -0
  337. {diffsky-0.1.2 → diffsky-0.2.1}/diffsky/sumstats/smhm.py +0 -0
  338. {diffsky-0.1.2 → diffsky-0.2.1}/diffsky/sumstats/tests/test_smhm.py +0 -0
  339. {diffsky-0.1.2 → diffsky-0.2.1}/diffsky/tests/test_dependencies.py +0 -0
  340. {diffsky-0.1.2 → diffsky-0.2.1}/diffsky/tests/test_diffndhist.py +0 -0
  341. {diffsky-0.1.2 → diffsky-0.2.1}/diffsky/tests/test_diffsky_setup.py +0 -0
  342. {diffsky-0.1.2 → diffsky-0.2.1}/diffsky/tests/test_sbl18_photgrad.py +0 -0
  343. {diffsky-0.1.2 → diffsky-0.2.1}/diffsky/tests/test_tw_photgrad.py +0 -0
  344. /diffsky-0.1.2/diffsky/utils.py → /diffsky-0.2.1/diffsky/utils/utility_funcs.py +0 -0
  345. {diffsky-0.1.2 → diffsky-0.2.1}/diffsky.egg-info/dependency_links.txt +0 -0
  346. {diffsky-0.1.2 → diffsky-0.2.1}/diffsky.egg-info/top_level.txt +0 -0
  347. {diffsky-0.1.2 → diffsky-0.2.1}/docs/Makefile +0 -0
  348. {diffsky-0.1.2 → diffsky-0.2.1}/docs/make.bat +0 -0
  349. {diffsky-0.1.2 → diffsky-0.2.1}/docs/source/citation.rst +0 -0
  350. {diffsky-0.1.2 → diffsky-0.2.1}/docs/source/conf.py +0 -0
  351. {diffsky-0.1.2 → diffsky-0.2.1}/docs/source/demos.rst +0 -0
  352. {diffsky-0.1.2 → diffsky-0.2.1}/docs/source/index.rst +0 -0
  353. {diffsky-0.1.2 → diffsky-0.2.1}/docs/source/installation.rst +0 -0
  354. {diffsky-0.1.2 → diffsky-0.2.1}/setup.cfg +0 -0
  355. {diffsky-0.1.2 → diffsky-0.2.1}/setup.py +0 -0
@@ -0,0 +1,10 @@
1
+ version: 2
2
+ updates:
3
+ - package-ecosystem: "github-actions"
4
+ directory: "/"
5
+ schedule:
6
+ interval: "monthly"
7
+ groups:
8
+ github-actions:
9
+ patterns:
10
+ - '*'
@@ -12,25 +12,25 @@ jobs:
12
12
  runs-on: "ubuntu-latest"
13
13
 
14
14
  steps:
15
- - uses: actions/checkout@v2
15
+ - uses: actions/checkout@v4
16
16
 
17
- - uses: conda-incubator/setup-miniconda@v2
17
+ - uses: conda-incubator/setup-miniconda@v3
18
18
  with:
19
19
  python-version: 3.11
20
20
  channels: conda-forge,defaults
21
21
  channel-priority: strict
22
22
  show-channel-urls: true
23
23
  miniforge-version: latest
24
- miniforge-variant: Mambaforge
25
24
 
26
25
  - name: configure conda and install code
27
26
  shell: bash -l {0}
28
27
  run: |
29
- mamba install --quiet \
28
+ conda install --quiet \
30
29
  --file=requirements.txt
31
30
  python -m pip install --no-deps -e .
32
- mamba install -y -q \
33
- flake8
31
+ conda install -y -q \
32
+ flake8 \
33
+ flake8-pyproject
34
34
 
35
35
  - name: lint
36
36
  shell: bash -l {0}
@@ -12,28 +12,32 @@ jobs:
12
12
  runs-on: "ubuntu-latest"
13
13
 
14
14
  steps:
15
- - uses: actions/checkout@v2
15
+ - uses: actions/checkout@v4
16
16
  with:
17
17
  fetch-depth: 0
18
18
 
19
- - uses: conda-incubator/setup-miniconda@v2
19
+ - uses: conda-incubator/setup-miniconda@v3
20
20
  with:
21
21
  python-version: 3.11
22
22
  channels: conda-forge,defaults
23
23
  channel-priority: strict
24
24
  show-channel-urls: true
25
25
  miniforge-version: latest
26
- miniforge-variant: Mambaforge
27
- use-mamba: true
26
+
28
27
 
29
28
  - name: configure conda and install code
30
29
  # Test against current main branch of all diff+ dependencies
31
30
  shell: bash -l {0}
31
+ env:
32
+ GITHUB_TOKEN: ${{ secrets.CPAC_PRIVATE_REPO_TOKEN }}
33
+ GITHUB_USER: ${{ secrets.GH_USR_TESTING_TOKEN }}
34
+
35
+ # Test against current main branch of all diff+ dependencies
32
36
  run: |
33
37
  conda config --set always_yes yes
34
- mamba install --quiet \
38
+ conda install --quiet \
35
39
  --file=requirements.txt
36
- mamba install -y -q \
40
+ conda install -y -q \
37
41
  flake8 \
38
42
  pytest \
39
43
  pytest-xdist \
@@ -42,6 +46,7 @@ jobs:
42
46
  setuptools \
43
47
  "setuptools_scm>=7,<8" \
44
48
  matplotlib \
49
+ astropy \
45
50
  python-build
46
51
  pip uninstall diffmah --yes
47
52
  pip uninstall diffstar --yes
@@ -49,6 +54,7 @@ jobs:
49
54
  pip install --no-deps git+https://github.com/ArgonneCPAC/diffmah.git
50
55
  pip install --no-deps git+https://github.com/ArgonneCPAC/diffstar.git
51
56
  pip install --no-deps git+https://github.com/ArgonneCPAC/dsps.git
57
+ pip install --no-deps git+https://${GITHUB_USER}:${GITHUB_TOKEN}@github.com/ArgonneCPAC/diffstarpop.git@main
52
58
  python -m pip install --no-build-isolation --no-deps -e .
53
59
 
54
60
  - name: test that no warnings are raised
@@ -8,32 +8,35 @@ on:
8
8
 
9
9
  jobs:
10
10
  tests:
11
- name: tests
11
+ name: test-latest-diffstuff-releases
12
12
  runs-on: "ubuntu-latest"
13
13
 
14
14
  steps:
15
- - uses: actions/checkout@v2
15
+ - uses: actions/checkout@v4
16
16
  with:
17
17
  fetch-depth: 0
18
18
 
19
- - uses: conda-incubator/setup-miniconda@v2
19
+ - uses: conda-incubator/setup-miniconda@v3
20
20
  with:
21
21
  python-version: 3.11
22
22
  channels: conda-forge,defaults
23
23
  channel-priority: strict
24
24
  show-channel-urls: true
25
25
  miniforge-version: latest
26
- miniforge-variant: Mambaforge
27
- use-mamba: true
28
26
 
29
27
  - name: configure conda and install code
30
- # Test against conda-forge for all dependencies except use main branch for dsps
28
+ # Test against current main branch of all diff+ dependencies
31
29
  shell: bash -l {0}
30
+ env:
31
+ GITHUB_TOKEN: ${{ secrets.CPAC_PRIVATE_REPO_TOKEN }}
32
+ GITHUB_USER: ${{ secrets.GH_USR_TESTING_TOKEN }}
33
+
34
+ # Test against conda-forge for all dependencies except use main branch for dsps
32
35
  run: |
33
36
  conda config --set always_yes yes
34
- mamba install --quiet \
37
+ conda install --quiet \
35
38
  --file=requirements.txt
36
- mamba install -y -q \
39
+ conda install -y -q \
37
40
  flake8 \
38
41
  pytest \
39
42
  pytest-xdist \
@@ -42,9 +45,8 @@ jobs:
42
45
  setuptools \
43
46
  "setuptools_scm>=7,<8" \
44
47
  matplotlib \
48
+ astropy \
45
49
  python-build
46
- pip uninstall dsps --yes
47
- pip install --no-deps git+https://github.com/ArgonneCPAC/dsps.git
48
50
  python -m pip install --no-build-isolation --no-deps -e .
49
51
 
50
52
  - name: test
@@ -53,7 +55,9 @@ jobs:
53
55
  pytest -v diffsky --cov --cov-report=xml
54
56
 
55
57
  - name: Upload coverage reports to Codecov
56
- uses: codecov/codecov-action@v3
58
+ uses: codecov/codecov-action@v5
59
+ env:
60
+ CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }}
57
61
 
58
62
  - name: test versions
59
63
  shell: bash -el {0}
@@ -0,0 +1,91 @@
1
+ name: test-main-branch-diffstuff
2
+
3
+ on:
4
+ push:
5
+ branches:
6
+ - main
7
+ pull_request: null
8
+
9
+ jobs:
10
+ tests:
11
+ name: test-main-branch-diffstuff
12
+ runs-on: "ubuntu-latest"
13
+
14
+ steps:
15
+ - uses: actions/checkout@v4
16
+ with:
17
+ fetch-depth: 0
18
+
19
+ - uses: conda-incubator/setup-miniconda@v3
20
+ with:
21
+ python-version: 3.11
22
+ channels: conda-forge,defaults
23
+ channel-priority: strict
24
+ show-channel-urls: true
25
+ miniforge-version: latest
26
+
27
+ - name: configure conda and install code
28
+ # Test against current main branch of all diff+ dependencies
29
+ shell: bash -l {0}
30
+ env:
31
+ GITHUB_TOKEN: ${{ secrets.CPAC_PRIVATE_REPO_TOKEN }}
32
+ GITHUB_USER: ${{ secrets.GH_USR_TESTING_TOKEN }}
33
+
34
+ # Test against conda-forge for all dependencies except use main branch for dsps
35
+ run: |
36
+ conda config --set always_yes yes
37
+ conda install --quiet \
38
+ --file=requirements.txt
39
+ conda install -y -q \
40
+ flake8 \
41
+ pytest \
42
+ pytest-xdist \
43
+ pytest-cov \
44
+ pip \
45
+ setuptools \
46
+ "setuptools_scm>=7,<8" \
47
+ matplotlib \
48
+ astropy \
49
+ python-build
50
+ pip uninstall diffmah --yes
51
+ pip uninstall diffstar --yes
52
+ pip uninstall dsps --yes
53
+ pip install --no-deps git+https://github.com/ArgonneCPAC/diffmah.git
54
+ pip install --no-deps git+https://github.com/ArgonneCPAC/diffstar.git
55
+ pip install --no-deps git+https://github.com/ArgonneCPAC/dsps.git
56
+ pip install --no-deps git+https://${GITHUB_USER}:${GITHUB_TOKEN}@github.com/ArgonneCPAC/diffstarpop.git@main
57
+ python -m pip install --no-build-isolation --no-deps -e .
58
+
59
+ - name: test
60
+ shell: bash -l {0}
61
+ run: |
62
+ pytest -v diffsky --cov --cov-report=xml
63
+
64
+ - name: Upload coverage reports to Codecov
65
+ uses: codecov/codecov-action@v5
66
+ env:
67
+ CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }}
68
+
69
+ - name: test versions
70
+ shell: bash -el {0}
71
+ run: |
72
+ pip uninstall diffsky --yes
73
+ [[ $(python setup.py --version) != "0.0.0" ]] || exit 1
74
+
75
+ rm -rf dist/*
76
+ python setup.py sdist
77
+ pip install --no-deps --no-build-isolation dist/*.tar.gz
78
+ pushd ..
79
+ python -c "import diffsky; assert diffsky.__version__ != '0.0.0'"
80
+ popd
81
+ pip uninstall diffsky --yes
82
+
83
+ rm -rf dist/*
84
+ python -m build --sdist . --outdir dist
85
+ pip install --no-deps --no-build-isolation dist/*.tar.gz
86
+ pushd ..
87
+ python -c "import diffsky; assert diffsky.__version__ != '0.0.0'"
88
+ popd
89
+ pip uninstall diffsky --yes
90
+
91
+ python -m pip install -v --no-deps --no-build-isolation -e .
@@ -16,28 +16,31 @@ jobs:
16
16
  runs-on: "ubuntu-latest"
17
17
 
18
18
  steps:
19
- - uses: actions/checkout@v2
19
+ - uses: actions/checkout@v4
20
20
  with:
21
21
  fetch-depth: 0
22
22
 
23
- - uses: conda-incubator/setup-miniconda@v2
23
+ - uses: conda-incubator/setup-miniconda@v3
24
24
  with:
25
25
  python-version: 3.11
26
26
  channels: conda-forge,defaults
27
27
  channel-priority: strict
28
28
  show-channel-urls: true
29
29
  miniforge-version: latest
30
- miniforge-variant: Mambaforge
31
- use-mamba: true
32
30
 
33
31
  - name: configure conda and install code
34
32
  # Test against current main branch of all diff+ dependencies
35
33
  shell: bash -l {0}
34
+ env:
35
+ GITHUB_TOKEN: ${{ secrets.CPAC_PRIVATE_REPO_TOKEN }}
36
+ GITHUB_USER: ${{ secrets.GH_USR_TESTING_TOKEN }}
37
+
38
+ # Test against current main branch of all diff+ dependencies
36
39
  run: |
37
40
  conda config --set always_yes yes
38
- mamba install --quiet \
41
+ conda install --quiet \
39
42
  --file=requirements.txt
40
- mamba install -y -q \
43
+ conda install -y -q \
41
44
  flake8 \
42
45
  pytest \
43
46
  pytest-xdist \
@@ -46,6 +49,7 @@ jobs:
46
49
  setuptools \
47
50
  "setuptools_scm>=7,<8" \
48
51
  matplotlib \
52
+ astropy \
49
53
  python-build
50
54
  pip uninstall diffmah --yes
51
55
  pip uninstall diffstar --yes
@@ -53,6 +57,7 @@ jobs:
53
57
  pip install --no-deps git+https://github.com/ArgonneCPAC/diffmah.git
54
58
  pip install --no-deps git+https://github.com/ArgonneCPAC/diffstar.git
55
59
  pip install --no-deps git+https://github.com/ArgonneCPAC/dsps.git
60
+ pip install --no-deps git+https://${GITHUB_USER}:${GITHUB_TOKEN}@github.com/ArgonneCPAC/diffstarpop.git@main
56
61
  python -m pip install --no-build-isolation --no-deps -e .
57
62
 
58
63
  - name: test
@@ -61,7 +66,9 @@ jobs:
61
66
  pytest -v diffsky --cov --cov-report=xml
62
67
 
63
68
  - name: Upload coverage reports to Codecov
64
- uses: codecov/codecov-action@v3
69
+ uses: codecov/codecov-action@v5
70
+ env:
71
+ CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }}
65
72
 
66
73
  - name: test versions
67
74
  shell: bash -el {0}
@@ -6,6 +6,9 @@ Untitled*.ipynb
6
6
  *.npy
7
7
  *.png
8
8
 
9
+ scripts/*.cfg
10
+ scripts/*.cfg~
11
+
9
12
  .DS_Store
10
13
 
11
14
  # Byte-compiled / optimized / DLL files
@@ -6,7 +6,7 @@ sphinx:
6
6
  build:
7
7
  os: "ubuntu-22.04"
8
8
  tools:
9
- python: "mambaforge-22.9"
9
+ python: "miniconda-latest"
10
10
 
11
11
  conda:
12
12
  environment: docs/source/rtd_environment.yaml
@@ -0,0 +1,26 @@
1
+ 0.2.1 (2025-06-30)
2
+ -------------------
3
+ - Incorporate synthetic lightcone into mock production pipeline (https://github.com/ArgonneCPAC/diffsky/pull/165)
4
+ - Add pipeline to generate lightcone mocks (https://github.com/ArgonneCPAC/diffsky/pull/154)
5
+ - Improve accuracy of young-star contribution stellar age PDF (https://github.com/ArgonneCPAC/diffsky/pull/151)
6
+ - Implement synthetic lightcones to extend resolution limits (https://github.com/ArgonneCPAC/diffsky/pull/143)
7
+
8
+
9
+ 0.2.0 (2025-03-24)
10
+ -------------------
11
+ - Update population-level photometry models of dust and burstiness
12
+
13
+
14
+ 0.1.2 (2024-10-25)
15
+ -------------------
16
+ - Update calls to diffmah v0.6.1 and diffstar v0.3.2
17
+
18
+
19
+ 0.1.1 (2023-10-04)
20
+ -------------------
21
+ - Update calls to dsps v0.3.4
22
+
23
+
24
+ 0.1.0 (2023-10-03)
25
+ -------------------
26
+ - First release. Compatible with diffstar v0.2.1 and dsps v0.3.3.
@@ -1,6 +1,6 @@
1
- Metadata-Version: 2.1
1
+ Metadata-Version: 2.4
2
2
  Name: diffsky
3
- Version: 0.1.2
3
+ Version: 0.2.1
4
4
  Summary: Library for differentiable generation of synthetic skies
5
5
  Author-email: Andrew Hearin <ahearin@anl.gov>
6
6
  License: BSD 3-Clause License
@@ -40,10 +40,12 @@ Description-Content-Type: text/x-rst
40
40
  License-File: LICENSE.rst
41
41
  Requires-Dist: numpy
42
42
  Requires-Dist: jax
43
- Requires-Dist: diffmah>=0.6.1
44
- Requires-Dist: diffstar>=0.3.2
45
- Requires-Dist: dsps
43
+ Requires-Dist: diffmah>=0.7.2
44
+ Requires-Dist: diffstar>=0.3.4
45
+ Requires-Dist: diffstarpop>=0.0.2
46
+ Requires-Dist: dsps>=0.4.5
46
47
  Requires-Dist: h5py
48
+ Dynamic: license-file
47
49
 
48
50
  diffsky
49
51
  ============
@@ -1,7 +1,7 @@
1
- """
2
- """
1
+ """ """
3
2
 
4
3
  # flake8: noqa
5
4
 
6
5
  from ._version import __version__
7
6
  from .mass_functions.mc_diffmah_tpeak import mc_subhalos
7
+ from .utils import tw_utils
@@ -0,0 +1 @@
1
+ __version__ = '0.2.1'
@@ -0,0 +1,115 @@
1
+ """
2
+ """
3
+
4
+ import numpy as np
5
+ from dsps.sfh import diffburst
6
+ from matplotlib import lines as mlines
7
+ from matplotlib import pyplot as plt
8
+
9
+ from .. import tburstpop as tbp
10
+
11
+
12
+ def make_tburstpop_comparison_plot(
13
+ params,
14
+ params2=tbp.DEFAULT_TBURSTPOP_PARAMS,
15
+ fname=None,
16
+ label1=r"${\rm new\ model}$",
17
+ label2=r"${\rm default\ model}$",
18
+ ):
19
+ """Make basic diagnostic plot of the model for Tburst
20
+
21
+ Parameters
22
+ ----------
23
+ params : namedtuple
24
+ Instance of tburstpop.TburstPopParams
25
+
26
+ params2 : namedtuple, optional
27
+ Instance of tburstpop.TburstPopParams
28
+ Default is set by DEFAULT_TBURSTPOP_PARAMS
29
+
30
+ fname : string, optional
31
+ filename of the output figure
32
+
33
+ """
34
+ lgyrarr = np.linspace(5, 9.05, 100)
35
+
36
+ logsmarr = np.array((9.0, 9.0, 12.0, 12.0))
37
+ logssfrarr = np.array((-7.0, -13.0, -7.0, -13.0))
38
+ lgyr_peak, lgyr_max = tbp.get_tburst_params_from_tburstpop_params(
39
+ tbp.DEFAULT_TBURSTPOP_PARAMS, logsmarr, logssfrarr
40
+ )
41
+
42
+ u_params = np.array(tbp.DEFAULT_TBURSTPOP_U_PARAMS) + np.random.uniform(
43
+ -1, 1, len(tbp.DEFAULT_TBURSTPOP_PARAMS)
44
+ )
45
+ u_params = tbp.DEFAULT_TBURSTPOP_U_PARAMS._make(u_params)
46
+ alt_params = tbp.get_bounded_tburstpop_params(u_params)
47
+ lgyr_peak2, lgyr_max2 = tbp.get_tburst_params_from_tburstpop_params(
48
+ alt_params, logsmarr, logssfrarr
49
+ )
50
+
51
+ fig, (ax, ax1) = plt.subplots(1, 2, figsize=(12, 5), sharex=True, sharey=True)
52
+ ax.loglog()
53
+ ax.set_xlim(8e4, 2e9)
54
+ ax.set_ylim(2e-7, 10.5)
55
+ xlabel = ax.set_xlabel(r"$\tau_{\rm age}\ {\rm [yr]}$")
56
+ xlabel = ax1.set_xlabel(r"$\tau_{\rm age}\ {\rm [yr]}$")
57
+ ylabel = ax.set_ylabel(r"${\rm PDF}$")
58
+
59
+ age_weights = diffburst._pureburst_age_weights_from_params(
60
+ lgyrarr, lgyr_peak[0], lgyr_max[0]
61
+ )
62
+ ax.plot(10**lgyrarr, age_weights, color="blue")
63
+ age_weights2 = diffburst._pureburst_age_weights_from_params(
64
+ lgyrarr, lgyr_peak2[0], lgyr_max2[0]
65
+ )
66
+ ax.plot(10**lgyrarr, age_weights2, "--", color="blue")
67
+
68
+ age_weights = diffburst._pureburst_age_weights_from_params(
69
+ lgyrarr, lgyr_peak[1], lgyr_max[1]
70
+ )
71
+ ax.plot(10**lgyrarr, age_weights, color="red")
72
+ age_weights2 = diffburst._pureburst_age_weights_from_params(
73
+ lgyrarr, lgyr_peak2[1], lgyr_max2[1]
74
+ )
75
+ ax.plot(10**lgyrarr, age_weights2, "--", color="red")
76
+
77
+ age_weights = diffburst._pureburst_age_weights_from_params(
78
+ lgyrarr, lgyr_peak[2], lgyr_max[2]
79
+ )
80
+ ax1.plot(10**lgyrarr, age_weights, color="blue")
81
+ age_weights2 = diffburst._pureburst_age_weights_from_params(
82
+ lgyrarr, lgyr_peak2[2], lgyr_max2[2]
83
+ )
84
+ ax1.plot(10**lgyrarr, age_weights2, "--", color="blue")
85
+
86
+ age_weights = diffburst._pureburst_age_weights_from_params(
87
+ lgyrarr, lgyr_peak[3], lgyr_max[3]
88
+ )
89
+ ax1.plot(10**lgyrarr, age_weights, color="red")
90
+ age_weights2 = diffburst._pureburst_age_weights_from_params(
91
+ lgyrarr, lgyr_peak2[3], lgyr_max2[3]
92
+ )
93
+ ax1.plot(10**lgyrarr, age_weights2, "--", color="red")
94
+
95
+ ax.set_title(r"$M_{\star}=10^9M_{\odot}$")
96
+ ax1.set_title(r"$M_{\star}=10^{12}M_{\odot}$")
97
+
98
+ red_line = mlines.Line2D([], [], ls="-", c="red", label=r"${\rm Q}$")
99
+ blue_line = mlines.Line2D([], [], ls="-", c="blue", label=r"${\rm SF}$")
100
+ solid_line = mlines.Line2D(
101
+ [], [], ls="-", c="gray", label=r"${\rm default\ model}$"
102
+ )
103
+ dashed_line = mlines.Line2D([], [], ls="--", c="gray", label=r"${\rm new\ model}$")
104
+ leg0 = ax.legend(handles=[red_line, blue_line], loc="upper left")
105
+ ax.add_artist(leg0)
106
+ ax.legend(handles=[solid_line, dashed_line], loc="upper right")
107
+ leg0 = ax1.legend(handles=[red_line, blue_line], loc="upper left")
108
+ ax1.add_artist(leg0)
109
+ ax1.legend(handles=[solid_line, dashed_line], loc="upper right")
110
+
111
+ if fname is not None:
112
+ fig.savefig(
113
+ fname, bbox_extra_artists=[xlabel, ylabel], bbox_inches="tight", dpi=200
114
+ )
115
+ return fig
@@ -0,0 +1,16 @@
1
+ """
2
+ """
3
+
4
+ import os
5
+
6
+ from ... import tburstpop as tbp
7
+ from ..plot_tburstpop import make_tburstpop_comparison_plot
8
+
9
+ _THIS_DRNAME = os.path.dirname(os.path.abspath(__file__))
10
+
11
+
12
+ def test_make_freqburst_comparison_plot():
13
+ fn = os.path.join(_THIS_DRNAME, "dummy.png")
14
+ make_tburstpop_comparison_plot(tbp.DEFAULT_TBURSTPOP_PARAMS, fname=fn)
15
+ assert os.path.isfile(fn)
16
+ os.remove(fn)
@@ -0,0 +1,107 @@
1
+ """ """
2
+
3
+ from collections import namedtuple
4
+
5
+ from dsps.sfh.diffburst import BurstParams, calc_bursty_age_weights
6
+ from jax import jit as jjit
7
+ from jax import numpy as jnp
8
+
9
+ from .fburstpop_mono import (
10
+ DEFAULT_FBURSTPOP_PARAMS,
11
+ ZEROBURST_FBURSTPOP_PARAMS,
12
+ get_bounded_fburstpop_params,
13
+ get_fburst_from_fburstpop_params,
14
+ get_unbounded_fburstpop_params,
15
+ )
16
+ from .freqburst_mono import (
17
+ DEFAULT_FREQBURST_PARAMS,
18
+ ZEROBURST_FREQBURST_PARAMS,
19
+ get_bounded_freqburst_params,
20
+ get_unbounded_freqburst_params,
21
+ )
22
+ from .tburstpop import (
23
+ DEFAULT_TBURSTPOP_PARAMS,
24
+ get_bounded_tburstpop_params,
25
+ get_tburst_params_from_tburstpop_params,
26
+ get_unbounded_tburstpop_params,
27
+ )
28
+
29
+ DiffburstPopParams = namedtuple(
30
+ "DiffburstPopParams", ["freqburst_params", "fburstpop_params", "tburstpop_params"]
31
+ )
32
+ DEFAULT_DIFFBURSTPOP_PARAMS = DiffburstPopParams(
33
+ DEFAULT_FREQBURST_PARAMS, DEFAULT_FBURSTPOP_PARAMS, DEFAULT_TBURSTPOP_PARAMS
34
+ )
35
+ _BURSTPOP_UPNAMES = [
36
+ key.replace("params", "u_params") for key in DEFAULT_DIFFBURSTPOP_PARAMS._fields
37
+ ]
38
+ DiffburstPopUParams = namedtuple("DiffburstPopUParams", _BURSTPOP_UPNAMES)
39
+
40
+ ZERO_DIFFBURSTPOP_PARAMS = DiffburstPopParams(
41
+ ZEROBURST_FREQBURST_PARAMS, ZEROBURST_FBURSTPOP_PARAMS, DEFAULT_TBURSTPOP_PARAMS
42
+ )
43
+
44
+
45
+ @jjit
46
+ def get_bounded_diffburstpop_params(u_params):
47
+ u_freqburst_params, u_fburstpop_params, u_tburstpop_params = u_params
48
+ bounded_freqburst_params = get_bounded_freqburst_params(u_freqburst_params)
49
+ bounded_tburstpop_params = get_bounded_tburstpop_params(u_tburstpop_params)
50
+ bounded_fburstpop_params = get_bounded_fburstpop_params(u_fburstpop_params)
51
+ diffburstpop_params = DiffburstPopParams(
52
+ bounded_freqburst_params, bounded_fburstpop_params, bounded_tburstpop_params
53
+ )
54
+ return diffburstpop_params
55
+
56
+
57
+ @jjit
58
+ def get_unbounded_diffburstpop_params(params):
59
+ freqburst_params, fburstpop_params, tburstpop_params = params
60
+ unbounded_freqburst_params = get_unbounded_freqburst_params(freqburst_params)
61
+ unbounded_fburstpop_params = get_unbounded_fburstpop_params(fburstpop_params)
62
+ unbounded_tburstpop_params = get_unbounded_tburstpop_params(tburstpop_params)
63
+ diffburstpop_u_params = DiffburstPopUParams(
64
+ unbounded_freqburst_params,
65
+ unbounded_fburstpop_params,
66
+ unbounded_tburstpop_params,
67
+ )
68
+ return diffburstpop_u_params
69
+
70
+
71
+ @jjit
72
+ def calc_bursty_age_weights_from_diffburstpop_params(
73
+ diffburstpop_params, logsm, logssfr, ssp_lg_age_gyr, smooth_age_weights
74
+ ):
75
+ f_burst = get_fburst_from_fburstpop_params(
76
+ diffburstpop_params.fburstpop_params, logsm, logssfr
77
+ )
78
+ lgfburst = jnp.log10(f_burst)
79
+
80
+ tburst_params = get_tburst_params_from_tburstpop_params(
81
+ diffburstpop_params.tburstpop_params, logsm, logssfr
82
+ )
83
+ lgyr_peak, lgyr_max = tburst_params
84
+ burst_params = BurstParams(lgfburst, lgyr_peak, lgyr_max)
85
+
86
+ age_weights = calc_bursty_age_weights(
87
+ burst_params, smooth_age_weights, ssp_lg_age_gyr
88
+ )
89
+
90
+ return age_weights, burst_params
91
+
92
+
93
+ def calc_bursty_age_weights_from_diffburstpop_u_params(
94
+ diffburstpop_u_params, logsm, logssfr, ssp_lg_age_gyr, smooth_age_weights
95
+ ):
96
+ diffburstpop_params = get_bounded_diffburstpop_params(diffburstpop_u_params)
97
+ args = diffburstpop_params, logsm, logssfr, ssp_lg_age_gyr, smooth_age_weights
98
+ age_weights, burst_params = calc_bursty_age_weights_from_diffburstpop_params(*args)
99
+ return age_weights, burst_params
100
+
101
+
102
+ DEFAULT_DIFFBURSTPOP_U_PARAMS = DiffburstPopUParams(
103
+ *get_unbounded_diffburstpop_params(DEFAULT_DIFFBURSTPOP_PARAMS)
104
+ )
105
+ ZERO_DIFFBURSTPOP_U_PARAMS = get_unbounded_diffburstpop_params(
106
+ DEFAULT_DIFFBURSTPOP_PARAMS
107
+ )