DelayedExponentialLightcurve#

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

A polynomial rise followed by an exponential decline.

\[L(t) = A \left(\frac{t}{t_\mathrm{peak}}\right)^\alpha \exp\left[ \alpha\left(1-\frac{t}{t_\mathrm{peak}}\right) \right], \qquad t > 0.\]

This is a gamma-like transient pulse. The chosen parameterization makes

\[L(t_\mathrm{peak}) = A\]

exactly, while \(L \rightarrow 0\) as \(t \rightarrow 0^+\) and the late-time emission declines exponentially.

The positive shape parameter \(\alpha\) controls both the steepness of the rise and the relation between the peak time and exponential timescale.

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.

shape

\(\alpha\)

Positive dimensionless pulse-shape parameter.

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