Generalized Gaussian temporal model#

This model parametrises a generalized Gaussian time model.

\[ \begin{align}\begin{aligned}F(t) = \exp \left( - 0.5 \cdot \left( \frac{|t - t_{\rm{ref}}|}{t_{\rm{rise}}} \right) ^ {1 / \eta} \right) \text{ for } t < t_{\rm{ref}}\\F(t) = \exp \left( - 0.5 \cdot \left( \frac{|t - t_{\rm{ref}}|}{t_{\rm{decay}}} \right) ^ {1 / \eta} \right) \text{ for } t > t_{\rm{ref}}\end{aligned}\end{align} \]

Example plot#

Here is an example plot of the model:

from astropy import units as u
from astropy.time import Time
from astropy.units import Quantity
import matplotlib.pyplot as plt
from gammapy.modeling.models import (
    GeneralizedGaussianTemporalModel,
    Models,
    PowerLawSpectralModel,
    SkyModel,
)

t_rise = Quantity(0.1, "d")
t_decay = Quantity(1, "d")
eta = Quantity(2 / 3, "")
t_ref = Time("2020-10-01")
time_range = [t_ref - 1 * u.d, t_ref + 1 * u.d]
gen_gaussian_model = GeneralizedGaussianTemporalModel(
    t_ref=t_ref.mjd * u.d, t_rise=t_rise, t_decay=t_decay, eta=eta
)
gen_gaussian_model.plot(time_range)
plt.grid(which="both")
plot generalized gaussian temporal

YAML representation#

Here is an example YAML file using the model:

model = SkyModel(
    spectral_model=PowerLawSpectralModel(),
    temporal_model=gen_gaussian_model,
    name="generalized_gaussian_model",
)
models = Models([model])

print(models.to_yaml())
components:
-   name: generalized_gaussian_model
    type: SkyModel
    spectral:
        type: PowerLawSpectralModel
        parameters:
        -   name: index
            value: 2.0
        -   name: amplitude
            value: 1.0e-12
            unit: cm-2 s-1 TeV-1
        -   name: reference
            value: 1.0
            unit: TeV
    temporal:
        type: GeneralizedGaussianTemporalModel
        parameters:
        -   name: t_ref
            value: 59123.0
            unit: d
        -   name: t_rise
            value: 0.1
            unit: d
        -   name: t_decay
            value: 1.0
            unit: d
        -   name: eta
            value: 0.6666666666666666
        scale: utc
metadata:
    creator: Gammapy 2.0.dev2+g10bce85c9
    date: '2024-11-12T19:41:40.037445'
    origin: null

Gallery generated by Sphinx-Gallery