jaxspec 0.0.6__tar.gz → 0.0.7__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 (54) hide show
  1. {jaxspec-0.0.6 → jaxspec-0.0.7}/PKG-INFO +11 -8
  2. jaxspec-0.0.7/pyproject.toml +113 -0
  3. {jaxspec-0.0.6 → jaxspec-0.0.7}/src/jaxspec/analysis/results.py +250 -121
  4. {jaxspec-0.0.6 → jaxspec-0.0.7}/src/jaxspec/data/__init__.py +4 -4
  5. {jaxspec-0.0.6 → jaxspec-0.0.7}/src/jaxspec/data/obsconf.py +53 -8
  6. {jaxspec-0.0.6 → jaxspec-0.0.7}/src/jaxspec/data/util.py +29 -20
  7. jaxspec-0.0.7/src/jaxspec/fit.py +595 -0
  8. {jaxspec-0.0.6 → jaxspec-0.0.7}/src/jaxspec/model/_additive/apec.py +56 -117
  9. jaxspec-0.0.7/src/jaxspec/model/_additive/apec_loaders.py +73 -0
  10. {jaxspec-0.0.6 → jaxspec-0.0.7}/src/jaxspec/model/additive.py +27 -13
  11. {jaxspec-0.0.6 → jaxspec-0.0.7}/src/jaxspec/model/background.py +50 -16
  12. {jaxspec-0.0.6 → jaxspec-0.0.7}/src/jaxspec/model/multiplicative.py +20 -25
  13. jaxspec-0.0.7/src/jaxspec/util/__init__.py +45 -0
  14. {jaxspec-0.0.6 → jaxspec-0.0.7}/src/jaxspec/util/abundance.py +5 -3
  15. jaxspec-0.0.7/src/jaxspec/util/online_storage.py +15 -0
  16. jaxspec-0.0.7/src/jaxspec/util/typing.py +43 -0
  17. jaxspec-0.0.6/pyproject.toml +0 -64
  18. jaxspec-0.0.6/src/jaxspec/fit.py +0 -347
  19. jaxspec-0.0.6/src/jaxspec/model/__init__.py +0 -1
  20. jaxspec-0.0.6/src/jaxspec/model/_additive/apec_loaders.py +0 -90
  21. jaxspec-0.0.6/src/jaxspec/tables/abundances.dat +0 -31
  22. jaxspec-0.0.6/src/jaxspec/tables/xsect_phabs_aspl.fits +0 -0
  23. jaxspec-0.0.6/src/jaxspec/tables/xsect_tbabs_wilm.fits +0 -0
  24. jaxspec-0.0.6/src/jaxspec/tables/xsect_wabs_angr.fits +0 -0
  25. {jaxspec-0.0.6 → jaxspec-0.0.7}/LICENSE.md +0 -0
  26. {jaxspec-0.0.6 → jaxspec-0.0.7}/README.md +0 -0
  27. {jaxspec-0.0.6 → jaxspec-0.0.7}/src/jaxspec/__init__.py +0 -0
  28. {jaxspec-0.0.6 → jaxspec-0.0.7}/src/jaxspec/analysis/__init__.py +0 -0
  29. {jaxspec-0.0.6 → jaxspec-0.0.7}/src/jaxspec/analysis/compare.py +0 -0
  30. {jaxspec-0.0.6 → jaxspec-0.0.7}/src/jaxspec/data/example_data/MOS1.arf +0 -0
  31. {jaxspec-0.0.6 → jaxspec-0.0.7}/src/jaxspec/data/example_data/MOS1.pha +0 -0
  32. {jaxspec-0.0.6 → jaxspec-0.0.7}/src/jaxspec/data/example_data/MOS1.rmf +0 -0
  33. {jaxspec-0.0.6 → jaxspec-0.0.7}/src/jaxspec/data/example_data/MOS1_spectrum_grp.fits +0 -0
  34. {jaxspec-0.0.6 → jaxspec-0.0.7}/src/jaxspec/data/example_data/MOS1background_spectrum.fits +0 -0
  35. {jaxspec-0.0.6 → jaxspec-0.0.7}/src/jaxspec/data/example_data/MOS2.arf +0 -0
  36. {jaxspec-0.0.6 → jaxspec-0.0.7}/src/jaxspec/data/example_data/MOS2.pha +0 -0
  37. {jaxspec-0.0.6 → jaxspec-0.0.7}/src/jaxspec/data/example_data/MOS2.rmf +0 -0
  38. {jaxspec-0.0.6 → jaxspec-0.0.7}/src/jaxspec/data/example_data/MOS2_spectrum_grp.fits +0 -0
  39. {jaxspec-0.0.6 → jaxspec-0.0.7}/src/jaxspec/data/example_data/MOS2background_spectrum.fits +0 -0
  40. {jaxspec-0.0.6 → jaxspec-0.0.7}/src/jaxspec/data/example_data/PN.arf +0 -0
  41. {jaxspec-0.0.6 → jaxspec-0.0.7}/src/jaxspec/data/example_data/PN.pha +0 -0
  42. {jaxspec-0.0.6 → jaxspec-0.0.7}/src/jaxspec/data/example_data/PN.rmf +0 -0
  43. {jaxspec-0.0.6 → jaxspec-0.0.7}/src/jaxspec/data/example_data/PN_spectrum_grp20.fits +0 -0
  44. {jaxspec-0.0.6 → jaxspec-0.0.7}/src/jaxspec/data/example_data/PNbackground_spectrum.fits +0 -0
  45. {jaxspec-0.0.6 → jaxspec-0.0.7}/src/jaxspec/data/example_data/fakeit.pha +0 -0
  46. {jaxspec-0.0.6 → jaxspec-0.0.7}/src/jaxspec/data/grouping.py +0 -0
  47. {jaxspec-0.0.6 → jaxspec-0.0.7}/src/jaxspec/data/instrument.py +0 -0
  48. {jaxspec-0.0.6 → jaxspec-0.0.7}/src/jaxspec/data/observation.py +0 -0
  49. {jaxspec-0.0.6 → jaxspec-0.0.7}/src/jaxspec/data/ogip.py +0 -0
  50. {jaxspec-0.0.6/src/jaxspec/model/_additive → jaxspec-0.0.7/src/jaxspec/model}/__init__.py +0 -0
  51. {jaxspec-0.0.6/src/jaxspec/util → jaxspec-0.0.7/src/jaxspec/model/_additive}/__init__.py +0 -0
  52. {jaxspec-0.0.6 → jaxspec-0.0.7}/src/jaxspec/model/abc.py +0 -0
  53. {jaxspec-0.0.6 → jaxspec-0.0.7}/src/jaxspec/model/list.py +0 -0
  54. {jaxspec-0.0.6 → jaxspec-0.0.7}/src/jaxspec/util/integrate.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: jaxspec
