amplitude="1e-12 cm-2 s-1 TeV-1", reference="1 TeV", beta=0.1) model = SkyModel(spectral_model=log_parabola) # In[ ]: dataset_log_parabola = FluxPointsDataset(model, flux_points) fitter = Fit([dataset_log_parabola]) result_log_parabola = fitter.run() print(log_parabola) # In[ ]: ax = flux_points.plot(energy_power=2) log_parabola.plot(energy_range=[1e-4, 1e2] * u.TeV, ax=ax, energy_power=2) # assign covariance for plotting log_parabola.parameters.covariance = result_log_parabola.parameters.covariance log_parabola.plot_error(energy_range=[1e-4, 1e2] * u.TeV, ax=ax, energy_power=2) ax.set_ylim(1e-13, 1e-11) # ## Exercises # # - Fit a `~gammapy.modeling.models.PowerLaw2SpectralModel` and `~gammapy.modeling.models.ExpCutoffPowerLaw3FGLSpectralModel` to the same data. # - Fit a `~gammapy.modeling.models.ExpCutoffPowerLawSpectralModel` model to Vela X ('HESS J0835-455') only and check if the best fit values correspond to the values given in the Gammacat catalog # ## What next?
""" # %% # 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 LogParabolaSpectralModel, Models, SkyModel energy_range = [0.1, 100] * u.TeV model = LogParabolaSpectralModel( alpha=2.3, amplitude="1e-12 cm-2 s-1 TeV-1", reference=1 * u.TeV, beta=0.5, ) model.plot(energy_range) plt.grid(which="both") # %% # YAML representation # ------------------- # Here is an example YAML file using the model: model = SkyModel(spectral_model=model, name="log-parabola-model") models = Models([model]) print(models.to_yaml())
""" # %% # 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 LogParabolaSpectralModel, Models, SkyModel energy_bounds = [0.1, 100] * u.TeV model = LogParabolaSpectralModel( alpha=2.3, amplitude="1e-12 cm-2 s-1 TeV-1", reference=1 * u.TeV, beta=0.5, ) model.plot(energy_bounds) plt.grid(which="both") # %% # YAML representation # ------------------- # Here is an example YAML file using the model: model = SkyModel(spectral_model=model, name="log-parabola-model") models = Models([model]) print(models.to_yaml())