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