GREDLightcurve#

class uvex_transients.models.lightcurves.generic.GREDLightcurve(**overrides: Parameter | Quantity | float | int)[source]#

A Gaussian rise followed by an exponential 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] \exp\left(-\dfrac{t - t_\mathrm{peak}}{\tau_\mathrm{decline}}\right) & t > t_\mathrm{peak} \end{cases}\end{split}\]

The two pieces agree at \(t = t_\mathrm{peak}\), where \(L(t_\mathrm{peak}) = A\) exactly, by construction. t_peak is not itself a free parameter – it is fixed at \(t_\mathrm{peak} = 5\sigma_\mathrm{rise}\), five Gaussian widths after explosion.

Parameters

The light curve parameters are summarized below.

Parameter

Symbol

Description

amplitude

\(A\)

Peak bolometric luminosity.

sigma_rise

\(\sigma_\mathrm{rise}\)

Gaussian width of the rise.

tau_decline

\(\tau_\mathrm{decline}\)

Exponential decline timescale.

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()