Note
Go to the end to download the full example code. or to run this example in your browser via Binder
Log parabola 2 spectral model#
This model parametrises a log parabola spectrum, where the energy scale of the exponente, \(E_s\), and the reference energy, \(E_0\), can be different. It is defined by the following equation:
\[\phi(E) = \phi_0 \left( \frac{E}{E_0} \right) ^ {
- \alpha - \beta \log{ \left( \frac{E}{E_s} \right) }
}\]
Note that \(log\) refers to the natural logarithm.
If you have parametrization based on \(log_{10}\) you can use the
from_log10() method.
Example plot#
Here is an example plot of the model:
from astropy import units as u
import matplotlib.pyplot as plt
from gammapy.modeling.models import LogParabola2SpectralModel, Models, SkyModel
energy_bounds = [0.1, 100] * u.TeV
model = LogParabola2SpectralModel(
alpha=2.3,
amplitude="1e-12 cm-2 s-1 TeV-1",
reference=10 * u.TeV,
beta=0.5,
escale=1 * u.TeV,
)
model.plot(energy_bounds)
plt.grid(which="both")

YAML representation#
Here is an example YAML file using the model:
components:
- name: log-parabola2-model
type: SkyModel
spectral:
type: LogParabola2SpectralModel
parameters:
- name: amplitude
value: 1.0e-12
unit: TeV-1 s-1 cm-2
- name: reference
value: 10.0
unit: TeV
- name: alpha
value: 2.3
- name: beta
value: 0.5
- name: escale
value: 1.0
unit: TeV
metadata:
creator: Gammapy 2.0.dev2512+g0733504a8
date: '2025-11-30T05:22:18.018928'
origin: null