diskmelts 2.2.2__tar.gz → 2.3.0__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.
- {diskmelts-2.2.2/src/diskmelts.egg-info → diskmelts-2.3.0}/PKG-INFO +19 -4
- {diskmelts-2.2.2 → diskmelts-2.3.0}/README.md +17 -3
- {diskmelts-2.2.2 → diskmelts-2.3.0}/pyproject.toml +3 -1
- {diskmelts-2.2.2 → diskmelts-2.3.0}/src/diskmelts/__init__.py +5 -3
- {diskmelts-2.2.2 → diskmelts-2.3.0}/src/diskmelts/fitting.py +344 -131
- diskmelts-2.3.0/src/diskmelts/models/Trained_model/sigma0/13C12CH2_single_v2/net_13C12CH2_forward.pt +0 -0
- diskmelts-2.3.0/src/diskmelts/models/Trained_model/sigma0/13CO2_single_v2/net_13CO2_forward.pt +0 -0
- diskmelts-2.3.0/src/diskmelts/models/Trained_model/sigma0/C2H2_wavelength_bank_v2/net_C2H2_w11p5to17.pt +0 -0
- diskmelts-2.3.0/src/diskmelts/models/Trained_model/sigma0/C2H4_single_v2/net_C2H4_forward.pt +0 -0
- diskmelts-2.3.0/src/diskmelts/models/Trained_model/sigma0/C2H6_single_v2/net_C2H6_forward.pt +0 -0
- diskmelts-2.3.0/src/diskmelts/models/Trained_model/sigma0/C2HD_single_v2/net_C2HD_forward.pt +0 -0
- diskmelts-2.3.0/src/diskmelts/models/Trained_model/sigma0/C4H2_single_v2/net_C4H2_forward.pt +0 -0
- diskmelts-2.3.0/src/diskmelts/models/Trained_model/sigma0/CH4_single_v2/net_CH4_forward.pt +0 -0
- diskmelts-2.3.0/src/diskmelts/models/Trained_model/sigma0/CO17O_single_v2/net_CO17O_forward.pt +0 -0
- diskmelts-2.3.0/src/diskmelts/models/Trained_model/sigma0/CO18O_single_v2/net_CO18O_forward.pt +0 -0
- diskmelts-2.3.0/src/diskmelts/models/Trained_model/sigma0/CO2_single_v2/net_CO2_forward.pt +0 -0
- diskmelts-2.3.0/src/diskmelts/models/Trained_model/sigma0/HC3N_single_v2/net_HC3N_forward.pt +0 -0
- diskmelts-2.3.0/src/diskmelts/models/Trained_model/sigma0/HCN_single_v2/net_HCN_forward.pt +0 -0
- diskmelts-2.3.0/src/diskmelts/models/Trained_model/sigma2/13C12CH2_single_v2/net_13C12CH2_forward.pt +0 -0
- diskmelts-2.3.0/src/diskmelts/models/Trained_model/sigma2/13CO2_single_v2/net_13CO2_forward.pt +0 -0
- diskmelts-2.3.0/src/diskmelts/models/Trained_model/sigma2/C2H2_wavelength_bank_v2/net_C2H2_w11p5to17.pt +0 -0
- diskmelts-2.3.0/src/diskmelts/models/Trained_model/sigma2/C2H4_single_v2/net_C2H4_forward.pt +0 -0
- diskmelts-2.3.0/src/diskmelts/models/Trained_model/sigma2/C2H6_single_v2/net_C2H6_forward.pt +0 -0
- diskmelts-2.3.0/src/diskmelts/models/Trained_model/sigma2/C2HD_single_v2/net_C2HD_forward.pt +0 -0
- diskmelts-2.3.0/src/diskmelts/models/Trained_model/sigma2/C4H2_single_v2/net_C4H2_forward.pt +0 -0
- diskmelts-2.3.0/src/diskmelts/models/Trained_model/sigma2/CH4_single_v2/net_CH4_forward.pt +0 -0
- diskmelts-2.3.0/src/diskmelts/models/Trained_model/sigma2/CO17O_single_v2/net_CO17O_forward.pt +0 -0
- diskmelts-2.3.0/src/diskmelts/models/Trained_model/sigma2/CO18O_single_v2/net_CO18O_forward.pt +0 -0
- diskmelts-2.3.0/src/diskmelts/models/Trained_model/sigma2/CO2_single_v2/net_CO2_forward.pt +0 -0
- diskmelts-2.3.0/src/diskmelts/models/Trained_model/sigma2/HC3N_single_v2/net_HC3N_forward.pt +0 -0
- diskmelts-2.3.0/src/diskmelts/models/Trained_model/sigma2/HCN_single_v2/net_HCN_forward.pt +0 -0
- {diskmelts-2.2.2 → diskmelts-2.3.0}/src/diskmelts/plotting.py +39 -23
- {diskmelts-2.2.2 → diskmelts-2.3.0}/src/diskmelts/trainmodel.py +12 -4
- diskmelts-2.3.0/src/diskmelts/uncertainty.py +314 -0
- {diskmelts-2.2.2 → diskmelts-2.3.0}/src/diskmelts/v2_fitting.py +140 -74
- {diskmelts-2.2.2 → diskmelts-2.3.0}/src/diskmelts/v2_grid_fitting.py +170 -114
- {diskmelts-2.2.2 → diskmelts-2.3.0}/src/diskmelts/v2_paper_comparison.py +8 -2
- {diskmelts-2.2.2 → diskmelts-2.3.0}/src/diskmelts/v2_read_plot.py +37 -24
- {diskmelts-2.2.2 → diskmelts-2.3.0}/src/diskmelts/validation.py +28 -24
- {diskmelts-2.2.2 → diskmelts-2.3.0/src/diskmelts.egg-info}/PKG-INFO +19 -4
- {diskmelts-2.2.2 → diskmelts-2.3.0}/src/diskmelts.egg-info/SOURCES.txt +1 -0
- {diskmelts-2.2.2 → diskmelts-2.3.0}/src/diskmelts.egg-info/requires.txt +1 -0
- diskmelts-2.2.2/src/diskmelts/models/Trained_model/sigma0/13C12CH2_single_v2/net_13C12CH2_forward.pt +0 -0
- diskmelts-2.2.2/src/diskmelts/models/Trained_model/sigma0/13CO2_single_v2/net_13CO2_forward.pt +0 -0
- diskmelts-2.2.2/src/diskmelts/models/Trained_model/sigma0/C2H2_wavelength_bank_v2/net_C2H2_w11p5to17.pt +0 -0
- diskmelts-2.2.2/src/diskmelts/models/Trained_model/sigma0/C2H4_single_v2/net_C2H4_forward.pt +0 -0
- diskmelts-2.2.2/src/diskmelts/models/Trained_model/sigma0/C2H6_single_v2/net_C2H6_forward.pt +0 -0
- diskmelts-2.2.2/src/diskmelts/models/Trained_model/sigma0/C2HD_single_v2/net_C2HD_forward.pt +0 -0
- diskmelts-2.2.2/src/diskmelts/models/Trained_model/sigma0/C4H2_single_v2/net_C4H2_forward.pt +0 -0
- diskmelts-2.2.2/src/diskmelts/models/Trained_model/sigma0/CH4_single_v2/net_CH4_forward.pt +0 -0
- diskmelts-2.2.2/src/diskmelts/models/Trained_model/sigma0/CO17O_single_v2/net_CO17O_forward.pt +0 -0
- diskmelts-2.2.2/src/diskmelts/models/Trained_model/sigma0/CO18O_single_v2/net_CO18O_forward.pt +0 -0
- diskmelts-2.2.2/src/diskmelts/models/Trained_model/sigma0/CO2_single_v2/net_CO2_forward.pt +0 -0
- diskmelts-2.2.2/src/diskmelts/models/Trained_model/sigma0/HC3N_single_v2/net_HC3N_forward.pt +0 -0
- diskmelts-2.2.2/src/diskmelts/models/Trained_model/sigma0/HCN_single_v2/net_HCN_forward.pt +0 -0
- diskmelts-2.2.2/src/diskmelts/models/Trained_model/sigma2/13C12CH2_single_v2/net_13C12CH2_forward.pt +0 -0
- diskmelts-2.2.2/src/diskmelts/models/Trained_model/sigma2/13CO2_single_v2/net_13CO2_forward.pt +0 -0
- diskmelts-2.2.2/src/diskmelts/models/Trained_model/sigma2/C2H2_wavelength_bank_v2/net_C2H2_w11p5to17.pt +0 -0
- diskmelts-2.2.2/src/diskmelts/models/Trained_model/sigma2/C2H4_single_v2/net_C2H4_forward.pt +0 -0
- diskmelts-2.2.2/src/diskmelts/models/Trained_model/sigma2/C2H6_single_v2/net_C2H6_forward.pt +0 -0
- diskmelts-2.2.2/src/diskmelts/models/Trained_model/sigma2/C2HD_single_v2/net_C2HD_forward.pt +0 -0
- diskmelts-2.2.2/src/diskmelts/models/Trained_model/sigma2/C4H2_single_v2/net_C4H2_forward.pt +0 -0
- diskmelts-2.2.2/src/diskmelts/models/Trained_model/sigma2/CH4_single_v2/net_CH4_forward.pt +0 -0
- diskmelts-2.2.2/src/diskmelts/models/Trained_model/sigma2/CO17O_single_v2/net_CO17O_forward.pt +0 -0
- diskmelts-2.2.2/src/diskmelts/models/Trained_model/sigma2/CO18O_single_v2/net_CO18O_forward.pt +0 -0
- diskmelts-2.2.2/src/diskmelts/models/Trained_model/sigma2/CO2_single_v2/net_CO2_forward.pt +0 -0
- diskmelts-2.2.2/src/diskmelts/models/Trained_model/sigma2/HC3N_single_v2/net_HC3N_forward.pt +0 -0
- diskmelts-2.2.2/src/diskmelts/models/Trained_model/sigma2/HCN_single_v2/net_HCN_forward.pt +0 -0
- {diskmelts-2.2.2 → diskmelts-2.3.0}/LICENSE +0 -0
- {diskmelts-2.2.2 → diskmelts-2.3.0}/MANIFEST.in +0 -0
- {diskmelts-2.2.2 → diskmelts-2.3.0}/setup.cfg +0 -0
- {diskmelts-2.2.2 → diskmelts-2.3.0}/src/diskmelts/consub/__init__.py +0 -0
- {diskmelts-2.2.2 → diskmelts-2.3.0}/src/diskmelts/consub/_api.py +0 -0
- {diskmelts-2.2.2 → diskmelts-2.3.0}/src/diskmelts/consub/_core.py +0 -0
- {diskmelts-2.2.2 → diskmelts-2.3.0}/src/diskmelts/consub/cont_ranges.csv +0 -0
- {diskmelts-2.2.2 → diskmelts-2.3.0}/src/diskmelts/consub/cont_ranges_PPan.csv +0 -0
- {diskmelts-2.2.2 → diskmelts-2.3.0}/src/diskmelts/consub/regions/carbon_extended.csv +0 -0
- {diskmelts-2.2.2 → diskmelts-2.3.0}/src/diskmelts/consub/regions/carbon_extended.json +0 -0
- {diskmelts-2.2.2 → diskmelts-2.3.0}/src/diskmelts/consub/regions/carbon_rich.csv +0 -0
- {diskmelts-2.2.2 → diskmelts-2.3.0}/src/diskmelts/consub/regions/carbon_rich.json +0 -0
- {diskmelts-2.2.2 → diskmelts-2.3.0}/src/diskmelts/consub/regions/ttauri.csv +0 -0
- {diskmelts-2.2.2 → diskmelts-2.3.0}/src/diskmelts/consub/regions/ttauri.json +0 -0
- {diskmelts-2.2.2 → diskmelts-2.3.0}/src/diskmelts/consub/regions/water.csv +0 -0
- {diskmelts-2.2.2 → diskmelts-2.3.0}/src/diskmelts/consub/regions/water.json +0 -0
- {diskmelts-2.2.2 → diskmelts-2.3.0}/src/diskmelts/models/Trained_model/sigma0/C2H2_wavelength_bank_v2/C2H2_model_bank.json +0 -0
- {diskmelts-2.2.2 → diskmelts-2.3.0}/src/diskmelts/models/Trained_model/sigma0/C2H2_wavelength_bank_v2/net_C2H2_w6to9.pt +0 -0
- {diskmelts-2.2.2 → diskmelts-2.3.0}/src/diskmelts/models/Trained_model/sigma0/C3H4_single_v2/net_C3H4_forward.pt +0 -0
- {diskmelts-2.2.2 → diskmelts-2.3.0}/src/diskmelts/models/Trained_model/sigma0/C6H6_single_v2/net_C6H6_forward.pt +0 -0
- {diskmelts-2.2.2 → diskmelts-2.3.0}/src/diskmelts/models/Trained_model/sigma0/CH3_single_v2/net_CH3_forward.pt +0 -0
- {diskmelts-2.2.2 → diskmelts-2.3.0}/src/diskmelts/models/Trained_model/sigma0/H2O_wavelength_bank_v2_fixed/H2O_model_bank.json +0 -0
- {diskmelts-2.2.2 → diskmelts-2.3.0}/src/diskmelts/models/Trained_model/sigma0/H2O_wavelength_bank_v2_fixed/net_H2O_w13p5to19p2_n13to19_t100to1400.pt +0 -0
- {diskmelts-2.2.2 → diskmelts-2.3.0}/src/diskmelts/models/Trained_model/sigma0/H2O_wavelength_bank_v2_fixed/net_H2O_w19to25_n13to19_t100to1400.pt +0 -0
- {diskmelts-2.2.2 → diskmelts-2.3.0}/src/diskmelts/models/Trained_model/sigma0/H2O_wavelength_bank_v2_fixed/net_H2O_w4p9to7p4_n13to19_t100to1400.pt +0 -0
- {diskmelts-2.2.2 → diskmelts-2.3.0}/src/diskmelts/models/Trained_model/sigma0/H2O_wavelength_bank_v2_fixed/net_H2O_w7p2to11p2_n13to19_t100to1400.pt +0 -0
- {diskmelts-2.2.2 → diskmelts-2.3.0}/src/diskmelts/models/Trained_model/sigma0/H2O_wavelength_bank_v2_fixed/net_H2O_w9p9to15p1_n13to19_t100to1400.pt +0 -0
- {diskmelts-2.2.2 → diskmelts-2.3.0}/src/diskmelts/models/Trained_model/sigma0/OH_single_v2/net_OH_forward.pt +0 -0
- {diskmelts-2.2.2 → diskmelts-2.3.0}/src/diskmelts/models/Trained_model/sigma2/C2H2_wavelength_bank_v2/C2H2_model_bank.json +0 -0
- {diskmelts-2.2.2 → diskmelts-2.3.0}/src/diskmelts/models/Trained_model/sigma2/C2H2_wavelength_bank_v2/net_C2H2_w6to9.pt +0 -0
- {diskmelts-2.2.2 → diskmelts-2.3.0}/src/diskmelts/models/Trained_model/sigma2/C3H4_single_v2/net_C3H4_forward.pt +0 -0
- {diskmelts-2.2.2 → diskmelts-2.3.0}/src/diskmelts/models/Trained_model/sigma2/C6H6_single_v2/net_C6H6_forward.pt +0 -0
- {diskmelts-2.2.2 → diskmelts-2.3.0}/src/diskmelts/models/Trained_model/sigma2/CH3_single_v2/net_CH3_forward.pt +0 -0
- {diskmelts-2.2.2 → diskmelts-2.3.0}/src/diskmelts/models/Trained_model/sigma2/H2O_wavelength_bank_v2_fixed/H2O_model_bank.json +0 -0
- {diskmelts-2.2.2 → diskmelts-2.3.0}/src/diskmelts/models/Trained_model/sigma2/H2O_wavelength_bank_v2_fixed/net_H2O_w13p5to19p2_n13to19_t100to1400.pt +0 -0
- {diskmelts-2.2.2 → diskmelts-2.3.0}/src/diskmelts/models/Trained_model/sigma2/H2O_wavelength_bank_v2_fixed/net_H2O_w19to25_n13to19_t100to1400.pt +0 -0
- {diskmelts-2.2.2 → diskmelts-2.3.0}/src/diskmelts/models/Trained_model/sigma2/H2O_wavelength_bank_v2_fixed/net_H2O_w4p9to7p4_n13to19_t100to1400.pt +0 -0
- {diskmelts-2.2.2 → diskmelts-2.3.0}/src/diskmelts/models/Trained_model/sigma2/H2O_wavelength_bank_v2_fixed/net_H2O_w7p2to11p2_n13to19_t100to1400.pt +0 -0
- {diskmelts-2.2.2 → diskmelts-2.3.0}/src/diskmelts/models/Trained_model/sigma2/H2O_wavelength_bank_v2_fixed/net_H2O_w9p9to15p1_n13to19_t100to1400.pt +0 -0
- {diskmelts-2.2.2 → diskmelts-2.3.0}/src/diskmelts/models/Trained_model/sigma2/OH_single_v2/net_OH_forward.pt +0 -0
- {diskmelts-2.2.2 → diskmelts-2.3.0}/src/diskmelts.egg-info/dependency_links.txt +0 -0
- {diskmelts-2.2.2 → diskmelts-2.3.0}/src/diskmelts.egg-info/top_level.txt +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: diskmelts
|
|
3
|
-
Version: 2.
|
|
3
|
+
Version: 2.3.0
|
|
4
4
|
Summary: Machine-learning Enabled Line fitting Tool for Spectra of protoplanetary disks
|
|
5
5
|
Author: Chengyan Xie, Dingshan Deng
|
|
6
6
|
License-Expression: MIT
|
|
@@ -22,6 +22,7 @@ Requires-Dist: pandas
|
|
|
22
22
|
Requires-Dist: scipy
|
|
23
23
|
Requires-Dist: scikit-learn>=1.0
|
|
24
24
|
Requires-Dist: matplotlib
|
|
25
|
+
Requires-Dist: emcee>=3
|
|
25
26
|
Provides-Extra: io
|
|
26
27
|
Requires-Dist: astropy; extra == "io"
|
|
27
28
|
Provides-Extra: dev
|
|
@@ -107,9 +108,11 @@ fit = fit_stage(
|
|
|
107
108
|
wave, flux, molecule="C2H2", pretrained=models,
|
|
108
109
|
wavelength_range=(13.0, 15.0), fit_ranges=(13.5, 14.1),
|
|
109
110
|
distance_pc=140.0, n_samples=1024, n_refine=4, n_top=4,
|
|
111
|
+
n_mcmc=20000, # quick look; omit for the converged default (~1 min)
|
|
112
|
+
# errorbars=False, # skip the MCMC error bars and return the best fit only
|
|
110
113
|
)
|
|
111
114
|
|
|
112
|
-
# 3. Best
|
|
115
|
+
# 3. Best fit, then posterior medians and 16-84% error bars (from MCMC).
|
|
113
116
|
print(fit["params"]["C2H2"])
|
|
114
117
|
print(fit["uncertainty"]["C2H2"])
|
|
115
118
|
```
|
|
@@ -128,6 +131,7 @@ covers multi-stage fits, saved outputs, and plots.
|
|
|
128
131
|
| `scipy` | L-BFGS-B optimizer, NNLS, Sobol sampling |
|
|
129
132
|
| `scikit-learn` | PCA and scaling when training new models |
|
|
130
133
|
| `matplotlib` | Plotting |
|
|
134
|
+
| `emcee` | MCMC sampling of parameter error bars |
|
|
131
135
|
|
|
132
136
|
## Continuum subtraction
|
|
133
137
|
|
|
@@ -227,6 +231,14 @@ makes the returned emitting area physical. `fit_observation` accepts either a
|
|
|
227
231
|
CSV path or in-memory `obs_wav`, `obs_flux`, and optional `obs_err` arrays
|
|
228
232
|
(new in 2.2.1).
|
|
229
233
|
|
|
234
|
+
Every fit returns its best fit and, by default, error bars from MCMC sampling
|
|
235
|
+
of the posterior with [emcee](https://emcee.readthedocs.io/). Reported values
|
|
236
|
+
are posterior medians with 16–84% error bars; the noise level accounts for
|
|
237
|
+
correlated pixels and model mismatch, and a `*` marks a range that reaches a
|
|
238
|
+
fit bound. Sampling takes about a minute per stage. Pass `errorbars=False`
|
|
239
|
+
for best fits only. See
|
|
240
|
+
[What the uncertainties mean](https://diskmelts.readthedocs.io/en/latest/quickstart.html#uncertainties).
|
|
241
|
+
|
|
230
242
|
For a synthetic spectrum, `wave, flux = diskmelts.synthesize_spectrum('HCN',
|
|
231
243
|
T=300, logN=18, A=1)` returns the native wavelength axis and model flux (new
|
|
232
244
|
in 2.2.1). See the
|
|
@@ -270,8 +282,11 @@ assumes 2 km/s turbulent broadening. Select sigma=2 with `load_fitting_models(..
|
|
|
270
282
|
| OH | 15–26 | 100–1400 | 13–19.5 |
|
|
271
283
|
|
|
272
284
|
`diskmelts.MODEL_SPECS` records the exact domains, PCA sizes, and network
|
|
273
|
-
layers. Version 2.
|
|
274
|
-
|
|
285
|
+
layers. Version 2.3.0 retrains 26 of these checkpoints (13C12CH2, 13CO2,
|
|
286
|
+
C2H2 11.5–17 µm, C2H4, C2H6, C2HD, C4H2, CH4, CO17O, CO18O, CO2, HC3N, and HCN at
|
|
287
|
+
both sigmas) with lower held-out error; see the
|
|
288
|
+
[changelog](https://diskmelts.readthedocs.io/en/latest/changelog.html).
|
|
289
|
+
Upgrade with `python -m pip install -U diskmelts`.
|
|
275
290
|
|
|
276
291
|
## Training and validation data
|
|
277
292
|
|
|
@@ -68,9 +68,11 @@ fit = fit_stage(
|
|
|
68
68
|
wave, flux, molecule="C2H2", pretrained=models,
|
|
69
69
|
wavelength_range=(13.0, 15.0), fit_ranges=(13.5, 14.1),
|
|
70
70
|
distance_pc=140.0, n_samples=1024, n_refine=4, n_top=4,
|
|
71
|
+
n_mcmc=20000, # quick look; omit for the converged default (~1 min)
|
|
72
|
+
# errorbars=False, # skip the MCMC error bars and return the best fit only
|
|
71
73
|
)
|
|
72
74
|
|
|
73
|
-
# 3. Best
|
|
75
|
+
# 3. Best fit, then posterior medians and 16-84% error bars (from MCMC).
|
|
74
76
|
print(fit["params"]["C2H2"])
|
|
75
77
|
print(fit["uncertainty"]["C2H2"])
|
|
76
78
|
```
|
|
@@ -89,6 +91,7 @@ covers multi-stage fits, saved outputs, and plots.
|
|
|
89
91
|
| `scipy` | L-BFGS-B optimizer, NNLS, Sobol sampling |
|
|
90
92
|
| `scikit-learn` | PCA and scaling when training new models |
|
|
91
93
|
| `matplotlib` | Plotting |
|
|
94
|
+
| `emcee` | MCMC sampling of parameter error bars |
|
|
92
95
|
|
|
93
96
|
## Continuum subtraction
|
|
94
97
|
|
|
@@ -188,6 +191,14 @@ makes the returned emitting area physical. `fit_observation` accepts either a
|
|
|
188
191
|
CSV path or in-memory `obs_wav`, `obs_flux`, and optional `obs_err` arrays
|
|
189
192
|
(new in 2.2.1).
|
|
190
193
|
|
|
194
|
+
Every fit returns its best fit and, by default, error bars from MCMC sampling
|
|
195
|
+
of the posterior with [emcee](https://emcee.readthedocs.io/). Reported values
|
|
196
|
+
are posterior medians with 16–84% error bars; the noise level accounts for
|
|
197
|
+
correlated pixels and model mismatch, and a `*` marks a range that reaches a
|
|
198
|
+
fit bound. Sampling takes about a minute per stage. Pass `errorbars=False`
|
|
199
|
+
for best fits only. See
|
|
200
|
+
[What the uncertainties mean](https://diskmelts.readthedocs.io/en/latest/quickstart.html#uncertainties).
|
|
201
|
+
|
|
191
202
|
For a synthetic spectrum, `wave, flux = diskmelts.synthesize_spectrum('HCN',
|
|
192
203
|
T=300, logN=18, A=1)` returns the native wavelength axis and model flux (new
|
|
193
204
|
in 2.2.1). See the
|
|
@@ -231,8 +242,11 @@ assumes 2 km/s turbulent broadening. Select sigma=2 with `load_fitting_models(..
|
|
|
231
242
|
| OH | 15–26 | 100–1400 | 13–19.5 |
|
|
232
243
|
|
|
233
244
|
`diskmelts.MODEL_SPECS` records the exact domains, PCA sizes, and network
|
|
234
|
-
layers. Version 2.
|
|
235
|
-
|
|
245
|
+
layers. Version 2.3.0 retrains 26 of these checkpoints (13C12CH2, 13CO2,
|
|
246
|
+
C2H2 11.5–17 µm, C2H4, C2H6, C2HD, C4H2, CH4, CO17O, CO18O, CO2, HC3N, and HCN at
|
|
247
|
+
both sigmas) with lower held-out error; see the
|
|
248
|
+
[changelog](https://diskmelts.readthedocs.io/en/latest/changelog.html).
|
|
249
|
+
Upgrade with `python -m pip install -U diskmelts`.
|
|
236
250
|
|
|
237
251
|
## Training and validation data
|
|
238
252
|
|
|
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
|
|
|
4
4
|
|
|
5
5
|
[project]
|
|
6
6
|
name = "diskmelts"
|
|
7
|
-
version = "2.
|
|
7
|
+
version = "2.3.0"
|
|
8
8
|
description = "Machine-learning Enabled Line fitting Tool for Spectra of protoplanetary disks"
|
|
9
9
|
readme = "README.md"
|
|
10
10
|
requires-python = ">=3.9"
|
|
@@ -31,6 +31,8 @@ dependencies = [
|
|
|
31
31
|
# Used only to fit PCA/scalers when training; checkpoints store plain arrays.
|
|
32
32
|
"scikit-learn>=1.0",
|
|
33
33
|
"matplotlib",
|
|
34
|
+
# Ensemble MCMC for posterior error bars (pure Python, NumPy only).
|
|
35
|
+
"emcee>=3",
|
|
34
36
|
]
|
|
35
37
|
|
|
36
38
|
[project.urls]
|
|
@@ -13,6 +13,7 @@ from diskmelts.trainmodel import (
|
|
|
13
13
|
select_grid_holdout,
|
|
14
14
|
tune_pca_components,
|
|
15
15
|
convert_legacy_checkpoint,
|
|
16
|
+
grid_sha256,
|
|
16
17
|
)
|
|
17
18
|
from diskmelts.fitting import (
|
|
18
19
|
load_models,
|
|
@@ -58,6 +59,9 @@ from diskmelts.v2_read_plot import (
|
|
|
58
59
|
from diskmelts.v2_paper_comparison import plot_literature_comparisons
|
|
59
60
|
from diskmelts import consub
|
|
60
61
|
|
|
62
|
+
# fit_nested, validate_nt, and plot_validation_split stay importable for
|
|
63
|
+
# existing scripts but are deprecated since 2.3.0 and left out of __all__.
|
|
64
|
+
|
|
61
65
|
__all__ = [
|
|
62
66
|
"consub",
|
|
63
67
|
"MODEL_SPECS",
|
|
@@ -80,11 +84,11 @@ __all__ = [
|
|
|
80
84
|
"select_grid_holdout",
|
|
81
85
|
"tune_pca_components",
|
|
82
86
|
"convert_legacy_checkpoint",
|
|
87
|
+
"grid_sha256",
|
|
83
88
|
# fitting
|
|
84
89
|
"load_models",
|
|
85
90
|
"load_model_bank",
|
|
86
91
|
"generate_spectrum",
|
|
87
|
-
"fit_nested",
|
|
88
92
|
"fit_molecules",
|
|
89
93
|
"load_observed_spectrum",
|
|
90
94
|
"save_fit_outputs",
|
|
@@ -93,12 +97,10 @@ __all__ = [
|
|
|
93
97
|
"print_fit_params",
|
|
94
98
|
"save_fitted_comparison",
|
|
95
99
|
# validation
|
|
96
|
-
"validate_nt",
|
|
97
100
|
"validate_nt_holdout",
|
|
98
101
|
"validate_full",
|
|
99
102
|
# plotting
|
|
100
103
|
"plot_fit",
|
|
101
104
|
"plot_validation",
|
|
102
|
-
"plot_validation_split",
|
|
103
105
|
"plot_bank_reconstruction",
|
|
104
106
|
]
|