{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "\n", "
\n", "\n", "**This is a fixed-text formatted version of a Jupyter notebook**\n", "\n", "- Try online [![Binder](https://mybinder.org/badge.svg)](https://mybinder.org/v2/gh/gammapy/gammapy-webpage/v0.10?urlpath=lab/tree/first_steps.ipynb)\n", "- You can contribute with your own notebooks in this\n", "[GitHub repository](https://github.com/gammapy/gammapy/tree/master/tutorials).\n", "- **Source files:**\n", "[first_steps.ipynb](../_static/notebooks/first_steps.ipynb) |\n", "[first_steps.py](../_static/notebooks/first_steps.py)\n", "
\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# Getting started with Gammapy\n", "\n", "## Introduction\n", "\n", "This is a getting started tutorial for [Gammapy](https://docs.gammapy.org/).\n", "\n", "In this tutorial we will use the [Second Fermi-LAT Catalog of High-Energy Sources (3FHL) catalog](http://fermi.gsfc.nasa.gov/ssc/data/access/lat/3FHL/), corresponding event list and images to learn how to work with some of the central Gammapy data structures.\n", "\n", "We will cover the following topics:\n", "\n", "* **Sky maps**\n", " * We will learn how to handle image based data with gammapy using a Fermi-LAT 3FHL example image. We will work with the following classes:\n", " - [gammapy.maps.WcsNDMap](..\/api/gammapy.maps.WcsNDMap.rst)\n", " - [astropy.coordinates.SkyCoord](http://astropy.readthedocs.io/en/latest/coordinates/index.html)\n", " - [numpy.ndarray](https://docs.scipy.org/doc/numpy/reference/generated/numpy.ndarray.html)\n", "\n", "* **Event lists**\n", " * We will learn how to handle event lists with Gammapy. Important for this are the following classes: \n", " - [gammapy.data.EventList](..\/api/gammapy.data.EventList.rst)\n", " - [astropy.table.Table](http://docs.astropy.org/en/stable/api/astropy.table.Table.html#astropy.table.Table)\n", "\n", "* **Source catalogs**\n", " * We will show how to load source catalogs with Gammapy and explore the data using the following classes:\n", " - [gammapy.catalog.SourceCatalog](..\/api/gammapy.catalog.SourceCatalog.rst), specifically [gammapy.catalog.SourceCatalog3FHL](..\/api/gammapy.catalog.SourceCatalog3FHL.rst)\n", " - [astropy.table.Table](http://docs.astropy.org/en/stable/api/astropy.table.Table.html#astropy.table.Table)\n", "\n", "* **Spectral models and flux points**\n", " * We will pick an example source and show how to plot its spectral model and flux points. For this we will use the following classes:\n", " - [gammapy.spectrum.SpectralModel](..\/api/gammapy.spectrum.models.SpectralModel.rst), specifically the [PowerLaw2](..\/api/gammapy.spectrum.models.PowerLaw2.rst) model.\n", " - [gammapy.spectrum.FluxPoints](..\/api/gammapy.spectrum.FluxPoints.rst#gammapy.spectrum.FluxPoints)\n", " - [astropy.table.Table](http://docs.astropy.org/en/stable/api/astropy.table.Table.html#astropy.table.Table)\n", "\n", "If you're not yet familiar with the listed Astropy classes, maybe check out the [Astropy introduction for Gammapy users](astropy_introduction.ipynb) first." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Setup\n", "\n", "**Important**: to run this tutorial the environment variable `GAMMAPY_DATA` must be defined and point to the directory on your machine where the datasets needed are placed. To check whether your setup is correct you can execute the following cell:\n", "\n" ] }, { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Great your setup is correct!\n" ] } ], "source": [ "import os\n", "\n", "path = os.path.expandvars(\"$GAMMAPY_DATA\")\n", "\n", "if not os.path.exists(path):\n", " raise Exception(\"gammapy-data repository not found!\")\n", "else:\n", " print(\"Great your setup is correct!\")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "In case you encounter an error, you can un-comment and execute the following cell to continue. But we recommend to set up your enviroment correctly as decribed [here](..\/getting-started.rst#download-tutorials) after you are done with this notebook." ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [], "source": [ "# os.environ['GAMMAPY_DATA'] = os.path.join(os.getcwd(), '..')" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Now we can continue with the usual IPython notebooks and Python imports:" ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [], "source": [ "%matplotlib inline\n", "import matplotlib.pyplot as plt" ] }, { "cell_type": "code", "execution_count": 4, "metadata": {}, "outputs": [], "source": [ "import numpy as np\n", "import astropy.units as u\n", "from astropy.coordinates import SkyCoord\n", "from astropy.visualization import simple_norm" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Maps\n", "\n", "The [gammapy.maps](https://docs.gammapy.org/dev/maps) package contains classes to work with sky images and cubes.\n", "\n", "In this section, we will use a simple 2D sky image and will learn how to:\n", "\n", "* Read sky images from FITS files\n", "* Smooth images\n", "* Plot images\n", "* Cutout parts from images\n", "* Reproject images to different WCS" ] }, { "cell_type": "code", "execution_count": 5, "metadata": {}, "outputs": [], "source": [ "from gammapy.maps import Map\n", "\n", "gc_3fhl = Map.read(\"$GAMMAPY_DATA/fermi-3fhl-gc/fermi-3fhl-gc-counts.fits.gz\")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "The image is a ``WCSNDMap`` object:" ] }, { "cell_type": "code", "execution_count": 6, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "WcsNDMap\n", "\n", "\tgeom : WcsGeom \n", " \taxes : lon, lat\n", "\tshape : (400, 200)\n", "\tndim : 2\n", "\tunit : '' \n", "\tdtype : >i8 " ] }, "execution_count": 6, "metadata": {}, "output_type": "execute_result" } ], "source": [ "gc_3fhl" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "The shape of the image is 400 x 200 pixel and it is defined using a cartesian projection in galactic coordinates.\n", "\n", "The ``geom`` attribute is a ``WcsGeom`` object:" ] }, { "cell_type": "code", "execution_count": 7, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "WcsGeom\n", "\n", "\taxes : lon, lat\n", "\tshape : (400, 200)\n", "\tndim : 2\n", "\tcoordsys : GAL\n", "\tprojection : CAR\n", "\tcenter : 0.0 deg, 0.0 deg\n", "\twidth : 20.0 x 10.0 deg" ] }, "execution_count": 7, "metadata": {}, "output_type": "execute_result" } ], "source": [ "gc_3fhl.geom" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Let's take a closer look a the `.data` attribute:" ] }, { "cell_type": "code", "execution_count": 8, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([[0, 0, 0, ..., 0, 0, 0],\n", " [0, 0, 0, ..., 0, 0, 0],\n", " [0, 0, 0, ..., 0, 0, 0],\n", " ...,\n", " [0, 0, 0, ..., 0, 0, 1],\n", " [0, 0, 0, ..., 0, 0, 0],\n", " [0, 0, 0, ..., 0, 0, 1]])" ] }, "execution_count": 8, "metadata": {}, "output_type": "execute_result" } ], "source": [ "gc_3fhl.data" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "That looks familiar! It just an *ordinary* 2 dimensional numpy array, which means you can apply any known numpy method to it:" ] }, { "cell_type": "code", "execution_count": 9, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Total number of counts in the image: 32684\n" ] } ], "source": [ "print(\"Total number of counts in the image: {:.0f}\".format(gc_3fhl.data.sum()))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "To show the image on the screen we can use the ``plot`` method. It basically calls [plt.imshow](http://matplotlib.org/api/pyplot_api.html#matplotlib.pyplot.imshow), passing the `gc_3fhl.data` attribute but in addition handles axis with world coordinates using [wcsaxes](https://wcsaxes.readthedocs.io/en/latest/) and defines some defaults for nicer plots (e.g. the colormap 'afmhot'):" ] }, { "cell_type": "code", "execution_count": 10, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "gc_3fhl.plot(stretch=\"sqrt\");" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "To make the structures in the image more visible we will smooth the data using a Gausian kernel with a radius of 0.5 deg. Again `smooth()` is a wrapper around existing functionality from the scientific Python libraries. In this case it is Scipy's [gaussian_filter](https://docs.scipy.org/doc/scipy-0.16.1/reference/generated/scipy.ndimage.filters.gaussian_filter.html) method. For convenience the kernel shape can be specified with as string and the smoothing radius with a quantity. It returns again a map object, that we can plot directly the same way we did above:" ] }, { "cell_type": "code", "execution_count": 11, "metadata": {}, "outputs": [], "source": [ "gc_3fhl_smoothed = gc_3fhl.smooth(kernel=\"gauss\", width=0.2 * u.deg)" ] }, { "cell_type": "code", "execution_count": 12, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "gc_3fhl_smoothed.plot(stretch=\"sqrt\");" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "The smoothed plot already looks much nicer, but still the image is rather large. As we are mostly interested in the inner part of the image, we will cut out a quadratic region of the size 9 deg x 9 deg around Vela. Therefore we use ``Map.cutout`` to make a cutout map:" ] }, { "cell_type": "code", "execution_count": 13, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "# define center and size of the cutout region\n", "center = SkyCoord(0, 0, unit=\"deg\", frame=\"galactic\")\n", "gc_3fhl_cutout = gc_3fhl_smoothed.cutout(center, 9 * u.deg)\n", "gc_3fhl_cutout.plot(stretch=\"sqrt\");" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "For a more detailed introdcution to `ganmmapy.maps`, take a look a the [intro_maps.ipynb](intro_maps.ipynb) notebook.\n", "\n", "### Exercises\n", "\n", "* Add a marker and circle at the position of `Sag A*` (you can find examples in the WCSAxes [documentation](https://wcsaxes.readthedocs.io/en/latest/overlays.html))." ] }, { "cell_type": "code", "execution_count": 14, "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Event lists\n", "\n", "Almost any high-level gamma-ray data analysis starts with the raw measured counts data, which is stored in event lists. In Gammapy event lists are represented by the [gammapy.data.EventList](..\/api/gammapy.data.EventList.rst) class. \n", "\n", "In this section we will learn how to:\n", "\n", "* Read event lists from FITS files\n", "* Access and work with the `EventList` attributes such as `.table` and `.energy` \n", "* Filter events lists using convenience methods\n", "\n", "Let's start with the import from the [gammapy.data](..\/data/index.rst) submodule:" ] }, { "cell_type": "code", "execution_count": 14, "metadata": {}, "outputs": [], "source": [ "from gammapy.data import EventList" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Very similar to the sky map class an event list can be created, by passing a filename to the `.read()` method:" ] }, { "cell_type": "code", "execution_count": 15, "metadata": {}, "outputs": [], "source": [ "events_3fhl = EventList.read(\n", " \"$GAMMAPY_DATA/fermi-3fhl-gc/fermi-3fhl-gc-events.fits.gz\"\n", ")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "This time the actual data is stored as an [astropy.table.Table](http://docs.astropy.org/en/stable/api/astropy.table.Table.html#astropy.table.Table) object. It can be accessed with `.table` attribute: " ] }, { "cell_type": "code", "execution_count": 16, "metadata": {}, "outputs": [ { "data": { "text/html": [ "Table length=32843\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "
ENERGYRADECLBTHETAPHIZENITH_ANGLEEARTH_AZIMUTH_ANGLETIMEEVENT_IDRUN_IDRECON_VERSIONCALIB_VERSION [3]EVENT_CLASS [32]EVENT_TYPE [32]CONVERSION_TYPELIVETIMEDIFRSP0DIFRSP1DIFRSP2DIFRSP3DIFRSP4
MeVdegdegdegdegdegdegdegdegss
float32float32float32float32float32float32float32float32float32float64int32int32int16int16boolboolint16float64float32float32float32float32float32
12186.642260.45935-33.553337353.362731.753867671.977325125.5069459.22307231.79672239572401.29222104182304023957167000 .. 0False .. TrueFalse .. True0238.578372389078140.00.00.00.00.0
25496.598261.37506-34.395004353.096070.652065242.49406278.4934741.092773227.89838239577842.1621734255083323957766300 .. 0False .. TrueFalse .. False1176.168507546186450.00.00.00.00.0
15621.498259.56973-33.409416353.056732.445068464.32412234.2219466.526794232.75734239578244.7997108135317523957766300 .. 0False .. TrueFalse .. False19.3920756578445430.00.00.00.00.0
12816.32273.95883-25.3403916.45856-4.054887343.292503142.8739213.232716108.02273239605914.66160735963624123960127600 .. 0False .. TrueFalse .. False14.0347865521907810.00.00.00.00.0
18988.387260.8568-36.355804351.23734-0.10191239426.916113290.3933723.8726212.91147239611913.144604151123318823960687100 .. 0False .. TrueFalse .. True0131.601328969001770.00.00.00.00.0
11610.23266.15518-26.2244362.19860271.603481935.77363274.5338723.537594232.64166239623554.554147331415681123961832900 .. 0False .. TrueFalse .. False174.981109380722050.00.00.00.00.0
13960.802271.44742-29.6153161.6267247-4.143115525.917883238.036815.037035123.32094239634549.17487261414056923962978800 .. 0False .. TrueFalse .. False1106.373368173837660.00.00.00.00.0
10477.372266.3981-28.96814359.97003-0.01174817739.091587275.545733.02354229.59308239635161.879829821568839323962978800 .. 0False .. TrueFalse .. True0214.628174066543580.00.00.00.00.0
13030.88271.70428-20.6326279.593480.02624146852.622505161.320539.35084591.9986239639873.2076075173648223963943600 .. 0False .. TrueFalse .. True094.687530636787410.00.00.00.00.0
.....................................................................
387834.72270.3779-21.567118.1717490.6453147556.755512221.8471524.35845486.67913460185260.7970139759562646018126000 .. 0False .. TrueFalse .. True034.2146940231323240.00.00.00.00.0
20559.74268.5538-26.3456923.200638-0.3032898649.523575233.6728512.370642250.35716460185803.2027966878559046018126000 .. 0False .. TrueFalse .. True0103.176299691200260.00.00.00.00.0
27209.146266.59344-30.52607358.72775-0.9671817462.1856140.2743432.686306109.74662460190778.6372646727445346018697600 .. 0False .. TrueFalse .. True043.223347127437590.00.00.00.00.0
13911.061269.30997-27.2394392.7684028-1.336530165.15399224.5210153.017742242.62904460197889.26526911204988746019219800 .. 0False .. TrueFalse .. True095.463564038276670.00.00.00.00.0
13226.425265.16287-27.3442380.77969421.768017859.38332126.701932.12299246.97205460203215.108161451171688846019823500 .. 0False .. TrueFalse .. False13.7330975532531740.00.00.00.00.0
17445.463266.63342-28.8072010.21464892-0.103970555.48627135.5915514.227151106.7812460225372.9842249167908246022493300 .. 0False .. TrueFalse .. False180.522352814674380.00.00.00.00.0
13133.864270.42474-22.6510587.2511850.07135820448.704975134.731022.489122294.48605460225688.52486295287933546022493300 .. 0False .. TrueFalse .. False1117.881733417510990.00.00.00.00.0
32095.705266.0002-29.77206359.1034-0.1361523145.013103236.724986.92107212.86594460231367.1387127111370646023108400 .. 0False .. TrueFalse .. True0108.929764926433560.00.00.00.00.0
18465.783266.39728-29.105953359.85202-0.0829405855.97552135.8778718.909636112.137924459939497.057684768983145993557200 .. 0False .. TrueFalse .. True070.726386845111850.00.00.00.00.0
14457.25262.72217-34.388405353.7184-0.2690681245.683174237.7416225.728264240.87035459945845.47984051004968045994130200 .. 0False .. TrueFalse .. True0147.42747879028320.00.00.00.00.0
" ], "text/plain": [ "\n", " ENERGY RA DEC L ... DIFRSP1 DIFRSP2 DIFRSP3 DIFRSP4\n", " MeV deg deg deg ... \n", " float32 float32 float32 float32 ... float32 float32 float32 float32\n", "--------- --------- ---------- ---------- ... ------- ------- ------- -------\n", "12186.642 260.45935 -33.553337 353.36273 ... 0.0 0.0 0.0 0.0\n", "25496.598 261.37506 -34.395004 353.09607 ... 0.0 0.0 0.0 0.0\n", "15621.498 259.56973 -33.409416 353.05673 ... 0.0 0.0 0.0 0.0\n", " 12816.32 273.95883 -25.340391 6.45856 ... 0.0 0.0 0.0 0.0\n", "18988.387 260.8568 -36.355804 351.23734 ... 0.0 0.0 0.0 0.0\n", " 11610.23 266.15518 -26.224436 2.1986027 ... 0.0 0.0 0.0 0.0\n", "13960.802 271.44742 -29.615316 1.6267247 ... 0.0 0.0 0.0 0.0\n", "10477.372 266.3981 -28.96814 359.97003 ... 0.0 0.0 0.0 0.0\n", " 13030.88 271.70428 -20.632627 9.59348 ... 0.0 0.0 0.0 0.0\n", " ... ... ... ... ... ... ... ... ...\n", "387834.72 270.3779 -21.56711 8.171749 ... 0.0 0.0 0.0 0.0\n", " 20559.74 268.5538 -26.345692 3.200638 ... 0.0 0.0 0.0 0.0\n", "27209.146 266.59344 -30.52607 358.72775 ... 0.0 0.0 0.0 0.0\n", "13911.061 269.30997 -27.239439 2.7684028 ... 0.0 0.0 0.0 0.0\n", "13226.425 265.16287 -27.344238 0.7796942 ... 0.0 0.0 0.0 0.0\n", "17445.463 266.63342 -28.807201 0.21464892 ... 0.0 0.0 0.0 0.0\n", "13133.864 270.42474 -22.651058 7.251185 ... 0.0 0.0 0.0 0.0\n", "32095.705 266.0002 -29.77206 359.1034 ... 0.0 0.0 0.0 0.0\n", "18465.783 266.39728 -29.105953 359.85202 ... 0.0 0.0 0.0 0.0\n", " 14457.25 262.72217 -34.388405 353.7184 ... 0.0 0.0 0.0 0.0" ] }, "execution_count": 16, "metadata": {}, "output_type": "execute_result" } ], "source": [ "events_3fhl.table" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "You can do *len* over event_3fhl.table to find the total number of events." ] }, { "cell_type": "code", "execution_count": 17, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Total number of events: 32843\n" ] } ], "source": [ "print(\"Total number of events: {}\".format(len(events_3fhl.table)))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "And we can access any other attribute of the `Table` object as well:" ] }, { "cell_type": "code", "execution_count": 18, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "['ENERGY',\n", " 'RA',\n", " 'DEC',\n", " 'L',\n", " 'B',\n", " 'THETA',\n", " 'PHI',\n", " 'ZENITH_ANGLE',\n", " 'EARTH_AZIMUTH_ANGLE',\n", " 'TIME',\n", " 'EVENT_ID',\n", " 'RUN_ID',\n", " 'RECON_VERSION',\n", " 'CALIB_VERSION',\n", " 'EVENT_CLASS',\n", " 'EVENT_TYPE',\n", " 'CONVERSION_TYPE',\n", " 'LIVETIME',\n", " 'DIFRSP0',\n", " 'DIFRSP1',\n", " 'DIFRSP2',\n", " 'DIFRSP3',\n", " 'DIFRSP4']" ] }, "execution_count": 18, "metadata": {}, "output_type": "execute_result" } ], "source": [ "events_3fhl.table.colnames" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "For convenience we can access the most important event parameters as properties on the `EventList` objects. The attributes will return corresponding Astropy objects to represent the data, such as [astropy.units.Quantity](http://docs.astropy.org/en/stable/api/astropy.units.Quantity.html#astropy.units.Quantity), [astropy.coordinates.SkyCoord](http://docs.astropy.org/en/stable/api/astropy.coordinates.SkyCoord.html) or [astropy.time.Time](http://docs.astropy.org/en/stable/api/astropy.time.Time.html#astropy.time.Time) objects:" ] }, { "cell_type": "code", "execution_count": 19, "metadata": {}, "outputs": [ { "data": { "text/latex": [ "$$[12.186643,~25.496599,~15.621499,~\\dots,~32.095707,~18.465784,~14.457251] \\; \\mathrm{GeV}$$" ], "text/plain": [ "" ] }, "execution_count": 19, "metadata": {}, "output_type": "execute_result" } ], "source": [ "events_3fhl.energy.to(\"GeV\")" ] }, { "cell_type": "code", "execution_count": 20, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 20, "metadata": {}, "output_type": "execute_result" } ], "source": [ "events_3fhl.galactic\n", "# events_3fhl.radec" ] }, { "cell_type": "code", "execution_count": 21, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "
\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "
Source_NameRAJ2000DEJ2000GLONGLATConf_95_SemiMajorConf_95_SemiMinorConf_95_PosAngROI_numSignif_AvgPivot_EnergyFlux_DensityUnc_Flux_DensityFluxUnc_FluxEnergy_FluxUnc_Energy_FluxSignif_CurveSpectrumTypeSpectral_IndexUnc_Spectral_IndexbetaUnc_betaPowerLaw_IndexUnc_PowerLaw_IndexFlux_Band [5]Unc_Flux_Band [5,2]nuFnu [5]Sqrt_TS_Band [5]NpredHEP_EnergyHEP_ProbVariability_BayesBlocksExtended_Source_NameASSOC_GAMTEVCAT_FLAGASSOC_TEVCLASSASSOC1ASSOC2ASSOC_PROB_BAYASSOC_PROB_LRRedshiftNuPeak_obs
degdegdegdegdegdegdegGeV1 / (cm2 GeV s)1 / (cm2 GeV s)1 / (cm2 s)1 / (cm2 s)erg / (cm2 s)erg / (cm2 s)1 / (cm2 s)1 / (cm2 s)erg / (cm2 s)GeVHz
bytes18float32float32float32float32float32float32float32int16float32float32float32float32float32float32float32float32float32bytes11float32float32float32float32float32float32float32float32float32float32float32float32float32int16bytes18bytes18bytes1bytes21bytes7bytes26bytes26float32float32float32float32
3FHL J0001.2-07480.3107-7.807589.0094-67.31180.04240.0424nan645.36223.735.3174e-132.0975e-132.9593e-111.1704e-111.6752e-121.0743e-121.02PowerLaw1.67240.82740.59160.71292.22260.48081.1127661e-11 .. 1.1422301e-22-6.0763976e-12 .. 6.529277e-123.533989e-13 .. 1.1789072e-223.1458344 .. 0.07.6386.9750.996413FGL J0001.2-0748NbllPMN J0001-07460.99740.9721nan306196370000000.0
3FHL J0001.9-41550.4849-41.9303334.1216-72.06970.10180.1018nan4295.63828.425.4253e-131.6839e-134.3230e-111.3428e-113.4900e-121.8276e-120.45PowerLaw1.78190.49410.11870.27981.94180.31002.1003905e-11 .. 1.9287885e-18-8.032091e-12 .. 5.8594097e-126.7452245e-13 .. 2.078675e-184.899907 .. 0.012.51266.6250.962213FGL J0002.2-4152Nbcu1RXS J000135.5-4155190.99600.0000nan6309576500000000.0
3FHL J0002.1-67280.5283-67.4825310.0868-48.95490.03570.0357nan3868.47020.821.2062e-123.2106e-135.0093e-111.3349e-112.3058e-129.5580e-131.53PowerLaw1.81090.62600.79330.59562.42850.37102.4550664e-11 .. 1.9009976e-21-8.634195e-12 .. 4.8021903e-127.7340695e-13 .. 1.9026535e-215.900217 .. 0.017.1152.1520.998813FGL J0002.0-6722NbcuSUMSS J000215-6726530.00000.9395nan4466832000000000.0
3FHL J0003.3-52480.8300-52.8150318.9245-62.79360.04250.0425nan1457.22923.667.5065e-132.3102e-134.1560e-111.2839e-112.2874e-121.1145e-121.70PowerLaw1.60100.56440.99720.17212.24810.37322.0886386e-11 .. 7.5867555e-23-8.143967e-12 .. 5.31299e-126.6265456e-13 .. 7.800202e-235.298393 .. 0.013.0267.3100.963613FGL J0003.2-5246NbcuRBS 00060.99960.9716nan7.079464e+16
3FHL J0007.0+73031.764773.0560119.662510.46660.01010.0101nan27775.26512.801.7436e-107.5950e-121.5308e-096.1341e-113.6785e-111.5973e-123.24LogParabola3.17510.21030.90210.26593.83150.11411.3514667e-09 .. 3.839895e-18-5.7581186e-11 .. 4.060418e-124.109739e-11 .. 2.9231144e-1871.33829 .. 0.0654.1560.2920.997213FGL J0007.0+7302ECTA 1PSRLAT PSR J0007+73031.00000.0000nannan
3FHL J0007.9+47111.993147.1920115.3093-15.03540.01960.0196nan30217.77417.195.9778e-128.7683e-131.5131e-102.2181e-115.1444e-121.0540e-120.56PowerLaw2.67830.41960.16960.32822.85880.26851.0582407e-10 .. 1.9819723e-16-1.7538379e-11 .. 4.823511e-123.278615e-12 .. 1.8668298e-1615.209969 .. 0.050.9568.1520.975913FGL J0008.0+4713NbllMG4 J000800+47121.00000.98730.28002511884200000000.0
3FHL J0008.4-23392.1243-23.651450.2908-79.70210.03660.0366nan5179.67916.963.0610e-127.3475e-137.4602e-111.7896e-112.4733e-128.1716e-130.34PowerLaw2.73880.71450.17370.56182.90700.45205.804992e-11 .. 1.1117311e-20-1.4419374e-11 .. 6.10661e-121.7951775e-12 .. 1.0403958e-209.133706 .. 0.019.8371.1220.996813FGL J0008.6-2340NbllRBS 00160.99960.96730.1470524807800000000.0
3FHL J0009.1+06282.28746.4814104.4637-54.86690.03850.0385nan4026.28218.921.2691e-124.3696e-134.1597e-111.4317e-111.6903e-128.9372e-130.10PowerLaw2.55290.83630.01220.44772.58000.53912.4161059e-11 .. 6.6482124e-19-9.546595e-12 .. 6.287476e-127.566492e-13 .. 6.5095056e-194.678369 .. 0.010.9512.2560.972113FGL J0009.1+0630NbllCRATES J000903.95+062821.50.99930.9878nan663742400000000.0
3FHL J0009.4+50302.350450.5049116.1257-11.81050.01760.0176nan30222.40217.049.8252e-121.3192e-122.2191e-102.6212e-118.7336e-121.2488e-123.15LogParabola1.43050.35050.79650.30722.36100.16111.16274e-10 .. 9.252794e-17-1.8225135e-11 .. 4.417993e-123.8564165e-12 .. 7.0436765e-1715.780677 .. 0.078.5072.7620.995023FGL J0009.3+5030CbllNVSS J000922+5030281.00000.9698nan1412536400000000.0
....................................................................................................................................
3FHL J2347.9-1630356.9978-16.510665.5355-71.87660.02880.0288nan4509.29716.283.1279e-128.0896e-136.7585e-111.7478e-112.0267e-126.5608e-130.07PowerLaw3.12590.77810.01040.57563.13240.52595.2519888e-11 .. 1.0747592e-20-1.4230782e-11 .. 6.211813e-121.6103665e-12 .. 9.768252e-218.333468 .. 0.017.5550.2150.986933FGL J2348.0-1630NfsrqPKS 2345-160.99940.99990.57609332549000000.0
3FHL J2350.5-3006357.6354-30.107016.7759-76.31940.04910.0491nan706.49721.201.0879e-123.2997e-134.7039e-111.4274e-112.2909e-121.1390e-120.63PowerLaw2.10120.61730.28800.48702.36780.42342.1939225e-11 .. 4.5892933e-16-8.926376e-12 .. 6.097474e-126.927891e-13 .. 4.63469e-164.0536985 .. 0.012.8449.2860.964413FGL J2350.4-3004NbllNVSS J235034-3006030.99980.92180.22373981075200000000.0
3FHL J2351.5-7559357.8926-75.9890307.6546-40.58550.06500.0650nan556.06726.824.9826e-131.6350e-133.5689e-111.1769e-112.3897e-121.2622e-120.61PowerLaw1.84740.58020.20030.36612.08160.35322.3730832e-11 .. 6.9375605e-17-8.570627e-12 .. 4.7928705e-127.578736e-13 .. 7.316245e-175.2754674 .. 0.012.41134.7210.989213FGL J2351.9-7601NbllSUMSS J235115-7600120.00000.9625nannan
3FHL J2352.1+1753358.041517.8865103.5764-42.74660.08380.0838nan1854.11716.979.9227e-134.3475e-132.4254e-111.0640e-117.6327e-134.2356e-130.02PowerLaw3.01751.21640.01000.85243.01660.82701.5997077e-11 .. 2.9107688e-20-7.581037e-12 .. 5.821708e-124.926488e-13 .. 2.6849966e-203.5496242 .. 0.06.7343.1070.966813FGL J2352.0+1752NbllCLASS J2352+17490.99260.0000nan1737799900000000.0
3FHL J2356.2+4035359.074640.5985111.7521-21.07320.02980.0298nan3127.62529.015.2427e-131.5104e-134.3400e-111.2511e-113.6677e-121.8547e-120.35PowerLaw2.02330.4242-0.07060.19261.90950.29752.5777725e-11 .. 3.110794e-16-8.514681e-12 .. 5.4134618e-128.2889175e-13 .. 3.3694582e-166.2127647 .. 0.013.81417.8610.911913FGL J2356.0+4037NbllNVSS J235612+4036480.99980.91990.13106309576500000000.0
3FHL J2357.4-1717359.3690-17.299668.4009-74.12850.03270.0327nan4506.96129.525.4394e-131.7370e-134.6654e-111.4945e-113.7598e-121.9583e-121.11PowerLaw1.57620.51870.35130.37711.94300.31161.9003682e-11 .. 2.714288e-20-8.131149e-12 .. 6.4742196e-126.1025685e-13 .. 2.92465e-204.552822 .. 0.012.30146.7570.983813FGL J2357.4-1716NbllRBS 20660.99990.9631nan8.912525e+16
3FHL J2358.4-1808359.6205-18.140866.5520-74.85010.05110.0511nan4506.49318.231.6335e-124.9686e-134.8680e-111.4811e-111.7825e-127.6480e-131.83PowerLaw2.05320.66730.99990.01342.73120.50242.6735683e-11 .. 6.0349635e-21-9.960717e-12 .. 6.2551535e-128.323882e-13 .. 5.7844478e-214.3616037 .. 0.012.7428.3040.984513FGL J2358.6-1809N0.00000.0000nannan
3FHL J2358.5+3829359.626638.4963111.6905-23.21730.05840.0584nan3125.79718.241.4104e-124.4534e-134.2106e-111.3321e-111.7404e-129.8271e-130.44PowerLaw2.74660.6917-0.13290.30132.55760.57812.824428e-11 .. 9.750687e-17-9.458818e-12 .. 5.2791343e-128.852925e-13 .. 9.5778846e-175.7128677 .. 0.013.1357.3010.978213FGL J2358.5+3827NbcuB3 2355+3820.00000.9254nannan
3FHL J2359.1-3038359.7760-30.639712.7909-78.02680.02310.0231nan7011.55121.211.8903e-124.1965e-138.1774e-111.8149e-114.2849e-121.6806e-120.08PowerLaw2.28650.46320.01010.24342.29440.30925.5015617e-11 .. 6.037456e-17-1.3604539e-11 .. 8.488618e-121.7422797e-12 .. 6.164239e-179.39347 .. 0.022.41111.3660.960713FGL J2359.3-3038PH 2356-309bllH 2356-3090.99990.99750.16502.818388e+17
3FHL J2359.3-2049359.8293-20.825658.0522-76.54110.07220.0722nan5804.63819.029.1911e-133.6043e-133.0559e-111.1979e-111.2593e-127.4704e-130.32PowerLaw2.34020.94450.18510.66002.56150.58382.3253791e-11 .. 8.3778735e-21-8.939083e-12 .. 6.2386546e-127.2875863e-13 .. 8.224765e-214.8207045 .. 0.08.0664.1770.985913FGL J2359.5-2052NbllTXS 2356-2100.98940.99060.09604073799600000000.0
" ], "text/plain": [ "\n", " Source_Name RAJ2000 DEJ2000 ... Redshift NuPeak_obs \n", " deg deg ... Hz \n", " bytes18 float32 float32 ... float32 float32 \n", "------------------ -------- -------- ... -------- ------------------\n", "3FHL J0001.2-0748 0.3107 -7.8075 ... nan 306196370000000.0\n", "3FHL J0001.9-4155 0.4849 -41.9303 ... nan 6309576500000000.0\n", "3FHL J0002.1-6728 0.5283 -67.4825 ... nan 4466832000000000.0\n", "3FHL J0003.3-5248 0.8300 -52.8150 ... nan 7.079464e+16\n", "3FHL J0007.0+7303 1.7647 73.0560 ... nan nan\n", "3FHL J0007.9+4711 1.9931 47.1920 ... 0.2800 2511884200000000.0\n", "3FHL J0008.4-2339 2.1243 -23.6514 ... 0.1470 524807800000000.0\n", "3FHL J0009.1+0628 2.2874 6.4814 ... nan 663742400000000.0\n", "3FHL J0009.4+5030 2.3504 50.5049 ... nan 1412536400000000.0\n", " ... ... ... ... ... ...\n", "3FHL J2347.9-1630 356.9978 -16.5106 ... 0.5760 9332549000000.0\n", "3FHL J2350.5-3006 357.6354 -30.1070 ... 0.2237 3981075200000000.0\n", "3FHL J2351.5-7559 357.8926 -75.9890 ... nan nan\n", "3FHL J2352.1+1753 358.0415 17.8865 ... nan 1737799900000000.0\n", "3FHL J2356.2+4035 359.0746 40.5985 ... 0.1310 6309576500000000.0\n", "3FHL J2357.4-1717 359.3690 -17.2996 ... nan 8.912525e+16\n", "3FHL J2358.4-1808 359.6205 -18.1408 ... nan nan\n", "3FHL J2358.5+3829 359.6266 38.4963 ... nan nan\n", "3FHL J2359.1-3038 359.7760 -30.6397 ... 0.1650 2.818388e+17\n", "3FHL J2359.3-2049 359.8293 -20.8256 ... 0.0960 4073799600000000.0" ] }, "execution_count": 24, "metadata": {}, "output_type": "execute_result" } ], "source": [ "fermi_3fhl = SourceCatalog3FHL()\n", "fermi_3fhl.table" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "This looks very familiar again. The data is just stored as an [astropy.table.Table](http://docs.astropy.org/en/stable/api/astropy.table.Table.html#astropy.table.Table) object. We have all the methods and attributes of the `Table` object available. E.g. we can sort the underlying table by `Signif_Avg` to find the top 5 most significant sources:\n", "\n" ] }, { "cell_type": "code", "execution_count": 25, "metadata": {}, "outputs": [ { "data": { "text/html": [ "Table masked=True length=5\n", "
\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "
Source_NameASSOC1ASSOC2CLASSSignif_Avg
bytes18bytes26bytes26bytes7float32
3FHL J0534.5+2201Crab NebulaPWN168.641
3FHL J1104.4+3812Mkn 421BLL144.406
3FHL J0835.3-4510PSR J0835-4510Vela X fieldPSR138.801
3FHL J0633.9+1746PSR J0633+1746PSR99.734
3FHL J1555.7+1111PG 1553+113BLL94.411
" ], "text/plain": [ "\n", " Source_Name ASSOC1 ... CLASS Signif_Avg\n", " bytes18 bytes26 ... bytes7 float32 \n", "------------------ -------------------------- ... ------- ----------\n", "3FHL J0534.5+2201 Crab Nebula ... PWN 168.641\n", "3FHL J1104.4+3812 Mkn 421 ... BLL 144.406\n", "3FHL J0835.3-4510 PSR J0835-4510 ... PSR 138.801\n", "3FHL J0633.9+1746 PSR J0633+1746 ... PSR 99.734\n", "3FHL J1555.7+1111 PG 1553+113 ... BLL 94.411" ] }, "execution_count": 25, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# sort table by significance\n", "fermi_3fhl.table.sort(\"Signif_Avg\")\n", "\n", "# invert the order to find the highest values and take the top 5\n", "top_five_TS_3fhl = fermi_3fhl.table[::-1][:5]\n", "\n", "# print the top five significant sources with association and source class\n", "top_five_TS_3fhl[[\"Source_Name\", \"ASSOC1\", \"ASSOC2\", \"CLASS\", \"Signif_Avg\"]]" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "If you are interested in the data of an individual source you can access the information from catalog using the name of the source or any alias source name that is defined in the catalog:" ] }, { "cell_type": "code", "execution_count": 26, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "144.40611\n" ] } ], "source": [ "mkn_421_3fhl = fermi_3fhl[\"3FHL J1104.4+3812\"]\n", "\n", "# or use any alias source name that is defined in the catalog\n", "mkn_421_3fhl = fermi_3fhl[\"Mkn 421\"]\n", "print(mkn_421_3fhl.data[\"Signif_Avg\"])" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Exercises\n", "\n", "* Try to load the Fermi-LAT 2FHL catalog and check the total number of sources it contains.\n", "* Select all the sources from the 2FHL catalog which are contained in the Galactic Center region. The methods [`WcsGeom.contains()`](https://docs.gammapy.org/stable/api/gammapy.maps.WcsGeom.html#gammapy.maps.WcsGeom.contains) and [`SourceCatalog.positions`](https://docs.gammapy.org/stable/api/gammapy.catalog.SourceCatalog.html#gammapy.catalog.SourceCatalog.positions) might be helpful for this. Add markers for all these sources and try to add labels with the source names. The function [ax.text()](http://matplotlib.org/api/_as_gen/matplotlib.axes.Axes.text.html#matplotlib.axes.Axes.text) might be also helpful.\n", "* Try to find the source class of the object at position ra=68.6803, dec=9.3331\n", " " ] }, { "cell_type": "code", "execution_count": 27, "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Spectral models and flux points\n", "\n", "In the previous section we learned how access basic data from individual sources in the catalog. Now we will go one step further and explore the full spectral information of sources. We will learn how to:\n", "\n", "* Plot spectral models\n", "* Compute integral and energy fluxes\n", "* Read and plot flux points\n", "\n", "As a first example we will start with the Crab Nebula:" ] }, { "cell_type": "code", "execution_count": 27, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "PowerLaw\n", "\n", "Parameters: \n", "\n", "\t name value error unit min max frozen\n", "\t--------- --------- --------- -------------- --- --- ------\n", "\t index 2.220e+00 2.498e-02 nan nan False\n", "\tamplitude 1.713e-10 3.389e-12 cm-2 GeV-1 s-1 nan nan False\n", "\treference 2.273e+01 0.000e+00 GeV nan nan True\n", "\n", "Covariance: \n", "\n", "\t name index amplitude reference\n", "\t--------- --------- --------- ---------\n", "\t index 6.241e-04 0.000e+00 0.000e+00\n", "\tamplitude 0.000e+00 1.148e-23 0.000e+00\n", "\treference 0.000e+00 0.000e+00 0.000e+00\n" ] } ], "source": [ "crab_3fhl = fermi_3fhl[\"Crab Nebula\"]\n", "print(crab_3fhl.spectral_model)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "The `crab_3fhl.spectral_model` is an instance of the [gammapy.spectrum.models.PowerLaw2](..\/api/gammapy.spectrum.models.PowerLaw2.rst#gammapy.spectrum.models.PowerLaw2) model, with the parameter values and errors taken from the 3FHL catalog. \n", "\n", "Let's plot the spectral model in the energy range between 10 GeV and 2000 GeV:" ] }, { "cell_type": "code", "execution_count": 28, "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAZIAAAEOCAYAAACjJpHCAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADl0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uIDMuMC4yLCBodHRwOi8vbWF0cGxvdGxpYi5vcmcvOIA7rQAAIABJREFUeJzt3XeYVPXZxvHvswtLEVh6kY50XFBAUMqihipSFEywFyKxYIEYxcS8MdFYYl4UFQsqYklQA6iABUSRBUSlqDSloyAISxGkl33eP3ZNNvuyhZ2ZPTOz9+e65mLnzJlzbi6P+/A7v3OeY+6OiIhIYSUEHUBERGKbComIiIREhUREREKiQiIiIiFRIRERkZCokIiISEhUSEREJCQqJCIiEhIVEhERCYkKiYiIhKRE0AGKQtWqVb1BgwZBxxARiSmLFy/e4e7V8luvWBSSBg0asGjRoqBjiIjEFDP7tiDr6dSWiIiERIVERERCokIiIiIhUSEREZGQxORku5klAPcBFYBF7v5SwJFERIqtIh+RmNl4M9tuZstzLO9tZqvMbK2ZjcpnMwOA2sBRYHOksoqISP6COLU1AeidfYGZJQJjgT5AS+BSM2tpZilmNj3HqzrQDFjg7iOBGyMV1N2ZvHgzR45lRGoXIiIxr8gLibunAbtyLO4ArHX39e5+BHgNGODuy9z9whyv7WSOQnZnffd4pLJ+tmEXv/3XV/R7Yh5fbfoxUrsREYlp0TLZXhvYlO395qxluZkC9DKzJ4C0E61gZsPMbJGZLUpPTy9UqLMbVeH5q9qz5+BRLnpqPn99ZyUHj0SsbomIxKRomWy3Eyzz3FZ29wPA0Lw26O7jgHEA7du3z3Vb+enesgYdGlXmofe+4bm5G5i5chsPXdyac06rUthNiojElWgZkWwG6mZ7XwfYEupGzayfmY3bs2dPSNupULokD1yUwsTrzwbg0uc+5e4py9h76GioEUVEYl60FJKFQBMza2hmScAQYGqoG3X3ae4+LDk5OeSAAOecVoX3b0tlWGojXl/4HT1HpzFr5bawbFtEJFYFcfnvRGAB0MzMNpvZUHc/BgwHZgBfA2+4+4ow7CssI5LsyiQl8vsLWvDmTZ2pWLYkv355EbdO/IKd+w6HbR8iIrHE3As9fRAz2rdv75Ho/nvkWAZPf7yOJ2evoVypEtzbvxX925yK2YmmfEREYouZLXb39vmtFy2ntiIiEiOS7JJKJHBb9ya8c2tX6lc5hdte+5KhLy1iy48HI7I/EZFopBFJmBzPcCZ8spG/z1hFYoJx9wXNufSseiQkaHQiIrFJI5IilphgDO3SkBm3p9KmbjJ/eHM5lz73KRt27A86mohIRMV1IYn0qa0TqVelLK8O7cjDg1JYuXUvvR9LY1zaOo4dV5sVEYlPOrUVQdv2HuKet5bzwcpttK6TzMODWtOiVoUizyEiUhg6tRUFalQozbgr2/HkZWfy/e6D9HtiHqM/WM3hY2qzIiLxI64LSRCntk6QgQtbn8qskd3o3+ZUHv9wDRc+Po8l3+3O/8siIjFAp7aK2OxV2/nDlGVs3XuIazs15I5eTSmbFC0tz0RE/kOntqLUec2qM2NEKld0rM/4+Rvo9Vga89fuCDqWiEihqZAEoHzpktw38HReH3Y2JRISuPz5z7hr0lL2HFQTSBGJPXFdSKJhjiQvHRtV4b3bunJDt9OYtGQzPUbPYeaKH4KOJSJyUjRHEiWWbd7DnZOX8vXWvfRtXYt7+7WiWvlSQccSkWJMcyQxJqVOMlOHd+aOnk35YMU2ejw6hylLNlMcCr2IxDYVkihSMjGB4ec34d3butCo6imMfOMrrp2wkO/VBFJEopgKSRRqXL08/7qhE/f2a8nnG3bRc/QcXlmwkYwMjU5EJPrEdSGJ9sn2vCQmGNd0zmwC2bZ+Jf749gqGjPuU9en7go4mIvJfNNkeA9ydSYs3c9/0lRw6lsGI7k25vmtDSiTG9b8DRCRgmmyPI2bGJe3rMuu33Ti/WXUefv8bBj41nxVbYm+kJSLxR4UkhlQvX5pnrmzH05e35Yc9h+n/5HwemfENh46qCaSIBEeFJAb1SanFrJGpDDyjNmNnr6Pv43NZ/O2uoGOJSDGlQhKjKpZN4n9/2YaXruvAoaMZDH5mAfdOXcH+w8eCjiYixUxcF5JYvmqroLo1rcaMEalcdXZ9XlqwkZ6PppG2Oj3oWCJSjOiqrTiyaOMu7py8lPXp+xncrg739G1BxbJJQccSkRilq7aKofYNKvPurV25+bzTePOL7+nxaBrvL98adCwRiXMqJHGmdMlEfterOVOHd6Z6+VLc8OoSbnx1Mdt/OhR0NBGJUyokcarVqcm8dXNn7uzdjA+/2U6P0Wn8a9EmNYEUkbBTIYljJRMTuOncxrx3W1ea1ijH7yYt5arxn7Np14Ggo4lIHFEhKQZOq1aO14edw18GtGLJt7vp9VgaE+ZvUBNIEQkLFZJiIiHBuOqcBswYkcpZDSpz77SVXPLsAtZu/ynoaCIS42KykJhZVzN7xsyeN7NPgs4TS+pUKsuEa8/ify9pw7r0fVwwZh5jZ6/l6PGMoKOJSIwq8kJiZuPNbLuZLc+xvLeZrTKztWY2Kq9tuPtcd78BmA68FMm88cjMGNSuDh+M6EaPljV4ZMYqBjw5n+Xfx++NmyISOUGMSCYAvbMvMLNEYCzQB2gJXGpmLc0sxcym53hVz/bVy4CJRRU83lQrX4qxl7flmSvakb7vMAPGzufh99UEUkROTomi3qG7p5lZgxyLOwBr3X09gJm9Bgxw9weBC0+0HTOrB+xx970RjFss9D69Juc0qsID737N0x+vY8byH3hoUGs6NKwcdDQRiQHRMkdSG9iU7f3mrGV5GQq8mNuHZjbMzBaZ2aL0dPWeyk9y2ZI8PLg1rw7tyJHjGfzy2QX88a3l7FMTSBHJR7QUEjvBsjyvTXX3P7l7rhPt7j7O3du7e/tq1aqFHLC46NKkKjNHpHJd54a8+tm39Bw9h9mrtgcdS0SiWLQUks1A3Wzv6wBbQt1ocej+Gwllk0rwP/1aMumGTpQtVYJrX1zIyNe/ZPf+I0FHE5EoFC2FZCHQxMwamlkSMASYGupG3X2auw9LTk4OOWBx1K5+Jd65tQu3nN+YqV9tocejc3hn6Va1WRGR/xLE5b8TgQVAMzPbbGZD3f0YMByYAXwNvOHuK8KwL41IQlSqRCK/7dmMqcO7UDO5NDf/cwm/eWUx2/eqCaSIZNLzSKTAjh3P4Pl5G3j0g9WUKpHAPX1bckn7OpidaIpLRGKdnkeCRiThViIxgRu6ncZ7t3Wlec0K3Dl5KVe+oCaQIsVdniMSM1tSgG2ku3uv8EUKP41Iwi8jw/nH59/x8HvfcDzD+V2vZlzdqQGJCRqdiMSLgo5I8rshsRTQP6/9AFNOJpjEh4QE48qz6/OL5tX5w5vL+Mv0lUxfuoWHB7WmSY3yQccTkSKU34jkXHf/OM8NFGCdoJhZP6Bf48aNr1+zZk3QceKWu/P2l1v487QV7D98nOHnN+bGc0+jZGJcnzkViXsFHZFosl3CZse+w9w7dQXTl26lec3yPDK4DSl1dOm1SKwK22S7mZ1lZmPMbImZbTWz9WY21cx+Y2Y6hyH/VrVcKZ68rC3PXdWe3QeOMGDsPB5892s1gRSJc3kWEjObTub9HXOAgUBDoC1wP1AReMfMTthUMRroqq1g9GhZg5kjuvHL9nV5Nm09fcbM5dP1O4OOJSIRkt8cSQ1335bnBsyqu3tUN2PSqa3gfLJ2B6OmLOO7XQe4vGM9RvVpTvnSJYOOJSIFEK5TW3ebWYe8Voj2IiLB6tS4Ku/f3pWhXRoy8fPv6PloGrO/0SEjEk/yKySbgLFmts7M/mpmpxdFKIkvZZNK8McLWzL5xk6UK1WCaycs5PbXvmCXmkCKxIUCXbVlZqeR2UhxCJn3jvwTeO3nB1FFK13+G30OHzvO2NnreGr2WpLLlOTe/q24sHUttVkRiUIRu/zXzNoBzwOt3T2xkPmKlOZIos83P+zlzklLWbp5D91bVOf+gSnUTC4ddCwRySasvbbMLNHM+pjZS8A7wHrgVyFmlGKsec0KTLmxE3+4oAXz1u6gx+g5TPz8O7WoF4lB+V3+e56ZjQO+B24FPgKauPsgd59UFAElfpVITOD61Ea8f1sqrWpX4O4py7jsuc/4duf+oKOJyEnI7/LfuWTOh0xy95h78LnmSGKHuzPx8008+O7XHM3I4I6ezbi2c0M1gRQJUNjnSMzsbKCpu79sZlWAU9z9uxBzFgnNkcSOH/Yc4p63ljHr6+20qVuRvw1qTbOaaqAgEoRwz5HcA/wJuCdrUWkyRyoiYVUzuTTPXdWeMUPOYNOuA1z4xFwem7WaI8cygo4mIrkoaHvWwcAFwH4Ad/8eqBCpUFK8mRkDzqjNrJHduCClFo/NWkO/J+bx5aYfg44mIidQ0EJy2DPPgTmAmZWNXCSRTJVPSWLMkDN54er27Dl4lIufms9f31nJwSNqAikSTQpaSKaY2Vgg2cyuBWYC4yMXS+Q/ftGiBjNHpjKkQz2em7uBXo+l8cm6HUHHEpEsJzPZ3gfoSead7TPc/b1IBgsnTbbHjwXrdnL3lKVs3HmASzvU4+4LmlNBTSBFIiIsV22Z2Ux37xnWZEVIl//Gp4NHjvPYrNU8N3c91cqX4q8DU+jeskbQsUTiTriu2qoWpjyBcPdp7j4sOVlP6YsnZZISufuCFrx5U2cqlU3i1y8v4paJX7Bj3+Ggo4kUSyXy+TzZzC7O7UN3nxLmPCIF1qZuRaYO78Izc9bxxEdrmLcmnT/1a8WAM05VE0iRIpTfqa2dwNtkzovk5O5+XaSChZPmSOLf6m0/ceekpXy56UfOb16d+weezqkVywQdSySmhWuOZIm7tw1rsgCokBQPxzOcCZ9s5O8zVpGYYIzq05zLOtQjQW1WRAolXHMk+j9QYkZigjG0S0NmjkilTd1k7nlrOZc+9ykbdqgJpEgk5VdIriySFCJhVLdyWV4d2pG/DWrNyq176f1YGs/OWcex42qzIhIJeRYSd19eVEFEwsnM+OVZdZk1shvdmlbjwfe+4aKnPuHrrXuDjiYSdwp6Z3tUMbN6ZjbVzMab2aig80j0qlGhNM9e2Y6xl7Vl656D9HtiHqNnruLwMbVZEQmXky4kZlbJzFoXdodZv/y3m9nyHMt7m9kqM1tbgOLQFHgn66qxloXNIsWDmdG3dS0+GNGN/m1O5fGP1tL38Xks+W530NFE4kJB28h/bGYVzKwy8BXwopmNLuQ+JwC9c2w/ERgL9CGzMFxqZi3NLMXMpud4VQe+AIaY2UfA7ELmkGKm0ilJjP7VGbx47VkcOHyMQU9/wl+mreTAkWNBRxOJaQUdkSS7+17gYuBFd28HdC/MDt09DdiVY3EHYK27r3f3I8BrwAB3X+buF+Z4bQeuBf7k7ucDfQuTQ4qv85pVZ+bIblzRsT7j52+g56NpzFujJpAihVXQQlLCzGoBvwSmRyBHbWBTtvebs5bl5n3gVjN7Bth4ohXMbJiZLTKzRenpMfeUYImwcqVKcN/A03njN+dQMjGBK174jDsnfcWeg0eDjiYScwpaSP4CzCBz1LDQzBoB4eyCeMI753Nb2d2Xu/tgd7/B3e/IZZ1x7t7e3dtXqxbTLcMkgjo0rMx7t3XlxnNPY/KS7+kxeg7vL/8h6FgiMaVAhcTd/+Xurd39pqz36919UBhzbAbqZntfB9gS6kbNrJ+ZjduzZ0+om5I4VrpkInf1bs5bN3WmSrlS3PDqYm7+xxLSf1ITSJGCiJbLfxcCTcysoZklAUOAqaFuVN1/5WSk1Elm6vDO/K5XMz5YuY3uo+cwefFmCvrMHpHiqsgLiZlNBBYAzcxss5kNdfdjwHAyT599Dbzh7ivCsC+NSOSklExM4ObzGvPubV1pXL0cv/3XV1zz4kK+//Fg0NFEolaBn5AYy9S0UQojI8N55dNvefj9bzDgrj7NuaJjfTWBlGIjXE0bMbPmZvYLMyuXY3nv3L4TLTQikVAkJBhXd2rAjNtTaVu/Ev/z9gp+NW4B69L3BR1NJKrkWUjM7FYyn0dyC7DczAZk+/iBSAYLB82RSDjUrVyWl6/rwCODW7N62z76jJnLUx+v5aiaQIoA+Y9IrgfauftA4Fzgj2Z2W9ZnUT++14hEwsXMuKR9XT4Ymcovmlfnb++vYuDY+azYomNLJL9Ckuju+wDcfSOZxaRPVnuUqC8kGpFIuFUvX5qnr2jH05e3Zdvew/R/cj6PzPiGQ0fVBFKKr/wKyQ9mdsbPb7KKyoVAVSAlksFEolmflFrMGpnKRWfWZuzsdfR9fC6Lv83Z+UekeMivkFwF/Ndtvu5+zN2vAlIjlipMdGpLIqli2ST+fkkbXrquA4eOZjD4mQXcO3UF+w+rCaQULwW+/NfMKpF593mJn5e5+5II5QorXf4rkbb/8DEembGKlxZs5NTkMjx4cQqpTdWaR2JbQS//LVAhMbP7gGuAdfynB5Zndd+NeiokUlQWbdzFnZOXsj59P4Pb1eGevi2oWDYp6FgihRLuQrIKSMlq8R5zVEikKB06epwnP1rL03PWUalsEvcNaEWflFpBxxI5aWG7ITHLcqBiaJGKnuZIJAilSyZyR69mTB3emRoVSnHjP5Zw46uL2f7ToaCjiUREQUck7cm8MXE58O+WqO7eP3LRwkcjEgnK0eMZPD93A4/OWk2Zkonc07cFg9vVwSzqr54XCfuprRXAs8Ay4N+387r7nFBCFhUVEgnauvR9jJq8lIUbd9O1SVUeuCiFupXLBh1LJE/hLiRz3L1bWJIFQIVEokFGhvPqZ9/y8Hvf4MDvejXjqnMakKgmkBKlwj1HstjMHjSzc8ys7c+vEDOKFCsJCcZV5zRgxohUzmpQmT9PW8kvn13A2u0/BR1NJCQFHZHMPsHiqL/818z6Af0aN258/Zo14XwysEho3J03v/iev0xfyYHDx7mtexOGpTaiZGK0PGtOJMyntmKdTm1JtEr/6TD3Tl3BO8u20qJWBR4Z3JrTa6s3nESHsJ7aMrMHzKxitveVzOz+UAKKCFQrX4qxl7flmSvasWPfYQaMnc/D76sJpMSWgo6j+7j7jz+/cffdwAWRiSRS/PQ+vSazRnRjUNvaPP3xOi4YM5fPN6gJpMSGghaSRDMr9fMbMysDlMpjfRE5ScllS/K3wW14dWhHjhzP4JfPLuCPby1nn5pASpQraCF5FfjQzIaa2XXAB8BLkYslUnx1aVKVGbencl3nhrz62bf0HD2H2au2Bx1LJFcn0/23N9CdzAdazXT3GZEMFk6abJdYtfjb3YyavJQ12/dx8Zm1+eOFLal0ippAStEIy1VbZmaeT6UpyDpB0eW/Eg8OHzvO2I/W8tTH66hYtiT39m9F35RaarMiEReuq7Zmm9ktZlYvx8aTzOx8M3sJuDqUoJGkR+1KPChVIpGRPZsx7ZYunFqxDMP/+QXDXlnMtr1qAinRIb9C0hs4Dkw0sy1mttLMNgBrgEuBR919QoQzigjQolYFptzYibv7NCdtdTrdR8/h9YXfEaUnBKQYOZk5kpJkPqv9YPZLgWOB5kgk3mzYsZ+7Ji/l8w276Ny4Cg9e1Jp6VdQEUsIr3L22cPej7r411oqISDxqWPUUXrv+bO4feDpfbdpDr8fSeGHeBo5naHQiRU+NfURiVEKCccXZ9Zk5IpWzG1XmvukrGfzMJ6zZpiaQUrRUSERi3KkVyzD+mrN47FdnsHHHfvo+Po/HP1zDkWMZ+X9ZJAzyLCRmNsPMRphZ86IKJCInz8wYeGZtZo3sRq/TazL6g9X0f3IeX23SmWiJvPxGJFcDu4F7zWyJmT1tZgPMrFwRZMuVmbU0szey8gwOMotINKlSrhRPXHomz13Vnt0HjnDRU/N54N2vOXhETSAlcvIsJO7+g7tPcPchQHvgZaAdMMPMZpnZnSe7QzMbb2bbzWx5juW9zWyVma01s1H5bKYP8IS73whcdbIZROJdj5Y1mDmiG786qy7j0tbTZ0waC9btDDqWxKlCP4/EzKoCvdz9Hyf5vVRgH/Cyu5+etSwRWA30ADYDC8m8TyUReDDHJq7L+vNPwAGgk7t3zmufuvxXirNP1u5g1JRlfLfrAJd3rMeoPs0pX7pk0LEkBkT1g63MrAEwPVshOQe41917Zb2/G8DdcxaRnNtJBKa4+4C81lMhkeLu4JHj/O/MVYyfv4EaFUrz14tO5/zmNYKOJVEu7PeRRFhtYFO295uzlp2QmTUws3Fknmp7JJd1hpnZIjNblJ6eHtawIrGmTFIi91zYkik3daZC6ZJcN2ERt7/2Bbv2Hwk6msSBEkEHyHKi7nO5DpXcfSMwLK8Nuvs4M9sK9EtKSmoXWjyR+HBG3YpMu6ULT328lrGz15K2Zgf39m9Fv9ZqAimFV+gRiZldG8Ycm4G62d7XAbaEulE1bRT5/5JKJHB796ZMv6UrdSuX5daJX3D9y4v4YY+aQErhhHJq689hS5E5ud7EzBqaWRIwBJga6kbNrJ+ZjduzZ0/IAUXiTbOa5ZlyYyfu6duCeWt30GP0HCZ+riaQcvLyex7J0tw+Apq6+0k/btfMJgLnktkAchvwJ3d/wcwuAB4j80qt8e7+15Pddm402S6St2937mfU5GUsWL+TcxpV4aFBKdSvckrQsSRg4Xqw1TagF5k3Jf7XR8An7n5qSCkjTA+2Eik4d+e1hZt44J2vOZqRwR09m3Ft54YkJmjupLgK11Vb04Fy7v5tjtdG4OMw5IwozZGIFJyZcWmHenwwshtdGlfl/ne+5uKnP2HVD2oCKXkL5D6SoqZTWyInx92ZtnQr905dwU+HjnLTuY25+bzGJJWIljsGpCjE2n0kEaHJdpHCMTP6tzmVWSO7cUFKLcZ8uIYLn5jLl2oCKSeQX/ffJfltoCDrBEWntkRCU/mUJMYMOZPx17Tnp0PHuPip+dw/faWaQMp/ye+GxBZ5XLkFmZPu+i0tEufOb16DmSMq89B73/D8vA3MXLmNhy5OoVPjqkFHkyiQ31Vb9QuwjePuvjl8kcJHV22JhN+n63cyavJSNu48wKUd6jKqTwuSy6gJZDyK6qaNRU2T7SLhdfDIcR6btZrn5q6nWvlS3D8whR4t1QQy3miyXUQipkxSIndf0IK3bu5MpbJJXP/yIob/cwk79h0OOpoEQIVERAqtdZ3MJpC/7dGUmSu20WP0HN78YrParBQzBSokZtbyBMvODXuaMNPlvyKRVzIxgVt+0YR3bu1Cg6qnMOL1r7huwkK2/Hgw6GhSRAo0R5L1WNxXgL8BpbP+bO/u50Q2XnhojkSkaBzPcF76ZCOPzFhFYoJxV5/mXN6hHglqsxKTwj1H0pHMNu+fkNmpdwuQ5+NtRaT4SUwwruvSkBm3p9KmbjJ/fGs5Q577lA079gcdTSKooIXkKHAQKEPmiGSDu2dELJWIxLR6Vcry6tCO/G1Qa77eupfej6XxzJx1HDuuXxvxqKCFZCGZheQsoAtwqZlNilgqEYl5ZsYvz6rLrJHd6Na0Gg+99w0XPfUJK7fsDTqahFlBC8lQd/8fdz/q7j+4+wDg7UgGCwdNtosEr0aF0jx7ZTvGXtaWrXsO0v/JefzvzFUcPqY2K/GioJPt9U603N2/C3uiCNBku0h02L3/CPdNX8mUL76ncfVyPDyoNe3qVwo6luQirHe2m9kywMnsrVUaaAiscvdWoQYtCiokItFl9qrt/GHKMrbuPcQ1nRpwR89mnFIqv9Z/UtTCetWWu6e4e+usP5sAHYB5oYYUkeLpvGbVmTmyG1eeXZ8X52+k12NpzF2THnQsKaRC3dnu7kvInHgXESmUcqVK8JcBp/PGb84hKTGBK1/4nDsnfcWeA0eDjiYnqUBjSTMbme1tAtAW0D8fRCRkHRpW5t3bujLmwzWMS1vPx6vSuW/g6fRqVTPoaFJABR2RlM/2KgW8AwyIVCgRKV5Kl0zkrt7NefvmzlQtV4rfvLKYm/+xhPSf1AQyFsR1G3k9j0Qk9hw9nsG4tPWMmbWGMkmJ/M+FLbm4bW3M1GalqIXlqi0zm0bm1Von5O79CxevaOmqLZHYs3b7Pu6avJTF3+4mtWk1HrjodOpUKht0rGIlXIWkW15fdvc5hchW5FRIRGJTRobzyqff8vD732DAXX2ac0XH+moCWUTCVUjqxcpNh3lRIRGJbZt2HeD3by5j7podnNWgEg8Nas1p1coFHSvuhes+kreybXByyKlERAqhbuWyvHxdB/5+SRtWb9tHnzFzeerjtRxVE8iokF8hyT5+bBTJICIieTEzBrerwwcjU+neojp/e38VA8fOZ/n36qUXtPwKiefys4hIIKqXL81Tl7fjmSvasm3vYQaMnc8jM77h0FE1gQxKfoWkjZntNbOfgNZZP+81s5/MrEh6QZtZIzN7IXvbejM7xcxeMrPnzOzyosghItGl9+m1+HBkNy4+szZjZ6/jgsfnsmjjrqBjFUt5FhJ3T3T3Cu5e3t1LZP388/sK+W3czMab2fasR/VmX97bzFaZ2VozG5VPhvXuPjTH4ouBSe5+PRATlyCLSPglly3JI5e04eXrOnD4aAaXPLuAe6euYP/hY0FHK1YK1WvrJEwAemdfYGaJwFigD9CSzIdktTSzFDObnuNVPZft1gE2Zf2s8axIMZfatBozR6Ry9TkNeGnBRno+msac1eriVFQiWkjcPQ3IOdbsAKzNGmkcAV4DBrj7Mne/MMdrey6b3kxmMYHIF0MRiQGnlCrBvf1bMemGcyhdMoGrx3/Ob9/4ih8PHAk6WtwL4pdwbf4zmoDMolA7t5XNrIqZPQOcaWZ3Zy2eAgwys6eBabl8b5iZLTKzRenp+peJSHHRrn5l3rm1K8PPa8xbX35P99FpvLdsa9Cx4loQT5I50S2pebVh2QnckGPZfuDavHbi7uOAcZB5Q+LJxxSRWFW6ZCJ39GpGn5Sa3DV5KTf+Ywm9W9XkLwNaUb1C6aDjxZ0gRiSbgbrZ3tcBtkRiR3pmu0jx1urUZN66qTN39W6SZO36AAAMcElEQVTOR6u20330HN5YtIl4blYbhCAKyUKgiZk1NLMkYAgwNRI7cvdp7j4sOTk5EpsXkRhQIjGBG889jfdu60qzmuW5c9JSrhr/OZt2HQg6WtyIaCExs4nAAqCZmW02s6HufgwYDswAvgbecPcVEdq/RiQiAsBp1crx+rBzuG9AK5Z8u5tej6Xx4vwNHM/Q6CRUcf08kp+paaOIZPf9jwf5/ZRlzFmdTrv6lXh4UAqNq5cPOlbUCVfTxpimEYmInEjtimWYcO1ZPPqrNqxL38cFY+bx5Edr1ASykDQiEZFiLf2nw9w7bQXvLN1K85rleWRwG1LqaF4VNCIRESmQauVLMfaytjx7ZTt27T/CwKfm89B7agJ5MuK6kOjUlogUVK9WNflgZDcGt63DM3PW0WfMXD5bvzPoWDFBp7ZERHKYv3YHo6YsZdOug1x5dn3u7N2M8qVLBh2ryOnUlohIIXVuXJUZt6cytEtDXv3sW3o9msbsb3Jr/SdxXUh0aktECqtsUgn+eGFLJt/YiVNKleDaCQsZ+fqX7N6vJpA56dSWiEg+Dh87ztjZ63hq9lqSy5TkzwNa0TelFmYnah0YP3RqS0QkTEqVSGRkj6ZMu6ULtSuVYfg/v+A3ryxm295DQUeLCiokIiIF1KJWBabc2InfX9CcOavT6T56Dq8v/K7YN4GM60KiORIRCbcSiQkMSz2NGben0rJWBe6avIwrXviM73YW3yaQmiMRESmkjAxn4sLvePDdbzie4dzRqxnXdGpAYkJ8zJ1ojkREJMISEozLO9bng5GpnHNaFe6bvpJBT3/C6m0/BR2tSKmQiIiEqFZyGV64uj1jhpzBtzv30/fxuYyZtYYjx4pHE8i4LiSaIxGRomJmDDijNrNGdqPP6bV4dNZq+j85j682/Rh0tIjTHImISATMWrmNe95azvafDvHrro0Y0b0pZZISg451UjRHIiISoO4tazBzZCpDOtRjXNp6+oxJY8G6+GwCqUIiIhIhFUqX5IGLUvjn9R1x4NLnPuX3by5j76GjQUcLKxUSEZEI63RaVd6/LZXruzbktc+/o+foND78elvQscJGhUREpAiUSUrkD31bMuWmziSXKcnQlxZx68Qv2LnvcNDRQqZCIiJShM6oW5Fpt3RhRPemvLd8Kz0eTePtL7+P6TYrcV1IdPmviESjpBIJ3Na9CdNv6UrdymW57bUv+fVLi/hhT2w2gdTlvyIiATqe4bw4fwN/n7mKkgkJ3H1BC4acVZeEKGizost/RURiQGKC8euujZh5ezdS6iTz+zeXcdnzn7Jxx/6goxWYComISBSoV6Us//h1Rx66OIUV3++l95g0nktbz/GM6D9rpEIiIhIlzIwhHerxwchudGlcjb+++zUXPzWfb37YG3S0PKmQiIhEmZrJpXnuqnY8cemZbNp9kH5PzOPRD1ZHbRNIFRIRkShkZvRrcyqzRnajb0otxny4hgufmMsX3+0OOtr/o0IiIhLFKp+SxGNDzmT8Ne356dAxBj39CfdPX8mBI8eCjvZvUV9IzKyRmb1gZpPyWiYiEs/Ob16DmSNSuaxjPZ6ft4Hej83lk7U7go4FRLiQmNl4M9tuZstzLO9tZqvMbK2ZjcprG+6+3t2H5rdMRCTelS9dkvsHpvDasLNJMLjs+c8YNXkpew4G2wQy0iOSCUDv7AvMLBEYC/QBWgKXmllLM0sxs+k5XtUjnE9EJOac3agK79+eym+6NeKNRZvo+egcPlgZXBPIiBYSd08DduVY3AFYmzWqOAK8Bgxw92XufmGO1/ZI5hMRiVWlSyZyd58WvHVzZyqVTeL6lxcx/J9L2BFAE8gg5khqA5uyvd+cteyEzKyKmT0DnGlmd+e27ATfG2Zmi8xsUXp6ehjji4hEj9Z1KjJ1eBd+26MpM1dso/voObz5xeYibQJZosj29B8naiCT69/Y3XcCN+S37ATfGweMg8xeWycfU0QkNiSVSOCWXzSh9+k1uXPyUka8/hVvf7mFv16UQu2KZSK+/yBGJJuButne1wG2RGJH6v4rIsVJkxrlmXRDJ/7UryWfrd9Fz9FzePXTbyO+3yAKyUKgiZk1NLMkYAgwNRI7cvdp7j4sOTk5EpsXEYk6iQnGtZ0bMnNEKmfWq8SabT9FfJ8RPbVlZhOBc4GqZrYZ+JO7v2Bmw4EZQCIw3t1XRGj//YB+jRs3jsTmRUSiVt3KZXllaAeOHo/8mX09j0RERE5IzyNBcyQiIkUhrguJ5khERCIvrguJRiQiIpEX14VEIxIRkciL60IiIiKRp0IiIiIhietCojkSEZHIKxb3kZhZOvBzn4BkILfKkttnVYHoeILM/5fX3ycatl+Y7xf0OwVZL7914u14gMgeE9F8PBR03cL8N8/rs3g+Huq7e7V813L3YvUCxp3sZ8CioHMX5u8TDdsvzPcL+p2CrJffOvF2PET6mIjm4yEcx4SOh8K94vrUVi6mFfKzaBXpzKFuvzDfL+h3CrJefuvE2/EAkc0dzcdDQdct7H9zHQ+5KBantkJlZou8AG0CpHjQ8SDZ6XiI88n2MBoXdACJKjoeJLtifzxoRCIiIiHRiEREREKiQiIiIiFRIRERkZCokITAzAaa2XNm9raZ9Qw6jwTPzBqZ2QtmNinoLBIMMzvFzF7K+t1wedB5ikKxLSRmNt7MtpvZ8hzLe5vZKjNba2aj8tqGu7/l7tcD1wC/imBcKQJhOibWu/vQyCaVonaSx8bFwKSs3w39izxsAIptIQEmAL2zLzCzRGAs0AdoCVxqZi3NLMXMpud4Vc/21XuyviexbQLhOyYkvkyggMcGUAfYlLXa8SLMGJgSQQcIirunmVmDHIs7AGvdfT2Amb0GDHD3B4ELc27DzAx4CHjP3ZdENrFEWjiOCYlPJ3NsAJvJLCZfUkz+sV4s/pInoTb/+ZcEZB4QtfNY/xagOzDYzG6IZDAJzEkdE2ZWxcyeAc40s7sjHU4ClduxMQUYZGZPE7ttVU5KsR2R5MJOsCzXOzbd/XHg8cjFkShwssfETkD/qCgeTnhsuPt+4NqiDhMkjUj+22agbrb3dYAtAWWR6KBjQnKjYyOLCsl/Wwg0MbOGZpYEDAGmBpxJgqVjQnKjYyNLsS0kZjYRWAA0M7PNZjbU3Y8Bw4EZwNfAG+6+IsicUnR0TEhudGzkTU0bRUQkJMV2RCIiIuGhQiIiIiFRIRERkZCokIiISEhUSEREJCQqJCIiEhIVEin2zOy4mX2Z7ZVnq/iiYmYbzWyZmbU3szezsq01sz3ZsnbK5bu/NrNXciyrkdUKvaSZvW5mu8xsYNH8bSSe6T4SKfbMbJ+7lwvzNktk3bAWyjY2Au3dfUe2ZecCd7h7np2HzawSsAao4+6HspYNB1Lc/TdZ718l87kZb4WSU0QjEpFcZI0I/mxmS7JGBs2zlp+S9aCjhWb2hZkNyFp+jZn9y8ymATPNLMHMnjKzFVnPK3nXzAab2S/M7M1s++lhZlNCyHmWmc0xs8Vm9p6Z1XD33cAnQN9sqw4BJhZ2PyK5USERgTI5Tm1lf9rlDndvCzwN3JG17A/AR+5+FnAe8IiZnZL12TnA1e5+PplPymsApAC/zvoM4COghZlVy3p/LfBiYYKbWSlgDDDI3dsBrwL3ZX08kczigZnVzcqSVpj9iORFbeRF4KC7n5HLZz+PFBaTWRgAegL9zeznwlIaqJf18wfuvivr5y7Av9w9A/jBzGZDZp/xrPmLK8zsRTILzFWFzN4CaAXMynzOGolkdqWFzAaCj5tZOTIfBf1GVhaRsFIhEcnb4aw/j/Of/1+MzBHAquwrmllHYH/2RXls90UyH3p0iMxiU9j5FAOWunvXnB+4+34zm0XmU/uGADcWch8iedKpLZGTNwO4JetRy5jZmbmsN4/MJ+UlmFkN4NyfP3D3LWQ+u+IeMp8HXlgrgdpm1iErS5KZtcr2+UTgd0BFd18Ywn5EcqVCIvL/50geymf9+4CSwFIzW85/5iRymkzmaablwLPAZ8CebJ//A9jk7isLG9zdDwODgdFm9hXwBdAx2yrvk3na7bXC7kMkP7r8VySCzKycu+8zsyrA50Bnd/8h67MngS/c/YVcvruRHJf/hjmbLv+VsNCIRCSyppvZl8Bc4L5sRWQx0JrMq6xykw58aGbtwx3KzF4HOpM5RyMSEo1IREQkJBqRiIhISFRIREQkJCokIiISEhUSEREJiQqJiIiERIVERERC8n/SO3G4VraX9AAAAABJRU5ErkJggg==\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "ax_crab_3fhl = crab_3fhl.spectral_model.plot(\n", " energy_range=[10, 2000] * u.GeV, energy_power=0\n", ")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "We assign the return axes object to variable called `ax_crab_3fhl`, because we will re-use it later to plot the flux points on top.\n", "\n", "To compute the differential flux at 100 GeV we can simply call the model like normal Python function and convert to the desired units:" ] }, { "cell_type": "code", "execution_count": 29, "metadata": {}, "outputs": [ { "data": { "text/latex": [ "$$6.3848913 \\times 10^{-12} \\; \\mathrm{\\frac{1}{GeV\\,s\\,cm^{2}}}$$" ], "text/plain": [ "" ] }, "execution_count": 29, "metadata": {}, "output_type": "execute_result" } ], "source": [ "crab_3fhl.spectral_model(100 * u.GeV).to(\"cm-2 s-1 GeV-1\")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Next we can compute the integral flux of the Crab between 10 GeV and 2000 GeV:" ] }, { "cell_type": "code", "execution_count": 30, "metadata": {}, "outputs": [ { "data": { "text/latex": [ "$$8.6745734 \\times 10^{-9} \\; \\mathrm{\\frac{1}{s\\,cm^{2}}}$$" ], "text/plain": [ "" ] }, "execution_count": 30, "metadata": {}, "output_type": "execute_result" } ], "source": [ "crab_3fhl.spectral_model.integral(emin=10 * u.GeV, emax=2000 * u.GeV).to(\n", " \"cm-2 s-1\"\n", ")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "We can easily convince ourself, that it corresponds to the value given in the Fermi-LAT 3FHL catalog:" ] }, { "cell_type": "code", "execution_count": 31, "metadata": {}, "outputs": [ { "data": { "text/latex": [ "$$8.6589091 \\times 10^{-9} \\; \\mathrm{\\frac{1}{s\\,cm^{2}}}$$" ], "text/plain": [ "" ] }, "execution_count": 31, "metadata": {}, "output_type": "execute_result" } ], "source": [ "crab_3fhl.data[\"Flux\"]" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "In addition we can compute the energy flux between 10 GeV and 2000 GeV:" ] }, { "cell_type": "code", "execution_count": 32, "metadata": {}, "outputs": [ { "data": { "text/latex": [ "$$5.3114891 \\times 10^{-10} \\; \\mathrm{\\frac{erg}{s\\,cm^{2}}}$$" ], "text/plain": [ "" ] }, "execution_count": 32, "metadata": {}, "output_type": "execute_result" } ], "source": [ "crab_3fhl.spectral_model.energy_flux(emin=10 * u.GeV, emax=2000 * u.GeV).to(\n", " \"erg cm-2 s-1\"\n", ")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Next we will access the flux points data of the Crab:" ] }, { "cell_type": "code", "execution_count": 33, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "FluxPoints(sed_type=\"flux\", n_points=5)\n" ] } ], "source": [ "print(crab_3fhl.flux_points)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "If you want to learn more about the different flux point formats you can read the specification [here](http://gamma-astro-data-formats.readthedocs.io/en/latest/results/flux_points/index.html#flux-points).\n", "\n", "No we can check again the underlying astropy data structure by accessing the `.table` attribute:" ] }, { "cell_type": "code", "execution_count": 34, "metadata": {}, "outputs": [ { "data": { "text/html": [ "Table length=5\n", "
\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "
e_refe_mine_maxfluxflux_errnflux_errpe2dndee2dnde_errne2dnde_errpis_ulflux_ule2dnde_ulsqrt_ts
GeVGeVGeV1 / (cm2 s)1 / (cm2 s)1 / (cm2 s)erg / (cm2 s)erg / (cm2 s)erg / (cm2 s)1 / (cm2 s)erg / (cm2 s)
float64float64float64float32float32float32float32float32float32boolfloat64float64float32
14.14213562373095110.020.05.1698894e-091.3338798e-101.3338798e-101.6420408e-104.236619e-124.236619e-12Falsenannan125.15745
31.62277660168379320.050.02.2450237e-098.671894e-118.671894e-111.1808442e-104.561268e-124.561268e-12Falsenannan88.71535
86.6025403784438650.0150.09.2431746e-105.497474e-115.497474e-111.08686914e-106.464267e-126.464267e-12Falsenannan59.087498
273.8612787525831150.0500.02.7589558e-102.9164688e-113.1360175e-119.2301645e-119.757128e-121.0491635e-11Falsenannan33.076164
1000.0500.02000.06.6840214e-111.4629655e-111.6916293e-116.9011685e-111.5104936e-111.746586e-11Falsenannan15.573053
" ], "text/plain": [ "\n", " e_ref e_min e_max ... flux_ul e2dnde_ul sqrt_ts \n", " GeV GeV GeV ... 1 / (cm2 s) erg / (cm2 s) \n", " float64 float64 float64 ... float64 float64 float32 \n", "------------------ ------- ------- ... ----------- ------------- ---------\n", "14.142135623730951 10.0 20.0 ... nan nan 125.15745\n", "31.622776601683793 20.0 50.0 ... nan nan 88.71535\n", " 86.60254037844386 50.0 150.0 ... nan nan 59.087498\n", " 273.8612787525831 150.0 500.0 ... nan nan 33.076164\n", " 1000.0 500.0 2000.0 ... nan nan 15.573053" ] }, "execution_count": 34, "metadata": {}, "output_type": "execute_result" } ], "source": [ "crab_3fhl.flux_points.table" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Finally let's combine spectral model and flux points in a single plot and scale with `energy_power=2` to obtain the spectral energy distribution:" ] }, { "cell_type": "code", "execution_count": 35, "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAaMAAAEOCAYAAAAkF3jEAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADl0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uIDMuMC4yLCBodHRwOi8vbWF0cGxvdGxpYi5vcmcvOIA7rQAAIABJREFUeJzt3Xd4FXX6/vH3k0DohF6kSlWalKjUYKFKU9C1F8QuiuCuq7u6uqu7lt0FQVEsiGUVVERpKmDZhCAivYsUpVeVIEjn+f2Rw2/zjSE5CTmZlPt1XeeSmTMz546OPPnMmXk+5u6IiIgEKSroACIiIipGIiISOBUjEREJnIqRiIgETsVIREQCp2IkIiKBUzESEZHAqRiJiEjgVIxERCRwKkYiIhK4IkEHyC8qVarkdevWDTqGiEi+snDhwj3uXjmz7VSMwlS3bl0WLFgQdAwRkXzFzDaGs50u04mISOBUjEREJHAqRiIiEjgVIxERCZyKkYiIBE7FSEREAqdiFGFHj58gae2eoGOIiORpKkYRNmH+Zq4bO497xi/mx/2HT/+A43qlvEREChAVowi7Mq4Ww7o24tMV2+kyPIGPFm/F3YOOJSKSp6gYRVhMkSjuvbghH9/bibqVSnHfu0sY9MYCtu09mP2D7g3rgWYRkXxDxSiXNKxahol3tOcvvZswd/2PdBuRyFtfb+TEiWyMkpI353xAEZEAmS4ZhScuLs6z3ZsuzXc8m4+U4aGdF5D0ay3OK7GVp6v9lzNjksM71o5lcHgf1OmYvSzpGTg9544lIpKKmS1097jMttPIKAC1Yn7hrZpTeabaF6w+XIkeP1zJmB9bcszt1Dvt3Qgbk1IKEaT8eWOSLtmJSIFQKEZGZlYP+DMQ6+6Xh9aVAl4AjgD/dfe3MzrGaY2MMrBz3yEe+WgFM1ftpHmNWJ4e0IImZ5Q99Q7jeqUUocfCHEmJiASowIyMzOw1M9tlZivSrO9hZmvMbJ2ZPZjRMdx9g7sPSrO6PzDR3W8F+uZw7LBVLVucl65vw+hrWrM9+SB9n0/i3zPXcPjY8aAiiYjkujxfjIDXgR6pV5hZNDAa6Ak0Aa42syZm1tzMpqV5VTnFcWsCJ+8ECPRvfjOjV4vqzBramb4tz+C5L9bRa1QSCzf+lP4OsbVyN6CISITl+WLk7olA2r+VzwPWhUY8R4AJQD93X+7uvdO8dp3i0FtIKUiQR/49lC8Vw/DfteT1gedy8MhxLh8zl8emrOTA4WP/22jgdBi64tQHERHJh/LEX8LZUIP/jWogpbDUONXGZlbRzMYArczsodDqScAAM3sRmHqK/W4zswVmtmD37t05FD1zFzSuwoyh8dzQtg5vzP2B7s8mMntt7n2+iEhuy6/FKL3bzk55J4a7/+jud7h7fXd/MrTugLsPdPc7T3Xzgru/7O5x7h5XuXKmU7jnqNLFivDXfs14//Z2xBSJ4vqx3/CH95eS/OvRXM0hIpIb8msx2gKk/uKkJrAtoCwRFVe3Ah/f24m7LqjPpMVb6TIigU9X7Ag6lohIjsqvxWg+0NDMzjSzGOAqYErAmSKmeNFoHuhxFpPv7kDl0sW44z8Luevthez65VDQ0UREckSeL0ZmNh6YCzQ2sy1mNsjdjwGDgRnAauA9d18ZZM7c0KxGLJMHd+CBHo35bPUuug5PZOLCLWq8KiL5XqF46DUnROqh1+xav3s/D36wjPk//EynhpV4sn9zapYvGXQsEZH/o8A89Crpq1+5NO/e1o6/9WvKoo0/021EIm989UP2Gq+KiARMxSgfi4oybmhXlxlD44mrW4FHp6zkdy/NZd2u/UFHExHJEhWjAqBm+ZK8MfBc/n3FOazbvZ9LRs5m9JfrOHr8RNDRRETComJUQJgZA9rUZNbQznRtUpV/zlhD3+fnsGKrGqqKSN6nYlTAVC5TjNHXtmbMdW3Ys/8w/UbP4alPvuXQUTVeFZG8S8WogOrRrBqfDe3M5a1rMiZhPT1Hzmbehh+DjiUiki4VowIstmRRnr68Bf8ZdD7HTpzgype/5pGPVvDLIbUUEpG8RcWoEOjYsBIz7ovn5g5n8p95G+k+IpEv15yqmbmISO5TMSokSsYU4S99mjDxjvaUKlaEgePmM+zdJfx84EjQ0UREVIwKmzZ1yjPt3o7ce1EDpizdRpfhCUxbtk0thUQkUCpGhVCxItEM69aYqfd0pEb5Egx+ZzG3v7WQnfvUeFVEgqFiVIidXb0sk+5sz58uOYuE73bTZXgC787fpFGSiOQ6FaNMmFkfM3s5OblgPjxaJDqK2+LrM+O+eJpUL8sfP1jOdWPnsenHX4OOJiKFiLp2hymvde2OhBMnnPHzN/Hkx99y/IRzf7dGDOxwJtFR6U2sKyKSOXXtliyLijKuPb8Os4bF065+RZ6YvpoBL37Fdzt/CTqaiBRwKkbyG9VjSzD2xjhGXtWSTT/9Sq9Rsxn52VqOHFPjVRGJDBUjSZeZ0a9lDWYNjadns+qM+Ow7+j6fxNLNe4OOJiIFkIqRZKhi6WKMuroVr94Qx95fj3LZC3P4x8erOXhEjVdFJOeoGElYujSpysxh8Vx5bm1eTtxAj5GJzF2vxqsikjNUjCRsZYsX5cn+zRl/a1sArn7lax6atJx9arwqIqdJxUiyrF39inw6JJ7b4uvx7vxNdB2ewGerdgYdS0TyMRUjyZYSMdH86ZKz+fCuDpQvGcMtby7gnvGL+XH/4aCjiUg+pGIkp+WcWuWYMrgjQ7s04tMV2+kyPIHJS7aqpZCIZImKkZy2mCJRDOnSkOn3dqJOxVIMmbCEW95YwPbkg0FHE5F8QsVIckyjqmX44M72PNzrbL5a/yNdhyfy9ryNnDihUZKIZEzFSHJUdJRxS6d6zLgvnnNqxfLnD1dw9Stf8/2eA0FHE5E8TMVIIqJ2xZL8Z9D5PD2gOau276PHs4m8lLCeY8fVUkhEfkvFSCLGzLjy3Np8NqwznRtV5slPvuWyF75i1bZ9QUcTkTxGxUgirmrZ4rx0fRtGX9Oa7ckH6ft8Ev+euYbDx9RSSERSqBhJrjAzerWozqyhnenb8gye+2IdvUYlsXDjz0FHE5E8QMVIclX5UjEM/11LXh94Lr8ePsblY77ir1NX8uuRY0FHE5EAqRhJIC5oXIWZwzpzfds6jJvzA91GJJK0dk/QsUQkICpGmTCzPmb2cnJyctBRCpzSxYrwt37NeO/2dsRER3Hd2Hk8MHEpyQfVeFWksDG1bQlPXFycL1iwIOgYBdaho8cZ9flaXkrcQMVSMfytXzN6NKsWdCwROU1mttDd4zLdLpxiZGYtgU7AGcBBYAXwubsXmuGCilHuWLE1mQcmLmPV9n30al6dx/o2pXKZYkHHEpFsCrcYZXiZzsyuM7OFwF+B8sBGYB/QBfivmY01s5o5EVgEoFmNWCYP7sAfujdm1uqddBmewAcLt6jxqkgBVyST9ysC8e6ebi8XM4sDzga25HQwKbyKRkdx94UN6N60Gn/8YBn3v7+UKUu38ffLmlGzfMmg44lIBOg7ozDpMl0OGNcr5Z8Dp4e9y4kTzltfb+TpT7/FgAd6nMX1besQFWWRySgiOSrcy3SZjYwwsxjgEn77ndHH7v7t6QYVyUhUlHFj+7pcfHYV/vThCh6dspKpS7fx9OUtqF+5dNDxRCSHZPad0cPAPOBCYCnwBjCFlCI2wsw+NbNmEU8phV7N8iV5Y+C5/OuKc1i7az89R85m9JfrOKrGqyIFQmYjo+Xu/sQp3nvGzKoDtXI4k0i6zIzL29QkvlElHpuykn/OWMP0Zdt55vIWNKsRG3Q8ETkNGY6M3H1y2nWWolTo/e3u/k2kwkkBtHfjaR+iSpnivHBtG8Zc15rd+w/Tb/Qcnv70Ww4dVeNVkfwqrA4MZvammZU1s5LASuB7MxsW2WhSICVvzrFD9WhWnc+GdqZ/qxq8+N/1XDJyNvN/+CnHji8iuSfTGxhCmrv7PjO7BpgJPAAsAIZHLJnknpN3uUXajmU5/nmxwD+BfjVr8uDOC7hizAFuKLecB4b+ntLFwj29RSRo4famizGzIkA/4CN3PwLom2MJz96NsDEJDocm1duYlPLKgUt2J3UstYUZdScwsPxS3trbjO4jEvnvml05dnwRiaxwf3V8FdhEyi3dCWZWG9gfsVSSu7Lw3M9pGdcrpQg9FpkuUqWAR4HeG3/mjx8s46Zx8+nfqgaP9G5C+VIxEflMEckZYY2M3H2Eu5/h7t085SnZLcBFkY0mkj1t6pRn+r0dueeiBkxZuo2uIxKYvmy7WgqJ5GHZmkLC3U+ELtWJZE1s7jwJUKxINPd3a8yUwR2pHluCu99ZxO1vLWTnvkOR/eBxvXLvOziRAkTzGUnuKlcnVz+uyRll+fCu9jzU8ywSvttNl+EJvDd/s0ZJInmMipEUeEWio7i9c30+vS+es6uX5YEPlnH92G/Y9OOvQUcTkZBMi5GZlTKz3/w6a2ZNIxNJCqyB03PvZol0nFmpFBNubcsTlzZjyea9dH82kbFJ33P8hEZJIkHLrDfdAGAdMN3MlptZ61RvvxXRZCIREBVlXNe2DjOHxtO2XgUen7aKAS9+xXc7fwk6mkihltnI6BEgzt2bAbcD482sb+g99fCXfOuMciV47aZzefbKlmz88QC9Rs1m1OdrOXJMj8+JBCGz54yi3H0rgLt/ZWYXAdPMrBagaxuSr5kZl7aqQaeGlXhs6iqGz/qOj5dv5+kBLTinVrnsHzgHH+YVKSwyGxkdMLMzTy6ECtMFwBVAkwjmEsk1FUsX47mrW/HKDXH8/OsRLnthDv/4eDUHj2Sz8WoO9t8TKSwyGxndnXYbd082s27A1RFLlYeYWR+gT4MGDYKOIlmRjWd9ugLnV4nhSWvHy4kwY+5inqr2Je1Kbgv/IBHov5dlAd4kIpJdmU0hscjd155cNrOSZlYWKA58GOlweYG7T3X322JjNV9OYVA2+ghPVkvgnZqTceDqzZfypx2d2Xc8k3ZCudB/T6QgC6s3nZndAjwOHCelQaqR8p1R7chFEzkNpzk6aA/MOHKc4bPWMDYJvvA2/P2yZlx8dtWMd4xw/z2Rgirch17/CJzj7jXdvba713J3FSIp0ErERPPnXk2YdFcHYksUZdAbC7h3/GJ+3H846GgiBU64xWgDsC+SQUTyqpa1yjH1no7c16Uhn6zYTtcRiUxesvXULYVyqf+eSEES7hQSDwJzzOxr4P//Wujumu1VCoWYIlHc16URPZtV54EPljFkwhKmLNnGE5c1o3psif+7cS733xMpCMIdGY0B5gBLSJl2/ORLpFBpXK0Mk+5sz8O9zmbO+j10HZ7I2/M2ckIthUROS7gjoxPufm9Ek4jkE9FRxi2d6tGtSTUenLSMP3+4gqlLt/FU/xbUDTqcSD4V7sjoczO72cwqm1nZk6+IJhPJ42pXLMnbt5zP0wOas3LbPro/m8jLP7XkmKtTlkhWWTjzuphZeo+Ue2G6oy4uLs4XLFgQdAzJo3buO8TDH61g1qqdtCi+i6dvH8DZ1fX7moiZLXT3uMy2C3fa8VrpvApNIRLJTNWyxXn5+jY8X30GW4+Wps9zSQyfuYbDx7LZUqgg0Ky3kgVhFSMzu8PMyqVaLm9mt0Uulkj+Y2b0LrueWXUn0OecMxj1xTp6j0pi0aafg44mkueF+53RHe6+9+SCu/8M3BmZSCL52MDpVLj1A0Zc2ZJxN53L/sPHGPDiVzw+bRW/HjkWdDqRPCvcYhSdesHMooCiOR9HpOC48KwqzBwaz3Xn12Fs0vd0fzaROev2BB1LJE8KtxjNMrPxZtbZzOKBt4HPIphLpEAoU7woj1/ajHdva0uRqCiufXUef5y4jOSDR4OOJpKnhFuM/kDKQ69DgfuBJOD3kQolUtCcX68inwzpxB2d6zNx0Ra6Dk9gxsodQccSyTPCvZvuuLs/7+6Xuns/dx/t7roALpIFxYtG82DPs5h8dwcqlS7G7W8t5O63F7H7FzVeFcmwGJnZR2bW08x+06nBzOqY2V/M7ObIxRMpeJrViGXy4A78oXtjZq3aSZfhCXywcMupG6+KFAKZjYzuJmUCzO/MbK6ZTTGzmWa2DhgHrHT31yKeUqSAKRodxd0XNuDjIZ1oUKU097+/lJvGzWfr3oNBRxMJRFgdGADMrAFQHTgIrHH3XyIZLK9RBwaJlBMnnDfn/sAzM9ZgwB97nsV159chKiqftxU6+cCrpkEv1HK0AwOAu69z99nuvqCwFSKRSIqKMm7qcCYz7oundZ3y/GXySq58eS7rd+8POppIrgm7GIlIZNWqUJI3bz6Pf11xDt/t3E/PkbN54b/rOHr8RNDRRCKuUBUjM6tnZmPNbGJ6yyJBMzMub1OTWcPi6XJ2FZ75dA2Xjp7Diq3JQUcTiajM7qZ7wcz6mFnJ7BzczMqZ2UQz+9bMVptZu2we5zUz22VmK9J5r4eZrTGzdWb2YEbHcfcN7j7oVMsieUWVMsV54do2jLmuNTv3Habf6Dk88+m3HDpaiBuvSoGW2cjoHeB84LPQXXT3m1nTLBx/JPCpu58FnAOsTv2mmVUxszJp1jVI5zivAz3SrjSzaGA00BNoAlxtZk3MrLmZTUvzqpKF3CJ5Qo9m1fl8WGf6t6rBC/9dzyUjZzP/h5+CjiWS4zIsRu6e5O4Pu3t74DpgF/BnM1tkZi+bWf9T7RuafC8eGBs61pHUzVZDOgOTzax4aJ9bgVHp5EgE0vs/8DxgXWiEcwSYAPRz9+Xu3jvNa1dGP6tIXhVbsij/vOIc3hp0HoePneCKMXP5y+QV7D+cD54737sx6ASST2Tlbrpd7v6Wu18DtCGlyDTPYJd6wG5gnJktNrNXzaxUmmO+D3wKTDCza4Gbgd9lIX8NIPXEf1tC69JlZhXNbAzQysweSrt8in36mNnLycm6Zi/B6tSwMjOHxnNT+7q89fVGuo9IJOG73UHHylhyevNyivxW2M8ZZfnAZnHA10AHd59nZiOBfe7+SDrbTgAuAeq7e7r/d5lZXWCauzdLte4KoLu73xJavh44z93vyemfR88ZSV6ycONPPDBxGet3H6B/6xr8pXcTypWMSXkzr0xot2MZHN4HdToGnUTPOgUox58zyoYtwBZ3nxdangi0TruRmXUCmgEfAo9m4zNqpVquCWzLelSR/KVNnQpMv7cTgy9swJQl2+gyPIGPl28POlaKvRthY1JKIYKUP29M0iU7ydBves6lZmbR7p6t23fcfYeZbTazxu6+BrgYWJXm+K2AV4BewPfAf8zsCXd/OMyPmQ80NLMzga3AVcA12ckrkt8ULxrN77s3pmfzavzxg2Xc9fYiujetyuMDPqBK2eJBx0sZoW1Mgsd0iVsyl9nIaJuZvRiawyg77gHeNrNlQEvgH2neLwlc4e7r3f0EcCPwm1+fzGw8MBdobGZbzGwQQKhz+GBgBil36r3n7iuzmVUkX2p6Riwf3dWBB3uexX/X7KbL8ATeW7BZjVclX8nwO6PQ7dBXkDLiqAO8B4x394W5Ey/v0HdGkh9s2L2fByct55vvf6Jjg0o82b85tSpk6zHB0zeuV8qluaG/eTxQCpEc+c4odAfdaHfvBHQAtgNjzOw7M/trDmUVkRxSr3JpJtzalicubcaSzXvpNiKR15K+5/iJgEZJ5eoE87mS72Tl1u7NwIvACOAAKdNLiEgeExVlXNe2DjOHxnN+vQr8bdoqLh/zFWt3qr+x5F2ZFiMzizGzy8zsPVJuMugF/IWU6SREJI86o1wJxt10Ls9e2ZIf9hyg16gkRn2+liPH1HhV8p7MetO9Scrt0zcCk4Az3f1ad5/q7kdzI6CIZJ+ZcWmrGswa1pnuzaoxfNZ39H0+iWVb0jZDEQlWZiOjBKCRu1/q7hPc/dfcCCUiOatS6WI8d3UrXrkhjp9/PcKlo+fw5Mer1XhV8ozMbmAY6+57zayymb1kZtMBQs1Ib8qVhCKSY7o2qcrMoZ258txavJS4gR7PJvL1hh+DjiUS9g0Mr5MySqoZWl4L3B+JQCISWbElivJk/xa8c+v5nHC46uWv+fOHy/nlkK68B2Jcr7zTwilA4RajKu7+DnACIPR9kcb3IvlY+/qVmHFfPLd0PJPx32yi24hEPl+9M+hYUkiFW4wOmFkFwAHM7FxA94mK5HMlYqJ5uHcTPrizPWWKF2HQGwsYMmExP+4/HHQ0KWTCLUa/B6YC9cwsARhPSqsfESkAWtUuz7R7OjHk4oZ8vHw7XUckMnnJVrUUklyT2a3dbQHcfQFwISmT4Q0Bmrj7ksjHE5HcElMkiqFdGzH1no7UKl+CIROWcOubC9iRfCjoaFIIZDYyeuHkH0IztS519yWhWVVFpAA6q1pZJt3VgYd7nU3Suj10HZ7AO/M2aZQkERXJ+YxEJJ+KjjJu6VSPGffF06xGLH/6cDnXvDKPH/YcCDqaFFAZzmdEyndEU071prv3zeE8IpKH1KlYinduPZ9352/m79NX02NkIvd3bczNHc8kOsqCjicFSGbFaDfw79wIIiJ5k5lx1Xm1uaBxFR7+aAV//3g105Zt4+nLW3BWtbJBx5MCIrNitN/dE3IliYjkadVii/PKDW2Ytmw7j01ZSe9RSdx1YQPuvrA+xYpE/3aHgdNzP6TkW5l9Z/R9rqQQkXzBzOhzzhnMGtaZ3i2qM+rztfQelcTiTT8HHU3yucyK0fCM3jSzsmbWLAfziEg+UKFUDM9e1YrXbopj/+Fj9H/xKx6ftopfjxwLOprkU5ldphtgZs8AnwILSfkOqTjQgJTnjuqgHnUihdZFZ1Vl5tAKPPXJt4xN+p5Zq3byVP/mtG9QKehoks9k1rV7KCmT6W0HrgAeB4YBDYGX3D3e3edHPKWI5Fllihfl75c1593b2hIdZVzz6jz+OHEZyQfVeFXCl9nICHf/GXgl9BIRSdf59SryyZBOjPjsO16d/T1frtnFE5c2o1vTakFHk3xAD72KSI4pXjSah3qezUd3daBi6WLc9tZC7n5nEbt/UeNVyZiKkYjkuOY1Y5kyuAO/79aIWSt30nVEAh8u3qKWQnJKKkYiEhFFo6MYfFFDPh7SkXqVSjH03aUMfH0+W/ceDDqa5EFhFSMzK2lmj5jZK6HlhmbWO7LRRKQgaFClDO/f0Z5H+zThm+9/otvwBN6a+wMnTmiUJP8T7shoHHAYaBda3gI8EZFEeYyZ9TGzl5OTk4OOIpJvRUcZAzucyYz74mldpzyPTF7JVS9/zfrd+4OOJnlEuMWovrs/AxwFcPeDQKHokujuU939ttjY2KCjiOR7tSqU5M2bz+Ofl7fg2x376DlyNi/8dx3Hjp8IOpoELNxidMTMSvC/acfrkzJSEhHJEjPjirhafHZ/Zy5qXIVnPl3DpS/MYeU2XX0ozMItRo+S0oWhlpm9DXwOPBCxVCJS4FUpU5wx17fhxWtbsyP5MH2fn8M/Z3zLoaPHg44mAcj0oVcAd59lZouAtqRcnhvi7nsimkxECoWezavTrn5Fnpi+mtFfrufTFTt4ekAL4upWCDqa5KIMR0Zm1vrki5Q+dNuBbUDt0DoRkdNWrmQM/7riHN68+TwOHT3BFS/N5bEpKzlwWI1XC4vMRkYnJ9YrDsQBS0kZGbUA5gEdIxdNRAqb+EaVmTk0nn/OWMMbc39g1qqd/KN/czo3qhx0NImwzBqlXujuFwIbgdbuHufubYBWwLrcCCgihUupYkV4rG9TJt7RjuJFo7jxtW+4/72l7P31SNDRJILCvYHhLHdffnLB3VcALSMTSUQE2tSpwPR7OzH4wgZ8tGQrXYYn8vHy7UHHkggJtxitNrNXzewCM+sc6sSwOpLBRESKF43m990bM2VwB6qWLcZdby/ijrcWsmvfoaCjSQ4LtxgNBFYCQ4D7gFWhdSIiEdf0jFgm392BP/Y4iy/W7KLL8ATeW7BZjVcLkLCKkbsfcvcR7n5Z6DXC3fWriYjkmiLRUdx5QX0+GdKJxtXK8MDEZdzw2jds/unXoKNJDgi3UWoHM5tlZt+Z2YaTr0iHExFJq37l0rx7Wzse79eURRt/pvuziYyb8z3H1Xg1Xwv3Mt1YYDgpt3Kfm+olIpLroqKM69vVZeawzpxbtwJ/nbqKK8Z8xdqdvwQdTbIp3GKU7O6fuPsud//x5CuiyUREMlGjXAleH3guI648hw17DtBrVBLPfb6Wo2q8mu+EW4y+NLN/mlm7NF0ZREQCZWZc1qomnw3rTNemVfn3rO/o81wSy7bsDTqaZEFYvemA80P/jEu1zoGLcjaOiEj2VCpdjNHXtKbvOTt45KMVXDp6Drd2qsfQro0oXjQ66HgZ27sx6ASBC7dR6oWRDiIikhO6N61G23oV+cf01byUuIEZK3fw1IAWtK1XMehop5a8OegEgbOM7tM3s2EZ7ezuw3M8UR4VFxfnCxYsCDqGiGTBnHV7eGjScjb99CvXxq7gwcpzKRN9NOhY/9eOZXB4H9TJw60+B07P9q5mttDd4zLbLrPvjMqEXnHAnUCN0OsOoEm204mI5IIODSrx6X2dGFR+CeOTm9Dth6v5cn/toGOl2LsRNialFCJI+fPGpEJ7yS7DkdH/38hsJjDA3X8JLZcB3nf3HhHOl2doZCSSvy3e9DMPTFzG2l37ubTlGfylT1MqlIoJOhaM65VShB4rmDPd5tTI6KTaQOqWuUeAutnIJSISiFa1yzPt3o4Mubgh05Ztp8vwBKYs3aaWQnlEuMXoLeAbM3vMzB4lZS6jNyIXS0Qk5xUrEs3Qro2Ydm9HapYvwb3jF3PrmwvYkRxwd7PYWsF+fh4Qbm+6v5PSGPVnYC8w0N2fjGQwEZFIOataWSbd2Z4/XXIWSev20HV4AuO/2RTcKKlcnWA+Nw8J9zkj3H0RsCiCWUREck2R6Chui69PtybVeHDSMh6atJwpS7bx1IDm1KlYKuh4hU64l+lERAqkupVK8c4tbfnHZc1ZsTWZ7s8m8kriBjVezWUqRiJS6EVFGdecX5uZw+LpUL8Sf/94Nf1fmMOaHWq8mltUjEREQqrHluDVG+MYeVVLNv98kN7PzWbErO84ckyNVyOL8fKVAAANX0lEQVRNxUhEJBUzo1/LGnw2rDOXNK/OyM/X0vu52SzZrMarkaRiJCKSjgqlYhh5VSvG3hjHvoPH6P/CHJ6YtoqDR44HHa1AUjESEcnAxWdXZeaweK4+rzavJn1P92cT+Wr9nqBjFTgqRiIimShbvCh/v6w5E25rS5TBNa/M46FJy0g+mMearuZjKkYiImFqW68inwyJ5/b4erw7fzPdRiQwa9XOoGMVCCpGIiJZUCImmocuOZuP7u5A+ZIx3PrmAga/s4g9+w8HHS1fK1TFyMzqmdlYM5uY3rKISLha1CzHlMEdub9rI2au3EnX4Ql8tHirGq9mU8SLkZlFm9liM5t2Gsd4zcx2mdmKdN7rYWZrzGydmT2Y0XHcfYO7DzrVsohIVsQUieKeixsy/d6O1K1UivveXcLNr89n296DQUfLd3JjZDQEWJ3eG2ZWJTQ3Uup1DdLZ9HXgN3MnmVk0MBroScpkf1ebWRMza25m09K8qpzuDyIikp6GVcsw8Y72PNqnCV9v+IluIxJ56+uNnFBLobBFtBiZWU2gF/DqKTbpDEw2s+Kh7W8FRqXdyN0TgZ/S2f88YF1ohHMEmAD0c/fl7t47zWtXTvxMIiLpiY4yBnY4k5lD42lZqxyPfLSCq175mg279wcdLV+I9MjoWeABIN1eGu7+PvApMMHMrgVuBn6XhePXADanWt4SWpcuM6toZmOAVmb2UNrlU+zTx8xeTk4umLMwikjOqlWhJG8NOo9nLm/Bt9v30XPkbMYkrOfYcbUUykjEipGZ9QZ2ufvCjLZz92eAQ8CLQF93z8qvEZbeITP4rB/d/Q53r+/uT6ZdPsU+U939ttjY2CzEEpHCzMz4XVwtPhvWmQsaV+apT77l0hfmsGrbvqCj5VmRHBl1APqa2Q+kXD67yMz+k3YjM+sENAM+BB7N4mdsAVJPkVgT2JattCIiOaxK2eK8dH0cL17bmh3Jh+n7fBL/mrGGQ0fVUiitiBUjd3/I3Wu6e13gKuALd78u9TZm1gp4BehHykyyFczsiSx8zHygoZmdaWYxoc+ZkiM/gIhIDunZvDqfDYunX8saPP/lOnqNms3Cjel9DV54Bf2cUUngCndf7+4ngBuBjWk3MrPxwFygsZltMbNBAO5+DBgMzCDljr333H1lrqUXEQlTuZIx/Pt35/DGzedx6OgJLh8zl8emrOTAibAn3C7QTA9ohScuLs4XLFgQdAwRKQD2Hz7Gv2as4Y25P3BG9D6erJZA/OAxQceKCDNb6O5xmW0X9MhIRKTQKV2sCI/1bcp7t7ejWNRxbtjSh9+/v5S9vx4JOlpgVIxERAJybt0KfFznPe6usJAPF2+ly/BEPlm+PehYgVAxEhEJUPGo4/yh8jwm392BqmWLcefbi7jzPwvZ9cuhoKPlKhUjEZE8oFmNWD66uwMP9GjM59/uouvwRN5fsLnQNF5VMRIRySOKRkdx1wUN+GRIJxpVLc0fJi7jhte+YfNPvwYdLeJUjERE8pj6lUvz7m3t+Fu/piza+DPdn01k3JzvOV6AG6+qGImI5EFRUcYN7eoyY2g859atwF+nruJ3L81l3a5fgo4WESpGIiJ5WM3yJXl94LkM/905rN+9n0tGJvH8F2s5WsAar6oYiYjkcWZG/9Y1mTW0M12bVuVfM7+jz3NJLN9ScGYTUDESEcknKpcpxuhrWvPS9W346cARLn1hDk9+srpANF5VMRIRyWe6N63GrGGdubx1TV5K2EDPkbOZt+HHoGOdFhUjEZF8KLZEUZ6+vAVv33I+x06c4MqXv+bhj5bzy6GjQUfLFhUjEZF8rEODSsy4L55BHc/k7Xmb6D4ikS/X7Ao6VpapGImI5HMlY4rwSO8mfHBne0oVK8LAcfMZ+u4SfjqQfxqvqhiJiBQQrWuXZ9q9Hbn34oZMXbqNrsMTmLp0W75oKaRiJCJSgBQrEs2wro2Yek9HapQvwT3jF3PrmwvZkZy3G6+qGImIFEBnVy/LpDvb86dLzmL22t10HZHAhG825dlRkmZ6DZNmehWR/OqHPQd4cNIyvt7wE+3rV+Sp/i2oXbFkrny2ZnoVEREA6lYqxTu3tOXJ/s1ZviWZbs8m8OrsDXmq8aqKkYhIIRAVZVx9Xm1mDounQ/1KPDF9NQNe/IrvduaNxqsqRiIihUj12BK8emMco65uxaaffqXXqNk8+9l3HDkWbONVFSMRkULGzOh7zhnMGhrPJc2r8+xna+nzXBJLNu8NLJOKkYhIIVWxdDFGXtWKsTfGkXzwKP1fmMMT01Zx8EjuN15VMRIRKeQuPrsqM4fFc9V5tXk16Xu6P5vIV+v35GoGFSMREaFs8aL847LmjL+1LVEG17wyj4cmLWNfLjVeVTESEZH/r139inwyJJ7b4+vx7vzNdB2ewJffRr7xqoqRiIj8HyVionnokrP56O4OlC8Zw9a9ByP+mUUi/gkiIpIvtahZjimDO1IkyiL+WSpGIiJySjFFcucCmi7TiYhI4FSMREQkcCpGIiISOBUjEREJnIqRiIgETsVIREQCp2IkIiKB07TjYTKz3cDG0GIskJzOZqdaXwnI3a6DWXOq3Hnl+NnZP9x9wtkus20yej8/nhOF+XwIZ9vCdj7A6f03q+PulTPdyt31yuILeDmL6xcEnTk7P09eOX529g93n3C2y2ybjN7Pj+dEYT4fTve/d0E8H3LjnHB3XabLpqlZXJ/XRTr36R4/O/uHu08422W2TUbv58dzojCfD+FsW9jOB8iF3LpMlwvMbIG7xwWdQ/IOnROSms4H3cCQW14OOoDkOTonJLVCfz5oZCQiIoHTyEhERAKnYiQiIoFTMRIRkcCpGAXMzC41s1fMbLKZdQs6jwTLzOqZ2Vgzmxh0FgmOmZUyszdCfzdcG3Se3KBidBrM7DUz22VmK9Ks72Fma8xsnZk9mNEx3P0jd78VuAm4MoJxJcJy6HzY4O6DIptUgpDF86M/MDH0d0PfXA8bABWj0/M60CP1CjOLBkYDPYEmwNVm1sTMmpvZtDSvKql2fTi0n+Rfr5Nz54MUPK8T5vkB1AQ2hzY7nosZA1Mk6AD5mbsnmlndNKvPA9a5+wYAM5sA9HP3J4HeaY9hZgY8BXzi7osim1giKSfOBym4snJ+AFtIKUhLKCSDhkLxQ+ayGvzvNxpIOalqZLD9PUAX4HIzuyOSwSQQWTofzKyimY0BWpnZQ5EOJ4E71fkxCRhgZi+Sf1sIZYlGRjnP0ll3yieL3X0UMCpycSRgWT0ffgT0S0nhke754e4HgIG5HSZIGhnlvC1ArVTLNYFtAWWR4Ol8kIzo/AhRMcp584GGZnammcUAVwFTAs4kwdH5IBnR+RGiYnQazGw8MBdobGZbzGyQux8DBgMzgNXAe+6+Msickjt0PkhGdH5kTI1SRUQkcBoZiYhI4FSMREQkcCpGIiISOBUjEREJnIqRiIgETsVIREQCp2IkkgPM7LiZLUn1ynCqiNxkZhND8yTNC2XbZGa7U2Wte4r9njCzx9OsizOzZaE/f25msZH/CaQw0HNGIjnAzPa7e+kcPmaR0EORp3OMpsAT7n5ZqnU3AXHuPjiMfT9090ap1v0L+NHdnzSzQUAld3/6dDKKgEZGIhFlZj+Y2V/NbJGZLTezs0LrS4UmW5tvZovNrF9o/U1m9r6ZTQVmmlmUmb1gZitDcx59bGaXm9nFZvZhqs/pamaT0olwLTA5jJw9zWxuKOe7ZlYq1AngkJm1CW1jwBXAhNBuk4FrTuffj8hJKkYiOaNEmst0qWft3ePurYEXgd+H1v0Z+MLdzwUuBP5pZqVC77UDbnT3i0iZ8bMu0By4JfQewBfA2WZWObQ8EBiXTq4OwMKMgocm9XsQuDiUcxkwJPT2eFL6pZ081jZ3/x7A3fcAZcysXEbHFwmHppAQyRkH3b3lKd47OWJZSEpxAegG9DWzk8WpOFA79OdZ7v5T6M8dgffd/QSww8y+hJQ5BszsLeA6MxtHSpG6IZ3Prg7sziR7e1JmGf0qZfBDDJAUem88kGBmD5BSlMan2Xd36DP2ZvIZIhlSMRKJvMOhfx7nf//PGTDA3dek3tDMzgcOpF6VwXHHkTLx2iFSClZ63y8dJKXQZcSAT939+rRvuPsPZrYN6ARcBrRJs0nx0GeInBZdphMJxgzgntD3MJhZq1Nsl0TKjJ9RZlYVuODkG+6+jZS5bx4GXj/F/quBBplk+QrobGb1QllKmVnDVO+PJ2UCyNXuvuPkSjOLAirxf2cqFckWFSORnJH2O6OnMtn+caAosMzMVoSW0/MBKROwrQBeAuYByanefxvY7O6rTrH/dFIVsPS4+05gEPCumS0lpTg1SrXJe0Az/nfjwknnAUnufjyj44uEQ7d2i+RxZlba3febWUXgG6DDyRGKmT0PLHb3safYtwTwZWifHC0aZjaalPl3EnLyuFI46TsjkbxvWuiOtRjg8VSFaCEp3y/df6od3f2gmT0K1AA25XCuxSpEklM0MhIRkcDpOyMREQmcipGIiAROxUhERAKnYiQiIoFTMRIRkcCpGImISOD+HyqiL7CKVakOAAAAAElFTkSuQmCC\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "ax = crab_3fhl.spectral_model.plot(\n", " energy_range=[10, 2000] * u.GeV, energy_power=2\n", ")\n", "crab_3fhl.flux_points.to_sed_type(\"dnde\").plot(ax=ax, energy_power=2);" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Exercises\n", "\n", "* Plot the spectral model and flux points for PKS 2155-304 for the 3FGL and 2FHL catalogs. Try to plot the error of the model (aka \"Butterfly\") as well. Note this requires the [uncertainties package](https://pythonhosted.org/uncertainties/) to be installed on your machine.\n" ] }, { "cell_type": "code", "execution_count": 36, "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## What next?\n", "\n", "This was a quick introduction to some of the high-level classes in Astropy and Gammapy.\n", "\n", "* To learn more about those classes, go to the API docs (links are in the introduction at the top).\n", "* To learn more about other parts of Gammapy (e.g. Fermi-LAT and TeV data analysis), check out the other tutorial notebooks.\n", "* To see what's available in Gammapy, browse the [Gammapy docs](https://docs.gammapy.org/) or use the full-text search.\n", "* If you have any questions, ask on the mailing list." ] } ], "metadata": { "kernelspec": { "display_name": "Python 3", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.6.0" }, "nbsphinx": { "orphan": true } }, "nbformat": 4, "nbformat_minor": 2 }