VanVelzenTDESED#
- class uvex_transients.models.tdes.van_velzen.VanVelzenTDESED(**overrides: Parameter | Quantity | float | int)[source]#
A constant-temperature blackbody modulated by a Gaussian-rise, exponential-decay light curve.
\[L_\nu(\nu, t) = L_0 \cdot \ell(t) \cdot \frac{\pi B_\nu(\nu, T)}{\sigma_\mathrm{SB} T^4},\]where
\[\begin{split}\ell(t) = \begin{cases} \exp\left[-\dfrac{(t-t_\mathrm{peak})^2}{2\sigma^2}\right] & t < t_\mathrm{peak} \\[6pt] \exp\left[-\dfrac{t-t_\mathrm{peak}}{\tau}\right] & t \ge t_\mathrm{peak} \end{cases}\end{split}\]with \(t_\mathrm{peak} = 5\sigma\) (
GREDLightcurve’s own convention – the rise is always exactly 5 Gaussian widths long, not a separate free parameter). This is a fairly typical parameterization for a TDE SED [1]: a constant-temperature blackbody photosphere (the \(\pi B_\nu(\nu, T)/(\sigma_\mathrm{SB} T^4)\) factor is exactlyBlackbodySpectrum’s normalized shape, \(\int_0^\infty S(\nu, T)\,d\nu = 1\)), so \(L_0\) here is literally \(L_\mathrm{bol}(t_\mathrm{peak})\). Composed fromGREDLightcurve(already bolometric – \(L_0 \cdot \ell(t)\)) andBlackbodySpectrum; seeComposedSpectralModelfor how the two are combined.The default priors are informed by the log-normal fits to the ZTF TDE sample reported by van Velzen et al.[1] (their Section 4.1 / Table 4), though the values below have since been hand-tuned away from those exact fits and are not currently a literal reproduction of them: log-normal in \(L_0\), \(T\), \(\sigma\), and \(\tau\), each parameterized here via a base-10 log transform on a
NormalPrior.Parameters
The model parameters are summarized below.
Parameter
Symbol
Description
amplitude\(L_0\)
Peak bolometric luminosity, \(L_0 = L_\mathrm{bol}(t_\mathrm{peak})\). \(\log_{10}(L_0/\mathrm{erg\,s^{-1}}) \sim \mathcal{N}(43.8, 0.3^2)\).
sigma_rise\(\sigma\)
Gaussian width of the pre-peak rise. \(\log_{10}(\sigma/\mathrm{d}) \sim \mathcal{N}(0.91, 0.25^2)\).
tau_decline\(\tau\)
Exponential decline timescale after peak. \(\log_{10}(\tau/\mathrm{d}) \sim \mathcal{N}(1.7, 0.2^2)\).
temperature\(T\)
Photospheric blackbody temperature. \(\log_{10}(T/\mathrm{K}) \sim \mathcal{N}(4.3, 0.1^2)\).
References
Methods
as_astropy_model([x_type, y_type, y_kind, ...])Build an
Modelof thisSpectralModelfor a given parameter set.as_source_spectrum(t, *[, redshift, ...])Build a
SourceSpectrumgiving the observed flux at one fixed time \(t\).eval(nu, t, **parameters)Evaluate the spectral luminosity at the given frequency and time.
eval_bolometric(t, **parameters)Evaluate the bolometric luminosity at the given time.
eval_bolometric_cgs(t, **parameters)Bolometric luminosity, taking and returning plain cgs numbers.
eval_bolometric_log(t, **parameters)Natural log of the bolometric luminosity, given physical-unit inputs.
eval_bolometric_log_cgs(t, **parameters)Natural log of the bolometric luminosity, taking and returning plain cgs numbers.
eval_cgs(nu, t, **parameters)Spectral luminosity, taking and returning plain cgs numbers.
eval_from_arrays(nu, t, *parameters)Positional-argument form of
eval().eval_log(nu, t, **parameters)Natural log of the spectral luminosity, given physical-unit inputs.
eval_log_cgs(nu, t, **parameters)Natural log of the spectral luminosity, taking and returning plain cgs numbers.
eval_spectrum(nu, t, **parameters)Evaluate the normalized spectral shape at the given frequency and time.
eval_spectrum_cgs(nu, t, **parameters)Return the normalized spectral shape as plain cgs numbers; see
eval_log_cgs().eval_spectrum_log(nu, t, **parameters)Natural log of the normalized spectral shape, given physical-unit inputs.
eval_spectrum_log_cgs(nu, t, **parameters)Natural log of the normalized spectral shape, taking and returning plain cgs numbers.
flux(nu, t, *[, redshift, ...])Evaluate the observed flux density at the given frequency and time.
flux_band(nu, throughput, t, *[, redshift, ...])Evaluate the throughput-weighted mean observed flux density over a band.
flux_band_cgs(nu, throughput, t, redshift, ...)Band-averaged observed flux density as plain cgs numbers; see
flux_band_log_cgs().flux_band_log(nu, throughput, t, *[, ...])Natural log of the band-averaged observed flux density, given physical-unit inputs.
flux_band_log_cgs(nu, throughput, t, ...[, ...])Natural log of the throughput-weighted mean flux density over a band, plain cgs numbers.
flux_bolometric(t, *[, redshift, ...])Evaluate the observed bolometric flux at the given time.
flux_bolometric_cgs(t, redshift, ...)Observed bolometric flux, taking and returning plain cgs numbers.
flux_bolometric_log(t, *[, redshift, ...])Natural log of the observed bolometric flux, given physical-unit inputs.
flux_bolometric_log_cgs(t, redshift, ...)Natural log of the observed bolometric flux, taking and returning plain cgs numbers.
flux_cgs(nu, t, redshift, luminosity_distance, *)Observed flux density, taking and returning plain cgs numbers.
flux_log(nu, t, *[, redshift, ...])Natural log of the observed flux density, given physical-unit inputs.
flux_log_cgs(nu, t, redshift, ...[, ...])Natural log of the observed flux density, taking and returning plain cgs numbers.
get(k[,d])items()keys()mag(nu, t, *[, redshift, ...])Evaluate the apparent AB magnitude at the given frequency and time.
mag_band(nu, throughput, t, *[, redshift, ...])Evaluate the apparent AB magnitude of the band-averaged flux density.
mag_band_cgs(nu, throughput, t, redshift, ...)Apparent AB magnitude of the band-averaged flux density.
mag_bandpass(bandpass, t, *[, redshift, ...])Evaluate the apparent AB magnitude of the flux averaged over bandpass.
mag_cgs(nu, t, redshift, luminosity_distance, *)Apparent AB magnitude: \(m_\mathrm{AB} = -2.5 \log_{10}(F_\nu / F_{\mathrm{AB},0})\).
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(nu, t[, size, rng])Draw random parameter realizations and evaluate the model at the given frequency and time.
simulate_photometry(t, exptime, detector, ...)Simulate noisy synthetic photometry of this model at given time(s), against a real detector.
unpack_params_from_arrays(*parameters)Convert an ordered sequence of parameter values back into a dict.
values()