3
- Version: 0.0.6
3
+ Version: 0.0.7
4
4
  Summary: jaxspec is a bayesian spectral fitting library for X-ray astronomy.
5
5
  License: MIT
6
6
  Author: sdupourque
@@ -16,18 +16,21 @@ Requires-Dist: chainconsumer (>=1.0.0,<2.0.0)
16
16
  Requires-Dist: cmasher (>=1.6.3,<2.0.0)
17
17
  Requires-Dist: dm-haiku (>=0.0.11,<0.0.13)
18
18
  Requires-Dist: gpjax (>=0.8.0,<0.9.0)
19
- Requires-Dist: jax (>=0.4.23,<0.5.0)
20
- Requires-Dist: jaxlib (>=0.4.23,<0.5.0)
19
+ Requires-Dist: jax (>=0.4.29,<0.5.0)
20
+ Requires-Dist: jaxlib (>=0.4.29,<0.5.0)
21
+ Requires-Dist: jaxns (>=2.5.1,<3.0.0)
21
22
  Requires-Dist: jaxopt (>=0.8.1,<0.9.0)
22
23
  Requires-Dist: matplotlib (>=3.8.0,<4.0.0)
23
- Requires-Dist: mendeleev (>=0.15.0,<0.16.0)
24
- Requires-Dist: mkdocstrings (>=0.24.0,<0.25.0)
24
+ Requires-Dist: mendeleev (>=0.15,<0.17)
25
+ Requires-Dist: mkdocstrings (>=0.24,<0.26)
25
26
  Requires-Dist: networkx (>=3.1,<4.0)
26
27
  Requires-Dist: numpy (>=1.26.1,<2.0.0)
27
- Requires-Dist: numpyro (>=0.13.2,<0.15.0)
28
+ Requires-Dist: numpyro (>=0.15.0,<0.16.0)
29
+ Requires-Dist: optimistix (>=0.0.7,<0.0.8)
28
30
  Requires-Dist: pandas (>=2.2.0,<3.0.0)
29
- Requires-Dist: pyzmq (<26)
30
- Requires-Dist: scipy (<1.13)
31
+ Requires-Dist: pooch (>=1.8.2,<2.0.0)
32
+ Requires-Dist: pyzmq (<27)
33
+ Requires-Dist: scipy (<1.14)
31
34
  Requires-Dist: seaborn (>=0.13.1,<0.14.0)
