GaussianRisePowerLawLightcurve#
- class uvex_transients.models.lightcurves.generic.GaussianRisePowerLawLightcurve(**overrides: Parameter | Quantity | float | int)[source]#
A Gaussian rise followed by a power-law decline, peaked at
t_peak.\[\begin{split}L(t) = A \times \begin{cases} \exp\left(-\dfrac{(t - t_\mathrm{peak})^2}{2\sigma_\mathrm{rise}^2}\right) & t \le t_\mathrm{peak} \\[4pt] \left(\dfrac{t}{t_\mathrm{peak}}\right)^{-\alpha_\mathrm{decline}} & t > t_\mathrm{peak} \end{cases}\end{split}\]The two branches agree exactly at \(t = t_\mathrm{peak}\), where \(L(t_\mathrm{peak}) = A\) – the power-law branch is referenced to \(t_\mathrm{peak}\) rather than \(t = 0\) for exactly this reason. Unlike GREDLightcurve’s exponential cutoff, the power-law tail here (\(L \propto t^{-\alpha_\mathrm{decline}}\) for \(t \gg t_\mathrm{peak}\)) fades slowly at late times – the qualitative late-time behavior of transients with an extended power source (e.g. luminous fast blue optical transients) rather than a sharply cut-off pulse.
sigma_riseis not itself a free parameter – it is fixed at \(\sigma_\mathrm{rise} = t_\mathrm{peak}/5\), one fifth of the time to peak, the same ratio GREDLightcurve fixes between the two quantities.Parameters
The light curve parameters are summarized below.
Parameter
Symbol
Description
amplitude\(A\)
Peak bolometric luminosity.
t_peak\(t_\mathrm{peak}\)
Time of peak luminosity since explosion.
decline_index\(\alpha_\mathrm{decline}\)
Positive post-peak power-law decline index.
Methods
eval(t, **parameters)Evaluate the bolometric luminosity at the given time.
eval_cgs(t, **parameters)Bolometric luminosity, taking and returning plain cgs numbers.
eval_from_arrays(t, *parameters)Positional-argument form of
eval().eval_log(t, **parameters)Natural log of the bolometric luminosity, given physical-unit inputs.
eval_log_cgs(t, **parameters)Natural log of the bolometric luminosity, taking and returning plain cgs numbers.
get(k[,d])items()keys()pack_params_to_arrays(**parameters)Convert a dict of parameter values into an ordered sequence.
sample_parameters([size, rng, parameters])Draw random samples of some or all of this model's parameters.
simulate(t[, size, rng])Draw random parameter realizations and evaluate the model at the given time.
unpack_params_from_arrays(*parameters)Convert an ordered sequence of parameter values back into a dict.
values()