Skip to content

Commit 082e8df

Browse files
authored
Merge pull request #15 from AlexHls/fix-model-syntax
Fix model syntax
2 parents 4ce6b8a + 51e6b04 commit 082e8df

File tree

12 files changed

+489
-465
lines changed

12 files changed

+489
-465
lines changed

sccala-env.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ george
55
emcee
66
astropy
77
specutils
8-
pystan
8+
pystan==3.9.0
99
corner
1010
cloudpickle
1111
itsdangerous

src/sccala/collect_scm_data.py

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,9 @@ def main(args):
2222
vel_sys = args.vel_sys
2323
col_sys = args.col_sys
2424
ae_sys = args.ae_sys
25+
rho = args.rho
26+
rho_calib = args.rho_calib
27+
error_mode = args.error_mode
2528

2629
df = sl.load_data(
2730
sne_list,
@@ -37,6 +40,9 @@ def main(args):
3740
vel_sys=vel_sys,
3841
col_sys=col_sys,
3942
ae_sys=ae_sys,
43+
rho=rho,
44+
rho_calib=rho_calib,
45+
error_mode=error_mode,
4046
)
4147

4248
return df
@@ -115,6 +121,25 @@ def cli():
115121
help="Value of the systematic a/e uncertainty.",
116122
type=float,
117123
)
124+
parser.add_argument(
125+
"-r",
126+
"--rho",
127+
help="Correlation between the color and magnitude uncertainties. Default: 1.0",
128+
default=1.0,
129+
type=float,
130+
)
131+
parser.add_argument(
132+
"--rho_calib",
133+
help="Correlation between the color and magnitude uncertainties for calibrator SNe. Default: 0.0",
134+
default=0.0,
135+
type=float,
136+
)
137+
parser.add_argument(
138+
"--error_mode",
139+
help="Mode to calculate asymmetric errors. Default: mean",
140+
default="mean",
141+
choices=["mean", "max", "min"],
142+
)
118143

119144
args = parser.parse_args()
120145

src/sccala/interplib/epoch_interp.py

Lines changed: 13 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -86,7 +86,7 @@ def __init__(
8686

8787
self.data = np.array(data)
8888
self.data_error = np.array(data_error)
89-
self.tkde = np.array(tkde)
89+
self.tkde = tkde
9090
self.mjd = np.array(mjd)
9191

9292
self.snname = snname
@@ -97,7 +97,7 @@ def __init__(
9797
self.reg_max = reg_max
9898
self.extrapolate = extrapolate
9999

100-
self.toe = float(np.percentile(tkde, 50.0))
100+
self.toe = float(np.percentile(tkde.resample(10000), 50.0))
101101

102102
# Confert dates to restframe
103103
self.time = (mjd - self.toe) / (1 + red)
@@ -216,7 +216,7 @@ def diagnostic_plot(self, diagnostic, target, flux_interp=False):
216216
color="red",
217217
label="Median",
218218
)
219-
ax1.set_xlabel("v(t={:.1f})d) (km/s)".format(self.dates[plotind]))
219+
ax1.set_xlabel("v(t={:.1f}d) (km/s)".format(self.dates[plotind]))
220220
ax1.set_title(
221221
r"v({:.1f}) = {:.2f} +{:.2f}/ -{:.2f} km/s | {:s}".format(
222222
self.dates[plotind],
@@ -242,8 +242,16 @@ def diagnostic_plot(self, diagnostic, target, flux_interp=False):
242242
color="red",
243243
)
244244
ax2.axhline(self.median[plotind] / conv, color="red")
245-
lower = self.dates[plotind] + self.toe - np.percentile(self.tkde, 15.87)
246-
upper = self.dates[plotind] + self.toe - np.percentile(self.tkde, 84.13)
245+
lower = (
246+
self.dates[plotind]
247+
+ self.toe
248+
- np.percentile(self.tkde.resample(10000), 15.87)
249+
)
250+
upper = (
251+
self.dates[plotind]
252+
+ self.toe
253+
- np.percentile(self.tkde.resample(10000), 84.13)
254+
)
247255
ax2.axvspan(
248256
lower, upper, alpha=0.3, color="blue", label="1$\sigma$ (68.26%)"
249257
)

0 commit comments

Comments
 (0)