32
35
  Requires-Dist: simpleeval (>=0.9.13,<0.10.0)
33
36
  Requires-Dist: sparse (>=0.15.1,<0.16.0)
@@ -0,0 +1,113 @@
1
+ [tool.poetry]
2
+ name = "jaxspec"
3
+ version = "0.0.7"
4
+ description = "jaxspec is a bayesian spectral fitting library for X-ray astronomy."
5
+ authors = ["sdupourque <sdupourque@irap.omp.eu>"]
6
+ license = "MIT"
7
+ readme = "README.md"
8
+
9
+ [tool.poetry.dependencies]
10
+ python = ">=3.10,<3.12"
11
+ jax = "^0.4.29"
12
+ jaxlib = "^0.4.29"
13
+ numpy = "^1.26.1"
14
+ pandas = "^2.2.0"
15
+ astropy = "^6.0.0"
16
+ numpyro = "^0.15.0"
17
+ dm-haiku = ">=0.0.11,<0.0.13"
18
+ networkx = "^3.1"
19
+ matplotlib = "^3.8.0"
20
+ arviz = ">=0.17.1,<0.19.0"
21
+ chainconsumer = "^1.0.0"
22
+ simpleeval = "^0.9.13"
23
+ cmasher = "^1.6.3"
24
+ gpjax = "^0.8.0"
25
+ jaxopt = "^0.8.1"
26
+ tinygp = "^0.3.0"
27
+ seaborn = "^0.13.1"
28
+ mkdocstrings = ">=0.24,<0.26"
29
+ sparse = "^0.15.1"
30
+ optimistix = "^0.0.7"
31
+ scipy = "<1.14"
32
+ mendeleev = ">=0.15,<0.17"
33
+ pyzmq = "<27"
34
+ jaxns = "^2.5.1"
35
+ pooch = "^1.8.2"
36
+
37
+
38
+ [tool.poetry.group.docs.dependencies]
39
+ mkdocs = "^1.5.3"
40
+ mkdocs-material = "^9.4.6"
41
+ mkdocstrings = {extras = ["python"], version = ">=0.24,<0.26"}
42
+ mkdocs-jupyter = "^0.24.6"
43
+
44
+
45
+ [tool.poetry.group.test.dependencies]
46
+ chex = "^0.1.83"
47
+ mktestdocs = "^0.2.1"
48
+ coverage = "^7.3.2"
49
+ pytest-cov = ">=4.1,<6.0"
50
+ flake8 = "^7.0.0"
51
+ pytest = "^8.0.0"
52
+ testbook = "^0.4.2"
53
+
54
+
55
+ [tool.poetry.group.dev.dependencies]
56
+ pre-commit = "^3.5.0"
57
+ ruff = ">=0.2.1,<0.5.0"
58
+ jupyterlab = "^4.0.7"
59
+ notebook = "^7.0.6"
60
+ ipywidgets = "^8.1.1"
61
+
62
+ [tool.ruff]
63
+ line-length = 100
64
+ target-version = "py310"
65
+ extend-exclude = ["versioneer.py", "_version.py"]
66
+
67
+ [tool.ruff.lint]
68
+ select = ["D", "E", "F", "I", "UP", "W", "RUF"]
69
+ ignore = [
70
+ "E501",
71
+ "F841", # Local variable name is assigned to but never used
72
+ "RUF001", # String contains ambiguous character (such as Greek letters)
73
+ "RUF002", # Docstring contains ambiguous character (such as Greek letters)
74
+ "RUF012", # Mutable class attributes should be annotated with `typing.ClassVar`
75
+ "D100",
76
+ "D101",
77
+ "D102",
78
+ "D103",
79
+ "D104",
80
+ "D105",
81
+ "D107",
82
+ "D200",
83
+ "D202",
84
+ "D203",
85
+ "D204",
86
+ "D205",
87
+ "D209",
88
+ "D212",
89
+ "D213",
90
+ "D301",
91
+ "D400",
92
+ "D401",
93
+ "D403",
94
+ "D413",
95
+ "D415",
96
+ "D417",
97
+ ]
98
+
99
+ [tool.ruff.lint.pydocstyle]
100
+ convention = "google"
101
+
102
+ [tool.ruff.lint.isort]
103
+ lines-between-types = 1
104
+
105
+ [tool.ruff.lint.extend-per-file-ignores]
106
+ "__init__.py" = [
107
+ "F401", # Module imported but unused
108
+ "F403", # 'from module import *' used; unable to detect undefined names
109
+ ]
110
+
111
+ [build-system]
112
+ requires = ["poetry-core"]
113
+ build-backend = "poetry.core.masonry.api"