Tools to improve a model
In this notebook I show how to use Fermipy in order to improve the model for an roi. This is done in a ROI centered on M31 (Andromeda Galaxy).
I report below the configuration file that we are going to use.
data: evfile : ./M31_data/PH.txt scfile : ./M31_data/SC/L2406171618155144574608_SC00.fits ltcube : 'ltcube_00.fits' binning: roiwidth : 12.0 binsz : 0.06 binsperdec : 8 coordsys : 'GAL' selection : emin : 300 emax : 1000000 tmin : 239557417 tmax : 512994417 zmax : 105 evclass : 128 evtype : 3 glon: 121.174 glat: -21.572 gtlike: edisp : True irfs : 'P8R2_SOURCE_V6' edisp_disable : ['isodiff','galdiff'] model: src_roiwidth : 12.0 galdiff : '$FERMI_DIFFUSE_DIR/gll_iem_v07.fits' isodiff : '$FERMI_DIFFUSE_DIR/iso_P8R2_SOURCE_V6_v06.txt' catalogs: gll_psc_v16.fit fileio: usescratch: False outdir : M31_dataWe first import a few packages:
[1]:
import os
import numpy as np
from fermipy.gtanalysis import GTAnalysis
from fermipy.plotting import ROIPlotter, SEDPlotter
import matplotlib.pyplot as plt
import matplotlib
from IPython.display import Image
from math import *
Download raw data (not recommended).
[2]:
# # Set up a subdirectory for the data
# !mkdir -p M31_data/PH
# !mkdir -p M31_data/SC
# # Download the data and place into the subdirectory
# !wget -P ./M31_data/PH/ https://fermi.gsfc.nasa.gov/FTP/fermi/data/lat/queries/L2406171618155144574608_PH00.fits
# !wget -P ./M31_data/PH/ https://fermi.gsfc.nasa.gov/FTP/fermi/data/lat/queries/L2406171618155144574608_PH01.fits
# !wget -P ./M31_data/PH/ https://fermi.gsfc.nasa.gov/FTP/fermi/data/lat/queries/L2406171618155144574608_PH02.fits
# !wget -P ./M31_data/PH/ https://fermi.gsfc.nasa.gov/FTP/fermi/data/lat/queries/L2406171618155144574608_PH03.fits
# !wget -P ./M31_data/PH/ https://fermi.gsfc.nasa.gov/FTP/fermi/data/lat/queries/L2406171618155144574608_PH04.fits
# !wget -P ./M31_data/PH/ https://fermi.gsfc.nasa.gov/FTP/fermi/data/lat/queries/L2406171618155144574608_PH05.fits
# !wget -P ./M31_data/PH/ https://fermi.gsfc.nasa.gov/FTP/fermi/data/lat/queries/L2406171618155144574608_PH06.fits
# !wget -P ./M31_data/SC/ https://fermi.gsfc.nasa.gov/FTP/fermi/data/lat/queries/L2406171618155144574608_SC00.fits
# # Make a file list
# !ls ./M31_data/PH/*PH*.fits > ./M31_data/PH.txt
Download processed data
[3]:
if os.path.isfile('../data/M31_data.tar.gz'):
!tar xzf ../data/M31_data.tar.gz
else:
!curl -OL --output-dir ./../data/ https://raw.githubusercontent.com/fermiPy/fermipy-extras/master/data/M31_data.tar.gz
!tar xzf ./../data/M31_data.tar.gz
Run the initial setup. Should take less than ten minutes if using the processed data, as creating the scrmap can take a while. If using the raw data then other files, such as the ltcubes, must be created. Those calculations can take hours.
[4]:
gta = GTAnalysis('./M31_data/config_M31.yaml')
gta.setup()
2026-07-17 21:49:27 INFO GTAnalysis.__init__():
--------------------------------------------------------------------------------
fermipy version 1.4.2+32.g764b
ScienceTools version 2.5.1
2026-07-17 21:49:27 INFO GTAnalysis.setup(): Running setup.
2026-07-17 21:49:27 INFO GTBinnedAnalysis.setup(): Running setup for component 00
2026-07-17 21:49:27 INFO GTBinnedAnalysis._select_data(): Skipping data selection.
2026-07-17 21:49:27 INFO GTBinnedAnalysis.setup(): Using external LT cube.
{'Prefactor': 0, 'Index1': 1, 'Scale': 2, 'Cutoff': 3, 'Index2': 4}
2026-07-17 21:49:28 INFO GTBinnedAnalysis._create_expcube(): Skipping gtexpcube.
WARNING: FITSFixedWarning: 'datfix' made the change 'Set DATEREF to '2001-01-01T00:01:04.184' from MJDREF.
Set MJD-OBS to 54682.655283 from DATE-OBS.
Set MJD-END to 57847.435324 from DATE-END'. [astropy.wcs.wcs]
2026-07-17 21:49:28 INFO GTBinnedAnalysis.run_gtapp(): Running gtsrcmaps.
2026-07-17 21:49:28 INFO GTBinnedAnalysis.run_gtapp(): time -p gtsrcmaps scfile=./M31_data/SC/L2406171618155144574608_SC00.fits sctable="SC_DATA" expcube=/home/runner/work/fermipy/fermipy/fermipy-extra/notebooks/M31_data/ltcube_00.fits cmap=/home/runner/work/fermipy/fermipy/fermipy-extra/notebooks/M31_data/ccube_00.fits srcmdl=/home/runner/work/fermipy/fermipy/fermipy-extra/notebooks/M31_data/srcmdl_00.xml bexpmap=/home/runner/work/fermipy/fermipy/fermipy-extra/notebooks/M31_data/bexpmap_00.fits wmap=none outfile=/home/runner/work/fermipy/fermipy/fermipy-extra/notebooks/M31_data/srcmap_00.fits irfs="P8R2_SOURCE_V6" evtype=3 convol=yes resample=yes rfactor=2 minbinsz=0.05 ptsrc=yes psfcorr=yes emapbnds=no edisp_bins=-1 copyall=no chatter=3 clobber=yes debug=no gui=no mode="ql"
2026-07-17 21:49:28 INFO GTBinnedAnalysis.run_gtapp(): This is gtsrcmaps version HEAD
2026-07-17 21:49:28 INFO GTBinnedAnalysis.run_gtapp(): Using evtype=3 (i.e., FRONT/BACK irfs)
2026-07-17 21:49:28 INFO GTBinnedAnalysis.run_gtapp(): ResponseFunctions::load: IRF used: P8R2_SOURCE_V6
2026-07-17 21:49:28 INFO GTBinnedAnalysis.run_gtapp(): event_types: 0 1
2026-07-17 21:49:34 INFO GTBinnedAnalysis.run_gtapp(): Creating source named 3FGL J0042.5+4117
2026-07-17 21:49:34 INFO GTBinnedAnalysis.run_gtapp(): Creating source named 3FGL J0040.3+4049
2026-07-17 21:49:34 INFO GTBinnedAnalysis.run_gtapp(): Creating source named 3FGL J0049.0+4224
2026-07-17 21:49:34 INFO GTBinnedAnalysis.run_gtapp(): Creating source named 3FGL J0048.0+3950
2026-07-17 21:49:34 INFO GTBinnedAnalysis.run_gtapp(): Creating source named 3FGL J0039.1+4330
2026-07-17 21:49:34 INFO GTBinnedAnalysis.run_gtapp(): Creating source named 3FGL J0032.5+3912
2026-07-17 21:49:34 INFO GTBinnedAnalysis.run_gtapp(): Creating source named 3FGL J0102.3+4217
2026-07-17 21:49:34 INFO GTBinnedAnalysis.run_gtapp(): Creating source named 3FGL J0041.9+3639
2026-07-17 21:49:34 INFO GTBinnedAnalysis.run_gtapp(): Creating source named 3FGL J0105.3+3928
2026-07-17 21:49:34 INFO GTBinnedAnalysis.run_gtapp(): Creating source named 3FGL J0023.5+4454
2026-07-17 21:49:34 INFO GTBinnedAnalysis.run_gtapp(): Creating source named 3FGL J0102.1+4458
2026-07-17 21:49:34 INFO GTBinnedAnalysis.run_gtapp(): Creating source named 3FGL J0022.7+4651
2026-07-17 21:49:34 INFO GTBinnedAnalysis.run_gtapp(): Creating source named isodiff
2026-07-17 21:49:34 INFO GTBinnedAnalysis.run_gtapp(): Creating source named galdiff
2026-07-17 21:49:35 INFO GTBinnedAnalysis.run_gtapp(): Generating SourceMap for 3FGL J0022.7+4651 27....................!
2026-07-17 21:49:36 INFO GTBinnedAnalysis.run_gtapp(): Generating SourceMap for 3FGL J0023.5+4454 27....................!
2026-07-17 21:49:37 INFO GTBinnedAnalysis.run_gtapp(): Generating SourceMap for 3FGL J0032.5+3912 27....................!
2026-07-17 21:49:38 INFO GTBinnedAnalysis.run_gtapp(): Generating SourceMap for 3FGL J0039.1+4330 27....................!
2026-07-17 21:49:38 INFO GTBinnedAnalysis.run_gtapp(): Generating SourceMap for 3FGL J0040.3+4049 27....................!
2026-07-17 21:49:39 INFO GTBinnedAnalysis.run_gtapp(): Generating SourceMap for 3FGL J0041.9+3639 27....................!
2026-07-17 21:49:40 INFO GTBinnedAnalysis.run_gtapp(): Generating SourceMap for 3FGL J0042.5+4117 27....................!
2026-07-17 21:49:41 INFO GTBinnedAnalysis.run_gtapp(): Generating SourceMap for 3FGL J0048.0+3950 27....................!
2026-07-17 21:49:42 INFO GTBinnedAnalysis.run_gtapp(): Generating SourceMap for 3FGL J0049.0+4224 27....................!
2026-07-17 21:49:43 INFO GTBinnedAnalysis.run_gtapp(): Generating SourceMap for 3FGL J0102.1+4458 27....................!
2026-07-17 21:49:43 INFO GTBinnedAnalysis.run_gtapp(): Generating SourceMap for 3FGL J0102.3+4217 27....................!
2026-07-17 21:49:44 INFO GTBinnedAnalysis.run_gtapp(): Generating SourceMap for 3FGL J0105.3+3928 27....................!
2026-07-17 21:51:03 INFO GTBinnedAnalysis.run_gtapp(): Generating SourceMap for galdiff 27....................!
2026-07-17 21:52:09 INFO GTBinnedAnalysis.run_gtapp(): Generating SourceMap for isodiff 27....................!
2026-07-17 21:52:10 INFO GTBinnedAnalysis.run_gtapp(): Finished gtsrcmaps. Execution time: 162.03 s
2026-07-17 21:52:10 INFO GTBinnedAnalysis.setup(): Finished setup for component 00
2026-07-17 21:52:10 INFO GTBinnedAnalysis._create_binned_analysis(): Creating BinnedAnalysis for component 00.
2026-07-17 21:52:18 INFO GTAnalysis.setup(): Initializing source properties
2026-07-17 21:52:22 INFO GTAnalysis.setup(): Finished setup.
The model includes the IEM, isotropic template and 3FGL sources.
[5]:
gta.print_model()
2026-07-17 21:52:22 INFO GTAnalysis.print_model():
sourcename offset norm eflux index ts npred free
--------------------------------------------------------------------------------
3FGL J0042.5+4117 0.049 2.409 1.99e-06 2.56 nan 709.4
3FGL J0040.3+4049 0.640 0.422 6.4e-06 1.13 nan 52.6
3FGL J0049.0+4224 1.635 0.856 3.11e-06 1.77 nan 224.4
3FGL J0048.0+3950 1.745 0.429 4.65e-06 1.88 nan 462.9
3FGL J0039.1+4330 2.326 0.445 2.67e-06 1.96 nan 347.7
3FGL J0032.5+3912 2.825 0.791 1.28e-06 2.56 nan 445.6
3FGL J0102.3+4217 3.800 0.982 2.94e-06 2.69 nan 1143.6
3FGL J0041.9+3639 4.611 1.768 1.7e-06 1.98 nan 206.3
3FGL J0105.3+3928 4.661 0.591 2.43e-06 2.33 nan 616.4
3FGL J0023.5+4454 5.052 2.474 2.49e-06 2.57 nan 870.2
3FGL J0102.1+4458 5.121 1.034 1.43e-06 2.27 nan 347.5
3FGL J0022.7+4651 6.635 2.881 1.1e-06 2.78 nan 305.6
isodiff --- 1.000 0.0444 2.12 nan 34882.5
galdiff --- 1.000 0.213 0.00 nan 79287.4
We will make first a fit of the roi. I free sources and then I use gta.optimize()
[6]:
gta.free_sources()
gta.optimize()
2026-07-17 21:52:22 INFO GTAnalysis.free_source(): Freeing parameters for 3FGL J0042.5+4117 : ['Prefactor', 'Index']
2026-07-17 21:52:22 INFO GTAnalysis.free_source(): Freeing parameters for 3FGL J0040.3+4049 : ['Prefactor', 'Index']
2026-07-17 21:52:22 INFO GTAnalysis.free_source(): Freeing parameters for 3FGL J0049.0+4224 : ['Prefactor', 'Index']
2026-07-17 21:52:22 INFO GTAnalysis.free_source(): Freeing parameters for 3FGL J0048.0+3950 : ['Prefactor', 'Index']
2026-07-17 21:52:22 INFO GTAnalysis.free_source(): Freeing parameters for 3FGL J0039.1+4330 : ['Prefactor', 'Index']
2026-07-17 21:52:22 INFO GTAnalysis.free_source(): Freeing parameters for 3FGL J0032.5+3912 : ['Prefactor', 'Index']
2026-07-17 21:52:22 INFO GTAnalysis.free_source(): Freeing parameters for 3FGL J0102.3+4217 : ['Prefactor', 'Index']
2026-07-17 21:52:22 INFO GTAnalysis.free_source(): Freeing parameters for 3FGL J0041.9+3639 : ['Prefactor', 'Index']
2026-07-17 21:52:22 INFO GTAnalysis.free_source(): Freeing parameters for 3FGL J0105.3+3928 : ['Prefactor', 'Index']
2026-07-17 21:52:22 INFO GTAnalysis.free_source(): Freeing parameters for 3FGL J0023.5+4454 : ['Prefactor', 'Index']
2026-07-17 21:52:22 INFO GTAnalysis.free_source(): Freeing parameters for 3FGL J0102.1+4458 : ['Prefactor', 'Index']
2026-07-17 21:52:22 INFO GTAnalysis.free_source(): Freeing parameters for 3FGL J0022.7+4651 : ['Prefactor', 'Index']
2026-07-17 21:52:22 INFO GTAnalysis.free_source(): Freeing parameters for isodiff : ['Normalization']
2026-07-17 21:52:22 INFO GTAnalysis.free_source(): Freeing parameters for galdiff : ['Prefactor', 'Index']
2026-07-17 21:52:22 INFO GTAnalysis.optimize(): Starting
Joint fit ['galdiff', 'isodiff']
/home/runner/work/fermipy/fermipy/fermipy/utils.py:791: UserWarning:
The maximal number of iterations maxit (set to 20 by the program)
allowed for finding a smoothing spline with fp=s has been reached: s
too small.
There is an approximation returned but the corresponding weighted sum
of squared residuals does not satisfy the condition abs(fp-s)/s < tol.
spline = UnivariateSpline(x, y, k=2,
Fitting shape galdiff TS: 6180.309
Fitting shape isodiff TS: 861.205
Fitting shape 3FGL J0048.0+3950 TS: 557.785
Fitting shape 3FGL J0105.3+3928 TS: 262.683
Fitting shape 3FGL J0023.5+4454 TS: 219.454
Fitting shape 3FGL J0102.3+4217 TS: 174.087
Fitting shape 3FGL J0042.5+4117 TS: 89.877
Fitting shape 3FGL J0041.9+3639 TS: 81.777
Fitting shape 3FGL J0039.1+4330 TS: 76.530
Fitting shape 3FGL J0040.3+4049 TS: 57.079
Fitting shape 3FGL J0032.5+3912 TS: 44.531
Fitting shape 3FGL J0049.0+4224 TS: 33.632
2026-07-17 21:52:58 INFO GTAnalysis.optimize(): Finished
2026-07-17 21:52:58 INFO GTAnalysis.optimize(): LogLike: -246754.282072 Delta-LogLike: 343.748915
2026-07-17 21:52:58 INFO GTAnalysis.optimize(): Execution time: 35.91 s
[6]:
{'loglike0': -247098.03098698886,
'loglike1': -246754.28207166676,
'dloglike': 343.74891532209585,
'config': {'npred_threshold': 1.0,
'npred_frac': 0.95,
'shape_ts_threshold': 25.0,
'max_free_sources': 5,
'skip': [],
'optimizer': {'optimizer': 'MINUIT',
'tol': 0.001,
'max_iter': 100,
'init_lambda': 0.0001,
'retries': 3,
'min_fit_quality': 2,
'verbosity': 0}}}
Then, I use gta.fit() to make a more robust fit.
[7]:
gta.fit()
gta.print_model()
gta.write_roi('initial',make_plots=True,save_model_map=True)
plt.show()
2026-07-17 21:52:58 INFO GTAnalysis.fit(): Starting fit.
2026-07-17 21:57:32 INFO GTAnalysis.fit(): Fit returned successfully. Quality: 2 Status: 102
2026-07-17 21:57:32 INFO GTAnalysis.fit(): LogLike: -246747.296 DeltaLogLike: 6.986
2026-07-17 21:57:32 INFO GTAnalysis.print_model():
sourcename offset norm eflux index ts npred free
--------------------------------------------------------------------------------
3FGL J0042.5+4117 0.049 1.774 1.27e-06 2.74 59.63 518.4 *
3FGL J0040.3+4049 0.640 0.202 1.89e-06 1.89 79.78 199.3 *
3FGL J0049.0+4224 1.635 0.356 1.31e-06 1.76 33.65 92.2 *
3FGL J0048.0+3950 1.745 0.663 5.84e-06 2.01 563.98 847.4 *
3FGL J0039.1+4330 2.326 0.291 1.57e-06 2.03 76.86 244.1 *
3FGL J0032.5+3912 2.825 0.702 9.76e-07 2.92 43.60 432.5 *
3FGL J0102.3+4217 3.800 0.826 2.02e-06 2.91 168.76 896.1 *
3FGL J0041.9+3639 4.611 1.853 1.5e-06 2.42 93.15 409.7 *
3FGL J0105.3+3928 4.661 0.675 2.83e-06 2.31 259.17 700.8 *
3FGL J0023.5+4454 5.052 2.284 2.54e-06 2.47 215.12 807.3 *
3FGL J0102.1+4458 5.121 0.343 9.03e-07 1.88 21.31 92.1 *
3FGL J0022.7+4651 6.635 1.260 3.29e-07 5.00 6.44 145.7 *
isodiff --- 0.819 0.0364 2.12 732.34 28559.0 *
galdiff --- 1.176 0.248 0.01 11602.15 93558.0 *
2026-07-17 21:57:32 INFO GTBinnedAnalysis.write_xml(): Writing /home/runner/work/fermipy/fermipy/fermipy-extra/notebooks/M31_data/initial_00.xml...
2026-07-17 21:57:32 INFO GTAnalysis.write_fits(): Writing /home/runner/work/fermipy/fermipy/fermipy-extra/notebooks/M31_data/initial.fits...
WARNING: Format %s cannot be mapped to the accepted TDISPn keyword values. Format will not be moved into TDISPn keyword. [astropy.io.fits.column]
WARNING: Format %f cannot be mapped to the accepted TDISPn keyword values. Format will not be moved into TDISPn keyword. [astropy.io.fits.column]
WARNING: Format %f cannot be mapped to the accepted TDISPn keyword values. Format will not be moved into TDISPn keyword. [astropy.io.fits.column]
WARNING: Format %f cannot be mapped to the accepted TDISPn keyword values. Format will not be moved into TDISPn keyword. [astropy.io.fits.column]
WARNING: Format %f cannot be mapped to the accepted TDISPn keyword values. Format will not be moved into TDISPn keyword. [astropy.io.fits.column]
WARNING: Format %f cannot be mapped to the accepted TDISPn keyword values. Format will not be moved into TDISPn keyword. [astropy.io.fits.column]
WARNING: Format %f cannot be mapped to the accepted TDISPn keyword values. Format will not be moved into TDISPn keyword. [astropy.io.fits.column]
WARNING: Format %s cannot be mapped to the accepted TDISPn keyword values. Format will not be moved into TDISPn keyword. [astropy.io.fits.column]
WARNING: Format %s cannot be mapped to the accepted TDISPn keyword values. Format will not be moved into TDISPn keyword. [astropy.io.fits.column]
2026-07-17 21:57:32 INFO GTBinnedAnalysis.write_model_map(): Generating model map for component 00.
2026-07-17 21:57:33 INFO GTAnalysis.write_roi(): Writing /home/runner/work/fermipy/fermipy/fermipy-extra/notebooks/M31_data/initial.npy...
We see how the model is a good representation of the ROI computing the TS map using gta.tsmap.
[8]:
tsmap_postfit = gta.tsmap(prefix='TSmap_start',make_plots=True,write_fits=True,write_npy=True)
2026-07-17 21:57:36 INFO GTAnalysis.tsmap(): Generating TS map
2026-07-17 21:57:37 INFO GTAnalysis._make_tsmap_fast(): Fitting test source.
2026-07-17 21:59:20 INFO GTAnalysis.tsmap(): Finished TS map
2026-07-17 21:59:20 WARNING GTAnalysis.tsmap(): Saving TS maps in .npy files is disabled b/c of incompatibilities in python3, remove the maps from the /home/runner/work/fermipy/fermipy/fermipy-extra/notebooks/M31_data/TSmap_start_pointsource_powerlaw_2.00_tsmap.npy
2026-07-17 21:59:20 INFO GTAnalysis.tsmap(): Execution time: 104.01 s
[9]:
plt.clf()
fig = plt.figure(figsize=(14,6))
ROIPlotter(tsmap_postfit['sqrt_ts'],roi=gta.roi).plot(levels=[0,3,5,7],vmin=0,vmax=5,subplot=121,cmap='magma')
plt.gca().set_title('Sqrt(TS)')
ROIPlotter(tsmap_postfit['npred'],roi=gta.roi).plot(vmin=0,vmax=100,subplot=122,cmap='magma')
plt.gca().set_title('NPred')
plt.show()
<Figure size 640x480 with 0 Axes>
Then, we can use the tool gta.residmap to calculatge the residuals.
[10]:
resid = gta.residmap('3fgl_j0042.5+4117_postfit',model={'SpatialModel' : 'PointSource', 'Index' : 2.0},write_fits=True,write_npy=True,make_plots=True)
2026-07-17 21:59:21 INFO GTAnalysis.residmap(): Generating residual maps
2026-07-17 21:59:21 INFO GTAnalysis.add_source(): Adding source residmap_testsource
2026-07-17 21:59:22 INFO GTAnalysis.delete_source(): Deleting source residmap_testsource
2026-07-17 21:59:24 INFO GTAnalysis.residmap(): Finished residual maps
2026-07-17 21:59:24 WARNING GTAnalysis.residmap(): Saving maps in .npy files is disabled b/c of incompatibilities in python3, remove the maps from the /home/runner/work/fermipy/fermipy/fermipy-extra/notebooks/M31_data/3fgl_j0042.5+4117_postfit_pointsource_powerlaw_2.00_residmap.npy
2026-07-17 21:59:24 INFO GTAnalysis.residmap(): Execution time: 3.23 s
[11]:
plt.clf()
fig = plt.figure(figsize=(14,6))
ROIPlotter(resid['data'],roi=gta.roi).plot(vmin=1000,vmax=3000,subplot=121,cmap='magma')
plt.gca().set_title('Data')
ROIPlotter(resid['model'],roi=gta.roi).plot(vmin=1000,vmax=3000,subplot=122,cmap='magma')
plt.gca().set_title('Model')
plt.show()
<Figure size 640x480 with 0 Axes>
[12]:
plt.clf()
fig = plt.figure(figsize=(14,6))
ROIPlotter(resid['sigma'],roi=gta.roi).plot(vmin=-5,vmax=5,levels=[-5,-3,3,5],subplot=121,cmap='RdBu_r')
plt.gca().set_title('Significance')
ROIPlotter(resid['excess'],roi=gta.roi).plot(vmin=-100,vmax=100,subplot=122,cmap='RdBu_r')
plt.gca().set_title('Excess')
plt.show()
<Figure size 640x480 with 0 Axes>
As we can see there are large residuals in the TS map and in the residuals map. Therefore, we certainly have to improve our model.
[13]:
gta.delete_sources(minmax_ts=[None,25])
2026-07-17 21:59:25 INFO GTAnalysis.delete_source(): Deleting source 3FGL J0102.1+4458
2026-07-17 21:59:25 INFO GTAnalysis.delete_source(): Deleting source 3FGL J0022.7+4651
[13]:
[<fermipy.roi_model.Source at 0x7f78576a6550>,
<fermipy.roi_model.Source at 0x7f78576cc310>]
[14]:
gta.load_roi('initial')
2026-07-17 21:59:26 INFO GTAnalysis.load_roi(): Loading ROI file: /home/runner/work/fermipy/fermipy/fermipy-extra/notebooks/M31_data/initial.npy
2026-07-17 21:59:26 INFO GTBinnedAnalysis._create_binned_analysis(): Creating BinnedAnalysis for component 00.
2026-07-17 21:59:34 INFO GTAnalysis.load_roi(): Finished Loading ROI
Source Localization
The first thing to do in order to improve the model is to relocalize the sources of your model. In particular in our case where we have 3FGL source this is particularly requested.
The localize() method can be used to spatially localize a source. Localization is performed by scanning the likelihood surface in source position in a local patch around the nominal source position. The fit to the source position proceeds in two iterations: TS Map Scan: Obtain a first estimate of the source position by generating a likelihood map of the region using the tsmap method. In this step all background parameters are fixed to their nominal values. The size of the search region used for this step is set with the dtheta_max parameter. Likelihood Scan: Refine the position of the source by performing a scan of the likelihood surface in a box centered on the best-fit position found in the first iteration. The size of the search region is set to encompass the 99% positional uncertainty contour. This method uses a full likelihood fit at each point in the likelihood scan and will re-fit all free parameters of the model. If a peak is found in the search region and the positional fit succeeds, the method will update the position of the source in the model to the new best-fit position.
We will localize all the sources in the model. We include a function to calculate the angular distance from two directions in the sky.
This will likely take tens of minutes as we are re-localising each source.
[15]:
def angular_distance_gal(L1, L2, B1, B2):
# L : [0,2pi], e.g. lon or ra
# B : [-pi/2,pi/2], e.g. lat or dec
if L1==L2 and B1==B2: # skip the calculation if the coordinates are equal
return 0
else:
# degrees to radians
dtr = np.pi/180
xx = acos( sin(B1*dtr)*sin(B2*dtr) + cos(B1*dtr)*cos(B2*dtr)*cos((L1-L2)*dtr) )
return xx/dtr
[16]:
glon0 = np.zeros(len(gta.roi.sources))
glat0 = np.zeros(len(gta.roi.sources))
glon1 = np.zeros(len(gta.roi.sources))
glat1 = np.zeros(len(gta.roi.sources))
offset = np.zeros(len(gta.roi.sources))
for t in range(len(gta.roi.sources)-2):
print("\nRenormalization of source %s"%gta.roi.sources[t].name, "\n")
# Coordinates of the current localisation
glon0[t] = gta.roi[gta.roi.sources[t].name]['glon']
glat0[t] = gta.roi[gta.roi.sources[t].name]['glat']
gta.free_sources(free=False)
gta.print_model()
gta.free_sources(skydir=gta.roi[gta.roi.sources[t].name].skydir,distance=[3.0],free=True)
gta.print_model()
gta.localize(gta.roi.sources[t].name, update=True, make_plots=True)
# New localisation coordinates
glon1[t] = gta.roi[gta.roi.sources[t].name]['glon']
glat1[t] = gta.roi[gta.roi.sources[t].name]['glat']
offset[t] = angular_distance_gal(glon0[t],glon1[t],glat0[t],glat1[t]) # angular distance between the old and new localisations
gta.print_model()
2026-07-17 21:59:34 INFO GTAnalysis.free_source(): Fixing parameters for 3FGL J0042.5+4117 : ['Prefactor', 'Index']
2026-07-17 21:59:34 INFO GTAnalysis.free_source(): Fixing parameters for 3FGL J0040.3+4049 : ['Prefactor', 'Index']
2026-07-17 21:59:34 INFO GTAnalysis.free_source(): Fixing parameters for 3FGL J0049.0+4224 : ['Prefactor', 'Index']
2026-07-17 21:59:34 INFO GTAnalysis.free_source(): Fixing parameters for 3FGL J0048.0+3950 : ['Prefactor', 'Index']
2026-07-17 21:59:34 INFO GTAnalysis.free_source(): Fixing parameters for 3FGL J0039.1+4330 : ['Prefactor', 'Index']
2026-07-17 21:59:34 INFO GTAnalysis.free_source(): Fixing parameters for 3FGL J0032.5+3912 : ['Prefactor', 'Index']
2026-07-17 21:59:34 INFO GTAnalysis.free_source(): Fixing parameters for 3FGL J0102.3+4217 : ['Prefactor', 'Index']
2026-07-17 21:59:34 INFO GTAnalysis.free_source(): Fixing parameters for 3FGL J0041.9+3639 : ['Prefactor', 'Index']
2026-07-17 21:59:34 INFO GTAnalysis.free_source(): Fixing parameters for 3FGL J0105.3+3928 : ['Prefactor', 'Index']
2026-07-17 21:59:34 INFO GTAnalysis.free_source(): Fixing parameters for 3FGL J0023.5+4454 : ['Prefactor', 'Index']
2026-07-17 21:59:34 INFO GTAnalysis.free_source(): Fixing parameters for 3FGL J0102.1+4458 : ['Prefactor', 'Index']
2026-07-17 21:59:34 INFO GTAnalysis.free_source(): Fixing parameters for 3FGL J0022.7+4651 : ['Prefactor', 'Index']
2026-07-17 21:59:34 INFO GTAnalysis.free_source(): Fixing parameters for isodiff : ['Normalization']
2026-07-17 21:59:34 INFO GTAnalysis.free_source(): Fixing parameters for galdiff : ['Prefactor', 'Index']
2026-07-17 21:59:34 INFO GTAnalysis.print_model():
sourcename offset norm eflux index ts npred free
--------------------------------------------------------------------------------
3FGL J0042.5+4117 0.049 1.774 1.27e-06 2.74 59.63 518.4
3FGL J0040.3+4049 0.640 0.202 1.89e-06 1.89 79.78 199.3
3FGL J0049.0+4224 1.635 0.356 1.31e-06 1.76 33.65 92.2
3FGL J0048.0+3950 1.745 0.663 5.84e-06 2.01 563.98 847.4
3FGL J0039.1+4330 2.326 0.291 1.57e-06 2.03 76.86 244.1
3FGL J0032.5+3912 2.825 0.702 9.76e-07 2.92 43.60 432.5
3FGL J0102.3+4217 3.800 0.826 2.02e-06 2.91 168.76 896.1
3FGL J0041.9+3639 4.611 1.853 1.5e-06 2.42 93.15 409.7
3FGL J0105.3+3928 4.661 0.675 2.83e-06 2.31 259.17 700.8
3FGL J0023.5+4454 5.052 2.284 2.54e-06 2.47 215.12 807.3
3FGL J0102.1+4458 5.121 0.343 9.03e-07 1.88 21.31 92.1
3FGL J0022.7+4651 6.635 1.260 3.29e-07 5.00 6.44 145.7
isodiff --- 0.819 0.0364 2.12 732.34 28559.0
galdiff --- 1.176 0.248 0.01 11602.15 93558.0
2026-07-17 21:59:34 INFO GTAnalysis.free_source(): Freeing parameters for 3FGL J0042.5+4117 : ['Prefactor', 'Index']
2026-07-17 21:59:34 INFO GTAnalysis.free_source(): Freeing parameters for 3FGL J0040.3+4049 : ['Prefactor', 'Index']
2026-07-17 21:59:34 INFO GTAnalysis.free_source(): Freeing parameters for 3FGL J0049.0+4224 : ['Prefactor', 'Index']
2026-07-17 21:59:34 INFO GTAnalysis.free_source(): Freeing parameters for 3FGL J0048.0+3950 : ['Prefactor', 'Index']
2026-07-17 21:59:34 INFO GTAnalysis.free_source(): Freeing parameters for 3FGL J0039.1+4330 : ['Prefactor', 'Index']
2026-07-17 21:59:34 INFO GTAnalysis.free_source(): Freeing parameters for 3FGL J0032.5+3912 : ['Prefactor', 'Index']
2026-07-17 21:59:34 INFO GTAnalysis.free_source(): Freeing parameters for isodiff : ['Normalization']
2026-07-17 21:59:34 INFO GTAnalysis.free_source(): Freeing parameters for galdiff : ['Prefactor', 'Index']
2026-07-17 21:59:34 INFO GTAnalysis.print_model():
sourcename offset norm eflux index ts npred free
--------------------------------------------------------------------------------
3FGL J0042.5+4117 0.049 1.774 1.27e-06 2.74 59.63 518.4 *
3FGL J0040.3+4049 0.640 0.202 1.89e-06 1.89 79.78 199.3 *
3FGL J0049.0+4224 1.635 0.356 1.31e-06 1.76 33.65 92.2 *
3FGL J0048.0+3950 1.745 0.663 5.84e-06 2.01 563.98 847.4 *
3FGL J0039.1+4330 2.326 0.291 1.57e-06 2.03 76.86 244.1 *
3FGL J0032.5+3912 2.825 0.702 9.76e-07 2.92 43.60 432.5 *
3FGL J0102.3+4217 3.800 0.826 2.02e-06 2.91 168.76 896.1
3FGL J0041.9+3639 4.611 1.853 1.5e-06 2.42 93.15 409.7
3FGL J0105.3+3928 4.661 0.675 2.83e-06 2.31 259.17 700.8
3FGL J0023.5+4454 5.052 2.284 2.54e-06 2.47 215.12 807.3
3FGL J0102.1+4458 5.121 0.343 9.03e-07 1.88 21.31 92.1
3FGL J0022.7+4651 6.635 1.260 3.29e-07 5.00 6.44 145.7
isodiff --- 0.819 0.0364 2.12 732.34 28559.0 *
galdiff --- 1.176 0.248 0.01 11602.15 93558.0 *
2026-07-17 21:59:34 INFO GTAnalysis.localize(): Running localization for 3FGL J0042.5+4117
Renormalization of source 3FGL J0042.5+4117
2026-07-17 21:59:43 INFO GTAnalysis._localize(): Localization succeeded.
2026-07-17 21:59:43 INFO GTAnalysis._localize(): Updating source 3FGL J0042.5+4117 to localized position.
2026-07-17 21:59:43 INFO GTAnalysis.delete_source(): Deleting source 3FGL J0042.5+4117
2026-07-17 21:59:43 INFO GTAnalysis.add_source(): Adding source 3FGL J0042.5+4117
2026-07-17 21:59:44 INFO GTAnalysis._localize(): Localization completed with new position:
( ra, dec) = ( 10.6611 +/- 0.1164, 41.2954 +/- 0.1017)
(glon,glat) = ( 121.1563 +/- 0.1147, -21.5460 +/- 0.1037)
offset = 0.0239 r68 = 0.1560 r95 = 0.2517 r99 = 0.3121
2026-07-17 21:59:44 INFO GTAnalysis._localize(): LogLike: -246841.822 DeltaLogLike: 3.618
2026-07-17 21:59:44 INFO GTAnalysis.localize(): Finished localization.
2026-07-17 21:59:44 WARNING GTAnalysis.localize(): Saving TS maps in .npy files is disabled b/c of incompatibilities in python3, remove the maps from the /home/runner/work/fermipy/fermipy/fermipy-extra/notebooks/M31_data/3fgl_j0042.5+4117_loc.npy
2026-07-17 21:59:44 INFO GTAnalysis.localize(): Execution time: 10.95 s
2026-07-17 21:59:44 INFO GTAnalysis.print_model():
sourcename offset norm eflux index ts npred free
--------------------------------------------------------------------------------
3FGL J0042.5+4117 0.031 1.053 8.52e-07 2.58 30.07 324.2 *
3FGL J0040.3+4049 0.640 0.202 1.89e-06 1.89 79.78 199.3 *
3FGL J0049.0+4224 1.635 0.356 1.31e-06 1.76 33.65 92.2 *
3FGL J0048.0+3950 1.745 0.663 5.84e-06 2.01 563.98 847.4 *
3FGL J0039.1+4330 2.326 0.291 1.57e-06 2.03 76.86 244.1 *
3FGL J0032.5+3912 2.825 0.702 9.76e-07 2.92 43.60 432.5 *
3FGL J0102.3+4217 3.800 0.826 2.02e-06 2.91 168.76 896.1
3FGL J0041.9+3639 4.611 1.853 1.5e-06 2.42 93.15 409.7
3FGL J0105.3+3928 4.661 0.675 2.83e-06 2.31 259.17 700.8
3FGL J0023.5+4454 5.052 2.284 2.54e-06 2.47 215.12 807.3
3FGL J0102.1+4458 5.121 0.343 9.03e-07 1.88 21.31 92.1
3FGL J0022.7+4651 6.635 1.260 3.29e-07 5.00 6.44 145.7
isodiff --- 0.819 0.0364 2.12 732.34 28559.0 *
galdiff --- 1.176 0.248 0.01 11602.15 93558.0 *
2026-07-17 21:59:44 INFO GTAnalysis.free_source(): Fixing parameters for 3FGL J0042.5+4117 : ['Prefactor', 'Index']
2026-07-17 21:59:44 INFO GTAnalysis.free_source(): Fixing parameters for 3FGL J0040.3+4049 : ['Prefactor', 'Index']
2026-07-17 21:59:45 INFO GTAnalysis.free_source(): Fixing parameters for 3FGL J0049.0+4224 : ['Prefactor', 'Index']
2026-07-17 21:59:45 INFO GTAnalysis.free_source(): Fixing parameters for 3FGL J0048.0+3950 : ['Prefactor', 'Index']
2026-07-17 21:59:45 INFO GTAnalysis.free_source(): Fixing parameters for 3FGL J0039.1+4330 : ['Prefactor', 'Index']
2026-07-17 21:59:45 INFO GTAnalysis.free_source(): Fixing parameters for 3FGL J0032.5+3912 : ['Prefactor', 'Index']
2026-07-17 21:59:45 INFO GTAnalysis.free_source(): Fixing parameters for isodiff : ['Normalization']
2026-07-17 21:59:45 INFO GTAnalysis.free_source(): Fixing parameters for galdiff : ['Prefactor', 'Index']
2026-07-17 21:59:45 INFO GTAnalysis.print_model():
sourcename offset norm eflux index ts npred free
--------------------------------------------------------------------------------
3FGL J0042.5+4117 0.031 1.053 8.52e-07 2.58 30.07 324.2
3FGL J0040.3+4049 0.640 0.202 1.89e-06 1.89 79.78 199.3
3FGL J0049.0+4224 1.635 0.356 1.31e-06 1.76 33.65 92.2
3FGL J0048.0+3950 1.745 0.663 5.84e-06 2.01 563.98 847.4
3FGL J0039.1+4330 2.326 0.291 1.57e-06 2.03 76.86 244.1
3FGL J0032.5+3912 2.825 0.702 9.76e-07 2.92 43.60 432.5
3FGL J0102.3+4217 3.800 0.826 2.02e-06 2.91 168.76 896.1
3FGL J0041.9+3639 4.611 1.853 1.5e-06 2.42 93.15 409.7
3FGL J0105.3+3928 4.661 0.675 2.83e-06 2.31 259.17 700.8
3FGL J0023.5+4454 5.052 2.284 2.54e-06 2.47 215.12 807.3
3FGL J0102.1+4458 5.121 0.343 9.03e-07 1.88 21.31 92.1
3FGL J0022.7+4651 6.635 1.260 3.29e-07 5.00 6.44 145.7
isodiff --- 0.819 0.0364 2.12 732.34 28559.0
galdiff --- 1.176 0.248 0.01 11602.15 93558.0
2026-07-17 21:59:45 INFO GTAnalysis.free_source(): Freeing parameters for 3FGL J0040.3+4049 : ['Prefactor', 'Index']
2026-07-17 21:59:45 INFO GTAnalysis.free_source(): Freeing parameters for 3FGL J0042.5+4117 : ['Prefactor', 'Index']
2026-07-17 21:59:45 INFO GTAnalysis.free_source(): Freeing parameters for 3FGL J0048.0+3950 : ['Prefactor', 'Index']
2026-07-17 21:59:45 INFO GTAnalysis.free_source(): Freeing parameters for 3FGL J0032.5+3912 : ['Prefactor', 'Index']
2026-07-17 21:59:45 INFO GTAnalysis.free_source(): Freeing parameters for 3FGL J0049.0+4224 : ['Prefactor', 'Index']
2026-07-17 21:59:45 INFO GTAnalysis.free_source(): Freeing parameters for 3FGL J0039.1+4330 : ['Prefactor', 'Index']
2026-07-17 21:59:45 INFO GTAnalysis.free_source(): Freeing parameters for isodiff : ['Normalization']
2026-07-17 21:59:45 INFO GTAnalysis.free_source(): Freeing parameters for galdiff : ['Prefactor', 'Index']
2026-07-17 21:59:45 INFO GTAnalysis.print_model():
sourcename offset norm eflux index ts npred free
--------------------------------------------------------------------------------
3FGL J0042.5+4117 0.031 1.053 8.52e-07 2.58 30.07 324.2 *
3FGL J0040.3+4049 0.640 0.202 1.89e-06 1.89 79.78 199.3 *
3FGL J0049.0+4224 1.635 0.356 1.31e-06 1.76 33.65 92.2 *
3FGL J0048.0+3950 1.745 0.663 5.84e-06 2.01 563.98 847.4 *
3FGL J0039.1+4330 2.326 0.291 1.57e-06 2.03 76.86 244.1 *
3FGL J0032.5+3912 2.825 0.702 9.76e-07 2.92 43.60 432.5 *
3FGL J0102.3+4217 3.800 0.826 2.02e-06 2.91 168.76 896.1
3FGL J0041.9+3639 4.611 1.853 1.5e-06 2.42 93.15 409.7
3FGL J0105.3+3928 4.661 0.675 2.83e-06 2.31 259.17 700.8
3FGL J0023.5+4454 5.052 2.284 2.54e-06 2.47 215.12 807.3
3FGL J0102.1+4458 5.121 0.343 9.03e-07 1.88 21.31 92.1
3FGL J0022.7+4651 6.635 1.260 3.29e-07 5.00 6.44 145.7
isodiff --- 0.819 0.0364 2.12 732.34 28559.0 *
galdiff --- 1.176 0.248 0.01 11602.15 93558.0 *
2026-07-17 21:59:45 INFO GTAnalysis.localize(): Running localization for 3FGL J0040.3+4049
Renormalization of source 3FGL J0040.3+4049
2026-07-17 21:59:54 INFO GTAnalysis._localize(): Localization succeeded.
2026-07-17 21:59:54 INFO GTAnalysis._localize(): Updating source 3FGL J0040.3+4049 to localized position.
2026-07-17 21:59:54 INFO GTAnalysis.delete_source(): Deleting source 3FGL J0040.3+4049
2026-07-17 21:59:54 INFO GTAnalysis.add_source(): Adding source 3FGL J0040.3+4049
/home/runner/work/fermipy/fermipy/fermipy/utils.py:791: UserWarning:
The maximal number of iterations maxit (set to 20 by the program)
allowed for finding a smoothing spline with fp=s has been reached: s
too small.
There is an approximation returned but the corresponding weighted sum
of squared residuals does not satisfy the condition abs(fp-s)/s < tol.
spline = UnivariateSpline(x, y, k=2,
2026-07-17 21:59:55 INFO GTAnalysis._localize(): Localization completed with new position:
( ra, dec) = ( 10.1059 +/- 0.0173, 40.8242 +/- 0.0165)
(glon,glat) = ( 120.6849 +/- 0.0173, -21.9994 +/- 0.0165)
offset = 0.0185 r68 = 0.0256 r95 = 0.0413 r99 = 0.0512
2026-07-17 21:59:55 INFO GTAnalysis._localize(): LogLike: -246840.846 DeltaLogLike: 0.976
2026-07-17 21:59:55 INFO GTAnalysis.localize(): Finished localization.
2026-07-17 21:59:56 WARNING GTAnalysis.localize(): Saving TS maps in .npy files is disabled b/c of incompatibilities in python3, remove the maps from the /home/runner/work/fermipy/fermipy/fermipy-extra/notebooks/M31_data/3fgl_j0040.3+4049_loc.npy
2026-07-17 21:59:56 INFO GTAnalysis.localize(): Execution time: 11.08 s
2026-07-17 21:59:56 INFO GTAnalysis.print_model():
sourcename offset norm eflux index ts npred free
--------------------------------------------------------------------------------
3FGL J0042.5+4117 0.031 1.053 8.52e-07 2.58 30.07 324.2 *
3FGL J0040.3+4049 0.624 0.222 1.99e-06 1.77 73.87 149.1 *
3FGL J0049.0+4224 1.635 0.356 1.31e-06 1.76 33.65 92.2 *
3FGL J0048.0+3950 1.745 0.663 5.84e-06 2.01 563.98 847.4 *
3FGL J0039.1+4330 2.326 0.291 1.57e-06 2.03 76.86 244.1 *
3FGL J0032.5+3912 2.825 0.702 9.76e-07 2.92 43.60 432.5 *
3FGL J0102.3+4217 3.800 0.826 2.02e-06 2.91 168.76 896.1
3FGL J0041.9+3639 4.611 1.853 1.5e-06 2.42 93.15 409.7
3FGL J0105.3+3928 4.661 0.675 2.83e-06 2.31 259.17 700.8
3FGL J0023.5+4454 5.052 2.284 2.54e-06 2.47 215.12 807.3
3FGL J0102.1+4458 5.121 0.343 9.03e-07 1.88 21.31 92.1
3FGL J0022.7+4651 6.635 1.260 3.29e-07 5.00 6.44 145.7
isodiff --- 0.819 0.0364 2.12 732.34 28559.0 *
galdiff --- 1.176 0.248 0.01 11602.15 93558.0 *
2026-07-17 21:59:56 INFO GTAnalysis.free_source(): Fixing parameters for 3FGL J0042.5+4117 : ['Prefactor', 'Index']
2026-07-17 21:59:56 INFO GTAnalysis.free_source(): Fixing parameters for 3FGL J0040.3+4049 : ['Prefactor', 'Index']
2026-07-17 21:59:56 INFO GTAnalysis.free_source(): Fixing parameters for 3FGL J0049.0+4224 : ['Prefactor', 'Index']
2026-07-17 21:59:56 INFO GTAnalysis.free_source(): Fixing parameters for 3FGL J0048.0+3950 : ['Prefactor', 'Index']
2026-07-17 21:59:56 INFO GTAnalysis.free_source(): Fixing parameters for 3FGL J0039.1+4330 : ['Prefactor', 'Index']
2026-07-17 21:59:56 INFO GTAnalysis.free_source(): Fixing parameters for 3FGL J0032.5+3912 : ['Prefactor', 'Index']
2026-07-17 21:59:56 INFO GTAnalysis.free_source(): Fixing parameters for isodiff : ['Normalization']
2026-07-17 21:59:56 INFO GTAnalysis.free_source(): Fixing parameters for galdiff : ['Prefactor', 'Index']
2026-07-17 21:59:56 INFO GTAnalysis.print_model():
sourcename offset norm eflux index ts npred free
--------------------------------------------------------------------------------
3FGL J0042.5+4117 0.031 1.053 8.52e-07 2.58 30.07 324.2
3FGL J0040.3+4049 0.624 0.222 1.99e-06 1.77 73.87 149.1
3FGL J0049.0+4224 1.635 0.356 1.31e-06 1.76 33.65 92.2
3FGL J0048.0+3950 1.745 0.663 5.84e-06 2.01 563.98 847.4
3FGL J0039.1+4330 2.326 0.291 1.57e-06 2.03 76.86 244.1
3FGL J0032.5+3912 2.825 0.702 9.76e-07 2.92 43.60 432.5
3FGL J0102.3+4217 3.800 0.826 2.02e-06 2.91 168.76 896.1
3FGL J0041.9+3639 4.611 1.853 1.5e-06 2.42 93.15 409.7
3FGL J0105.3+3928 4.661 0.675 2.83e-06 2.31 259.17 700.8
3FGL J0023.5+4454 5.052 2.284 2.54e-06 2.47 215.12 807.3
3FGL J0102.1+4458 5.121 0.343 9.03e-07 1.88 21.31 92.1
3FGL J0022.7+4651 6.635 1.260 3.29e-07 5.00 6.44 145.7
isodiff --- 0.819 0.0364 2.12 732.34 28559.0
galdiff --- 1.176 0.248 0.01 11602.15 93558.0
2026-07-17 21:59:56 INFO GTAnalysis.free_source(): Freeing parameters for 3FGL J0049.0+4224 : ['Prefactor', 'Index']
2026-07-17 21:59:56 INFO GTAnalysis.free_source(): Freeing parameters for 3FGL J0042.5+4117 : ['Prefactor', 'Index']
2026-07-17 21:59:56 INFO GTAnalysis.free_source(): Freeing parameters for 3FGL J0039.1+4330 : ['Prefactor', 'Index']
2026-07-17 21:59:56 INFO GTAnalysis.free_source(): Freeing parameters for 3FGL J0040.3+4049 : ['Prefactor', 'Index']
2026-07-17 21:59:56 INFO GTAnalysis.free_source(): Freeing parameters for 3FGL J0102.3+4217 : ['Prefactor', 'Index']
2026-07-17 21:59:56 INFO GTAnalysis.free_source(): Freeing parameters for 3FGL J0048.0+3950 : ['Prefactor', 'Index']
2026-07-17 21:59:56 INFO GTAnalysis.free_source(): Freeing parameters for isodiff : ['Normalization']
2026-07-17 21:59:56 INFO GTAnalysis.free_source(): Freeing parameters for galdiff : ['Prefactor', 'Index']
2026-07-17 21:59:56 INFO GTAnalysis.print_model():
sourcename offset norm eflux index ts npred free
--------------------------------------------------------------------------------
3FGL J0042.5+4117 0.031 1.053 8.52e-07 2.58 30.07 324.2 *
3FGL J0040.3+4049 0.624 0.222 1.99e-06 1.77 73.87 149.1 *
3FGL J0049.0+4224 1.635 0.356 1.31e-06 1.76 33.65 92.2 *
3FGL J0048.0+3950 1.745 0.663 5.84e-06 2.01 563.98 847.4 *
3FGL J0039.1+4330 2.326 0.291 1.57e-06 2.03 76.86 244.1 *
3FGL J0032.5+3912 2.825 0.702 9.76e-07 2.92 43.60 432.5
3FGL J0102.3+4217 3.800 0.826 2.02e-06 2.91 168.76 896.1 *
3FGL J0041.9+3639 4.611 1.853 1.5e-06 2.42 93.15 409.7
3FGL J0105.3+3928 4.661 0.675 2.83e-06 2.31 259.17 700.8
3FGL J0023.5+4454 5.052 2.284 2.54e-06 2.47 215.12 807.3
3FGL J0102.1+4458 5.121 0.343 9.03e-07 1.88 21.31 92.1
3FGL J0022.7+4651 6.635 1.260 3.29e-07 5.00 6.44 145.7
isodiff --- 0.819 0.0364 2.12 732.34 28559.0 *
galdiff --- 1.176 0.248 0.01 11602.15 93558.0 *
2026-07-17 21:59:56 INFO GTAnalysis.localize(): Running localization for 3FGL J0049.0+4224
Renormalization of source 3FGL J0049.0+4224
2026-07-17 22:00:05 INFO GTAnalysis._localize(): Localization succeeded.
2026-07-17 22:00:05 INFO GTAnalysis._localize(): Updating source 3FGL J0049.0+4224 to localized position.
2026-07-17 22:00:05 INFO GTAnalysis.delete_source(): Deleting source 3FGL J0049.0+4224
2026-07-17 22:00:05 INFO GTAnalysis.add_source(): Adding source 3FGL J0049.0+4224
2026-07-17 22:00:06 INFO GTAnalysis._localize(): Localization completed with new position:
( ra, dec) = ( 12.2893 +/- 0.0248, 42.4073 +/- 0.0306)
(glon,glat) = ( 122.4825 +/- 0.0248, -20.4624 +/- 0.0306)
offset = 0.0274 r68 = 0.0416 r95 = 0.0672 r99 = 0.0833
2026-07-17 22:00:06 INFO GTAnalysis._localize(): LogLike: -246839.487 DeltaLogLike: 1.359
2026-07-17 22:00:06 INFO GTAnalysis.localize(): Finished localization.
2026-07-17 22:00:07 WARNING GTAnalysis.localize(): Saving TS maps in .npy files is disabled b/c of incompatibilities in python3, remove the maps from the /home/runner/work/fermipy/fermipy/fermipy-extra/notebooks/M31_data/3fgl_j0049.0+4224_loc.npy
2026-07-17 22:00:07 INFO GTAnalysis.localize(): Execution time: 11.12 s
2026-07-17 22:00:07 INFO GTAnalysis.print_model():
sourcename offset norm eflux index ts npred free
--------------------------------------------------------------------------------
3FGL J0042.5+4117 0.031 1.053 8.52e-07 2.58 30.07 324.2 *
3FGL J0040.3+4049 0.624 0.222 1.99e-06 1.77 73.87 149.1 *
3FGL J0049.0+4224 1.650 0.278 1.33e-06 1.63 29.89 61.4 *
3FGL J0048.0+3950 1.745 0.663 5.84e-06 2.01 563.98 847.4 *
3FGL J0039.1+4330 2.326 0.291 1.57e-06 2.03 76.86 244.1 *
3FGL J0032.5+3912 2.825 0.702 9.76e-07 2.92 43.60 432.5
3FGL J0102.3+4217 3.800 0.826 2.02e-06 2.91 168.76 896.1 *
3FGL J0041.9+3639 4.611 1.853 1.5e-06 2.42 93.15 409.7
3FGL J0105.3+3928 4.661 0.675 2.83e-06 2.31 259.17 700.8
3FGL J0023.5+4454 5.052 2.284 2.54e-06 2.47 215.12 807.3
3FGL J0102.1+4458 5.121 0.343 9.03e-07 1.88 21.31 92.1
3FGL J0022.7+4651 6.635 1.260 3.29e-07 5.00 6.44 145.7
isodiff --- 0.819 0.0364 2.12 732.34 28559.0 *
galdiff --- 1.176 0.248 0.01 11602.15 93558.0 *
2026-07-17 22:00:07 INFO GTAnalysis.free_source(): Fixing parameters for 3FGL J0042.5+4117 : ['Prefactor', 'Index']
2026-07-17 22:00:07 INFO GTAnalysis.free_source(): Fixing parameters for 3FGL J0040.3+4049 : ['Prefactor', 'Index']
2026-07-17 22:00:07 INFO GTAnalysis.free_source(): Fixing parameters for 3FGL J0049.0+4224 : ['Prefactor', 'Index']
2026-07-17 22:00:07 INFO GTAnalysis.free_source(): Fixing parameters for 3FGL J0048.0+3950 : ['Prefactor', 'Index']
2026-07-17 22:00:07 INFO GTAnalysis.free_source(): Fixing parameters for 3FGL J0039.1+4330 : ['Prefactor', 'Index']
2026-07-17 22:00:07 INFO GTAnalysis.free_source(): Fixing parameters for 3FGL J0102.3+4217 : ['Prefactor', 'Index']
2026-07-17 22:00:07 INFO GTAnalysis.free_source(): Fixing parameters for isodiff : ['Normalization']
2026-07-17 22:00:07 INFO GTAnalysis.free_source(): Fixing parameters for galdiff : ['Prefactor', 'Index']
2026-07-17 22:00:07 INFO GTAnalysis.print_model():
sourcename offset norm eflux index ts npred free
--------------------------------------------------------------------------------
3FGL J0042.5+4117 0.031 1.053 8.52e-07 2.58 30.07 324.2
3FGL J0040.3+4049 0.624 0.222 1.99e-06 1.77 73.87 149.1
3FGL J0049.0+4224 1.650 0.278 1.33e-06 1.63 29.89 61.4
3FGL J0048.0+3950 1.745 0.663 5.84e-06 2.01 563.98 847.4
3FGL J0039.1+4330 2.326 0.291 1.57e-06 2.03 76.86 244.1
3FGL J0032.5+3912 2.825 0.702 9.76e-07 2.92 43.60 432.5
3FGL J0102.3+4217 3.800 0.826 2.02e-06 2.91 168.76 896.1
3FGL J0041.9+3639 4.611 1.853 1.5e-06 2.42 93.15 409.7
3FGL J0105.3+3928 4.661 0.675 2.83e-06 2.31 259.17 700.8
3FGL J0023.5+4454 5.052 2.284 2.54e-06 2.47 215.12 807.3
3FGL J0102.1+4458 5.121 0.343 9.03e-07 1.88 21.31 92.1
3FGL J0022.7+4651 6.635 1.260 3.29e-07 5.00 6.44 145.7
isodiff --- 0.819 0.0364 2.12 732.34 28559.0
galdiff --- 1.176 0.248 0.01 11602.15 93558.0
2026-07-17 22:00:07 INFO GTAnalysis.free_source(): Freeing parameters for 3FGL J0048.0+3950 : ['Prefactor', 'Index']
2026-07-17 22:00:07 INFO GTAnalysis.free_source(): Freeing parameters for 3FGL J0040.3+4049 : ['Prefactor', 'Index']
2026-07-17 22:00:07 INFO GTAnalysis.free_source(): Freeing parameters for 3FGL J0042.5+4117 : ['Prefactor', 'Index']
2026-07-17 22:00:07 INFO GTAnalysis.free_source(): Freeing parameters for 3FGL J0049.0+4224 : ['Prefactor', 'Index']
2026-07-17 22:00:07 INFO GTAnalysis.free_source(): Freeing parameters for isodiff : ['Normalization']
2026-07-17 22:00:07 INFO GTAnalysis.free_source(): Freeing parameters for galdiff : ['Prefactor', 'Index']
2026-07-17 22:00:07 INFO GTAnalysis.print_model():
sourcename offset norm eflux index ts npred free
--------------------------------------------------------------------------------
3FGL J0042.5+4117 0.031 1.053 8.52e-07 2.58 30.07 324.2 *
3FGL J0040.3+4049 0.624 0.222 1.99e-06 1.77 73.87 149.1 *
3FGL J0049.0+4224 1.650 0.278 1.33e-06 1.63 29.89 61.4 *
3FGL J0048.0+3950 1.745 0.663 5.84e-06 2.01 563.98 847.4 *
3FGL J0039.1+4330 2.326 0.291 1.57e-06 2.03 76.86 244.1
3FGL J0032.5+3912 2.825 0.702 9.76e-07 2.92 43.60 432.5
3FGL J0102.3+4217 3.800 0.826 2.02e-06 2.91 168.76 896.1
3FGL J0041.9+3639 4.611 1.853 1.5e-06 2.42 93.15 409.7
3FGL J0105.3+3928 4.661 0.675 2.83e-06 2.31 259.17 700.8
3FGL J0023.5+4454 5.052 2.284 2.54e-06 2.47 215.12 807.3
3FGL J0102.1+4458 5.121 0.343 9.03e-07 1.88 21.31 92.1
3FGL J0022.7+4651 6.635 1.260 3.29e-07 5.00 6.44 145.7
isodiff --- 0.819 0.0364 2.12 732.34 28559.0 *
galdiff --- 1.176 0.248 0.01 11602.15 93558.0 *
2026-07-17 22:00:07 INFO GTAnalysis.localize(): Running localization for 3FGL J0048.0+3950
Renormalization of source 3FGL J0048.0+3950
2026-07-17 22:00:15 INFO GTAnalysis._localize(): Localization succeeded.
2026-07-17 22:00:15 INFO GTAnalysis._localize(): Updating source 3FGL J0048.0+3950 to localized position.
2026-07-17 22:00:15 INFO GTAnalysis.delete_source(): Deleting source 3FGL J0048.0+3950
2026-07-17 22:00:15 INFO GTAnalysis.add_source(): Adding source 3FGL J0048.0+3950
/home/runner/work/fermipy/fermipy/fermipy/utils.py:791: UserWarning:
The maximal number of iterations maxit (set to 20 by the program)
allowed for finding a smoothing spline with fp=s has been reached: s
too small.
There is an approximation returned but the corresponding weighted sum
of squared residuals does not satisfy the condition abs(fp-s)/s < tol.
spline = UnivariateSpline(x, y, k=2,
2026-07-17 22:00:17 INFO GTAnalysis._localize(): Localization completed with new position:
( ra, dec) = ( 11.9750 +/- 0.0089, 39.7955 +/- 0.0092)
(glon,glat) = ( 122.1932 +/- 0.0089, -23.0712 +/- 0.0092)
offset = 0.0534 r68 = 0.0137 r95 = 0.0221 r99 = 0.0274
2026-07-17 22:00:17 INFO GTAnalysis._localize(): LogLike: -246821.933 DeltaLogLike: 17.554
2026-07-17 22:00:17 INFO GTAnalysis.localize(): Finished localization.
2026-07-17 22:00:17 WARNING GTAnalysis.localize(): Saving TS maps in .npy files is disabled b/c of incompatibilities in python3, remove the maps from the /home/runner/work/fermipy/fermipy/fermipy-extra/notebooks/M31_data/3fgl_j0048.0+3950_loc.npy
2026-07-17 22:00:17 INFO GTAnalysis.localize(): Execution time: 10.51 s
2026-07-17 22:00:17 INFO GTAnalysis.print_model():
sourcename offset norm eflux index ts npred free
--------------------------------------------------------------------------------
3FGL J0042.5+4117 0.031 1.053 8.52e-07 2.58 30.07 324.2 *
3FGL J0040.3+4049 0.624 0.222 1.99e-06 1.77 73.87 149.1 *
3FGL J0049.0+4224 1.650 0.278 1.33e-06 1.63 29.89 61.4 *
3FGL J0048.0+3950 1.771 0.603 5.84e-06 1.94 545.61 728.3 *
3FGL J0039.1+4330 2.326 0.291 1.57e-06 2.03 76.86 244.1
3FGL J0032.5+3912 2.825 0.702 9.76e-07 2.92 43.60 432.5
3FGL J0102.3+4217 3.800 0.826 2.02e-06 2.91 168.76 896.1
3FGL J0041.9+3639 4.611 1.853 1.5e-06 2.42 93.15 409.7
3FGL J0105.3+3928 4.661 0.675 2.83e-06 2.31 259.17 700.8
3FGL J0023.5+4454 5.052 2.284 2.54e-06 2.47 215.12 807.3
3FGL J0102.1+4458 5.121 0.343 9.03e-07 1.88 21.31 92.1
3FGL J0022.7+4651 6.635 1.260 3.29e-07 5.00 6.44 145.7
isodiff --- 0.819 0.0364 2.12 732.34 28559.0 *
galdiff --- 1.176 0.248 0.01 11602.15 93558.0 *
2026-07-17 22:00:17 INFO GTAnalysis.free_source(): Fixing parameters for 3FGL J0042.5+4117 : ['Prefactor', 'Index']
2026-07-17 22:00:17 INFO GTAnalysis.free_source(): Fixing parameters for 3FGL J0040.3+4049 : ['Prefactor', 'Index']
2026-07-17 22:00:17 INFO GTAnalysis.free_source(): Fixing parameters for 3FGL J0049.0+4224 : ['Prefactor', 'Index']
2026-07-17 22:00:17 INFO GTAnalysis.free_source(): Fixing parameters for 3FGL J0048.0+3950 : ['Prefactor', 'Index']
2026-07-17 22:00:17 INFO GTAnalysis.free_source(): Fixing parameters for isodiff : ['Normalization']
2026-07-17 22:00:17 INFO GTAnalysis.free_source(): Fixing parameters for galdiff : ['Prefactor', 'Index']
2026-07-17 22:00:17 INFO GTAnalysis.print_model():
sourcename offset norm eflux index ts npred free
--------------------------------------------------------------------------------
3FGL J0042.5+4117 0.031 1.053 8.52e-07 2.58 30.07 324.2
3FGL J0040.3+4049 0.624 0.222 1.99e-06 1.77 73.87 149.1
3FGL J0049.0+4224 1.650 0.278 1.33e-06 1.63 29.89 61.4
3FGL J0048.0+3950 1.771 0.603 5.84e-06 1.94 545.61 728.3
3FGL J0039.1+4330 2.326 0.291 1.57e-06 2.03 76.86 244.1
3FGL J0032.5+3912 2.825 0.702 9.76e-07 2.92 43.60 432.5
3FGL J0102.3+4217 3.800 0.826 2.02e-06 2.91 168.76 896.1
3FGL J0041.9+3639 4.611 1.853 1.5e-06 2.42 93.15 409.7
3FGL J0105.3+3928 4.661 0.675 2.83e-06 2.31 259.17 700.8
3FGL J0023.5+4454 5.052 2.284 2.54e-06 2.47 215.12 807.3
3FGL J0102.1+4458 5.121 0.343 9.03e-07 1.88 21.31 92.1
3FGL J0022.7+4651 6.635 1.260 3.29e-07 5.00 6.44 145.7
isodiff --- 0.819 0.0364 2.12 732.34 28559.0
galdiff --- 1.176 0.248 0.01 11602.15 93558.0
2026-07-17 22:00:17 INFO GTAnalysis.free_source(): Freeing parameters for 3FGL J0039.1+4330 : ['Prefactor', 'Index']
2026-07-17 22:00:17 INFO GTAnalysis.free_source(): Freeing parameters for 3FGL J0049.0+4224 : ['Prefactor', 'Index']
2026-07-17 22:00:17 INFO GTAnalysis.free_source(): Freeing parameters for 3FGL J0042.5+4117 : ['Prefactor', 'Index']
2026-07-17 22:00:17 INFO GTAnalysis.free_source(): Freeing parameters for 3FGL J0040.3+4049 : ['Prefactor', 'Index']
2026-07-17 22:00:17 INFO GTAnalysis.free_source(): Freeing parameters for isodiff : ['Normalization']
2026-07-17 22:00:17 INFO GTAnalysis.free_source(): Freeing parameters for galdiff : ['Prefactor', 'Index']
2026-07-17 22:00:17 INFO GTAnalysis.print_model():
sourcename offset norm eflux index ts npred free
--------------------------------------------------------------------------------
3FGL J0042.5+4117 0.031 1.053 8.52e-07 2.58 30.07 324.2 *
3FGL J0040.3+4049 0.624 0.222 1.99e-06 1.77 73.87 149.1 *
3FGL J0049.0+4224 1.650 0.278 1.33e-06 1.63 29.89 61.4 *
3FGL J0048.0+3950 1.771 0.603 5.84e-06 1.94 545.61 728.3
3FGL J0039.1+4330 2.326 0.291 1.57e-06 2.03 76.86 244.1 *
3FGL J0032.5+3912 2.825 0.702 9.76e-07 2.92 43.60 432.5
3FGL J0102.3+4217 3.800 0.826 2.02e-06 2.91 168.76 896.1
3FGL J0041.9+3639 4.611 1.853 1.5e-06 2.42 93.15 409.7
3FGL J0105.3+3928 4.661 0.675 2.83e-06 2.31 259.17 700.8
3FGL J0023.5+4454 5.052 2.284 2.54e-06 2.47 215.12 807.3
3FGL J0102.1+4458 5.121 0.343 9.03e-07 1.88 21.31 92.1
3FGL J0022.7+4651 6.635 1.260 3.29e-07 5.00 6.44 145.7
isodiff --- 0.819 0.0364 2.12 732.34 28559.0 *
galdiff --- 1.176 0.248 0.01 11602.15 93558.0 *
2026-07-17 22:00:17 INFO GTAnalysis.localize(): Running localization for 3FGL J0039.1+4330
Renormalization of source 3FGL J0039.1+4330
2026-07-17 22:00:26 INFO GTAnalysis._localize(): Localization succeeded.
2026-07-17 22:00:26 INFO GTAnalysis._localize(): Updating source 3FGL J0039.1+4330 to localized position.
2026-07-17 22:00:26 INFO GTAnalysis.delete_source(): Deleting source 3FGL J0039.1+4330
2026-07-17 22:00:26 INFO GTAnalysis.add_source(): Adding source 3FGL J0039.1+4330
2026-07-17 22:00:28 INFO GTAnalysis._localize(): Localization completed with new position:
( ra, dec) = ( 9.7775 +/- 0.0188, 43.5090 +/- 0.0186)
(glon,glat) = ( 120.5639 +/- 0.0188, -19.3061 +/- 0.0186)
offset = 0.0166 r68 = 0.0283 r95 = 0.0457 r99 = 0.0567
2026-07-17 22:00:28 INFO GTAnalysis._localize(): LogLike: -246820.085 DeltaLogLike: 1.849
2026-07-17 22:00:28 INFO GTAnalysis.localize(): Finished localization.
2026-07-17 22:00:28 WARNING GTAnalysis.localize(): Saving TS maps in .npy files is disabled b/c of incompatibilities in python3, remove the maps from the /home/runner/work/fermipy/fermipy/fermipy-extra/notebooks/M31_data/3fgl_j0039.1+4330_loc.npy
2026-07-17 22:00:28 INFO GTAnalysis.localize(): Execution time: 10.98 s
2026-07-17 22:00:28 INFO GTAnalysis.print_model():
sourcename offset norm eflux index ts npred free
--------------------------------------------------------------------------------
3FGL J0042.5+4117 0.031 1.053 8.52e-07 2.58 30.07 324.2 *
3FGL J0040.3+4049 0.624 0.222 1.99e-06 1.77 73.87 149.1 *
3FGL J0049.0+4224 1.650 0.278 1.33e-06 1.63 29.89 61.4 *
3FGL J0048.0+3950 1.771 0.603 5.84e-06 1.94 545.61 728.3
3FGL J0039.1+4330 2.337 0.225 1.54e-06 1.89 62.65 169.0 *
3FGL J0032.5+3912 2.825 0.702 9.76e-07 2.92 43.60 432.5
3FGL J0102.3+4217 3.800 0.826 2.02e-06 2.91 168.76 896.1
3FGL J0041.9+3639 4.611 1.853 1.5e-06 2.42 93.15 409.7
3FGL J0105.3+3928 4.661 0.675 2.83e-06 2.31 259.17 700.8
3FGL J0023.5+4454 5.052 2.284 2.54e-06 2.47 215.12 807.3
3FGL J0102.1+4458 5.121 0.343 9.03e-07 1.88 21.31 92.1
3FGL J0022.7+4651 6.635 1.260 3.29e-07 5.00 6.44 145.7
isodiff --- 0.819 0.0364 2.12 732.34 28559.0 *
galdiff --- 1.176 0.248 0.01 11602.15 93558.0 *
2026-07-17 22:00:28 INFO GTAnalysis.free_source(): Fixing parameters for 3FGL J0042.5+4117 : ['Prefactor', 'Index']
2026-07-17 22:00:28 INFO GTAnalysis.free_source(): Fixing parameters for 3FGL J0040.3+4049 : ['Prefactor', 'Index']
2026-07-17 22:00:28 INFO GTAnalysis.free_source(): Fixing parameters for 3FGL J0049.0+4224 : ['Prefactor', 'Index']
2026-07-17 22:00:28 INFO GTAnalysis.free_source(): Fixing parameters for 3FGL J0039.1+4330 : ['Prefactor', 'Index']
2026-07-17 22:00:28 INFO GTAnalysis.free_source(): Fixing parameters for isodiff : ['Normalization']
2026-07-17 22:00:28 INFO GTAnalysis.free_source(): Fixing parameters for galdiff : ['Prefactor', 'Index']
2026-07-17 22:00:28 INFO GTAnalysis.print_model():
sourcename offset norm eflux index ts npred free
--------------------------------------------------------------------------------
3FGL J0042.5+4117 0.031 1.053 8.52e-07 2.58 30.07 324.2
3FGL J0040.3+4049 0.624 0.222 1.99e-06 1.77 73.87 149.1
3FGL J0049.0+4224 1.650 0.278 1.33e-06 1.63 29.89 61.4
3FGL J0048.0+3950 1.771 0.603 5.84e-06 1.94 545.61 728.3
3FGL J0039.1+4330 2.337 0.225 1.54e-06 1.89 62.65 169.0
3FGL J0032.5+3912 2.825 0.702 9.76e-07 2.92 43.60 432.5
3FGL J0102.3+4217 3.800 0.826 2.02e-06 2.91 168.76 896.1
3FGL J0041.9+3639 4.611 1.853 1.5e-06 2.42 93.15 409.7
3FGL J0105.3+3928 4.661 0.675 2.83e-06 2.31 259.17 700.8
3FGL J0023.5+4454 5.052 2.284 2.54e-06 2.47 215.12 807.3
3FGL J0102.1+4458 5.121 0.343 9.03e-07 1.88 21.31 92.1
3FGL J0022.7+4651 6.635 1.260 3.29e-07 5.00 6.44 145.7
isodiff --- 0.819 0.0364 2.12 732.34 28559.0
galdiff --- 1.176 0.248 0.01 11602.15 93558.0
2026-07-17 22:00:28 INFO GTAnalysis.free_source(): Freeing parameters for 3FGL J0032.5+3912 : ['Prefactor', 'Index']
2026-07-17 22:00:28 INFO GTAnalysis.free_source(): Freeing parameters for 3FGL J0040.3+4049 : ['Prefactor', 'Index']
2026-07-17 22:00:28 INFO GTAnalysis.free_source(): Freeing parameters for 3FGL J0042.5+4117 : ['Prefactor', 'Index']
2026-07-17 22:00:28 INFO GTAnalysis.free_source(): Freeing parameters for isodiff : ['Normalization']
2026-07-17 22:00:28 INFO GTAnalysis.free_source(): Freeing parameters for galdiff : ['Prefactor', 'Index']
2026-07-17 22:00:28 INFO GTAnalysis.print_model():
sourcename offset norm eflux index ts npred free
--------------------------------------------------------------------------------
3FGL J0042.5+4117 0.031 1.053 8.52e-07 2.58 30.07 324.2 *
3FGL J0040.3+4049 0.624 0.222 1.99e-06 1.77 73.87 149.1 *
3FGL J0049.0+4224 1.650 0.278 1.33e-06 1.63 29.89 61.4
3FGL J0048.0+3950 1.771 0.603 5.84e-06 1.94 545.61 728.3
3FGL J0039.1+4330 2.337 0.225 1.54e-06 1.89 62.65 169.0
3FGL J0032.5+3912 2.825 0.702 9.76e-07 2.92 43.60 432.5 *
3FGL J0102.3+4217 3.800 0.826 2.02e-06 2.91 168.76 896.1
3FGL J0041.9+3639 4.611 1.853 1.5e-06 2.42 93.15 409.7
3FGL J0105.3+3928 4.661 0.675 2.83e-06 2.31 259.17 700.8
3FGL J0023.5+4454 5.052 2.284 2.54e-06 2.47 215.12 807.3
3FGL J0102.1+4458 5.121 0.343 9.03e-07 1.88 21.31 92.1
3FGL J0022.7+4651 6.635 1.260 3.29e-07 5.00 6.44 145.7
isodiff --- 0.819 0.0364 2.12 732.34 28559.0 *
galdiff --- 1.176 0.248 0.01 11602.15 93558.0 *
2026-07-17 22:00:28 INFO GTAnalysis.localize(): Running localization for 3FGL J0032.5+3912
Renormalization of source 3FGL J0032.5+3912
2026-07-17 22:00:37 INFO GTAnalysis._localize(): Localization succeeded.
2026-07-17 22:00:37 INFO GTAnalysis._localize(): Updating source 3FGL J0032.5+3912 to localized position.
2026-07-17 22:00:37 INFO GTAnalysis.delete_source(): Deleting source 3FGL J0032.5+3912
2026-07-17 22:00:37 INFO GTAnalysis.add_source(): Adding source 3FGL J0032.5+3912
2026-07-17 22:00:38 INFO GTAnalysis._localize(): Localization completed with new position:
( ra, dec) = ( 8.5285 +/- 0.0381, 38.9663 +/- 0.0402)
(glon,glat) = ( 119.2530 +/- 0.0376, -23.7817 +/- 0.0407)
offset = 0.3858 r68 = 0.0590 r95 = 0.0951 r99 = 0.1180
2026-07-17 22:00:38 INFO GTAnalysis._localize(): LogLike: -246804.512 DeltaLogLike: 15.573
2026-07-17 22:00:38 INFO GTAnalysis.localize(): Finished localization.
2026-07-17 22:00:39 WARNING GTAnalysis.localize(): Saving TS maps in .npy files is disabled b/c of incompatibilities in python3, remove the maps from the /home/runner/work/fermipy/fermipy/fermipy-extra/notebooks/M31_data/3fgl_j0032.5+3912_loc.npy
2026-07-17 22:00:39 INFO GTAnalysis.localize(): Execution time: 10.79 s
2026-07-17 22:00:39 INFO GTAnalysis.print_model():
sourcename offset norm eflux index ts npred free
--------------------------------------------------------------------------------
3FGL J0042.5+4117 0.031 1.053 8.52e-07 2.58 30.07 324.2 *
3FGL J0040.3+4049 0.624 0.222 1.99e-06 1.77 73.87 149.1 *
3FGL J0049.0+4224 1.650 0.278 1.33e-06 1.63 29.89 61.4
3FGL J0048.0+3950 1.771 0.603 5.84e-06 1.94 545.61 728.3
3FGL J0039.1+4330 2.337 0.225 1.54e-06 1.89 62.65 169.0
3FGL J0032.5+3912 2.833 0.550 9.81e-07 2.45 46.83 318.7 *
3FGL J0102.3+4217 3.800 0.826 2.02e-06 2.91 168.76 896.1
3FGL J0041.9+3639 4.611 1.853 1.5e-06 2.42 93.15 409.7
3FGL J0105.3+3928 4.661 0.675 2.83e-06 2.31 259.17 700.8
3FGL J0023.5+4454 5.052 2.284 2.54e-06 2.47 215.12 807.3
3FGL J0102.1+4458 5.121 0.343 9.03e-07 1.88 21.31 92.1
3FGL J0022.7+4651 6.635 1.260 3.29e-07 5.00 6.44 145.7
isodiff --- 0.819 0.0364 2.12 732.34 28559.0 *
galdiff --- 1.176 0.248 0.01 11602.15 93558.0 *
2026-07-17 22:00:39 INFO GTAnalysis.free_source(): Fixing parameters for 3FGL J0042.5+4117 : ['Prefactor', 'Index']
2026-07-17 22:00:39 INFO GTAnalysis.free_source(): Fixing parameters for 3FGL J0040.3+4049 : ['Prefactor', 'Index']
2026-07-17 22:00:39 INFO GTAnalysis.free_source(): Fixing parameters for 3FGL J0032.5+3912 : ['Prefactor', 'Index']
2026-07-17 22:00:39 INFO GTAnalysis.free_source(): Fixing parameters for isodiff : ['Normalization']
2026-07-17 22:00:39 INFO GTAnalysis.free_source(): Fixing parameters for galdiff : ['Prefactor', 'Index']
2026-07-17 22:00:39 INFO GTAnalysis.print_model():
sourcename offset norm eflux index ts npred free
--------------------------------------------------------------------------------
3FGL J0042.5+4117 0.031 1.053 8.52e-07 2.58 30.07 324.2
3FGL J0040.3+4049 0.624 0.222 1.99e-06 1.77 73.87 149.1
3FGL J0049.0+4224 1.650 0.278 1.33e-06 1.63 29.89 61.4
3FGL J0048.0+3950 1.771 0.603 5.84e-06 1.94 545.61 728.3
3FGL J0039.1+4330 2.337 0.225 1.54e-06 1.89 62.65 169.0
3FGL J0032.5+3912 2.833 0.550 9.81e-07 2.45 46.83 318.7
3FGL J0102.3+4217 3.800 0.826 2.02e-06 2.91 168.76 896.1
3FGL J0041.9+3639 4.611 1.853 1.5e-06 2.42 93.15 409.7
3FGL J0105.3+3928 4.661 0.675 2.83e-06 2.31 259.17 700.8
3FGL J0023.5+4454 5.052 2.284 2.54e-06 2.47 215.12 807.3
3FGL J0102.1+4458 5.121 0.343 9.03e-07 1.88 21.31 92.1
3FGL J0022.7+4651 6.635 1.260 3.29e-07 5.00 6.44 145.7
isodiff --- 0.819 0.0364 2.12 732.34 28559.0
galdiff --- 1.176 0.248 0.01 11602.15 93558.0
2026-07-17 22:00:39 INFO GTAnalysis.free_source(): Freeing parameters for 3FGL J0102.3+4217 : ['Prefactor', 'Index']
2026-07-17 22:00:39 INFO GTAnalysis.free_source(): Freeing parameters for 3FGL J0049.0+4224 : ['Prefactor', 'Index']
2026-07-17 22:00:39 INFO GTAnalysis.free_source(): Freeing parameters for 3FGL J0102.1+4458 : ['Prefactor', 'Index']
2026-07-17 22:00:39 INFO GTAnalysis.free_source(): Freeing parameters for 3FGL J0105.3+3928 : ['Prefactor', 'Index']
2026-07-17 22:00:39 INFO GTAnalysis.free_source(): Freeing parameters for isodiff : ['Normalization']
2026-07-17 22:00:39 INFO GTAnalysis.free_source(): Freeing parameters for galdiff : ['Prefactor', 'Index']
2026-07-17 22:00:39 INFO GTAnalysis.print_model():
sourcename offset norm eflux index ts npred free
--------------------------------------------------------------------------------
3FGL J0042.5+4117 0.031 1.053 8.52e-07 2.58 30.07 324.2
3FGL J0040.3+4049 0.624 0.222 1.99e-06 1.77 73.87 149.1
3FGL J0049.0+4224 1.650 0.278 1.33e-06 1.63 29.89 61.4 *
3FGL J0048.0+3950 1.771 0.603 5.84e-06 1.94 545.61 728.3
3FGL J0039.1+4330 2.337 0.225 1.54e-06 1.89 62.65 169.0
3FGL J0032.5+3912 2.833 0.550 9.81e-07 2.45 46.83 318.7
3FGL J0102.3+4217 3.800 0.826 2.02e-06 2.91 168.76 896.1 *
3FGL J0041.9+3639 4.611 1.853 1.5e-06 2.42 93.15 409.7
3FGL J0105.3+3928 4.661 0.675 2.83e-06 2.31 259.17 700.8 *
3FGL J0023.5+4454 5.052 2.284 2.54e-06 2.47 215.12 807.3
3FGL J0102.1+4458 5.121 0.343 9.03e-07 1.88 21.31 92.1 *
3FGL J0022.7+4651 6.635 1.260 3.29e-07 5.00 6.44 145.7
isodiff --- 0.819 0.0364 2.12 732.34 28559.0 *
galdiff --- 1.176 0.248 0.01 11602.15 93558.0 *
2026-07-17 22:00:39 INFO GTAnalysis.localize(): Running localization for 3FGL J0102.3+4217
Renormalization of source 3FGL J0102.3+4217
2026-07-17 22:00:48 INFO GTAnalysis._localize(): Localization succeeded.
2026-07-17 22:00:48 INFO GTAnalysis._localize(): Updating source 3FGL J0102.3+4217 to localized position.
2026-07-17 22:00:48 INFO GTAnalysis.delete_source(): Deleting source 3FGL J0102.3+4217
2026-07-17 22:00:48 INFO GTAnalysis.add_source(): Adding source 3FGL J0102.3+4217
2026-07-17 22:00:49 INFO GTAnalysis._localize(): Localization completed with new position:
( ra, dec) = ( 15.6197 +/- 0.0271, 42.2094 +/- 0.0243)
(glon,glat) = ( 125.1159 +/- 0.0272, -20.6155 +/- 0.0242)
offset = 0.0815 r68 = 0.0388 r95 = 0.0626 r99 = 0.0776
2026-07-17 22:00:49 INFO GTAnalysis._localize(): LogLike: -246796.655 DeltaLogLike: 7.857
2026-07-17 22:00:49 INFO GTAnalysis.localize(): Finished localization.
2026-07-17 22:00:50 WARNING GTAnalysis.localize(): Saving TS maps in .npy files is disabled b/c of incompatibilities in python3, remove the maps from the /home/runner/work/fermipy/fermipy/fermipy-extra/notebooks/M31_data/3fgl_j0102.3+4217_loc.npy
2026-07-17 22:00:50 INFO GTAnalysis.localize(): Execution time: 10.70 s
2026-07-17 22:00:50 INFO GTAnalysis.print_model():
sourcename offset norm eflux index ts npred free
--------------------------------------------------------------------------------
3FGL J0042.5+4117 0.031 1.053 8.52e-07 2.58 30.07 324.2
3FGL J0040.3+4049 0.624 0.222 1.99e-06 1.77 73.87 149.1
3FGL J0049.0+4224 1.650 0.278 1.33e-06 1.63 29.89 61.4 *
3FGL J0048.0+3950 1.771 0.603 5.84e-06 1.94 545.61 728.3
3FGL J0039.1+4330 2.337 0.225 1.54e-06 1.89 62.65 169.0
3FGL J0032.5+3912 2.833 0.550 9.81e-07 2.45 46.83 318.7
3FGL J0102.3+4217 3.800 0.575 1.65e-06 2.73 126.19 692.1 *
3FGL J0041.9+3639 4.611 1.853 1.5e-06 2.42 93.15 409.7
3FGL J0105.3+3928 4.661 0.675 2.83e-06 2.31 259.17 700.8 *
3FGL J0023.5+4454 5.052 2.284 2.54e-06 2.47 215.12 807.3
3FGL J0102.1+4458 5.121 0.343 9.03e-07 1.88 21.31 92.1 *
3FGL J0022.7+4651 6.635 1.260 3.29e-07 5.00 6.44 145.7
isodiff --- 0.819 0.0364 2.12 732.34 28559.0 *
galdiff --- 1.176 0.248 0.01 11602.15 93558.0 *
2026-07-17 22:00:50 INFO GTAnalysis.free_source(): Fixing parameters for 3FGL J0049.0+4224 : ['Prefactor', 'Index']
2026-07-17 22:00:50 INFO GTAnalysis.free_source(): Fixing parameters for 3FGL J0102.3+4217 : ['Prefactor', 'Index']
2026-07-17 22:00:50 INFO GTAnalysis.free_source(): Fixing parameters for 3FGL J0105.3+3928 : ['Prefactor', 'Index']
2026-07-17 22:00:50 INFO GTAnalysis.free_source(): Fixing parameters for 3FGL J0102.1+4458 : ['Prefactor', 'Index']
2026-07-17 22:00:50 INFO GTAnalysis.free_source(): Fixing parameters for isodiff : ['Normalization']
2026-07-17 22:00:50 INFO GTAnalysis.free_source(): Fixing parameters for galdiff : ['Prefactor', 'Index']
2026-07-17 22:00:50 INFO GTAnalysis.print_model():
sourcename offset norm eflux index ts npred free
--------------------------------------------------------------------------------
3FGL J0042.5+4117 0.031 1.053 8.52e-07 2.58 30.07 324.2
3FGL J0040.3+4049 0.624 0.222 1.99e-06 1.77 73.87 149.1
3FGL J0049.0+4224 1.650 0.278 1.33e-06 1.63 29.89 61.4
3FGL J0048.0+3950 1.771 0.603 5.84e-06 1.94 545.61 728.3
3FGL J0039.1+4330 2.337 0.225 1.54e-06 1.89 62.65 169.0
3FGL J0032.5+3912 2.833 0.550 9.81e-07 2.45 46.83 318.7
3FGL J0102.3+4217 3.800 0.575 1.65e-06 2.73 126.19 692.1
3FGL J0041.9+3639 4.611 1.853 1.5e-06 2.42 93.15 409.7
3FGL J0105.3+3928 4.661 0.675 2.83e-06 2.31 259.17 700.8
3FGL J0023.5+4454 5.052 2.284 2.54e-06 2.47 215.12 807.3
3FGL J0102.1+4458 5.121 0.343 9.03e-07 1.88 21.31 92.1
3FGL J0022.7+4651 6.635 1.260 3.29e-07 5.00 6.44 145.7
isodiff --- 0.819 0.0364 2.12 732.34 28559.0
galdiff --- 1.176 0.248 0.01 11602.15 93558.0
2026-07-17 22:00:50 INFO GTAnalysis.free_source(): Freeing parameters for 3FGL J0041.9+3639 : ['Prefactor', 'Index']
2026-07-17 22:00:50 INFO GTAnalysis.free_source(): Freeing parameters for 3FGL J0032.5+3912 : ['Prefactor', 'Index']
2026-07-17 22:00:50 INFO GTAnalysis.free_source(): Freeing parameters for isodiff : ['Normalization']
2026-07-17 22:00:50 INFO GTAnalysis.free_source(): Freeing parameters for galdiff : ['Prefactor', 'Index']
2026-07-17 22:00:50 INFO GTAnalysis.print_model():
sourcename offset norm eflux index ts npred free
--------------------------------------------------------------------------------
3FGL J0042.5+4117 0.031 1.053 8.52e-07 2.58 30.07 324.2
3FGL J0040.3+4049 0.624 0.222 1.99e-06 1.77 73.87 149.1
3FGL J0049.0+4224 1.650 0.278 1.33e-06 1.63 29.89 61.4
3FGL J0048.0+3950 1.771 0.603 5.84e-06 1.94 545.61 728.3
3FGL J0039.1+4330 2.337 0.225 1.54e-06 1.89 62.65 169.0
3FGL J0032.5+3912 2.833 0.550 9.81e-07 2.45 46.83 318.7 *
3FGL J0102.3+4217 3.800 0.575 1.65e-06 2.73 126.19 692.1
3FGL J0041.9+3639 4.611 1.853 1.5e-06 2.42 93.15 409.7 *
3FGL J0105.3+3928 4.661 0.675 2.83e-06 2.31 259.17 700.8
3FGL J0023.5+4454 5.052 2.284 2.54e-06 2.47 215.12 807.3
3FGL J0102.1+4458 5.121 0.343 9.03e-07 1.88 21.31 92.1
3FGL J0022.7+4651 6.635 1.260 3.29e-07 5.00 6.44 145.7
isodiff --- 0.819 0.0364 2.12 732.34 28559.0 *
galdiff --- 1.176 0.248 0.01 11602.15 93558.0 *
2026-07-17 22:00:50 INFO GTAnalysis.localize(): Running localization for 3FGL J0041.9+3639
Renormalization of source 3FGL J0041.9+3639
2026-07-17 22:00:58 INFO GTAnalysis._localize(): Localization succeeded.
2026-07-17 22:00:58 INFO GTAnalysis._localize(): Updating source 3FGL J0041.9+3639 to localized position.
2026-07-17 22:00:58 INFO GTAnalysis.delete_source(): Deleting source 3FGL J0041.9+3639
2026-07-17 22:00:58 INFO GTAnalysis.add_source(): Adding source 3FGL J0041.9+3639
2026-07-17 22:00:59 INFO GTAnalysis._localize(): Localization completed with new position:
( ra, dec) = ( 10.5305 +/- 0.0204, 36.6721 +/- 0.0192)
(glon,glat) = ( 120.8508 +/- 0.0204, -26.1620 +/- 0.0191)
offset = 0.0268 r68 = 0.0300 r95 = 0.0484 r99 = 0.0600
2026-07-17 22:00:59 INFO GTAnalysis._localize(): LogLike: -246793.115 DeltaLogLike: 3.540
2026-07-17 22:00:59 INFO GTAnalysis.localize(): Finished localization.
2026-07-17 22:01:00 WARNING GTAnalysis.localize(): Saving TS maps in .npy files is disabled b/c of incompatibilities in python3, remove the maps from the /home/runner/work/fermipy/fermipy/fermipy-extra/notebooks/M31_data/3fgl_j0041.9+3639_loc.npy
2026-07-17 22:01:00 INFO GTAnalysis.localize(): Execution time: 10.38 s
2026-07-17 22:01:00 INFO GTAnalysis.print_model():
sourcename offset norm eflux index ts npred free
--------------------------------------------------------------------------------
3FGL J0042.5+4117 0.031 1.053 8.52e-07 2.58 30.07 324.2
3FGL J0040.3+4049 0.624 0.222 1.99e-06 1.77 73.87 149.1
3FGL J0049.0+4224 1.650 0.278 1.33e-06 1.63 29.89 61.4
3FGL J0048.0+3950 1.771 0.603 5.84e-06 1.94 545.61 728.3
3FGL J0039.1+4330 2.337 0.225 1.54e-06 1.89 62.65 169.0
3FGL J0032.5+3912 2.833 0.550 9.81e-07 2.45 46.83 318.7 *
3FGL J0102.3+4217 3.800 0.575 1.65e-06 2.73 126.19 692.1
3FGL J0041.9+3639 4.600 1.601 1.28e-06 2.19 70.10 260.1 *
3FGL J0105.3+3928 4.661 0.675 2.83e-06 2.31 259.17 700.8
3FGL J0023.5+4454 5.052 2.284 2.54e-06 2.47 215.12 807.3
3FGL J0102.1+4458 5.121 0.343 9.03e-07 1.88 21.31 92.1
3FGL J0022.7+4651 6.635 1.260 3.29e-07 5.00 6.44 145.7
isodiff --- 0.819 0.0364 2.12 732.34 28559.0 *
galdiff --- 1.176 0.248 0.01 11602.15 93558.0 *
2026-07-17 22:01:00 INFO GTAnalysis.free_source(): Fixing parameters for 3FGL J0032.5+3912 : ['Prefactor', 'Index']
2026-07-17 22:01:00 INFO GTAnalysis.free_source(): Fixing parameters for 3FGL J0041.9+3639 : ['Prefactor', 'Index']
2026-07-17 22:01:00 INFO GTAnalysis.free_source(): Fixing parameters for isodiff : ['Normalization']
2026-07-17 22:01:00 INFO GTAnalysis.free_source(): Fixing parameters for galdiff : ['Prefactor', 'Index']
2026-07-17 22:01:00 INFO GTAnalysis.print_model():
sourcename offset norm eflux index ts npred free
--------------------------------------------------------------------------------
3FGL J0042.5+4117 0.031 1.053 8.52e-07 2.58 30.07 324.2
3FGL J0040.3+4049 0.624 0.222 1.99e-06 1.77 73.87 149.1
3FGL J0049.0+4224 1.650 0.278 1.33e-06 1.63 29.89 61.4
3FGL J0048.0+3950 1.771 0.603 5.84e-06 1.94 545.61 728.3
3FGL J0039.1+4330 2.337 0.225 1.54e-06 1.89 62.65 169.0
3FGL J0032.5+3912 2.833 0.550 9.81e-07 2.45 46.83 318.7
3FGL J0102.3+4217 3.800 0.575 1.65e-06 2.73 126.19 692.1
3FGL J0041.9+3639 4.600 1.601 1.28e-06 2.19 70.10 260.1
3FGL J0105.3+3928 4.661 0.675 2.83e-06 2.31 259.17 700.8
3FGL J0023.5+4454 5.052 2.284 2.54e-06 2.47 215.12 807.3
3FGL J0102.1+4458 5.121 0.343 9.03e-07 1.88 21.31 92.1
3FGL J0022.7+4651 6.635 1.260 3.29e-07 5.00 6.44 145.7
isodiff --- 0.819 0.0364 2.12 732.34 28559.0
galdiff --- 1.176 0.248 0.01 11602.15 93558.0
2026-07-17 22:01:00 INFO GTAnalysis.free_source(): Freeing parameters for 3FGL J0105.3+3928 : ['Prefactor', 'Index']
2026-07-17 22:01:00 INFO GTAnalysis.free_source(): Freeing parameters for 3FGL J0102.3+4217 : ['Prefactor', 'Index']
2026-07-17 22:01:00 INFO GTAnalysis.free_source(): Freeing parameters for isodiff : ['Normalization']
2026-07-17 22:01:00 INFO GTAnalysis.free_source(): Freeing parameters for galdiff : ['Prefactor', 'Index']
2026-07-17 22:01:00 INFO GTAnalysis.print_model():
sourcename offset norm eflux index ts npred free
--------------------------------------------------------------------------------
3FGL J0042.5+4117 0.031 1.053 8.52e-07 2.58 30.07 324.2
3FGL J0040.3+4049 0.624 0.222 1.99e-06 1.77 73.87 149.1
3FGL J0049.0+4224 1.650 0.278 1.33e-06 1.63 29.89 61.4
3FGL J0048.0+3950 1.771 0.603 5.84e-06 1.94 545.61 728.3
3FGL J0039.1+4330 2.337 0.225 1.54e-06 1.89 62.65 169.0
3FGL J0032.5+3912 2.833 0.550 9.81e-07 2.45 46.83 318.7
3FGL J0102.3+4217 3.800 0.575 1.65e-06 2.73 126.19 692.1 *
3FGL J0041.9+3639 4.600 1.601 1.28e-06 2.19 70.10 260.1
3FGL J0105.3+3928 4.661 0.675 2.83e-06 2.31 259.17 700.8 *
3FGL J0023.5+4454 5.052 2.284 2.54e-06 2.47 215.12 807.3
3FGL J0102.1+4458 5.121 0.343 9.03e-07 1.88 21.31 92.1
3FGL J0022.7+4651 6.635 1.260 3.29e-07 5.00 6.44 145.7
isodiff --- 0.819 0.0364 2.12 732.34 28559.0 *
galdiff --- 1.176 0.248 0.01 11602.15 93558.0 *
2026-07-17 22:01:00 INFO GTAnalysis.localize(): Running localization for 3FGL J0105.3+3928
Renormalization of source 3FGL J0105.3+3928
2026-07-17 22:01:09 INFO GTAnalysis._localize(): Localization succeeded.
2026-07-17 22:01:09 INFO GTAnalysis._localize(): Updating source 3FGL J0105.3+3928 to localized position.
2026-07-17 22:01:09 INFO GTAnalysis.delete_source(): Deleting source 3FGL J0105.3+3928
2026-07-17 22:01:09 INFO GTAnalysis.add_source(): Adding source 3FGL J0105.3+3928
2026-07-17 22:01:10 INFO GTAnalysis._localize(): Localization completed with new position:
( ra, dec) = ( 16.3066 +/- 0.0171, 39.4850 +/- 0.0194)
(glon,glat) = ( 125.8283 +/- 0.0172, -23.3092 +/- 0.0194)
offset = 0.0223 r68 = 0.0276 r95 = 0.0446 r99 = 0.0553
2026-07-17 22:01:10 INFO GTAnalysis._localize(): LogLike: -246790.241 DeltaLogLike: 2.874
2026-07-17 22:01:10 INFO GTAnalysis.localize(): Finished localization.
2026-07-17 22:01:11 WARNING GTAnalysis.localize(): Saving TS maps in .npy files is disabled b/c of incompatibilities in python3, remove the maps from the /home/runner/work/fermipy/fermipy/fermipy-extra/notebooks/M31_data/3fgl_j0105.3+3928_loc.npy
2026-07-17 22:01:11 INFO GTAnalysis.localize(): Execution time: 10.47 s
2026-07-17 22:01:11 INFO GTAnalysis.print_model():
sourcename offset norm eflux index ts npred free
--------------------------------------------------------------------------------
3FGL J0042.5+4117 0.031 1.053 8.52e-07 2.58 30.07 324.2
3FGL J0040.3+4049 0.624 0.222 1.99e-06 1.77 73.87 149.1
3FGL J0049.0+4224 1.650 0.278 1.33e-06 1.63 29.89 61.4
3FGL J0048.0+3950 1.771 0.603 5.84e-06 1.94 545.61 728.3
3FGL J0039.1+4330 2.337 0.225 1.54e-06 1.89 62.65 169.0
3FGL J0032.5+3912 2.833 0.550 9.81e-07 2.45 46.83 318.7
3FGL J0102.3+4217 3.800 0.575 1.65e-06 2.73 126.19 692.1 *
3FGL J0041.9+3639 4.600 1.601 1.28e-06 2.19 70.10 260.1
3FGL J0105.3+3928 4.639 0.549 2.55e-06 2.23 215.82 582.0 *
3FGL J0023.5+4454 5.052 2.284 2.54e-06 2.47 215.12 807.3
3FGL J0102.1+4458 5.121 0.343 9.03e-07 1.88 21.31 92.1
3FGL J0022.7+4651 6.635 1.260 3.29e-07 5.00 6.44 145.7
isodiff --- 0.819 0.0364 2.12 732.34 28559.0 *
galdiff --- 1.176 0.248 0.01 11602.15 93558.0 *
2026-07-17 22:01:11 INFO GTAnalysis.free_source(): Fixing parameters for 3FGL J0102.3+4217 : ['Prefactor', 'Index']
2026-07-17 22:01:11 INFO GTAnalysis.free_source(): Fixing parameters for 3FGL J0105.3+3928 : ['Prefactor', 'Index']
2026-07-17 22:01:11 INFO GTAnalysis.free_source(): Fixing parameters for isodiff : ['Normalization']
2026-07-17 22:01:11 INFO GTAnalysis.free_source(): Fixing parameters for galdiff : ['Prefactor', 'Index']
2026-07-17 22:01:11 INFO GTAnalysis.print_model():
sourcename offset norm eflux index ts npred free
--------------------------------------------------------------------------------
3FGL J0042.5+4117 0.031 1.053 8.52e-07 2.58 30.07 324.2
3FGL J0040.3+4049 0.624 0.222 1.99e-06 1.77 73.87 149.1
3FGL J0049.0+4224 1.650 0.278 1.33e-06 1.63 29.89 61.4
3FGL J0048.0+3950 1.771 0.603 5.84e-06 1.94 545.61 728.3
3FGL J0039.1+4330 2.337 0.225 1.54e-06 1.89 62.65 169.0
3FGL J0032.5+3912 2.833 0.550 9.81e-07 2.45 46.83 318.7
3FGL J0102.3+4217 3.800 0.575 1.65e-06 2.73 126.19 692.1
3FGL J0041.9+3639 4.600 1.601 1.28e-06 2.19 70.10 260.1
3FGL J0105.3+3928 4.639 0.549 2.55e-06 2.23 215.82 582.0
3FGL J0023.5+4454 5.052 2.284 2.54e-06 2.47 215.12 807.3
3FGL J0102.1+4458 5.121 0.343 9.03e-07 1.88 21.31 92.1
3FGL J0022.7+4651 6.635 1.260 3.29e-07 5.00 6.44 145.7
isodiff --- 0.819 0.0364 2.12 732.34 28559.0
galdiff --- 1.176 0.248 0.01 11602.15 93558.0
2026-07-17 22:01:11 INFO GTAnalysis.free_source(): Freeing parameters for 3FGL J0023.5+4454 : ['Prefactor', 'Index']
2026-07-17 22:01:11 INFO GTAnalysis.free_source(): Freeing parameters for 3FGL J0022.7+4651 : ['Prefactor', 'Index']
2026-07-17 22:01:11 INFO GTAnalysis.free_source(): Freeing parameters for isodiff : ['Normalization']
2026-07-17 22:01:11 INFO GTAnalysis.free_source(): Freeing parameters for galdiff : ['Prefactor', 'Index']
2026-07-17 22:01:11 INFO GTAnalysis.print_model():
sourcename offset norm eflux index ts npred free
--------------------------------------------------------------------------------
3FGL J0042.5+4117 0.031 1.053 8.52e-07 2.58 30.07 324.2
3FGL J0040.3+4049 0.624 0.222 1.99e-06 1.77 73.87 149.1
3FGL J0049.0+4224 1.650 0.278 1.33e-06 1.63 29.89 61.4
3FGL J0048.0+3950 1.771 0.603 5.84e-06 1.94 545.61 728.3
3FGL J0039.1+4330 2.337 0.225 1.54e-06 1.89 62.65 169.0
3FGL J0032.5+3912 2.833 0.550 9.81e-07 2.45 46.83 318.7
3FGL J0102.3+4217 3.800 0.575 1.65e-06 2.73 126.19 692.1
3FGL J0041.9+3639 4.600 1.601 1.28e-06 2.19 70.10 260.1
3FGL J0105.3+3928 4.639 0.549 2.55e-06 2.23 215.82 582.0
3FGL J0023.5+4454 5.052 2.284 2.54e-06 2.47 215.12 807.3 *
3FGL J0102.1+4458 5.121 0.343 9.03e-07 1.88 21.31 92.1
3FGL J0022.7+4651 6.635 1.260 3.29e-07 5.00 6.44 145.7 *
isodiff --- 0.819 0.0364 2.12 732.34 28559.0 *
galdiff --- 1.176 0.248 0.01 11602.15 93558.0 *
2026-07-17 22:01:11 INFO GTAnalysis.localize(): Running localization for 3FGL J0023.5+4454
Renormalization of source 3FGL J0023.5+4454
2026-07-17 22:01:19 INFO GTAnalysis._localize(): Localization succeeded.
2026-07-17 22:01:19 INFO GTAnalysis._localize(): Updating source 3FGL J0023.5+4454 to localized position.
2026-07-17 22:01:19 INFO GTAnalysis.delete_source(): Deleting source 3FGL J0023.5+4454
2026-07-17 22:01:19 INFO GTAnalysis.add_source(): Adding source 3FGL J0023.5+4454
2026-07-17 22:01:21 INFO GTAnalysis._localize(): Localization completed with new position:
( ra, dec) = ( 5.9538 +/- 0.0266, 44.9520 +/- 0.0187)
(glon,glat) = ( 117.8091 +/- 0.0260, -17.6448 +/- 0.0194)
offset = 0.0710 r68 = 0.0334 r95 = 0.0539 r99 = 0.0668
2026-07-17 22:01:21 INFO GTAnalysis._localize(): LogLike: -246781.041 DeltaLogLike: 9.200
2026-07-17 22:01:21 INFO GTAnalysis.localize(): Finished localization.
2026-07-17 22:01:21 WARNING GTAnalysis.localize(): Saving TS maps in .npy files is disabled b/c of incompatibilities in python3, remove the maps from the /home/runner/work/fermipy/fermipy/fermipy-extra/notebooks/M31_data/3fgl_j0023.5+4454_loc.npy
2026-07-17 22:01:21 INFO GTAnalysis.localize(): Execution time: 10.53 s
2026-07-17 22:01:21 INFO GTAnalysis.print_model():
sourcename offset norm eflux index ts npred free
--------------------------------------------------------------------------------
3FGL J0042.5+4117 0.031 1.053 8.52e-07 2.58 30.07 324.2
3FGL J0040.3+4049 0.624 0.222 1.99e-06 1.77 73.87 149.1
3FGL J0049.0+4224 1.650 0.278 1.33e-06 1.63 29.89 61.4
3FGL J0048.0+3950 1.771 0.603 5.84e-06 1.94 545.61 728.3
3FGL J0039.1+4330 2.337 0.225 1.54e-06 1.89 62.65 169.0
3FGL J0032.5+3912 2.833 0.550 9.81e-07 2.45 46.83 318.7
3FGL J0102.3+4217 3.800 0.575 1.65e-06 2.73 126.19 692.1
3FGL J0041.9+3639 4.600 1.601 1.28e-06 2.19 70.10 260.1
3FGL J0105.3+3928 4.639 0.549 2.55e-06 2.23 215.82 582.0
3FGL J0023.5+4454 5.046 1.732 2.21e-06 2.37 175.66 645.6 *
3FGL J0102.1+4458 5.121 0.343 9.03e-07 1.88 21.31 92.1
3FGL J0022.7+4651 6.635 1.260 3.29e-07 5.00 6.44 145.7 *
isodiff --- 0.819 0.0364 2.12 732.34 28559.0 *
galdiff --- 1.176 0.248 0.01 11602.15 93558.0 *
2026-07-17 22:01:21 INFO GTAnalysis.free_source(): Fixing parameters for 3FGL J0023.5+4454 : ['Prefactor', 'Index']
2026-07-17 22:01:21 INFO GTAnalysis.free_source(): Fixing parameters for 3FGL J0022.7+4651 : ['Prefactor', 'Index']
2026-07-17 22:01:21 INFO GTAnalysis.free_source(): Fixing parameters for isodiff : ['Normalization']
2026-07-17 22:01:21 INFO GTAnalysis.free_source(): Fixing parameters for galdiff : ['Prefactor', 'Index']
2026-07-17 22:01:21 INFO GTAnalysis.print_model():
sourcename offset norm eflux index ts npred free
--------------------------------------------------------------------------------
3FGL J0042.5+4117 0.031 1.053 8.52e-07 2.58 30.07 324.2
3FGL J0040.3+4049 0.624 0.222 1.99e-06 1.77 73.87 149.1
3FGL J0049.0+4224 1.650 0.278 1.33e-06 1.63 29.89 61.4
3FGL J0048.0+3950 1.771 0.603 5.84e-06 1.94 545.61 728.3
3FGL J0039.1+4330 2.337 0.225 1.54e-06 1.89 62.65 169.0
3FGL J0032.5+3912 2.833 0.550 9.81e-07 2.45 46.83 318.7
3FGL J0102.3+4217 3.800 0.575 1.65e-06 2.73 126.19 692.1
3FGL J0041.9+3639 4.600 1.601 1.28e-06 2.19 70.10 260.1
3FGL J0105.3+3928 4.639 0.549 2.55e-06 2.23 215.82 582.0
3FGL J0023.5+4454 5.046 1.732 2.21e-06 2.37 175.66 645.6
3FGL J0102.1+4458 5.121 0.343 9.03e-07 1.88 21.31 92.1
3FGL J0022.7+4651 6.635 1.260 3.29e-07 5.00 6.44 145.7
isodiff --- 0.819 0.0364 2.12 732.34 28559.0
galdiff --- 1.176 0.248 0.01 11602.15 93558.0
2026-07-17 22:01:21 INFO GTAnalysis.free_source(): Freeing parameters for 3FGL J0102.1+4458 : ['Prefactor', 'Index']
2026-07-17 22:01:21 INFO GTAnalysis.free_source(): Freeing parameters for 3FGL J0102.3+4217 : ['Prefactor', 'Index']
2026-07-17 22:01:21 INFO GTAnalysis.free_source(): Freeing parameters for isodiff : ['Normalization']
2026-07-17 22:01:21 INFO GTAnalysis.free_source(): Freeing parameters for galdiff : ['Prefactor', 'Index']
2026-07-17 22:01:21 INFO GTAnalysis.print_model():
sourcename offset norm eflux index ts npred free
--------------------------------------------------------------------------------
3FGL J0042.5+4117 0.031 1.053 8.52e-07 2.58 30.07 324.2
3FGL J0040.3+4049 0.624 0.222 1.99e-06 1.77 73.87 149.1
3FGL J0049.0+4224 1.650 0.278 1.33e-06 1.63 29.89 61.4
3FGL J0048.0+3950 1.771 0.603 5.84e-06 1.94 545.61 728.3
3FGL J0039.1+4330 2.337 0.225 1.54e-06 1.89 62.65 169.0
3FGL J0032.5+3912 2.833 0.550 9.81e-07 2.45 46.83 318.7
3FGL J0102.3+4217 3.800 0.575 1.65e-06 2.73 126.19 692.1 *
3FGL J0041.9+3639 4.600 1.601 1.28e-06 2.19 70.10 260.1
3FGL J0105.3+3928 4.639 0.549 2.55e-06 2.23 215.82 582.0
3FGL J0023.5+4454 5.046 1.732 2.21e-06 2.37 175.66 645.6
3FGL J0102.1+4458 5.121 0.343 9.03e-07 1.88 21.31 92.1 *
3FGL J0022.7+4651 6.635 1.260 3.29e-07 5.00 6.44 145.7
isodiff --- 0.819 0.0364 2.12 732.34 28559.0 *
galdiff --- 1.176 0.248 0.01 11602.15 93558.0 *
2026-07-17 22:01:21 INFO GTAnalysis.localize(): Running localization for 3FGL J0102.1+4458
Renormalization of source 3FGL J0102.1+4458
2026-07-17 22:01:30 INFO GTAnalysis._localize(): Localization succeeded.
2026-07-17 22:01:30 INFO GTAnalysis._localize(): Updating source 3FGL J0102.1+4458 to localized position.
2026-07-17 22:01:30 INFO GTAnalysis.delete_source(): Deleting source 3FGL J0102.1+4458
2026-07-17 22:01:30 INFO GTAnalysis.add_source(): Adding source 3FGL J0102.1+4458
2026-07-17 22:01:31 INFO GTAnalysis._localize(): Localization completed with new position:
( ra, dec) = ( 15.5648 +/- 0.0355, 44.9875 +/- 0.0342)
(glon,glat) = ( 124.9417 +/- 0.0353, -17.8420 +/- 0.0344)
offset = 0.0253 r68 = 0.0527 r95 = 0.0850 r99 = 0.1054
2026-07-17 22:01:31 INFO GTAnalysis._localize(): LogLike: -246780.004 DeltaLogLike: 1.037
2026-07-17 22:01:31 INFO GTAnalysis.localize(): Finished localization.
2026-07-17 22:01:32 WARNING GTAnalysis.localize(): Saving TS maps in .npy files is disabled b/c of incompatibilities in python3, remove the maps from the /home/runner/work/fermipy/fermipy/fermipy-extra/notebooks/M31_data/3fgl_j0102.1+4458_loc.npy
2026-07-17 22:01:32 INFO GTAnalysis.localize(): Execution time: 10.93 s
2026-07-17 22:01:32 INFO GTAnalysis.print_model():
sourcename offset norm eflux index ts npred free
--------------------------------------------------------------------------------
3FGL J0042.5+4117 0.031 1.053 8.52e-07 2.58 30.07 324.2
3FGL J0040.3+4049 0.624 0.222 1.99e-06 1.77 73.87 149.1
3FGL J0049.0+4224 1.650 0.278 1.33e-06 1.63 29.89 61.4
3FGL J0048.0+3950 1.771 0.603 5.84e-06 1.94 545.61 728.3
3FGL J0039.1+4330 2.337 0.225 1.54e-06 1.89 62.65 169.0
3FGL J0032.5+3912 2.833 0.550 9.81e-07 2.45 46.83 318.7
3FGL J0102.3+4217 3.800 0.575 1.65e-06 2.73 126.19 692.1 *
3FGL J0041.9+3639 4.600 1.601 1.28e-06 2.19 70.10 260.1
3FGL J0105.3+3928 4.639 0.549 2.55e-06 2.23 215.82 582.0
3FGL J0023.5+4454 5.046 1.732 2.21e-06 2.37 175.66 645.6
3FGL J0102.1+4458 5.147 0.208 8.65e-07 1.72 16.48 55.1 *
3FGL J0022.7+4651 6.635 1.260 3.29e-07 5.00 6.44 145.7
isodiff --- 0.819 0.0364 2.12 732.34 28559.0 *
galdiff --- 1.176 0.248 0.01 11602.15 93558.0 *
2026-07-17 22:01:32 INFO GTAnalysis.free_source(): Fixing parameters for 3FGL J0102.3+4217 : ['Prefactor', 'Index']
2026-07-17 22:01:32 INFO GTAnalysis.free_source(): Fixing parameters for 3FGL J0102.1+4458 : ['Prefactor', 'Index']
2026-07-17 22:01:32 INFO GTAnalysis.free_source(): Fixing parameters for isodiff : ['Normalization']
2026-07-17 22:01:32 INFO GTAnalysis.free_source(): Fixing parameters for galdiff : ['Prefactor', 'Index']
2026-07-17 22:01:32 INFO GTAnalysis.print_model():
sourcename offset norm eflux index ts npred free
--------------------------------------------------------------------------------
3FGL J0042.5+4117 0.031 1.053 8.52e-07 2.58 30.07 324.2
3FGL J0040.3+4049 0.624 0.222 1.99e-06 1.77 73.87 149.1
3FGL J0049.0+4224 1.650 0.278 1.33e-06 1.63 29.89 61.4
3FGL J0048.0+3950 1.771 0.603 5.84e-06 1.94 545.61 728.3
3FGL J0039.1+4330 2.337 0.225 1.54e-06 1.89 62.65 169.0
3FGL J0032.5+3912 2.833 0.550 9.81e-07 2.45 46.83 318.7
3FGL J0102.3+4217 3.800 0.575 1.65e-06 2.73 126.19 692.1
3FGL J0041.9+3639 4.600 1.601 1.28e-06 2.19 70.10 260.1
3FGL J0105.3+3928 4.639 0.549 2.55e-06 2.23 215.82 582.0
3FGL J0023.5+4454 5.046 1.732 2.21e-06 2.37 175.66 645.6
3FGL J0102.1+4458 5.147 0.208 8.65e-07 1.72 16.48 55.1
3FGL J0022.7+4651 6.635 1.260 3.29e-07 5.00 6.44 145.7
isodiff --- 0.819 0.0364 2.12 732.34 28559.0
galdiff --- 1.176 0.248 0.01 11602.15 93558.0
2026-07-17 22:01:32 INFO GTAnalysis.free_source(): Freeing parameters for 3FGL J0022.7+4651 : ['Prefactor', 'Index']
2026-07-17 22:01:32 INFO GTAnalysis.free_source(): Freeing parameters for 3FGL J0023.5+4454 : ['Prefactor', 'Index']
2026-07-17 22:01:32 INFO GTAnalysis.free_source(): Freeing parameters for isodiff : ['Normalization']
2026-07-17 22:01:32 INFO GTAnalysis.free_source(): Freeing parameters for galdiff : ['Prefactor', 'Index']
2026-07-17 22:01:32 INFO GTAnalysis.print_model():
sourcename offset norm eflux index ts npred free
--------------------------------------------------------------------------------
3FGL J0042.5+4117 0.031 1.053 8.52e-07 2.58 30.07 324.2
3FGL J0040.3+4049 0.624 0.222 1.99e-06 1.77 73.87 149.1
3FGL J0049.0+4224 1.650 0.278 1.33e-06 1.63 29.89 61.4
3FGL J0048.0+3950 1.771 0.603 5.84e-06 1.94 545.61 728.3
3FGL J0039.1+4330 2.337 0.225 1.54e-06 1.89 62.65 169.0
3FGL J0032.5+3912 2.833 0.550 9.81e-07 2.45 46.83 318.7
3FGL J0102.3+4217 3.800 0.575 1.65e-06 2.73 126.19 692.1
3FGL J0041.9+3639 4.600 1.601 1.28e-06 2.19 70.10 260.1
3FGL J0105.3+3928 4.639 0.549 2.55e-06 2.23 215.82 582.0
3FGL J0023.5+4454 5.046 1.732 2.21e-06 2.37 175.66 645.6 *
3FGL J0102.1+4458 5.147 0.208 8.65e-07 1.72 16.48 55.1
3FGL J0022.7+4651 6.635 1.260 3.29e-07 5.00 6.44 145.7 *
isodiff --- 0.819 0.0364 2.12 732.34 28559.0 *
galdiff --- 1.176 0.248 0.01 11602.15 93558.0 *
2026-07-17 22:01:32 INFO GTAnalysis.localize(): Running localization for 3FGL J0022.7+4651
Renormalization of source 3FGL J0022.7+4651
Each lower bound must be strictly less than each upper bound.
Each lower bound must be strictly less than each upper bound.
2026-07-17 22:01:40 WARNING GTAnalysis._localize(): Fit to localization contour failed.
2026-07-17 22:01:40 WARNING GTAnalysis._localize(): Localization failed. Keeping existing position.
2026-07-17 22:01:40 INFO GTAnalysis._localize(): Localization completed with new position:
( ra, dec) = ( 5.2047 +/- 0.1693, 47.1091 +/- 0.1693)
(glon,glat) = ( 117.5350 +/- 0.1693, -15.4415 +/- 0.1693)
offset = 0.4172 r68 = 0.2567 r95 = 0.4142 r99 = 0.5137
2026-07-17 22:01:40 INFO GTAnalysis._localize(): LogLike: -246778.672 DeltaLogLike: 1.328
2026-07-17 22:01:40 INFO GTAnalysis.localize(): Finished localization.
Initial guess is outside of provided bounds
Each lower bound must be strictly less than each upper bound.
2026-07-17 22:01:41 WARNING GTAnalysis.localize(): Saving TS maps in .npy files is disabled b/c of incompatibilities in python3, remove the maps from the /home/runner/work/fermipy/fermipy/fermipy-extra/notebooks/M31_data/3fgl_j0022.7+4651_loc.npy
2026-07-17 22:01:41 INFO GTAnalysis.localize(): Execution time: 8.61 s
2026-07-17 22:01:41 INFO GTAnalysis.print_model():
sourcename offset norm eflux index ts npred free
--------------------------------------------------------------------------------
3FGL J0042.5+4117 0.031 1.053 8.52e-07 2.58 30.07 324.2
3FGL J0040.3+4049 0.624 0.222 1.99e-06 1.77 73.87 149.1
3FGL J0049.0+4224 1.650 0.278 1.33e-06 1.63 29.89 61.4
3FGL J0048.0+3950 1.771 0.603 5.84e-06 1.94 545.61 728.3
3FGL J0039.1+4330 2.337 0.225 1.54e-06 1.89 62.65 169.0
3FGL J0032.5+3912 2.833 0.550 9.81e-07 2.45 46.83 318.7
3FGL J0102.3+4217 3.800 0.575 1.65e-06 2.73 126.19 692.1
3FGL J0041.9+3639 4.600 1.601 1.28e-06 2.19 70.10 260.1
3FGL J0105.3+3928 4.639 0.549 2.55e-06 2.23 215.82 582.0
3FGL J0023.5+4454 5.046 1.732 2.21e-06 2.37 175.66 645.6 *
3FGL J0102.1+4458 5.147 0.208 8.65e-07 1.72 16.48 55.1
3FGL J0022.7+4651 6.635 1.260 3.29e-07 5.00 6.44 145.7 *
isodiff --- 0.819 0.0364 2.12 732.34 28559.0 *
galdiff --- 1.176 0.248 0.01 11602.15 93558.0 *
Here we have relocalized all the sources present in the model in the following way:
[17]:
print(" Old position, new position, offset, posr68")
for t in range(len(gta.roi.sources)-2):
print("(l0,b0)=(%.3f,%.3f) (l1,b1)=(%.3f,%.3f), offset=%.3f and pos_r68=%.3f"%(glon0[t],glat0[t],glon1[t],glat1[t],offset[t],gta.roi[gta.roi.sources[t].name]['pos_r68']))
Old position, new position, offset, posr68
(l0,b0)=(121.131,-21.545) (l1,b1)=(121.156,-21.546), offset=0.024 and pos_r68=0.156
(l0,b0)=(120.666,-22.005) (l1,b1)=(120.685,-21.999), offset=0.018 and pos_r68=0.026
(l0,b0)=(122.454,-20.456) (l1,b1)=(122.483,-20.462), offset=0.027 and pos_r68=0.042
(l0,b0)=(122.221,-23.024) (l1,b1)=(122.193,-23.071), offset=0.053 and pos_r68=0.014
(l0,b0)=(120.579,-19.314) (l1,b1)=(120.564,-19.306), offset=0.017 and pos_r68=0.028
(l0,b0)=(118.951,-23.513) (l1,b1)=(119.253,-23.782), offset=0.386 and pos_r68=0.059
(l0,b0)=(125.092,-20.537) (l1,b1)=(125.116,-20.616), offset=0.082 and pos_r68=0.039
(l0,b0)=(120.823,-26.171) (l1,b1)=(120.851,-26.162), offset=0.027 and pos_r68=0.030
(l0,b0)=(125.849,-23.321) (l1,b1)=(125.828,-23.309), offset=0.022 and pos_r68=0.028
(l0,b0)=(117.748,-17.685) (l1,b1)=(117.809,-17.645), offset=0.071 and pos_r68=0.033
(l0,b0)=(124.921,-17.859) (l1,b1)=(124.942,-17.842), offset=0.025 and pos_r68=0.053
(l0,b0)=(117.843,-15.735) (l1,b1)=(117.843,-15.735), offset=0.000 and pos_r68=nan
Now that we have renormalized all the 3FGL sources in the ROI we will perform an other fit.
[18]:
gta.fit()
2026-07-17 22:01:41 INFO GTAnalysis.fit(): Starting fit.
2026-07-17 22:01:42 INFO GTAnalysis.fit(): Fit returned successfully. Quality: 3 Status: 0
2026-07-17 22:01:42 INFO GTAnalysis.fit(): LogLike: -246706.203 DeltaLogLike: 73.810
[18]:
{'fit_quality': 3,
'fit_status': 0,
'fit_success': True,
'dloglike': 73.80973563843872,
'edm': 9.455225657892827e-05,
'loglike': -246706.20347609563,
'covariance': array([[ 2.75351204e-01, 1.69164129e-05, -1.77162042e-02,
-5.47788830e-03, -3.97611515e-04, -3.54686032e-04,
5.23694630e-04],
[ 1.69164129e-05, 9.91261670e-07, 9.17577671e-07,
3.36265887e-07, -3.29244672e-08, 2.32190445e-08,
6.90524785e-08],
[-1.77162042e-02, 9.17577671e-07, 4.53690462e-02,
9.31358837e-03, -1.71883356e-04, -8.32566442e-05,
1.25691196e-04],
[-5.47788830e-03, 3.36265887e-07, 9.31358837e-03,
7.15316391e-03, -1.37905288e-05, -4.22371700e-05,
-4.45454036e-07],
[-3.97611515e-04, -3.29244672e-08, -1.71883356e-04,
-1.37905288e-05, 1.92195136e-04, 6.87230595e-06,
-4.11843780e-04],
[-3.54686032e-04, 2.32190445e-08, -8.32566442e-05,
-4.22371700e-05, 6.87230595e-06, 3.23378130e-05,
-4.13950092e-05],
[ 5.23694630e-04, 6.90524785e-08, 1.25691196e-04,
-4.45454036e-07, -4.11843780e-04, -4.13950092e-05,
9.99484362e-04]]),
'correlation': array([[ 1.00000000e+00, 3.23795367e-02, -1.58506605e-01,
-1.23429962e-01, -5.46568083e-02, -1.18862613e-01,
3.15679681e-02],
[ 3.23795367e-02, 1.00000000e+00, 4.32682026e-03,
3.99337015e-03, -2.38535709e-03, 4.10104812e-03,
2.19380041e-03],
[-1.58506605e-01, 4.32682026e-03, 1.00000000e+00,
5.16997123e-01, -5.82080168e-02, -6.87359207e-02,
1.86653885e-02],
[-1.23429962e-01, 3.99337015e-03, 5.16997123e-01,
1.00000000e+00, -1.17614437e-02, -8.78193868e-02,
-1.66596475e-04],
[-5.46568083e-02, -2.38535709e-03, -5.82080168e-02,
-1.17614437e-02, 1.00000000e+00, 8.71717906e-02,
-9.39665567e-01],
[-1.18862613e-01, 4.10104812e-03, -6.87359207e-02,
-8.78193868e-02, 8.71717906e-02, 1.00000000e+00,
-2.30252662e-01],
[ 3.15679681e-02, 2.19380041e-03, 1.86653885e-02,
-1.66596475e-04, -9.39665567e-01, -2.30252662e-01,
1.00000000e+00]]),
'values': array([1.1071327 , 4.99999971, 2.14407321, 2.44928086, 1.09625666,
0.02364903, 0.87491896]),
'errors': array([0.52473918, 0.00099562, 0.21300011, 0.08457638, 0.01386345,
0.00568663, 0.03161462]),
'indices': array([ 0, 1, 3, 4, 36, 37, 39]),
'is_norm': array([ True, False, True, False, True, False, True]),
'src_names': ['3FGL J0022.7+4651',
'3FGL J0022.7+4651',
'3FGL J0023.5+4454',
'3FGL J0023.5+4454',
'galdiff',
'galdiff',
'isodiff'],
'par_names': ['Prefactor',
'Index',
'Prefactor',
'Index',
'Prefactor',
'Index',
'Normalization'],
'config': {'optimizer': 'MINUIT',
'tol': 0.001,
'max_iter': 100,
'init_lambda': 0.0001,
'retries': 3,
'min_fit_quality': 2,
'verbosity': 0,
'covar': True,
'reoptimize': False},
'niter': 1}
[19]:
tsmap_start = gta.tsmap(prefix='TSmap_start',make_plots=True,write_fits=True,write_npy=True)
2026-07-17 22:01:42 INFO GTAnalysis.tsmap(): Generating TS map
2026-07-17 22:01:43 INFO GTAnalysis._make_tsmap_fast(): Fitting test source.
2026-07-17 22:03:25 INFO GTAnalysis.tsmap(): Finished TS map
2026-07-17 22:03:25 WARNING GTAnalysis.tsmap(): Saving TS maps in .npy files is disabled b/c of incompatibilities in python3, remove the maps from the /home/runner/work/fermipy/fermipy/fermipy-extra/notebooks/M31_data/TSmap_start_pointsource_powerlaw_2.00_tsmap.npy
2026-07-17 22:03:25 INFO GTAnalysis.tsmap(): Execution time: 102.90 s
[20]:
plt.clf()
fig = plt.figure(figsize=(14,6))
ROIPlotter(tsmap_start['sqrt_ts'],roi=gta.roi).plot(levels=[0,3,5,7],vmin=0,vmax=5,subplot=121,cmap='magma')
plt.gca().set_title('Sqrt(TS)')
ROIPlotter(tsmap_start['npred'],roi=gta.roi).plot(vmin=0,vmax=100,subplot=122,cmap='magma')
plt.gca().set_title('NPred')
plt.show()
<Figure size 640x480 with 0 Axes>
[21]:
resid_M31 = gta.residmap('M31_postfit',model={'SpatialModel' : 'PointSource', 'Index' : 2.0},write_fits=True,write_npy=True,make_plots=True)
2026-07-17 22:03:26 INFO GTAnalysis.residmap(): Generating residual maps
2026-07-17 22:03:26 INFO GTAnalysis.add_source(): Adding source residmap_testsource
2026-07-17 22:03:27 INFO GTAnalysis.delete_source(): Deleting source residmap_testsource
2026-07-17 22:03:28 INFO GTAnalysis.residmap(): Finished residual maps
2026-07-17 22:03:28 WARNING GTAnalysis.residmap(): Saving maps in .npy files is disabled b/c of incompatibilities in python3, remove the maps from the /home/runner/work/fermipy/fermipy/fermipy-extra/notebooks/M31_data/M31_postfit_pointsource_powerlaw_2.00_residmap.npy
2026-07-17 22:03:28 INFO GTAnalysis.residmap(): Execution time: 2.72 s
[22]:
plt.clf()
fig = plt.figure(figsize=(14,6))
ROIPlotter(resid_M31['data'],roi=gta.roi).plot(vmin=1000,vmax=3000,subplot=121,cmap='magma')
plt.gca().set_title('Data')
ROIPlotter(resid_M31['model'],roi=gta.roi).plot(vmin=1000,vmax=3000,subplot=122,cmap='magma')
plt.gca().set_title('Model')
plt.show()
<Figure size 640x480 with 0 Axes>
[23]:
plt.clf()
fig = plt.figure(figsize=(14,6))
ROIPlotter(resid_M31['sigma'],roi=gta.roi).plot(vmin=-5,vmax=5,levels=[-5,-3,3,5],subplot=121,cmap='RdBu_r')
plt.gca().set_title('Significance')
ROIPlotter(resid_M31['excess'],roi=gta.roi).plot(vmin=-100,vmax=100,subplot=122,cmap='RdBu_r')
plt.gca().set_title('Excess')
plt.show()
<Figure size 640x480 with 0 Axes>
[24]:
gta.write_roi('relocalization',make_plots=True,save_model_map=True)
2026-07-17 22:03:30 INFO GTBinnedAnalysis.write_xml(): Writing /home/runner/work/fermipy/fermipy/fermipy-extra/notebooks/M31_data/relocalization_00.xml...
2026-07-17 22:03:30 INFO GTAnalysis.write_fits(): Writing /home/runner/work/fermipy/fermipy/fermipy-extra/notebooks/M31_data/relocalization.fits...
WARNING: Format %s cannot be mapped to the accepted TDISPn keyword values. Format will not be moved into TDISPn keyword. [astropy.io.fits.column]
WARNING: Format %f cannot be mapped to the accepted TDISPn keyword values. Format will not be moved into TDISPn keyword. [astropy.io.fits.column]
WARNING: Format %f cannot be mapped to the accepted TDISPn keyword values. Format will not be moved into TDISPn keyword. [astropy.io.fits.column]
WARNING: Format %f cannot be mapped to the accepted TDISPn keyword values. Format will not be moved into TDISPn keyword. [astropy.io.fits.column]
WARNING: Format %f cannot be mapped to the accepted TDISPn keyword values. Format will not be moved into TDISPn keyword. [astropy.io.fits.column]
WARNING: Format %f cannot be mapped to the accepted TDISPn keyword values. Format will not be moved into TDISPn keyword. [astropy.io.fits.column]
WARNING: Format %f cannot be mapped to the accepted TDISPn keyword values. Format will not be moved into TDISPn keyword. [astropy.io.fits.column]
WARNING: Format %s cannot be mapped to the accepted TDISPn keyword values. Format will not be moved into TDISPn keyword. [astropy.io.fits.column]
WARNING: Format %s cannot be mapped to the accepted TDISPn keyword values. Format will not be moved into TDISPn keyword. [astropy.io.fits.column]
2026-07-17 22:03:30 INFO GTBinnedAnalysis.write_model_map(): Generating model map for component 00.
2026-07-17 22:03:31 INFO GTAnalysis.write_roi(): Writing /home/runner/work/fermipy/fermipy/fermipy-extra/notebooks/M31_data/relocalization.npy...
[25]:
gta.load_roi('relocalization')
2026-07-17 22:03:33 INFO GTAnalysis.load_roi(): Loading ROI file: /home/runner/work/fermipy/fermipy/fermipy-extra/notebooks/M31_data/relocalization.npy
2026-07-17 22:03:33 INFO GTBinnedAnalysis._create_binned_analysis(): Creating BinnedAnalysis for component 00.
2026-07-17 22:03:41 INFO GTAnalysis.load_roi(): Finished Loading ROI
Source Extension
Now we will run the extension to all sources using gta.extension.
[26]:
help(gta.extension)
Help on method extension in module fermipy.extension:
extension(name, **kwargs) method of fermipy.gtanalysis.GTAnalysis instance
Test this source for spatial extension with the likelihood
ratio method (TS_ext). This method will substitute an
extended spatial model for the given source and perform a
one-dimensional scan of the spatial extension parameter over
the range specified with the width parameters. The 1-D
profile likelihood is then used to compute the best-fit value,
upper limit, and TS for extension. The nuisance parameters
that will be simultaneously fit when performing the spatial
scan can be controlled with the ``fix_shape``,
``free_background``, and ``free_radius`` options. By default
the position of the source will be fixed to its current
position. A simultaneous fit to position and extension can be
performed by setting ``fit_position`` to True.
Parameters
----------
name : str
Source name.
loge_bins : `~numpy.ndarray`
Sequence of energies in log10(E/MeV) defining the edges of
the energy bins. If this argument is None then the
analysis energy bins will be used. The energies in this
sequence must align with the bin edges of the underyling
analysis instance.
{options}
optimizer : dict
Dictionary that overrides the default optimizer settings.
Returns
-------
extension : dict
Dictionary containing results of the extension analysis. The same
dictionary is also saved to the dictionary of this source under
'extension'.
We use the option update=True and sqrt_ts_threshold=3.0 that will update the spatial template of the source if the TS of extension larger than 9.
Fitting the extension for each source will likely take tens of minutes to process.
[27]:
extension_best = np.zeros(len(gta.roi.sources))
extension_error = np.zeros(len(gta.roi.sources))
extension_ul = np.zeros(len(gta.roi.sources))
extension_TS = np.zeros(len(gta.roi.sources))
for t in range(len(gta.roi.sources)-2):
print("\nRunning extension on source %s"%gta.roi.sources[t].name ,"\n")
gta.free_sources(free=False)
gta.print_model()
gta.free_sources(skydir=gta.roi[gta.roi.sources[t].name].skydir,distance=[3.0],free=True)
gta.print_model()
extension = gta.extension(gta.roi.sources[t].name, update=True, width_max=5.0, sqrt_ts_threshold=3.0)
extension_best[t] = extension['ext']
extension_error[t] = extension['ext_err']
extension_ul[t] = extension['ext_ul95']
extension_TS[t] = extension['ts_ext']
print("%.3f %.3f %.3f %.3f"%(extension['ext'],extension['ext_err'],extension['ext_ul95'],extension['ts_ext']))
gta.print_model()
2026-07-17 22:03:41 INFO GTAnalysis.free_source(): Fixing parameters for 3FGL J0023.5+4454 : ['Prefactor', 'Index']
2026-07-17 22:03:41 INFO GTAnalysis.free_source(): Fixing parameters for 3FGL J0022.7+4651 : ['Prefactor', 'Index']
2026-07-17 22:03:41 INFO GTAnalysis.free_source(): Fixing parameters for isodiff : ['Normalization']
2026-07-17 22:03:41 INFO GTAnalysis.free_source(): Fixing parameters for galdiff : ['Prefactor', 'Index']
2026-07-17 22:03:41 INFO GTAnalysis.print_model():
sourcename offset norm eflux index ts npred free
--------------------------------------------------------------------------------
3FGL J0042.5+4117 0.031 1.053 8.52e-07 2.58 30.07 324.2
3FGL J0040.3+4049 0.624 0.222 1.99e-06 1.77 73.87 149.1
3FGL J0049.0+4224 1.650 0.278 1.33e-06 1.63 29.89 61.4
3FGL J0048.0+3950 1.771 0.603 5.84e-06 1.94 545.61 728.3
3FGL J0039.1+4330 2.337 0.225 1.54e-06 1.89 62.65 169.0
3FGL J0032.5+3912 2.833 0.550 9.81e-07 2.45 46.83 318.7
3FGL J0102.3+4217 3.800 0.575 1.65e-06 2.73 126.19 692.1
3FGL J0041.9+3639 4.600 1.601 1.28e-06 2.19 70.10 260.1
3FGL J0105.3+3928 4.639 0.549 2.55e-06 2.23 215.82 582.0
3FGL J0023.5+4454 5.046 2.144 2.46e-06 2.45 220.86 792.9
3FGL J0102.1+4458 5.147 0.208 8.65e-07 1.72 16.48 55.1
3FGL J0022.7+4651 6.635 1.107 2.89e-07 5.00 4.97 128.0
isodiff --- 0.875 0.0389 2.12 924.97 31907.6
galdiff --- 1.096 0.229 0.02 6739.38 91244.0
2026-07-17 22:03:41 INFO GTAnalysis.free_source(): Freeing parameters for 3FGL J0042.5+4117 : ['Prefactor', 'Index']
2026-07-17 22:03:41 INFO GTAnalysis.free_source(): Freeing parameters for 3FGL J0040.3+4049 : ['Prefactor', 'Index']
2026-07-17 22:03:41 INFO GTAnalysis.free_source(): Freeing parameters for 3FGL J0049.0+4224 : ['Prefactor', 'Index']
2026-07-17 22:03:41 INFO GTAnalysis.free_source(): Freeing parameters for 3FGL J0048.0+3950 : ['Prefactor', 'Index']
2026-07-17 22:03:41 INFO GTAnalysis.free_source(): Freeing parameters for 3FGL J0039.1+4330 : ['Prefactor', 'Index']
2026-07-17 22:03:41 INFO GTAnalysis.free_source(): Freeing parameters for 3FGL J0032.5+3912 : ['Prefactor', 'Index']
2026-07-17 22:03:41 INFO GTAnalysis.free_source(): Freeing parameters for isodiff : ['Normalization']
2026-07-17 22:03:41 INFO GTAnalysis.free_source(): Freeing parameters for galdiff : ['Prefactor', 'Index']
2026-07-17 22:03:41 INFO GTAnalysis.print_model():
sourcename offset norm eflux index ts npred free
--------------------------------------------------------------------------------
3FGL J0042.5+4117 0.031 1.053 8.52e-07 2.58 30.07 324.2 *
3FGL J0040.3+4049 0.624 0.222 1.99e-06 1.77 73.87 149.1 *
3FGL J0049.0+4224 1.650 0.278 1.33e-06 1.63 29.89 61.4 *
3FGL J0048.0+3950 1.771 0.603 5.84e-06 1.94 545.61 728.3 *
3FGL J0039.1+4330 2.337 0.225 1.54e-06 1.89 62.65 169.0 *
3FGL J0032.5+3912 2.833 0.550 9.81e-07 2.45 46.83 318.7 *
3FGL J0102.3+4217 3.800 0.575 1.65e-06 2.73 126.19 692.1
3FGL J0041.9+3639 4.600 1.601 1.28e-06 2.19 70.10 260.1
3FGL J0105.3+3928 4.639 0.549 2.55e-06 2.23 215.82 582.0
3FGL J0023.5+4454 5.046 2.144 2.46e-06 2.45 220.86 792.9
3FGL J0102.1+4458 5.147 0.208 8.65e-07 1.72 16.48 55.1
3FGL J0022.7+4651 6.635 1.107 2.89e-07 5.00 4.97 128.0
isodiff --- 0.875 0.0389 2.12 924.97 31907.6 *
galdiff --- 1.096 0.229 0.02 6739.38 91244.0 *
2026-07-17 22:03:41 INFO GTAnalysis.extension(): Running extension fit for 3FGL J0042.5+4117
Running extension on source 3FGL J0042.5+4117
2026-07-17 22:04:18 INFO GTAnalysis._extension(): Fitting extended-source model.
2026-07-17 22:04:39 INFO GTAnalysis._extension(): Generating TS map.
2026-07-17 22:06:22 INFO GTAnalysis._extension(): Testing point-source model.
2026-07-17 22:06:24 INFO GTAnalysis._extension(): Best-fit extension: 5.2500 + nan - nan
2026-07-17 22:06:24 INFO GTAnalysis._extension(): TS_ext: 0.000
2026-07-17 22:06:24 INFO GTAnalysis._extension(): Extension UL: nan
2026-07-17 22:06:24 INFO GTAnalysis._extension(): LogLike: -246706.223 DeltaLogLike: 5.102
2026-07-17 22:06:24 INFO GTAnalysis.extension(): Finished extension fit.
2026-07-17 22:06:25 WARNING GTAnalysis.extension(): Saving maps in .npy files is disabled b/c of incompatibilities in python3, remove the maps from the /home/runner/work/fermipy/fermipy/fermipy-extra/notebooks/M31_data/3fgl_j0042.5+4117_ext.npy
2026-07-17 22:06:25 INFO GTAnalysis.extension(): Execution time: 163.41 s
2026-07-17 22:06:25 INFO GTAnalysis.print_model():
sourcename offset norm eflux index ts npred free
--------------------------------------------------------------------------------
3FGL J0042.5+4117 0.031 1.053 8.52e-07 2.58 30.07 324.2 *
3FGL J0040.3+4049 0.624 0.222 1.99e-06 1.77 73.87 149.1 *
3FGL J0049.0+4224 1.650 0.278 1.33e-06 1.63 29.89 61.4 *
3FGL J0048.0+3950 1.771 0.603 5.84e-06 1.94 545.61 728.3 *
3FGL J0039.1+4330 2.337 0.225 1.54e-06 1.89 62.65 169.0 *
3FGL J0032.5+3912 2.833 0.550 9.81e-07 2.45 46.83 318.7 *
3FGL J0102.3+4217 3.800 0.575 1.65e-06 2.73 126.19 692.1
3FGL J0041.9+3639 4.600 1.601 1.28e-06 2.19 70.10 260.1
3FGL J0105.3+3928 4.639 0.549 2.55e-06 2.23 215.82 582.0
3FGL J0023.5+4454 5.046 2.144 2.46e-06 2.45 220.86 792.9
3FGL J0102.1+4458 5.147 0.208 8.65e-07 1.72 16.48 55.1
3FGL J0022.7+4651 6.635 1.107 2.89e-07 5.00 4.97 128.0
isodiff --- 0.875 0.0389 2.12 924.97 31907.6 *
galdiff --- 1.096 0.229 0.02 6739.38 91244.0 *
2026-07-17 22:06:25 INFO GTAnalysis.free_source(): Fixing parameters for 3FGL J0042.5+4117 : ['Prefactor', 'Index']
2026-07-17 22:06:25 INFO GTAnalysis.free_source(): Fixing parameters for 3FGL J0040.3+4049 : ['Prefactor', 'Index']
2026-07-17 22:06:25 INFO GTAnalysis.free_source(): Fixing parameters for 3FGL J0049.0+4224 : ['Prefactor', 'Index']
2026-07-17 22:06:25 INFO GTAnalysis.free_source(): Fixing parameters for 3FGL J0048.0+3950 : ['Prefactor', 'Index']
2026-07-17 22:06:25 INFO GTAnalysis.free_source(): Fixing parameters for 3FGL J0039.1+4330 : ['Prefactor', 'Index']
2026-07-17 22:06:25 INFO GTAnalysis.free_source(): Fixing parameters for 3FGL J0032.5+3912 : ['Prefactor', 'Index']
2026-07-17 22:06:25 INFO GTAnalysis.free_source(): Fixing parameters for isodiff : ['Normalization']
2026-07-17 22:06:25 INFO GTAnalysis.free_source(): Fixing parameters for galdiff : ['Prefactor', 'Index']
2026-07-17 22:06:25 INFO GTAnalysis.print_model():
sourcename offset norm eflux index ts npred free
--------------------------------------------------------------------------------
3FGL J0042.5+4117 0.031 1.053 8.52e-07 2.58 30.07 324.2
3FGL J0040.3+4049 0.624 0.222 1.99e-06 1.77 73.87 149.1
3FGL J0049.0+4224 1.650 0.278 1.33e-06 1.63 29.89 61.4
3FGL J0048.0+3950 1.771 0.603 5.84e-06 1.94 545.61 728.3
3FGL J0039.1+4330 2.337 0.225 1.54e-06 1.89 62.65 169.0
3FGL J0032.5+3912 2.833 0.550 9.81e-07 2.45 46.83 318.7
3FGL J0102.3+4217 3.800 0.575 1.65e-06 2.73 126.19 692.1
3FGL J0041.9+3639 4.600 1.601 1.28e-06 2.19 70.10 260.1
3FGL J0105.3+3928 4.639 0.549 2.55e-06 2.23 215.82 582.0
3FGL J0023.5+4454 5.046 2.144 2.46e-06 2.45 220.86 792.9
3FGL J0102.1+4458 5.147 0.208 8.65e-07 1.72 16.48 55.1
3FGL J0022.7+4651 6.635 1.107 2.89e-07 5.00 4.97 128.0
isodiff --- 0.875 0.0389 2.12 924.97 31907.6
galdiff --- 1.096 0.229 0.02 6739.38 91244.0
2026-07-17 22:06:25 INFO GTAnalysis.free_source(): Freeing parameters for 3FGL J0040.3+4049 : ['Prefactor', 'Index']
2026-07-17 22:06:25 INFO GTAnalysis.free_source(): Freeing parameters for 3FGL J0042.5+4117 : ['Prefactor', 'Index']
2026-07-17 22:06:25 INFO GTAnalysis.free_source(): Freeing parameters for 3FGL J0048.0+3950 : ['Prefactor', 'Index']
2026-07-17 22:06:25 INFO GTAnalysis.free_source(): Freeing parameters for 3FGL J0032.5+3912 : ['Prefactor', 'Index']
2026-07-17 22:06:25 INFO GTAnalysis.free_source(): Freeing parameters for 3FGL J0049.0+4224 : ['Prefactor', 'Index']
2026-07-17 22:06:25 INFO GTAnalysis.free_source(): Freeing parameters for 3FGL J0039.1+4330 : ['Prefactor', 'Index']
2026-07-17 22:06:25 INFO GTAnalysis.free_source(): Freeing parameters for isodiff : ['Normalization']
2026-07-17 22:06:25 INFO GTAnalysis.free_source(): Freeing parameters for galdiff : ['Prefactor', 'Index']
2026-07-17 22:06:25 INFO GTAnalysis.print_model():
sourcename offset norm eflux index ts npred free
--------------------------------------------------------------------------------
3FGL J0042.5+4117 0.031 1.053 8.52e-07 2.58 30.07 324.2 *
3FGL J0040.3+4049 0.624 0.222 1.99e-06 1.77 73.87 149.1 *
3FGL J0049.0+4224 1.650 0.278 1.33e-06 1.63 29.89 61.4 *
3FGL J0048.0+3950 1.771 0.603 5.84e-06 1.94 545.61 728.3 *
3FGL J0039.1+4330 2.337 0.225 1.54e-06 1.89 62.65 169.0 *
3FGL J0032.5+3912 2.833 0.550 9.81e-07 2.45 46.83 318.7 *
3FGL J0102.3+4217 3.800 0.575 1.65e-06 2.73 126.19 692.1
3FGL J0041.9+3639 4.600 1.601 1.28e-06 2.19 70.10 260.1
3FGL J0105.3+3928 4.639 0.549 2.55e-06 2.23 215.82 582.0
3FGL J0023.5+4454 5.046 2.144 2.46e-06 2.45 220.86 792.9
3FGL J0102.1+4458 5.147 0.208 8.65e-07 1.72 16.48 55.1
3FGL J0022.7+4651 6.635 1.107 2.89e-07 5.00 4.97 128.0
isodiff --- 0.875 0.0389 2.12 924.97 31907.6 *
galdiff --- 1.096 0.229 0.02 6739.38 91244.0 *
2026-07-17 22:06:25 INFO GTAnalysis.extension(): Running extension fit for 3FGL J0040.3+4049
{'spatial_model': 'RadialGaussian', 'width': [], 'fit_position': False, 'width_min': 0.01, 'width_max': 5.0, 'width_nstep': 21, 'free_background': False, 'fix_shape': False, 'free_radius': None, 'fit_ebin': False, 'update': True, 'save_model_map': False, 'sqrt_ts_threshold': 3.0, 'psf_scale_fn': None, 'make_tsmap': True, 'tsmap_fitter': 'tsmap', 'make_plots': False, 'write_fits': True, 'write_npy': True, 'reoptimize': False, 'ra_format': 'hour', 'optimizer': {'optimizer': 'MINUIT', 'tol': 0.001, 'max_iter': 100, 'init_lambda': 0.0001, 'retries': 3, 'min_fit_quality': 2, 'verbosity': 0}, 'prefix': '', 'outfile': None, 'loge_bins': []}
{'spatial_model': 'RadialGaussian', 'width': [], 'fit_position': False, 'width_min': 0.01, 'width_max': 5.0, 'width_nstep': 21, 'free_background': False, 'fix_shape': False, 'free_radius': None, 'fit_ebin': False, 'update': True, 'save_model_map': False, 'sqrt_ts_threshold': 3.0, 'psf_scale_fn': None, 'make_tsmap': True, 'tsmap_fitter': 'tsmap', 'make_plots': False, 'write_fits': True, 'write_npy': True, 'reoptimize': False, 'ra_format': 'hour', 'optimizer': {'optimizer': 'MINUIT', 'tol': 0.001, 'max_iter': 100, 'init_lambda': 0.0001, 'retries': 3, 'min_fit_quality': 2, 'verbosity': 0}, 'prefix': '', 'outfile': None, 'loge_bins': []}
{'name': '3FGL J0042.5+4117', 'file': None, 'config': {'spatial_model': 'RadialGaussian', 'width': [], 'fit_position': False, 'width_min': 0.01, 'width_max': 5.0, 'width_nstep': 21, 'free_background': False, 'fix_shape': False, 'free_radius': None, 'fit_ebin': False, 'update': True, 'save_model_map': False, 'sqrt_ts_threshold': 3.0, 'psf_scale_fn': None, 'make_tsmap': True, 'tsmap_fitter': 'tsmap', 'make_plots': False, 'write_fits': True, 'write_npy': True, 'reoptimize': False, 'ra_format': 'hour', 'optimizer': {'optimizer': 'MINUIT', 'tol': 0.001, 'max_iter': 100, 'init_lambda': 0.0001, 'retries': 3, 'min_fit_quality': 2, 'verbosity': 0}, 'prefix': '', 'outfile': None, 'loge_bins': []}, 'width': array([0. , 0.01 , 0.01364421, 0.01861646, 0.02540069,
0.03465724, 0.04728708, 0.0645195 , 0.08803178, 0.12011244,
0.16388398, 0.2236068 , 0.30509388, 0.4162766 , 0.56797668,
0.77495949, 1.05737126, 1.44269991, 1.96845052, 2.68579588,
3.66455719, 5. ]), 'dloglike': array([5.82076609e-11, 9.10426024e-07, 4.43862518e-07, 4.38682036e-07,
4.55649570e-07, 4.53524990e-07, 4.53263056e-07, 4.53379471e-07,
4.53437679e-07, 4.53437679e-07, 4.53437679e-07, 4.53524990e-07,
4.53583198e-07, 4.53728717e-07, 4.54048859e-07, 4.54427209e-07,
4.55329427e-07, 4.58036084e-07, 4.83414624e-07, 2.46142736e-06,
3.27191083e-06, 3.46114393e-06]), 'loglike': array([-246706.2231927 , -246706.22319179, -246706.22319226,
-246706.22319227, -246706.22319225, -246706.22319225,
-246706.22319225, -246706.22319225, -246706.22319225,
-246706.22319225, -246706.22319225, -246706.22319225,
-246706.22319225, -246706.22319225, -246706.22319225,
-246706.22319225, -246706.22319225, -246706.22319225,
-246706.22319222, -246706.22319024, -246706.22318943,
-246706.22318924]), 'loglike_ptsrc': -246706.2231927045, 'loglike_ext': -246706.22319080457, 'loglike_init': -246711.32500258397, 'loglike_base': -246706.2231966927, 'ext': np.float64(5.250000000000002), 'ext_err_hi': np.float64(nan), 'ext_err_lo': np.float64(nan), 'ext_err': nan, 'ext_ul95': nan, 'ts_ext': 3.799854312092066e-06, 'ebin_e_min': array([], dtype=float64), 'ebin_e_ctr': array([], dtype=float64), 'ebin_e_max': array([], dtype=float64), 'ebin_ext': array([], dtype=float64), 'ebin_ext_err': array([], dtype=float64), 'ebin_ext_err_hi': array([], dtype=float64), 'ebin_ext_err_lo': array([], dtype=float64), 'ebin_ext_ul95': array([], dtype=float64), 'ebin_ts_ext': array([], dtype=float64), 'ebin_dloglike': array([], shape=(0, 22), dtype=float64), 'ebin_loglike': array([], shape=(0, 22), dtype=float64), 'ebin_loglike_ptsrc': array([], dtype=float64), 'ebin_loglike_ext': array([], dtype=float64), 'ra': np.float64(10.66110472988267), 'dec': np.float64(41.29544243508944), 'glon': np.float64(121.15631790015343), 'glat': np.float64(-21.545986555499827), 'ra_err': nan, 'dec_err': nan, 'glon_err': nan, 'glat_err': nan, 'pos_offset': 0.0, 'pos_err': nan, 'pos_r68': nan, 'pos_r95': nan, 'pos_r99': nan, 'pos_err_semimajor': nan, 'pos_err_semiminor': nan, 'pos_angle': nan, 'tsmap': <gammapy.maps.wcs.ndmap.WcsNDMap object at 0x7f7860d56710>, 'ptsrc_tot_map': None, 'ptsrc_src_map': None, 'ptsrc_bkg_map': None, 'ext_tot_map': None, 'ext_src_map': None, 'ext_bkg_map': None, 'source_fit': {'param_names': array([b'Prefactor', b'Index', b'Scale', b'', b'', b'', b'', b'', b'',
b''], dtype='|S32'), 'param_values': array([ 1.88620840e-12, -2.76115737e+00, 5.72780457e+02, nan,
nan, nan, nan, nan,
nan, nan]), 'param_errors': array([2.66612103e-13, 1.47106276e-01, nan, nan,
nan, nan, nan, nan,
nan, nan]), 'ts': np.float64(68.3190135229379), 'loglike': np.float64(-246706.22319080457), 'loglike_scan': array([-246740.38269757, -246708.93402937, -246708.28440573,
-246707.7273004 , -246707.26074034, -246706.88284555,
-246706.5918218 , -246706.38595422, -246706.26360152,
-246706.2231908 , -246706.25139758, -246706.33536272,
-246706.47425532, -246706.66727091, -246706.91363007,
-246707.21257715, -246707.56337908, -246707.96532433,
-246708.41772184, -246708.91990007]), 'dloglike_scan': array([-3.41595068e+01, -2.71083857e+00, -2.06121493e+00, -1.50410959e+00,
-1.03754953e+00, -6.59654741e-01, -3.68630995e-01, -1.62763416e-01,
-4.04107128e-02, 0.00000000e+00, -2.82067800e-02, -1.12171912e-01,
-2.51064512e-01, -4.44080107e-01, -6.90439267e-01, -9.89386341e-01,
-1.34018828e+00, -1.74213353e+00, -2.19453103e+00, -2.69670926e+00]), 'eflux_scan': array([0.00000000e+00, 9.21851853e-07, 9.72338049e-07, 1.02282425e-06,
1.07331044e-06, 1.12379664e-06, 1.17428284e-06, 1.22476903e-06,
1.27525523e-06, 1.32574143e-06, 1.36809926e-06, 1.41045710e-06,
1.45281494e-06, 1.49517278e-06, 1.53753062e-06, 1.57988845e-06,
1.62224629e-06, 1.66460413e-06, 1.70696197e-06, 1.74931981e-06]), 'flux_scan': array([0.00000000e+00, 1.33433189e-09, 1.40740800e-09, 1.48048410e-09,
1.55356021e-09, 1.62663631e-09, 1.69971242e-09, 1.77278852e-09,
1.84586463e-09, 1.91894073e-09, 1.98025146e-09, 2.04156220e-09,
2.10287293e-09, 2.16418367e-09, 2.22549440e-09, 2.28680514e-09,
2.34811587e-09, 2.40942661e-09, 2.47073734e-09, 2.53204807e-09]), 'norm_scan': array([0. , 1.31157153, 1.38340114, 1.45523074, 1.52706035,
1.59888996, 1.67071957, 1.74254918, 1.81437879, 1.8862084 ,
1.94647332, 2.00673825, 2.06700318, 2.1272681 , 2.18753303,
2.24779796, 2.30806288, 2.36832781, 2.42859274, 2.48885766]), 'npred': 551.2493575709233, 'npred_wt': 551.2493575709233, 'pivot_energy': 773.0524211788004, 'flux': 1.9189407301388916e-09, 'flux100': 1.3287977114323877e-08, 'flux1000': 2.3010228824240635e-10, 'flux10000': 3.976911926568763e-12, 'flux_err': np.float64(2.7860244575491903e-10), 'flux100_err': np.float64(3.3892972697922866e-09), 'flux1000_err': np.float64(4.160623980380723e-11), 'flux10000_err': np.float64(1.9010305258885345e-12), 'flux_ul95': 2.3502038942788942e-09, 'flux100_ul95': 1.627432003015144e-08, 'flux1000_ul95': 2.8181552739810065e-10, 'flux10000_ul95': 4.870683992595014e-12, 'eflux': 1.3257414259525797e-06, 'eflux100': 3.0636311769710443e-06, 'eflux1000': 5.253975288154991e-07, 'eflux10000': 8.555123845510768e-08, 'eflux_err': np.float64(1.8996553153049286e-07), 'eflux100_err': np.float64(5.32013490002051e-07), 'eflux1000_err': np.float64(1.355635790939764e-07), 'eflux10000_err': np.float64(4.679802333104818e-08), 'eflux_ul95': 1.623688847260588e-06, 'eflux100_ul95': 3.7521523253250455e-06, 'eflux1000_ul95': 6.434754856536505e-07, 'eflux10000_ul95': 1.047780427085018e-07, 'dnde': 8.241944405703029e-13, 'dnde100': 2.3362233242744516e-10, 'dnde1000': 4.049085845202226e-13, 'dnde10000': 7.017777800377353e-16, 'dnde_err': np.float64(1.1067196809696847e-13), 'dnde100_err': np.float64(7.69770891084514e-11), 'dnde1000_err': np.float64(5.648763933665465e-14), 'dnde10000_err': np.float64(2.8055952981209767e-16), 'dnde_index': np.float64(2.7611573711399897), 'dnde100_index': np.float64(2.7611573710844817), 'dnde1000_index': np.float64(2.7611573711399897), 'dnde10000_index': np.float64(2.7611573711066844), 'name': '3FGL J0042.5+4117', 'spectral_pars': {'Prefactor': {'name': 'Prefactor', 'value': 1.8862083975063502, 'error': 0.26661210258800727, 'min': 1e-05, 'max': 1000.0, 'free': True, 'scale': 1e-12}, 'Index': {'name': 'Index', 'value': 2.7611573711050186, 'error': 0.14710627571132726, 'min': 0.0, 'max': 5.0, 'free': True, 'scale': -1.0}, 'Scale': {'name': 'Scale', 'value': 572.7804565, 'error': nan, 'min': 572.7804565, 'max': 572.7804565, 'free': False, 'scale': 1.0}}, 'model_counts': array([1.87938031e+02, 1.27798191e+02, 8.49086144e+01, 5.55610414e+01,
3.58032846e+01, 2.27780755e+01, 1.41934724e+01, 8.73940611e+00,
5.32938367e+00, 3.22095911e+00, 1.94938643e+00, 1.19372951e+00,
7.23531911e-01, 4.37518304e-01, 2.64485666e-01, 1.60796088e-01,
9.89480811e-02, 6.04412219e-02, 3.65185979e-02, 2.19623243e-02,
1.32258018e-02, 7.93416769e-03, 4.78339789e-03, 2.88214767e-03,
1.73093911e-03, 1.02354034e-03]), 'model_counts_wt': array([1.87938031e+02, 1.27798191e+02, 8.49086144e+01, 5.55610414e+01,
3.58032846e+01, 2.27780755e+01, 1.41934724e+01, 8.73940611e+00,
5.32938367e+00, 3.22095911e+00, 1.94938643e+00, 1.19372951e+00,
7.23531911e-01, 4.37518304e-01, 2.64485666e-01, 1.60796088e-01,
9.89480811e-02, 6.04412219e-02, 3.65185979e-02, 2.19623243e-02,
1.32258018e-02, 7.93416769e-03, 4.78339789e-03, 2.88214767e-03,
1.73093911e-03, 1.02354034e-03]), 'covar': array([[0.07108201, 0.01224807],
[0.01224807, 0.02164026]]), 'model_flux': {'energies': array([2.99999133e+02, 3.49037461e+02, 4.06091671e+02, 4.72472050e+02,
5.49703071e+02, 6.39558395e+02, 7.44101611e+02, 8.65733625e+02,
1.00724780e+03, 1.17189410e+03, 1.36345374e+03, 1.58632602e+03,
1.84562936e+03, 2.14731882e+03, 2.49832292e+03, 2.90670269e+03,
3.38183686e+03, 3.93463720e+03, 4.57779916e+03, 5.32609337e+03,
6.19670492e+03, 7.20962801e+03, 8.38812508e+03, 9.75926113e+03,
1.13545252e+04, 1.32105537e+04, 1.53699715e+04, 1.78823711e+04,
2.08054514e+04, 2.42063430e+04, 2.81631498e+04, 3.27667423e+04,
3.81228452e+04, 4.43544652e+04, 5.16047155e+04, 6.00401030e+04,
6.98543522e+04, 8.12728539e+04, 9.45578417e+04, 1.10014415e+05,
1.27997543e+05, 1.48920221e+05, 1.73262954e+05, 2.01584787e+05,
2.34536152e+05, 2.72873799e+05, 3.17478177e+05, 3.69373656e+05,
4.29752052e+05, 4.99999995e+05]), 'log_energies': array([2.47712 , 2.54287204, 2.60862408, 2.67437612, 2.74012816,
2.8058802 , 2.87163224, 2.93738429, 3.00313633, 3.06888837,
3.13464041, 3.20039245, 3.26614449, 3.33189653, 3.39764857,
3.46340061, 3.52915265, 3.59490469, 3.66065673, 3.72640878,
3.79216082, 3.85791286, 3.9236649 , 3.98941694, 4.05516898,
4.12092102, 4.18667306, 4.2524251 , 4.31817714, 4.38392918,
4.44968122, 4.51543327, 4.58118531, 4.64693735, 4.71268939,
4.77844143, 4.84419347, 4.90994551, 4.97569755, 5.04144959,
5.10720163, 5.17295367, 5.23870571, 5.30445776, 5.3702098 ,
5.43596184, 5.50171388, 5.56746592, 5.63321796, 5.69897 ]), 'dnde': array([1.12489232e-11, 7.40558240e-12, 4.87536894e-12, 3.20963579e-12,
2.11302202e-12, 1.39108059e-12, 9.15799828e-13, 6.02904917e-13,
3.96914617e-13, 2.61303581e-13, 1.72025817e-13, 1.13250961e-13,
7.45572987e-14, 4.90838288e-14, 3.23137009e-14, 2.12733051e-14,
1.40050040e-14, 9.22001237e-15, 6.06987534e-15, 3.99602355e-15,
2.63073018e-15, 1.73190703e-15, 1.14017849e-15, 7.50621692e-16,
4.94162037e-16, 3.25325156e-16, 2.14173589e-16, 1.40998399e-16,
9.28244640e-17, 6.11097797e-17, 4.02308294e-17, 2.64854437e-17,
1.74363477e-17, 1.14789929e-17, 7.55704585e-18, 4.97508293e-18,
3.27528120e-18, 2.15623882e-18, 1.41953181e-18, 9.34530320e-19,
6.15235892e-19, 4.05032555e-19, 2.66647920e-19, 1.75544193e-19,
1.15567238e-19, 7.60821897e-20, 5.00877209e-20, 3.29746002e-20,
2.17083996e-20, 1.42914428e-20]), 'dnde_lo': array([9.42541935e-12, 6.28601230e-12, 4.18726143e-12, 2.78473178e-12,
1.84809299e-12, 1.22330361e-12, 8.07300529e-13, 5.31051459e-13,
3.48232120e-13, 2.27704694e-13, 1.48542452e-13, 9.67215312e-14,
6.28909582e-14, 4.08516786e-14, 2.65165442e-14, 1.72031199e-14,
1.11571763e-14, 7.23457506e-15, 4.69055606e-15, 3.04101653e-15,
1.97160209e-15, 1.27832997e-15, 8.28901224e-16, 5.37537003e-16,
3.48631754e-16, 2.26143366e-16, 1.46711109e-16, 9.51934745e-17,
6.17757900e-17, 4.00956848e-17, 2.60283044e-17, 1.68990907e-17,
1.09736217e-17, 7.12697997e-18, 4.62945125e-18, 3.00760828e-18,
1.95424966e-18, 1.27000368e-18, 8.25458301e-19, 5.36598613e-19,
3.48872854e-19, 2.26854285e-19, 1.47532570e-19, 9.59596976e-20,
6.24235978e-20, 4.06131439e-20, 2.64265972e-20, 1.71977506e-20,
1.11932645e-20, 7.28610753e-21]), 'dnde_hi': array([1.34252141e-11, 8.72455351e-12, 5.67655560e-12, 3.69937313e-12,
2.41592932e-12, 1.58186830e-12, 1.03888118e-12, 6.84480444e-13,
4.52402879e-13, 2.99860140e-13, 1.99221713e-13, 1.32605223e-13,
8.83877579e-14, 5.89748654e-14, 3.93782559e-14, 2.63064788e-14,
1.75797290e-14, 1.17503278e-14, 7.85480146e-15, 5.25094293e-15,
3.51021199e-15, 2.34642231e-15, 1.56834970e-15, 1.04817514e-15,
7.00441415e-16, 4.68006022e-16, 3.12657483e-16, 2.08843607e-16,
1.39478283e-16, 9.31373336e-17, 6.21830606e-17, 4.15098507e-17,
2.77051853e-17, 1.84885154e-17, 1.23360068e-17, 8.22961232e-18,
5.48930218e-18, 3.66090739e-18, 2.44115366e-18, 1.62756089e-18,
1.08496605e-18, 7.23157470e-19, 4.81935025e-19, 3.21132355e-19,
2.13954131e-19, 1.42527739e-19, 9.49338942e-20, 6.32247952e-20,
4.21016238e-20, 2.80321606e-20]), 'dnde_err': array([2.17629090e-12, 1.31897111e-12, 8.01186655e-13, 4.89737341e-13,
3.02907304e-13, 1.90787709e-13, 1.23081350e-13, 8.15755273e-14,
5.54882619e-14, 3.85565590e-14, 2.71958963e-14, 1.93542618e-14,
1.38304592e-14, 9.89103667e-15, 7.06455508e-15, 5.03317372e-15,
3.57472506e-15, 2.53031539e-15, 1.78492612e-15, 1.25491937e-15,
8.79481811e-16, 6.14515280e-16, 4.28171211e-16, 2.97553451e-16,
2.06279377e-16, 1.42680866e-16, 9.84838943e-17, 6.78452078e-17,
4.66538189e-17, 3.20275539e-17, 2.19522312e-17, 1.50244069e-17,
1.02688376e-17, 7.00952248e-18, 4.77896092e-18, 3.25452939e-18,
2.21402098e-18, 1.50466857e-18, 1.02162185e-18, 6.93030574e-19,
4.69730161e-19, 3.18124915e-19, 2.15287105e-19, 1.45588162e-19,
9.83868922e-20, 6.64455497e-20, 4.48461733e-20, 3.02501949e-20,
2.03932242e-20, 1.37407178e-20]), 'dnde_ferr': array([0.17778567, 0.1646421 , 0.15273656, 0.14248367, 0.13436593,
0.12887991, 0.12643628, 0.12724144, 0.13122565, 0.13806823,
0.14730133, 0.15842555, 0.17098795, 0.18461464, 0.19901329,
0.21396203, 0.22929493, 0.24488865, 0.2606516 , 0.27651569,
0.2924302 , 0.3083573 , 0.32426874, 0.34014347, 0.35596589,
0.37172449, 0.38741092, 0.40301923, 0.41854534, 0.43398658,
0.44934142, 0.46460917, 0.4797898 , 0.49488381, 0.50989207,
0.52481578, 0.53965634, 0.55441533, 0.56909446, 0.5836955 ,
0.5982203 , 0.61267073, 0.62704868, 0.64135604, 0.65559468,
0.66976645, 0.68387317, 0.69791664, 0.71189862, 0.72582081]), 'pivot_energy': 773.0524211788004}}}
5.250 nan nan 0.000
Running extension on source 3FGL J0040.3+4049
2026-07-17 22:07:02 INFO GTAnalysis._extension(): Fitting extended-source model.
2026-07-17 22:07:24 INFO GTAnalysis._extension(): Generating TS map.
2026-07-17 22:08:36 INFO GTAnalysis._extension(): Testing point-source model.
2026-07-17 22:08:39 INFO GTAnalysis._extension(): Best-fit extension: 2.2205 + nan - nan
2026-07-17 22:08:39 INFO GTAnalysis._extension(): TS_ext: 0.000
2026-07-17 22:08:39 INFO GTAnalysis._extension(): Extension UL: nan
2026-07-17 22:08:39 INFO GTAnalysis._extension(): LogLike: -246708.279 DeltaLogLike: 2.267
2026-07-17 22:08:39 INFO GTAnalysis.extension(): Finished extension fit.
2026-07-17 22:08:39 WARNING GTAnalysis.extension(): Saving maps in .npy files is disabled b/c of incompatibilities in python3, remove the maps from the /home/runner/work/fermipy/fermipy/fermipy-extra/notebooks/M31_data/3fgl_j0040.3+4049_ext.npy
2026-07-17 22:08:39 INFO GTAnalysis.extension(): Execution time: 134.19 s
2026-07-17 22:08:39 INFO GTAnalysis.print_model():
sourcename offset norm eflux index ts npred free
--------------------------------------------------------------------------------
3FGL J0042.5+4117 0.031 1.053 8.52e-07 2.58 30.07 324.2 *
3FGL J0040.3+4049 0.624 0.222 1.99e-06 1.77 73.87 149.1 *
3FGL J0049.0+4224 1.650 0.278 1.33e-06 1.63 29.89 61.4 *
3FGL J0048.0+3950 1.771 0.603 5.84e-06 1.94 545.61 728.3 *
3FGL J0039.1+4330 2.337 0.225 1.54e-06 1.89 62.65 169.0 *
3FGL J0032.5+3912 2.833 0.550 9.81e-07 2.45 46.83 318.7 *
3FGL J0102.3+4217 3.800 0.575 1.65e-06 2.73 126.19 692.1
3FGL J0041.9+3639 4.600 1.601 1.28e-06 2.19 70.10 260.1
3FGL J0105.3+3928 4.639 0.549 2.55e-06 2.23 215.82 582.0
3FGL J0023.5+4454 5.046 2.144 2.46e-06 2.45 220.86 792.9
3FGL J0102.1+4458 5.147 0.208 8.65e-07 1.72 16.48 55.1
3FGL J0022.7+4651 6.635 1.107 2.89e-07 5.00 4.97 128.0
isodiff --- 0.875 0.0389 2.12 924.97 31907.6 *
galdiff --- 1.096 0.229 0.02 6739.38 91244.0 *
2026-07-17 22:08:39 INFO GTAnalysis.free_source(): Fixing parameters for 3FGL J0042.5+4117 : ['Prefactor', 'Index']
2026-07-17 22:08:39 INFO GTAnalysis.free_source(): Fixing parameters for 3FGL J0040.3+4049 : ['Prefactor', 'Index']
2026-07-17 22:08:39 INFO GTAnalysis.free_source(): Fixing parameters for 3FGL J0049.0+4224 : ['Prefactor', 'Index']
2026-07-17 22:08:39 INFO GTAnalysis.free_source(): Fixing parameters for 3FGL J0048.0+3950 : ['Prefactor', 'Index']
2026-07-17 22:08:39 INFO GTAnalysis.free_source(): Fixing parameters for 3FGL J0039.1+4330 : ['Prefactor', 'Index']
2026-07-17 22:08:39 INFO GTAnalysis.free_source(): Fixing parameters for 3FGL J0032.5+3912 : ['Prefactor', 'Index']
2026-07-17 22:08:39 INFO GTAnalysis.free_source(): Fixing parameters for isodiff : ['Normalization']
2026-07-17 22:08:39 INFO GTAnalysis.free_source(): Fixing parameters for galdiff : ['Prefactor', 'Index']
2026-07-17 22:08:39 INFO GTAnalysis.print_model():
sourcename offset norm eflux index ts npred free
--------------------------------------------------------------------------------
3FGL J0042.5+4117 0.031 1.053 8.52e-07 2.58 30.07 324.2
3FGL J0040.3+4049 0.624 0.222 1.99e-06 1.77 73.87 149.1
3FGL J0049.0+4224 1.650 0.278 1.33e-06 1.63 29.89 61.4
3FGL J0048.0+3950 1.771 0.603 5.84e-06 1.94 545.61 728.3
3FGL J0039.1+4330 2.337 0.225 1.54e-06 1.89 62.65 169.0
3FGL J0032.5+3912 2.833 0.550 9.81e-07 2.45 46.83 318.7
3FGL J0102.3+4217 3.800 0.575 1.65e-06 2.73 126.19 692.1
3FGL J0041.9+3639 4.600 1.601 1.28e-06 2.19 70.10 260.1
3FGL J0105.3+3928 4.639 0.549 2.55e-06 2.23 215.82 582.0
3FGL J0023.5+4454 5.046 2.144 2.46e-06 2.45 220.86 792.9
3FGL J0102.1+4458 5.147 0.208 8.65e-07 1.72 16.48 55.1
3FGL J0022.7+4651 6.635 1.107 2.89e-07 5.00 4.97 128.0
isodiff --- 0.875 0.0389 2.12 924.97 31907.6
galdiff --- 1.096 0.229 0.02 6739.38 91244.0
2026-07-17 22:08:39 INFO GTAnalysis.free_source(): Freeing parameters for 3FGL J0049.0+4224 : ['Prefactor', 'Index']
2026-07-17 22:08:39 INFO GTAnalysis.free_source(): Freeing parameters for 3FGL J0042.5+4117 : ['Prefactor', 'Index']
2026-07-17 22:08:39 INFO GTAnalysis.free_source(): Freeing parameters for 3FGL J0039.1+4330 : ['Prefactor', 'Index']
2026-07-17 22:08:39 INFO GTAnalysis.free_source(): Freeing parameters for 3FGL J0040.3+4049 : ['Prefactor', 'Index']
2026-07-17 22:08:39 INFO GTAnalysis.free_source(): Freeing parameters for 3FGL J0102.3+4217 : ['Prefactor', 'Index']
2026-07-17 22:08:39 INFO GTAnalysis.free_source(): Freeing parameters for 3FGL J0048.0+3950 : ['Prefactor', 'Index']
2026-07-17 22:08:39 INFO GTAnalysis.free_source(): Freeing parameters for isodiff : ['Normalization']
2026-07-17 22:08:39 INFO GTAnalysis.free_source(): Freeing parameters for galdiff : ['Prefactor', 'Index']
2026-07-17 22:08:39 INFO GTAnalysis.print_model():
sourcename offset norm eflux index ts npred free
--------------------------------------------------------------------------------
3FGL J0042.5+4117 0.031 1.053 8.52e-07 2.58 30.07 324.2 *
3FGL J0040.3+4049 0.624 0.222 1.99e-06 1.77 73.87 149.1 *
3FGL J0049.0+4224 1.650 0.278 1.33e-06 1.63 29.89 61.4 *
3FGL J0048.0+3950 1.771 0.603 5.84e-06 1.94 545.61 728.3 *
3FGL J0039.1+4330 2.337 0.225 1.54e-06 1.89 62.65 169.0 *
3FGL J0032.5+3912 2.833 0.550 9.81e-07 2.45 46.83 318.7
3FGL J0102.3+4217 3.800 0.575 1.65e-06 2.73 126.19 692.1 *
3FGL J0041.9+3639 4.600 1.601 1.28e-06 2.19 70.10 260.1
3FGL J0105.3+3928 4.639 0.549 2.55e-06 2.23 215.82 582.0
3FGL J0023.5+4454 5.046 2.144 2.46e-06 2.45 220.86 792.9
3FGL J0102.1+4458 5.147 0.208 8.65e-07 1.72 16.48 55.1
3FGL J0022.7+4651 6.635 1.107 2.89e-07 5.00 4.97 128.0
isodiff --- 0.875 0.0389 2.12 924.97 31907.6 *
galdiff --- 1.096 0.229 0.02 6739.38 91244.0 *
2026-07-17 22:08:39 INFO GTAnalysis.extension(): Running extension fit for 3FGL J0049.0+4224
{'spatial_model': 'RadialGaussian', 'width': [], 'fit_position': False, 'width_min': 0.01, 'width_max': 5.0, 'width_nstep': 21, 'free_background': False, 'fix_shape': False, 'free_radius': None, 'fit_ebin': False, 'update': True, 'save_model_map': False, 'sqrt_ts_threshold': 3.0, 'psf_scale_fn': None, 'make_tsmap': True, 'tsmap_fitter': 'tsmap', 'make_plots': False, 'write_fits': True, 'write_npy': True, 'reoptimize': False, 'ra_format': 'hour', 'optimizer': {'optimizer': 'MINUIT', 'tol': 0.001, 'max_iter': 100, 'init_lambda': 0.0001, 'retries': 3, 'min_fit_quality': 2, 'verbosity': 0}, 'prefix': '', 'outfile': None, 'loge_bins': []}
{'spatial_model': 'RadialGaussian', 'width': [], 'fit_position': False, 'width_min': 0.01, 'width_max': 5.0, 'width_nstep': 21, 'free_background': False, 'fix_shape': False, 'free_radius': None, 'fit_ebin': False, 'update': True, 'save_model_map': False, 'sqrt_ts_threshold': 3.0, 'psf_scale_fn': None, 'make_tsmap': True, 'tsmap_fitter': 'tsmap', 'make_plots': False, 'write_fits': True, 'write_npy': True, 'reoptimize': False, 'ra_format': 'hour', 'optimizer': {'optimizer': 'MINUIT', 'tol': 0.001, 'max_iter': 100, 'init_lambda': 0.0001, 'retries': 3, 'min_fit_quality': 2, 'verbosity': 0}, 'prefix': '', 'outfile': None, 'loge_bins': []}
{'name': '3FGL J0040.3+4049', 'file': None, 'config': {'spatial_model': 'RadialGaussian', 'width': [], 'fit_position': False, 'width_min': 0.01, 'width_max': 5.0, 'width_nstep': 21, 'free_background': False, 'fix_shape': False, 'free_radius': None, 'fit_ebin': False, 'update': True, 'save_model_map': False, 'sqrt_ts_threshold': 3.0, 'psf_scale_fn': None, 'make_tsmap': True, 'tsmap_fitter': 'tsmap', 'make_plots': False, 'write_fits': True, 'write_npy': True, 'reoptimize': False, 'ra_format': 'hour', 'optimizer': {'optimizer': 'MINUIT', 'tol': 0.001, 'max_iter': 100, 'init_lambda': 0.0001, 'retries': 3, 'min_fit_quality': 2, 'verbosity': 0}, 'prefix': '', 'outfile': None, 'loge_bins': []}, 'width': array([0. , 0.01 , 0.01364421, 0.01861646, 0.02540069,
0.03465724, 0.04728708, 0.0645195 , 0.08803178, 0.12011244,
0.16388398, 0.2236068 , 0.30509388, 0.4162766 , 0.56797668,
0.77495949, 1.05737126, 1.44269991, 1.96845052, 2.68579588,
3.66455719, 5. ]), 'dloglike': array([ 2.91038305e-11, -1.80426287e-06, -7.29341991e-08, -2.01228831e-05,
8.81875167e-07, -9.94987204e-06, -5.68161195e-05, 1.03694038e-06,
-1.10781111e-05, -2.68295407e-05, 3.18133971e-07, -9.19800368e-06,
-6.50843140e-06, -7.62971467e-06, -1.20185723e-05, -2.54020852e-05,
1.34736183e-06, -4.78417496e-06, -1.08471431e-05, -1.55749149e-05,
-1.42307254e-05, -1.23260543e-05]), 'loglike': array([-246708.27890971, -246708.27891152, -246708.27890978,
-246708.27892983, -246708.27890883, -246708.27891966,
-246708.27896653, -246708.27890867, -246708.27892079,
-246708.27893654, -246708.27890939, -246708.27891891,
-246708.27891622, -246708.27891734, -246708.27892173,
-246708.27893511, -246708.27890836, -246708.2789145 ,
-246708.27892056, -246708.27892529, -246708.27892394,
-246708.27892204]), 'loglike_ptsrc': -246708.27890971102, 'loglike_ext': -246708.27890970738, 'loglike_init': -246710.5461160533, 'loglike_base': -246708.27890848217, 'ext': np.float64(2.2204796532251847), 'ext_err_hi': np.float64(nan), 'ext_err_lo': np.float64(nan), 'ext_err': nan, 'ext_ul95': nan, 'ts_ext': 7.275957614183426e-09, 'ebin_e_min': array([], dtype=float64), 'ebin_e_ctr': array([], dtype=float64), 'ebin_e_max': array([], dtype=float64), 'ebin_ext': array([], dtype=float64), 'ebin_ext_err': array([], dtype=float64), 'ebin_ext_err_hi': array([], dtype=float64), 'ebin_ext_err_lo': array([], dtype=float64), 'ebin_ext_ul95': array([], dtype=float64), 'ebin_ts_ext': array([], dtype=float64), 'ebin_dloglike': array([], shape=(0, 22), dtype=float64), 'ebin_loglike': array([], shape=(0, 22), dtype=float64), 'ebin_loglike_ptsrc': array([], dtype=float64), 'ebin_loglike_ext': array([], dtype=float64), 'ra': np.float64(10.105852037240465), 'dec': np.float64(40.82424797277884), 'glon': np.float64(120.68485932347974), 'glat': np.float64(-21.99943801302871), 'ra_err': nan, 'dec_err': nan, 'glon_err': nan, 'glat_err': nan, 'pos_offset': 0.0, 'pos_err': nan, 'pos_r68': nan, 'pos_r95': nan, 'pos_r99': nan, 'pos_err_semimajor': nan, 'pos_err_semiminor': nan, 'pos_angle': nan, 'tsmap': <gammapy.maps.wcs.ndmap.WcsNDMap object at 0x7f7860d58c50>, 'ptsrc_tot_map': None, 'ptsrc_src_map': None, 'ptsrc_bkg_map': None, 'ext_tot_map': None, 'ext_src_map': None, 'ext_bkg_map': None, 'source_fit': {'param_names': array([b'Prefactor', b'Index', b'Scale', b'', b'', b'', b'', b'', b'',
b''], dtype='|S32'), 'param_values': array([ 1.66402588e-16, -2.03957719e+00, 3.72019688e+04, nan,
nan, nan, nan, nan,
nan, nan]), 'param_errors': array([1.56774489e-16, 3.60303284e-01, nan, nan,
nan, nan, nan, nan,
nan, nan]), 'ts': np.float64(89.70959738048259), 'loglike': np.float64(-246708.27890970738), 'loglike_scan': array([-246753.1337084 , -246710.98784896, -246710.31013136,
-246709.7417035 , -246709.27537793, -246708.90486817,
-246708.62463231, -246708.42975023, -246708.31582605,
-246708.27890971, -246708.30924969, -246708.39799791,
-246708.54290043, -246708.74187927, -246708.99301268,
-246709.29451825, -246709.64473829, -246710.04212727,
-246710.48524074, -246710.97272574]), 'dloglike_scan': array([-4.48547987e+01, -2.70893925e+00, -2.03122165e+00, -1.46279380e+00,
-9.96468223e-01, -6.25958464e-01, -3.45722603e-01, -1.50840520e-01,
-3.69163433e-02, 0.00000000e+00, -3.03399850e-02, -1.19088200e-01,
-2.63990719e-01, -4.62969560e-01, -7.14102974e-01, -1.01560854e+00,
-1.36582859e+00, -1.76321756e+00, -2.20633103e+00, -2.69381604e+00]), 'eflux_scan': array([0.00000000e+00, 1.16377735e-06, 1.24226953e-06, 1.32076171e-06,
1.39925389e-06, 1.47774607e-06, 1.55623825e-06, 1.63473043e-06,
1.71322262e-06, 1.79171480e-06, 1.86317180e-06, 1.93462880e-06,
2.00608579e-06, 2.07754279e-06, 2.14899979e-06, 2.22045679e-06,
2.29191379e-06, 2.36337079e-06, 2.43482779e-06, 2.50628479e-06]), 'flux_scan': array([0.00000000e+00, 5.80489192e-10, 6.19640893e-10, 6.58792594e-10,
6.97944295e-10, 7.37095997e-10, 7.76247698e-10, 8.15399399e-10,
8.54551100e-10, 8.93702801e-10, 9.29345372e-10, 9.64987942e-10,
1.00063051e-09, 1.03627308e-09, 1.07191565e-09, 1.10755822e-09,
1.14320079e-09, 1.17884336e-09, 1.21448593e-09, 1.25012850e-09]), 'norm_scan': array([0. , 0.10808392, 0.11537376, 0.12266359, 0.12995342,
0.13724325, 0.14453309, 0.15182292, 0.15911275, 0.16640259,
0.17303904, 0.17967549, 0.18631194, 0.1929484 , 0.19958485,
0.2062213 , 0.21285775, 0.21949421, 0.22613066, 0.23276711]), 'npred': 278.2847360399949, 'npred_wt': 278.2847360399949, 'pivot_energy': 2832.2948137270164, 'flux': 8.937028012272954e-10, 'flux100': 2.8011102053595924e-09, 'flux1000': 2.550533560318196e-10, 'flux10000': 2.269430716530733e-11, 'flux_err': np.float64(4.382639928802616e-10), 'flux100_err': np.float64(2.4456840837108817e-09), 'flux1000_err': np.float64(4.2098226027782734e-11), 'flux10000_err': np.float64(1.7766968882053142e-11), 'flux_ul95': 1.1418435463274268e-09, 'flux100_ul95': 3.57885149979326e-09, 'flux1000_ul95': 3.2587010822182246e-10, 'flux10000_ul95': 2.8995487246422887e-11, 'eflux': 1.7917147966085307e-06, 'eflux100': 2.0085889484564663e-06, 'eflux1000': 1.3679610757607823e-06, 'eflux10000': 7.831329823292228e-07, 'eflux_err': np.float64(8.77915771315792e-07), 'eflux100_err': np.float64(4.717339746729336e-07), 'eflux1000_err': np.float64(8.802974452419789e-07), 'eflux10000_err': np.float64(8.419324338822244e-07), 'eflux_ul95': 2.289192754635316e-06, 'eflux100_ul95': 2.566283024815434e-06, 'eflux1000_ul95': 1.7477818395998426e-06, 'eflux10000_ul95': 1.0005735022434475e-06, 'dnde': 3.178917272201521e-14, 'dnde100': 2.9109027818831954e-11, 'dnde1000': 2.657360714556429e-13, 'dnde10000': 2.4259023733865158e-15, 'dnde_err': np.float64(5.139593894179778e-15), 'dnde100_err': np.float64(3.5374894166630226e-11), 'dnde1000_err': np.float64(1.0847503885719714e-13), 'dnde10000_err': np.float64(1.1709539126743192e-15), 'dnde_index': np.float64(2.0395771908877145), 'dnde100_index': np.float64(2.0395771908766123), 'dnde1000_index': np.float64(2.0395771908877145), 'dnde10000_index': np.float64(2.0395771909099176), 'name': '3FGL J0040.3+4049', 'spectral_pars': {'Prefactor': {'name': 'Prefactor', 'value': 0.16640258771885413, 'error': 0.1567744894715768, 'min': 1e-05, 'max': 1000.0, 'free': True, 'scale': 1e-15}, 'Index': {'name': 'Index', 'value': 2.0395771908799327, 'error': 0.3603032841705773, 'min': 0.0, 'max': 5.0, 'free': True, 'scale': -1.0}, 'Scale': {'name': 'Scale', 'value': 37201.96875, 'error': nan, 'min': 37201.96875, 'max': 37201.96875, 'free': False, 'scale': 1.0}}, 'model_counts': array([5.72116842e+01, 4.77769290e+01, 3.90433993e+01, 3.14302703e+01,
2.49041120e+01, 1.94224807e+01, 1.48272970e+01, 1.11715382e+01,
8.34277334e+00, 6.17711227e+00, 4.59255559e+00, 3.45335366e+00,
2.57101978e+00, 1.91067678e+00, 1.41952119e+00, 1.06173091e+00,
8.03030367e-01, 6.02576009e-01, 4.47499594e-01, 3.30840094e-01,
2.44866365e-01, 1.80629374e-01, 1.33867478e-01, 9.91172721e-02,
7.30382201e-02, 5.28169418e-02]), 'model_counts_wt': array([5.72116842e+01, 4.77769290e+01, 3.90433993e+01, 3.14302703e+01,
2.49041120e+01, 1.94224807e+01, 1.48272970e+01, 1.11715382e+01,
8.34277334e+00, 6.17711227e+00, 4.59255559e+00, 3.45335366e+00,
2.57101978e+00, 1.91067678e+00, 1.41952119e+00, 1.06173091e+00,
8.03030367e-01, 6.02576009e-01, 4.47499594e-01, 3.30840094e-01,
2.44866365e-01, 1.80629374e-01, 1.33867478e-01, 9.91172721e-02,
7.30382201e-02, 5.28169418e-02]), 'covar': array([[ 0.02457824, -0.05564842],
[-0.05564842, 0.12981846]]), 'model_flux': {'energies': array([2.99999133e+02, 3.49037461e+02, 4.06091671e+02, 4.72472050e+02,
5.49703071e+02, 6.39558395e+02, 7.44101611e+02, 8.65733625e+02,
1.00724780e+03, 1.17189410e+03, 1.36345374e+03, 1.58632602e+03,
1.84562936e+03, 2.14731882e+03, 2.49832292e+03, 2.90670269e+03,
3.38183686e+03, 3.93463720e+03, 4.57779916e+03, 5.32609337e+03,
6.19670492e+03, 7.20962801e+03, 8.38812508e+03, 9.75926113e+03,
1.13545252e+04, 1.32105537e+04, 1.53699715e+04, 1.78823711e+04,
2.08054514e+04, 2.42063430e+04, 2.81631498e+04, 3.27667423e+04,
3.81228452e+04, 4.43544652e+04, 5.16047155e+04, 6.00401030e+04,
6.98543522e+04, 8.12728539e+04, 9.45578417e+04, 1.10014415e+05,
1.27997543e+05, 1.48920221e+05, 1.73262954e+05, 2.01584787e+05,
2.34536152e+05, 2.72873799e+05, 3.17478177e+05, 3.69373656e+05,
4.29752052e+05, 4.99999995e+05]), 'log_energies': array([2.47712 , 2.54287204, 2.60862408, 2.67437612, 2.74012816,
2.8058802 , 2.87163224, 2.93738429, 3.00313633, 3.06888837,
3.13464041, 3.20039245, 3.26614449, 3.33189653, 3.39764857,
3.46340061, 3.52915265, 3.59490469, 3.66065673, 3.72640878,
3.79216082, 3.85791286, 3.9236649 , 3.98941694, 4.05516898,
4.12092102, 4.18667306, 4.2524251 , 4.31817714, 4.38392918,
4.44968122, 4.51543327, 4.58118531, 4.64693735, 4.71268939,
4.77844143, 4.84419347, 4.90994551, 4.97569755, 5.04144959,
5.10720163, 5.17295367, 5.23870571, 5.30445776, 5.3702098 ,
5.43596184, 5.50171388, 5.56746592, 5.63321796, 5.69897 ]), 'dnde': array([3.09673920e-12, 2.27404089e-12, 1.66990554e-12, 1.22626842e-12,
9.00490594e-13, 6.61260861e-13, 4.85586334e-13, 3.56582555e-13,
2.61850695e-13, 1.92285868e-13, 1.41202051e-13, 1.03689467e-13,
7.61427012e-14, 5.59141744e-14, 4.10596794e-14, 3.01515187e-14,
2.21412853e-14, 1.62590986e-14, 1.19396090e-14, 8.76766082e-15,
6.43839145e-15, 4.72792975e-15, 3.47187957e-15, 2.54951922e-15,
1.87219865e-15, 1.37481912e-15, 1.00957643e-15, 7.41366297e-16,
5.44410479e-16, 3.99779125e-16, 2.93571405e-16, 2.15579464e-16,
1.58307330e-16, 1.16250455e-16, 8.53666620e-17, 6.26876424e-17,
4.60336673e-17, 3.38040871e-17, 2.48234905e-17, 1.82287331e-17,
1.33859785e-17, 9.82977916e-18, 7.21834106e-18, 5.30067327e-18,
3.89246461e-18, 2.85836911e-18, 2.09899763e-18, 1.54136533e-18,
1.13187697e-18, 8.31175741e-19]), 'dnde_lo': array([1.69719268e-12, 1.28389298e-12, 9.72027630e-13, 7.36530382e-13,
5.58562658e-13, 4.23958708e-13, 3.22060384e-13, 2.44843459e-13,
1.86262154e-13, 1.41756965e-13, 1.07884630e-13, 8.20394701e-14,
6.22437462e-14, 4.69935334e-14, 3.51597901e-14, 2.59487629e-14,
1.88605187e-14, 1.35426117e-14, 9.65214575e-15, 6.85313860e-15,
4.85774927e-15, 3.44172499e-15, 2.43889196e-15, 1.72916256e-15,
1.22683673e-15, 8.71136706e-16, 6.19087915e-16, 4.40341052e-16,
3.13468034e-16, 2.23334754e-16, 1.59245586e-16, 1.13635546e-16,
8.11491060e-17, 5.79913080e-17, 4.14704496e-17, 2.96755412e-17,
2.12486071e-17, 1.52237822e-17, 1.09134947e-17, 7.82787289e-18,
5.61761963e-18, 4.03348148e-18, 2.89746375e-18, 2.08236896e-18,
1.49723874e-18, 1.07698721e-18, 7.75012962e-19, 5.57929751e-19,
4.01805400e-19, 2.89475366e-19]), 'dnde_hi': array([5.65038596e-12, 4.02779830e-12, 2.86883257e-12, 2.04164590e-12,
1.45173205e-12, 1.03138801e-12, 7.32142478e-13, 5.19315972e-13,
3.68114429e-13, 2.60825668e-13, 1.84808710e-13, 1.31052840e-13,
9.31452763e-14, 6.65281938e-14, 4.79495830e-14, 3.50349679e-14,
2.59927377e-14, 1.95204805e-14, 1.47691784e-14, 1.12170322e-14,
8.53335199e-15, 6.49480125e-15, 4.94238694e-15, 3.75907297e-15,
2.85704501e-15, 2.16972561e-15, 1.64636482e-15, 1.24817794e-15,
9.45495991e-16, 7.15622384e-16, 5.41202880e-16, 4.08978591e-16,
3.08829168e-16, 2.33037826e-16, 1.75726742e-16, 1.32423550e-16,
9.97288204e-17, 7.50612619e-17, 5.64627278e-17, 4.24491705e-17,
3.18968589e-17, 2.39556222e-17, 1.79827781e-17, 1.34928717e-17,
1.01194822e-17, 7.58623122e-18, 5.68479658e-18, 4.25825485e-18,
3.18847249e-18, 2.38656961e-18]), 'dnde_err': array([2.55364676e-12, 1.75375741e-12, 1.19892703e-12, 8.15377482e-13,
5.51241454e-13, 3.70127145e-13, 2.46556144e-13, 1.62733417e-13,
1.06263734e-13, 6.85397998e-14, 4.36066586e-14, 2.73633732e-14,
1.70025752e-14, 1.06140194e-14, 6.88990358e-15, 4.88344928e-15,
3.85145240e-15, 3.26138187e-15, 2.82956939e-15, 2.44937135e-15,
2.09496055e-15, 1.76687149e-15, 1.47050737e-15, 1.20955375e-15,
9.84846368e-16, 7.94906486e-16, 6.36788391e-16, 5.06811641e-16,
4.01085512e-16, 3.15843258e-16, 2.47631475e-16, 1.93399127e-16,
1.50521837e-16, 1.16787371e-16, 9.03600797e-17, 6.97359075e-17,
5.36951531e-17, 4.12571748e-17, 3.16392373e-17, 2.42204374e-17,
1.85108804e-17, 1.41258430e-17, 1.07644371e-17, 8.19219839e-18,
6.22701756e-18, 4.72786211e-18, 3.58579896e-18, 2.71688952e-18,
2.05659553e-18, 1.55539387e-18]), 'dnde_ferr': array([0.63828321, 0.60331046, 0.56793779, 0.5321492 , 0.49593488,
0.45929627, 0.42225457, 0.38486531, 0.34724421, 0.30961376,
0.27239009, 0.23634691, 0.20291853, 0.17468433, 0.15574638,
0.15067574, 0.16106154, 0.18383149, 0.21428812, 0.24886305,
0.28544418, 0.32287665, 0.36053886, 0.39809671, 0.43537268,
0.47227627, 0.50876629, 0.54482979, 0.58047005, 0.61569952,
0.65053559, 0.6849981 , 0.71910777, 0.7528853 , 0.78635084,
0.81952363, 0.85242191, 0.8850628 , 0.91746229, 0.94963532,
0.98159575, 1.01335647, 1.04492945, 1.07632579, 1.10755579,
1.13862901, 1.16955435, 1.20034006, 1.23099382, 1.26152277]), 'pivot_energy': 2832.2948137270164}}}
2.220 nan nan 0.000
Running extension on source 3FGL J0049.0+4224
2026-07-17 22:09:17 INFO GTAnalysis._extension(): Fitting extended-source model.
2026-07-17 22:09:38 INFO GTAnalysis._extension(): Generating TS map.
2026-07-17 22:09:48 INFO GTAnalysis._extension(): Testing point-source model.
/home/runner/work/fermipy/fermipy/fermipy/extension.py:314: RuntimeWarning: invalid value encountered in sqrt
np.sqrt(o['ts_ext']) > sqrt_ts_threshold):
2026-07-17 22:09:50 INFO GTAnalysis._extension(): Best-fit extension: 0.8057 + nan - nan
2026-07-17 22:09:50 INFO GTAnalysis._extension(): TS_ext: -0.000
2026-07-17 22:09:50 INFO GTAnalysis._extension(): Extension UL: nan
2026-07-17 22:09:50 INFO GTAnalysis._extension(): LogLike: -246709.654 DeltaLogLike: 0.736
2026-07-17 22:09:50 INFO GTAnalysis.extension(): Finished extension fit.
2026-07-17 22:09:50 WARNING GTAnalysis.extension(): Saving maps in .npy files is disabled b/c of incompatibilities in python3, remove the maps from the /home/runner/work/fermipy/fermipy/fermipy-extra/notebooks/M31_data/3fgl_j0049.0+4224_ext.npy
2026-07-17 22:09:50 INFO GTAnalysis.extension(): Execution time: 71.72 s
2026-07-17 22:09:50 INFO GTAnalysis.print_model():
sourcename offset norm eflux index ts npred free
--------------------------------------------------------------------------------
3FGL J0042.5+4117 0.031 1.053 8.52e-07 2.58 30.07 324.2 *
3FGL J0040.3+4049 0.624 0.222 1.99e-06 1.77 73.87 149.1 *
3FGL J0049.0+4224 1.650 0.278 1.33e-06 1.63 29.89 61.4 *
3FGL J0048.0+3950 1.771 0.603 5.84e-06 1.94 545.61 728.3 *
3FGL J0039.1+4330 2.337 0.225 1.54e-06 1.89 62.65 169.0 *
3FGL J0032.5+3912 2.833 0.550 9.81e-07 2.45 46.83 318.7
3FGL J0102.3+4217 3.800 0.575 1.65e-06 2.73 126.19 692.1 *
3FGL J0041.9+3639 4.600 1.601 1.28e-06 2.19 70.10 260.1
3FGL J0105.3+3928 4.639 0.549 2.55e-06 2.23 215.82 582.0
3FGL J0023.5+4454 5.046 2.144 2.46e-06 2.45 220.86 792.9
3FGL J0102.1+4458 5.147 0.208 8.65e-07 1.72 16.48 55.1
3FGL J0022.7+4651 6.635 1.107 2.89e-07 5.00 4.97 128.0
isodiff --- 0.875 0.0389 2.12 924.97 31907.6 *
galdiff --- 1.096 0.229 0.02 6739.38 91244.0 *
2026-07-17 22:09:50 INFO GTAnalysis.free_source(): Fixing parameters for 3FGL J0042.5+4117 : ['Prefactor', 'Index']
2026-07-17 22:09:50 INFO GTAnalysis.free_source(): Fixing parameters for 3FGL J0040.3+4049 : ['Prefactor', 'Index']
2026-07-17 22:09:50 INFO GTAnalysis.free_source(): Fixing parameters for 3FGL J0049.0+4224 : ['Prefactor', 'Index']
2026-07-17 22:09:50 INFO GTAnalysis.free_source(): Fixing parameters for 3FGL J0048.0+3950 : ['Prefactor', 'Index']
2026-07-17 22:09:50 INFO GTAnalysis.free_source(): Fixing parameters for 3FGL J0039.1+4330 : ['Prefactor', 'Index']
2026-07-17 22:09:50 INFO GTAnalysis.free_source(): Fixing parameters for 3FGL J0102.3+4217 : ['Prefactor', 'Index']
2026-07-17 22:09:50 INFO GTAnalysis.free_source(): Fixing parameters for isodiff : ['Normalization']
2026-07-17 22:09:50 INFO GTAnalysis.free_source(): Fixing parameters for galdiff : ['Prefactor', 'Index']
2026-07-17 22:09:50 INFO GTAnalysis.print_model():
sourcename offset norm eflux index ts npred free
--------------------------------------------------------------------------------
3FGL J0042.5+4117 0.031 1.053 8.52e-07 2.58 30.07 324.2
3FGL J0040.3+4049 0.624 0.222 1.99e-06 1.77 73.87 149.1
3FGL J0049.0+4224 1.650 0.278 1.33e-06 1.63 29.89 61.4
3FGL J0048.0+3950 1.771 0.603 5.84e-06 1.94 545.61 728.3
3FGL J0039.1+4330 2.337 0.225 1.54e-06 1.89 62.65 169.0
3FGL J0032.5+3912 2.833 0.550 9.81e-07 2.45 46.83 318.7
3FGL J0102.3+4217 3.800 0.575 1.65e-06 2.73 126.19 692.1
3FGL J0041.9+3639 4.600 1.601 1.28e-06 2.19 70.10 260.1
3FGL J0105.3+3928 4.639 0.549 2.55e-06 2.23 215.82 582.0
3FGL J0023.5+4454 5.046 2.144 2.46e-06 2.45 220.86 792.9
3FGL J0102.1+4458 5.147 0.208 8.65e-07 1.72 16.48 55.1
3FGL J0022.7+4651 6.635 1.107 2.89e-07 5.00 4.97 128.0
isodiff --- 0.875 0.0389 2.12 924.97 31907.6
galdiff --- 1.096 0.229 0.02 6739.38 91244.0
2026-07-17 22:09:50 INFO GTAnalysis.free_source(): Freeing parameters for 3FGL J0048.0+3950 : ['Prefactor', 'Index']
2026-07-17 22:09:50 INFO GTAnalysis.free_source(): Freeing parameters for 3FGL J0040.3+4049 : ['Prefactor', 'Index']
2026-07-17 22:09:50 INFO GTAnalysis.free_source(): Freeing parameters for 3FGL J0042.5+4117 : ['Prefactor', 'Index']
2026-07-17 22:09:50 INFO GTAnalysis.free_source(): Freeing parameters for 3FGL J0049.0+4224 : ['Prefactor', 'Index']
2026-07-17 22:09:50 INFO GTAnalysis.free_source(): Freeing parameters for 3FGL J0032.5+3912 : ['Prefactor', 'Index']
2026-07-17 22:09:50 INFO GTAnalysis.free_source(): Freeing parameters for isodiff : ['Normalization']
2026-07-17 22:09:50 INFO GTAnalysis.free_source(): Freeing parameters for galdiff : ['Prefactor', 'Index']
2026-07-17 22:09:50 INFO GTAnalysis.print_model():
sourcename offset norm eflux index ts npred free
--------------------------------------------------------------------------------
3FGL J0042.5+4117 0.031 1.053 8.52e-07 2.58 30.07 324.2 *
3FGL J0040.3+4049 0.624 0.222 1.99e-06 1.77 73.87 149.1 *
3FGL J0049.0+4224 1.650 0.278 1.33e-06 1.63 29.89 61.4 *
3FGL J0048.0+3950 1.771 0.603 5.84e-06 1.94 545.61 728.3 *
3FGL J0039.1+4330 2.337 0.225 1.54e-06 1.89 62.65 169.0
3FGL J0032.5+3912 2.833 0.550 9.81e-07 2.45 46.83 318.7 *
3FGL J0102.3+4217 3.800 0.575 1.65e-06 2.73 126.19 692.1
3FGL J0041.9+3639 4.600 1.601 1.28e-06 2.19 70.10 260.1
3FGL J0105.3+3928 4.639 0.549 2.55e-06 2.23 215.82 582.0
3FGL J0023.5+4454 5.046 2.144 2.46e-06 2.45 220.86 792.9
3FGL J0102.1+4458 5.147 0.208 8.65e-07 1.72 16.48 55.1
3FGL J0022.7+4651 6.635 1.107 2.89e-07 5.00 4.97 128.0
isodiff --- 0.875 0.0389 2.12 924.97 31907.6 *
galdiff --- 1.096 0.229 0.02 6739.38 91244.0 *
2026-07-17 22:09:50 INFO GTAnalysis.extension(): Running extension fit for 3FGL J0048.0+3950
{'spatial_model': 'RadialGaussian', 'width': [], 'fit_position': False, 'width_min': 0.01, 'width_max': 5.0, 'width_nstep': 21, 'free_background': False, 'fix_shape': False, 'free_radius': None, 'fit_ebin': False, 'update': True, 'save_model_map': False, 'sqrt_ts_threshold': 3.0, 'psf_scale_fn': None, 'make_tsmap': True, 'tsmap_fitter': 'tsmap', 'make_plots': False, 'write_fits': True, 'write_npy': True, 'reoptimize': False, 'ra_format': 'hour', 'optimizer': {'optimizer': 'MINUIT', 'tol': 0.001, 'max_iter': 100, 'init_lambda': 0.0001, 'retries': 3, 'min_fit_quality': 2, 'verbosity': 0}, 'prefix': '', 'outfile': None, 'loge_bins': []}
{'spatial_model': 'RadialGaussian', 'width': [], 'fit_position': False, 'width_min': 0.01, 'width_max': 5.0, 'width_nstep': 21, 'free_background': False, 'fix_shape': False, 'free_radius': None, 'fit_ebin': False, 'update': True, 'save_model_map': False, 'sqrt_ts_threshold': 3.0, 'psf_scale_fn': None, 'make_tsmap': True, 'tsmap_fitter': 'tsmap', 'make_plots': False, 'write_fits': True, 'write_npy': True, 'reoptimize': False, 'ra_format': 'hour', 'optimizer': {'optimizer': 'MINUIT', 'tol': 0.001, 'max_iter': 100, 'init_lambda': 0.0001, 'retries': 3, 'min_fit_quality': 2, 'verbosity': 0}, 'prefix': '', 'outfile': None, 'loge_bins': []}
{'name': '3FGL J0049.0+4224', 'file': None, 'config': {'spatial_model': 'RadialGaussian', 'width': [], 'fit_position': False, 'width_min': 0.01, 'width_max': 5.0, 'width_nstep': 21, 'free_background': False, 'fix_shape': False, 'free_radius': None, 'fit_ebin': False, 'update': True, 'save_model_map': False, 'sqrt_ts_threshold': 3.0, 'psf_scale_fn': None, 'make_tsmap': True, 'tsmap_fitter': 'tsmap', 'make_plots': False, 'write_fits': True, 'write_npy': True, 'reoptimize': False, 'ra_format': 'hour', 'optimizer': {'optimizer': 'MINUIT', 'tol': 0.001, 'max_iter': 100, 'init_lambda': 0.0001, 'retries': 3, 'min_fit_quality': 2, 'verbosity': 0}, 'prefix': '', 'outfile': None, 'loge_bins': []}, 'width': array([0. , 0.01 , 0.01364421, 0.01861646, 0.02540069,
0.03465724, 0.04728708, 0.0645195 , 0.08803178, 0.12011244,
0.16388398, 0.2236068 , 0.30509388, 0.4162766 , 0.56797668,
0.77495949, 1.05737126, 1.44269991, 1.96845052, 2.68579588,
3.66455719, 5. ]), 'dloglike': array([1.16997398e-08, 1.17253803e-05, 1.21587072e-05, 8.19275738e-06,
9.58779128e-06, 1.17532327e-05, 1.06144580e-05, 1.15149887e-05,
1.11157424e-05, 1.14709255e-05, 1.14321010e-05, 1.15618459e-05,
1.15242728e-05, 1.13277929e-05, 1.09943212e-05, 1.05897197e-05,
1.47963874e-07, 1.27361272e-05, 1.28097017e-05, 1.28361280e-05,
1.28361280e-05, 1.28361280e-05]), 'loglike': array([-246709.65428477, -246709.65427305, -246709.65427262,
-246709.65427659, -246709.65427519, -246709.65427303,
-246709.65427417, -246709.65427327, -246709.65427366,
-246709.65427331, -246709.65427335, -246709.65427322,
-246709.65427326, -246709.65427345, -246709.65427379,
-246709.65427419, -246709.65428463, -246709.65427204,
-246709.65427197, -246709.65427194, -246709.65427194,
-246709.65427194]), 'loglike_ptsrc': -246709.65428478003, 'loglike_ext': -246709.65429358906, 'loglike_init': -246710.3906310771, 'loglike_base': -246709.65427386417, 'ext': np.float64(0.8057387651455314), 'ext_err_hi': np.float64(nan), 'ext_err_lo': np.float64(nan), 'ext_err': nan, 'ext_ul95': nan, 'ts_ext': -1.761806197464466e-05, 'ebin_e_min': array([], dtype=float64), 'ebin_e_ctr': array([], dtype=float64), 'ebin_e_max': array([], dtype=float64), 'ebin_ext': array([], dtype=float64), 'ebin_ext_err': array([], dtype=float64), 'ebin_ext_err_hi': array([], dtype=float64), 'ebin_ext_err_lo': array([], dtype=float64), 'ebin_ext_ul95': array([], dtype=float64), 'ebin_ts_ext': array([], dtype=float64), 'ebin_dloglike': array([], shape=(0, 22), dtype=float64), 'ebin_loglike': array([], shape=(0, 22), dtype=float64), 'ebin_loglike_ptsrc': array([], dtype=float64), 'ebin_loglike_ext': array([], dtype=float64), 'ra': np.float64(12.289254134304022), 'dec': np.float64(42.40732171128464), 'glon': np.float64(122.48253653285066), 'glat': np.float64(-20.462435654224535), 'ra_err': nan, 'dec_err': nan, 'glon_err': nan, 'glat_err': nan, 'pos_offset': 0.0, 'pos_err': nan, 'pos_r68': nan, 'pos_r95': nan, 'pos_r99': nan, 'pos_err_semimajor': nan, 'pos_err_semiminor': nan, 'pos_angle': nan, 'tsmap': <gammapy.maps.wcs.ndmap.WcsNDMap object at 0x7f7855eb5a50>, 'ptsrc_tot_map': None, 'ptsrc_src_map': None, 'ptsrc_bkg_map': None, 'ext_tot_map': None, 'ext_src_map': None, 'ext_bkg_map': None, 'source_fit': {'param_names': array([b'Prefactor', b'Index', b'Scale', b'', b'', b'', b'', b'', b'',
b''], dtype='|S32'), 'param_values': array([ 3.70256537e-15, -1.78856865e+00, 6.05986719e+03, nan,
nan, nan, nan, nan,
nan, nan]), 'param_errors': array([9.64223397e-16, 1.67231963e-01, nan, nan,
nan, nan, nan, nan,
nan, nan]), 'ts': np.float64(36.47863786574453), 'loglike': np.float64(-246709.65429358906), 'loglike_scan': array([-246727.89361252, -246712.36024493, -246711.64103156,
-246711.05859481, -246710.59503912, -246710.23637535,
-246709.97139489, -246709.79093425, -246709.68737518,
-246709.65429359, -246709.68713251, -246709.78194972,
-246709.93445554, -246710.14089098, -246710.39793747,
-246710.70264568, -246711.05237867, -246711.44476599,
-246711.87766621, -246712.34913608]), 'dloglike_scan': array([-18.23931893, -2.70595134, -1.98673797, -1.40430122,
-0.94074553, -0.58208176, -0.3171013 , -0.13664066,
-0.03308159, 0. , -0.03283892, -0.12765613,
-0.28016195, -0.48659739, -0.74364388, -1.04835209,
-1.39808508, -1.7904724 , -2.22337262, -2.69484249]), 'eflux_scan': array([0.00000000e+00, 6.07304301e-07, 6.93169401e-07, 7.79034502e-07,
8.64899603e-07, 9.50764704e-07, 1.03662980e-06, 1.12249491e-06,
1.20836001e-06, 1.29422511e-06, 1.38134851e-06, 1.46847192e-06,
1.55559533e-06, 1.64271874e-06, 1.72984215e-06, 1.81696555e-06,
1.90408896e-06, 1.99121237e-06, 2.07833578e-06, 2.16545919e-06]), 'flux_scan': array([0.00000000e+00, 1.42478527e-10, 1.62623178e-10, 1.82767829e-10,
2.02912480e-10, 2.23057131e-10, 2.43201782e-10, 2.63346433e-10,
2.83491083e-10, 3.03635734e-10, 3.24075594e-10, 3.44515454e-10,
3.64955314e-10, 3.85395174e-10, 4.05835034e-10, 4.26274894e-10,
4.46714754e-10, 4.67154614e-10, 4.87594474e-10, 5.08034334e-10]), 'norm_scan': array([0. , 0.17373978, 0.19830438, 0.22286897, 0.24743356,
0.27199816, 0.29656275, 0.32112735, 0.34569194, 0.37025654,
0.39518111, 0.42010569, 0.44503026, 0.46995484, 0.49487941,
0.51980399, 0.54472857, 0.56965314, 0.59457772, 0.61950229]), 'npred': 100.5442951165582, 'npred_wt': 100.5442951165582, 'pivot_energy': 5914.451009390775, 'flux': 3.036357342435125e-10, 'flux100': 7.229604958208748e-10, 'flux1000': 1.1656414988193332e-10, 'flux10000': 1.7911283229675063e-11, 'flux_err': np.float64(1.1832525156440125e-10), 'flux100_err': np.float64(3.8994624995686385e-10), 'flux1000_err': np.float64(3.2325232310443495e-11), 'flux10000_err': np.float64(6.582016643220005e-12), 'flux_ul95': 4.442568495269374e-10, 'flux100_ul95': 1.0577811370127848e-09, 'flux1000_ul95': 1.7054785110636186e-10, 'flux10000_ul95': 2.6206435413226152e-11, 'eflux': 1.294225106698746e-06, 'eflux100': 1.2138996274537487e-06, 'eflux1000': 1.0445379010881264e-06, 'eflux10000': 7.68976265953853e-07, 'eflux_err': np.float64(4.926078289229116e-07), 'eflux100_err': np.float64(3.8034329752890084e-07), 'eflux1000_err': np.float64(3.9894317825796837e-07), 'eflux10000_err': np.float64(3.7445070442789646e-07), 'eflux_ul95': 1.8936123243634146e-06, 'eflux100_ul95': 1.7760861562559916e-06, 'eflux1000_ul95': 1.5282888830757113e-06, 'eflux10000_ul95': 1.125107932782607e-06, 'dnde': 3.866960630790512e-15, 'dnde100': 5.709004250526712e-12, 'dnde1000': 9.289486679483182e-14, 'dnde10000': 1.511551909605497e-15, 'dnde_err': np.float64(1.0069119577046367e-15), 'dnde100_err': np.float64(4.169223934428117e-12), 'dnde1000_err': np.float64(3.6707529333980495e-14), 'dnde10000_err': np.float64(4.1538329381949875e-16), 'dnde_index': np.float64(1.788568650031824), 'dnde100_index': np.float64(1.788568650031824), 'dnde1000_index': np.float64(1.788568650031824), 'dnde10000_index': np.float64(1.7885686500540279), 'name': '3FGL J0049.0+4224', 'spectral_pars': {'Prefactor': {'name': 'Prefactor', 'value': 0.3702565372224691, 'error': 0.09642233970870906, 'min': 1e-05, 'max': 1000.0, 'free': True, 'scale': 1e-14}, 'Index': {'name': 'Index', 'value': 1.7885686500364153, 'error': 0.16723196277287766, 'min': 0.0, 'max': 5.0, 'free': True, 'scale': -1.0}, 'Scale': {'name': 'Scale', 'value': 6059.867188, 'error': nan, 'min': 6059.867188, 'max': 6059.867188, 'free': False, 'scale': 1.0}}, 'model_counts': array([15.6625433 , 14.05625122, 12.34858705, 10.68129032, 9.08916843,
7.60666217, 6.23061056, 5.03691936, 4.03821147, 3.21033609,
2.56580208, 2.07285824, 1.65747099, 1.32369666, 1.05675752,
0.84904945, 0.68940194, 0.55558768, 0.44335481, 0.3522397 ,
0.28012815, 0.22209278, 0.17688326, 0.14070462, 0.11133997,
0.0863473 ]), 'model_counts_wt': array([15.6625433 , 14.05625122, 12.34858705, 10.68129032, 9.08916843,
7.60666217, 6.23061056, 5.03691936, 4.03821147, 3.21033609,
2.56580208, 2.07285824, 1.65747099, 1.32369666, 1.05675752,
0.84904945, 0.68940194, 0.55558768, 0.44335481, 0.3522397 ,
0.28012815, 0.22209278, 0.17688326, 0.14070462, 0.11133997,
0.0863473 ]), 'covar': array([[ 0.00929727, -0.00025234],
[-0.00025234, 0.02796653]]), 'model_flux': {'energies': array([2.99999133e+02, 3.49037461e+02, 4.06091671e+02, 4.72472050e+02,
5.49703071e+02, 6.39558395e+02, 7.44101611e+02, 8.65733625e+02,
1.00724780e+03, 1.17189410e+03, 1.36345374e+03, 1.58632602e+03,
1.84562936e+03, 2.14731882e+03, 2.49832292e+03, 2.90670269e+03,
3.38183686e+03, 3.93463720e+03, 4.57779916e+03, 5.32609337e+03,
6.19670492e+03, 7.20962801e+03, 8.38812508e+03, 9.75926113e+03,
1.13545252e+04, 1.32105537e+04, 1.53699715e+04, 1.78823711e+04,
2.08054514e+04, 2.42063430e+04, 2.81631498e+04, 3.27667423e+04,
3.81228452e+04, 4.43544652e+04, 5.16047155e+04, 6.00401030e+04,
6.98543522e+04, 8.12728539e+04, 9.45578417e+04, 1.10014415e+05,
1.27997543e+05, 1.48920221e+05, 1.73262954e+05, 2.01584787e+05,
2.34536152e+05, 2.72873799e+05, 3.17478177e+05, 3.69373656e+05,
4.29752052e+05, 4.99999995e+05]), 'log_energies': array([2.47712 , 2.54287204, 2.60862408, 2.67437612, 2.74012816,
2.8058802 , 2.87163224, 2.93738429, 3.00313633, 3.06888837,
3.13464041, 3.20039245, 3.26614449, 3.33189653, 3.39764857,
3.46340061, 3.52915265, 3.59490469, 3.66065673, 3.72640878,
3.79216082, 3.85791286, 3.9236649 , 3.98941694, 4.05516898,
4.12092102, 4.18667306, 4.2524251 , 4.31817714, 4.38392918,
4.44968122, 4.51543327, 4.58118531, 4.64693735, 4.71268939,
4.77844143, 4.84419347, 4.90994551, 4.97569755, 5.04144959,
5.10720163, 5.17295367, 5.23870571, 5.30445776, 5.3702098 ,
5.43596184, 5.50171388, 5.56746592, 5.63321796, 5.69897 ]), 'dnde': array([8.00199899e-13, 6.10374601e-13, 4.65580105e-13, 3.55134100e-13,
2.70888355e-13, 2.06627584e-13, 1.57610904e-13, 1.20222075e-13,
9.17027123e-14, 6.99487797e-14, 5.33553660e-14, 4.06982808e-14,
3.10437391e-14, 2.36794705e-14, 1.80621709e-14, 1.37774203e-14,
1.05091084e-14, 8.01611301e-15, 6.11451187e-15, 4.66401301e-15,
3.55760490e-15, 2.71366152e-15, 2.06992036e-15, 1.57888900e-15,
1.20434124e-15, 9.18644586e-16, 7.00721562e-16, 5.34494748e-16,
4.07700650e-16, 3.10984945e-16, 2.37212366e-16, 1.80940292e-16,
1.38017211e-16, 1.05276444e-16, 8.03025192e-17, 6.12529672e-17,
4.67223945e-17, 3.56387984e-17, 2.71844790e-17, 2.07357131e-17,
1.58167386e-17, 1.20646547e-17, 9.20264903e-18, 7.01957503e-18,
5.35437496e-18, 4.08419757e-18, 3.11533464e-18, 2.37630764e-18,
1.81259437e-18, 1.38260648e-18]), 'dnde_lo': array([5.12137932e-13, 3.96307440e-13, 3.06682972e-13, 2.37327346e-13,
1.83650723e-13, 1.42104333e-13, 1.09943952e-13, 8.50471921e-14,
6.57723687e-14, 5.08494452e-14, 3.92957678e-14, 3.03509399e-14,
2.34264809e-14, 1.80669069e-14, 1.39196349e-14, 1.07117024e-14,
8.23175230e-15, 6.31608618e-15, 4.83786234e-15, 3.69873113e-15,
2.82236353e-15, 2.14945628e-15, 1.63388866e-15, 1.23977324e-15,
9.39193065e-16, 7.10458861e-16, 5.36757008e-16, 4.05091818e-16,
3.05452274e-16, 2.30153313e-16, 1.73315172e-16, 1.30453140e-16,
9.81558805e-17, 7.38346242e-17, 5.55287213e-17, 4.17556922e-17,
3.13961311e-17, 2.36057182e-17, 1.77481856e-17, 1.33443901e-17,
1.00337130e-17, 7.54485892e-18, 5.67379793e-18, 4.26712556e-18,
3.20952132e-18, 2.41430414e-18, 1.81632440e-18, 1.36661700e-18,
1.02838068e-18, 7.73955488e-19]), 'dnde_hi': array([1.25028794e-12, 9.40071054e-13, 7.06804272e-13, 5.31418865e-13,
3.99565545e-13, 3.00447970e-13, 2.25944188e-13, 1.69945027e-13,
1.27855931e-13, 9.62219305e-14, 7.24453354e-14, 5.45732709e-14,
4.11377939e-14, 3.10356015e-14, 2.34375414e-14, 1.77205551e-14,
1.34165065e-14, 1.01737161e-14, 7.72805274e-15, 5.88121078e-15,
4.48438073e-15, 3.42596353e-15, 2.62231474e-15, 2.01076325e-15,
1.54434470e-15, 1.18783497e-15, 9.14772793e-16, 7.05234278e-16,
5.44176075e-16, 4.20205272e-16, 3.24666941e-16, 2.50966664e-16,
1.94066321e-16, 1.50107485e-16, 1.16128995e-16, 8.98542399e-17,
6.95302916e-17, 5.38057747e-17, 4.16378281e-17, 3.22210154e-17,
2.49328657e-17, 1.92920630e-17, 1.49262893e-17, 1.15474534e-17,
8.93258788e-18, 6.90910043e-18, 5.34337912e-18, 4.13198285e-18,
3.19482698e-18, 2.46991035e-18]), 'dnde_err': array([4.50088037e-13, 3.29696453e-13, 2.41224167e-13, 1.76284765e-13,
1.28677189e-13, 9.38203859e-14, 6.83332849e-14, 4.97229517e-14,
3.61532188e-14, 2.62731508e-14, 1.90899695e-14, 1.38749900e-14,
1.00940547e-14, 7.35613104e-15, 5.37537045e-15, 3.94313471e-15,
2.90739817e-15, 2.15760311e-15, 1.61354088e-15, 1.21719777e-15,
9.26775834e-16, 7.12302011e-16, 5.52394377e-16, 4.31874254e-16,
3.40003453e-16, 2.69190379e-16, 2.14051231e-16, 1.70739530e-16,
1.36475425e-16, 1.09220328e-16, 8.74545746e-17, 7.00263721e-17,
5.60491097e-17, 4.48310408e-17, 3.58264758e-17, 2.86012727e-17,
2.28078971e-17, 1.81669763e-17, 1.44533490e-17, 1.14853023e-17,
9.11612709e-18, 7.22740830e-18, 5.72364025e-18, 4.52787837e-18,
3.57821292e-18, 2.82490286e-18, 2.22804449e-18, 1.75567521e-18,
1.38223261e-18, 1.08730387e-18]), 'dnde_ferr': array([0.4612285 , 0.44543434, 0.42970189, 0.414057 , 0.39853101,
0.3831619 , 0.3679956 , 0.35308755, 0.3385045 , 0.3243265 ,
0.31064886, 0.2975842 , 0.28526385, 0.27383836, 0.26347626,
0.25436012, 0.24667907, 0.24061724, 0.2363386 , 0.23397015,
0.23358654, 0.23520016, 0.23875945, 0.24415586, 0.25123761,
0.25982633, 0.26973323, 0.28077213, 0.29276848, 0.30556457,
0.31902167, 0.33302014, 0.34745826, 0.36225037, 0.37732486,
0.39262219, 0.40809296, 0.42369633, 0.43939857, 0.45517184,
0.4709932 , 0.48684378, 0.50270804, 0.51857326, 0.534429 ,
0.55026676, 0.56607959, 0.58186192, 0.59760924, 0.61331799]), 'pivot_energy': 5914.451009390775}}}
0.806 nan nan -0.000
Running extension on source 3FGL J0048.0+3950
2026-07-17 22:10:24 INFO GTAnalysis._extension(): Fitting extended-source model.
2026-07-17 22:10:41 INFO GTAnalysis._extension(): Generating TS map.
2026-07-17 22:11:01 INFO GTAnalysis._extension(): Testing point-source model.
/home/runner/work/fermipy/fermipy/fermipy/extension.py:314: RuntimeWarning: invalid value encountered in sqrt
np.sqrt(o['ts_ext']) > sqrt_ts_threshold):
2026-07-17 22:11:03 INFO GTAnalysis._extension(): Best-fit extension: 1.0820 + nan - nan
2026-07-17 22:11:03 INFO GTAnalysis._extension(): TS_ext: -0.000
2026-07-17 22:11:03 INFO GTAnalysis._extension(): Extension UL: nan
2026-07-17 22:11:03 INFO GTAnalysis._extension(): LogLike: -246708.081 DeltaLogLike: 2.242
2026-07-17 22:11:03 INFO GTAnalysis.extension(): Finished extension fit.
2026-07-17 22:11:03 WARNING GTAnalysis.extension(): Saving maps in .npy files is disabled b/c of incompatibilities in python3, remove the maps from the /home/runner/work/fermipy/fermipy/fermipy-extra/notebooks/M31_data/3fgl_j0048.0+3950_ext.npy
2026-07-17 22:11:03 INFO GTAnalysis.extension(): Execution time: 72.15 s
2026-07-17 22:11:03 INFO GTAnalysis.print_model():
sourcename offset norm eflux index ts npred free
--------------------------------------------------------------------------------
3FGL J0042.5+4117 0.031 1.053 8.52e-07 2.58 30.07 324.2 *
3FGL J0040.3+4049 0.624 0.222 1.99e-06 1.77 73.87 149.1 *
3FGL J0049.0+4224 1.650 0.278 1.33e-06 1.63 29.89 61.4 *
3FGL J0048.0+3950 1.771 0.603 5.84e-06 1.94 545.61 728.3 *
3FGL J0039.1+4330 2.337 0.225 1.54e-06 1.89 62.65 169.0
3FGL J0032.5+3912 2.833 0.550 9.81e-07 2.45 46.83 318.7 *
3FGL J0102.3+4217 3.800 0.575 1.65e-06 2.73 126.19 692.1
3FGL J0041.9+3639 4.600 1.601 1.28e-06 2.19 70.10 260.1
3FGL J0105.3+3928 4.639 0.549 2.55e-06 2.23 215.82 582.0
3FGL J0023.5+4454 5.046 2.144 2.46e-06 2.45 220.86 792.9
3FGL J0102.1+4458 5.147 0.208 8.65e-07 1.72 16.48 55.1
3FGL J0022.7+4651 6.635 1.107 2.89e-07 5.00 4.97 128.0
isodiff --- 0.875 0.0389 2.12 924.97 31907.6 *
galdiff --- 1.096 0.229 0.02 6739.38 91244.0 *
2026-07-17 22:11:03 INFO GTAnalysis.free_source(): Fixing parameters for 3FGL J0042.5+4117 : ['Prefactor', 'Index']
2026-07-17 22:11:03 INFO GTAnalysis.free_source(): Fixing parameters for 3FGL J0040.3+4049 : ['Prefactor', 'Index']
2026-07-17 22:11:03 INFO GTAnalysis.free_source(): Fixing parameters for 3FGL J0049.0+4224 : ['Prefactor', 'Index']
2026-07-17 22:11:03 INFO GTAnalysis.free_source(): Fixing parameters for 3FGL J0048.0+3950 : ['Prefactor', 'Index']
2026-07-17 22:11:03 INFO GTAnalysis.free_source(): Fixing parameters for 3FGL J0032.5+3912 : ['Prefactor', 'Index']
2026-07-17 22:11:03 INFO GTAnalysis.free_source(): Fixing parameters for isodiff : ['Normalization']
2026-07-17 22:11:03 INFO GTAnalysis.free_source(): Fixing parameters for galdiff : ['Prefactor', 'Index']
2026-07-17 22:11:03 INFO GTAnalysis.print_model():
sourcename offset norm eflux index ts npred free
--------------------------------------------------------------------------------
3FGL J0042.5+4117 0.031 1.053 8.52e-07 2.58 30.07 324.2
3FGL J0040.3+4049 0.624 0.222 1.99e-06 1.77 73.87 149.1
3FGL J0049.0+4224 1.650 0.278 1.33e-06 1.63 29.89 61.4
3FGL J0048.0+3950 1.771 0.603 5.84e-06 1.94 545.61 728.3
3FGL J0039.1+4330 2.337 0.225 1.54e-06 1.89 62.65 169.0
3FGL J0032.5+3912 2.833 0.550 9.81e-07 2.45 46.83 318.7
3FGL J0102.3+4217 3.800 0.575 1.65e-06 2.73 126.19 692.1
3FGL J0041.9+3639 4.600 1.601 1.28e-06 2.19 70.10 260.1
3FGL J0105.3+3928 4.639 0.549 2.55e-06 2.23 215.82 582.0
3FGL J0023.5+4454 5.046 2.144 2.46e-06 2.45 220.86 792.9
3FGL J0102.1+4458 5.147 0.208 8.65e-07 1.72 16.48 55.1
3FGL J0022.7+4651 6.635 1.107 2.89e-07 5.00 4.97 128.0
isodiff --- 0.875 0.0389 2.12 924.97 31907.6
galdiff --- 1.096 0.229 0.02 6739.38 91244.0
2026-07-17 22:11:03 INFO GTAnalysis.free_source(): Freeing parameters for 3FGL J0039.1+4330 : ['Prefactor', 'Index']
2026-07-17 22:11:03 INFO GTAnalysis.free_source(): Freeing parameters for 3FGL J0049.0+4224 : ['Prefactor', 'Index']
2026-07-17 22:11:03 INFO GTAnalysis.free_source(): Freeing parameters for 3FGL J0042.5+4117 : ['Prefactor', 'Index']
2026-07-17 22:11:03 INFO GTAnalysis.free_source(): Freeing parameters for 3FGL J0040.3+4049 : ['Prefactor', 'Index']
2026-07-17 22:11:03 INFO GTAnalysis.free_source(): Freeing parameters for isodiff : ['Normalization']
2026-07-17 22:11:03 INFO GTAnalysis.free_source(): Freeing parameters for galdiff : ['Prefactor', 'Index']
2026-07-17 22:11:03 INFO GTAnalysis.print_model():
sourcename offset norm eflux index ts npred free
--------------------------------------------------------------------------------
3FGL J0042.5+4117 0.031 1.053 8.52e-07 2.58 30.07 324.2 *
3FGL J0040.3+4049 0.624 0.222 1.99e-06 1.77 73.87 149.1 *
3FGL J0049.0+4224 1.650 0.278 1.33e-06 1.63 29.89 61.4 *
3FGL J0048.0+3950 1.771 0.603 5.84e-06 1.94 545.61 728.3
3FGL J0039.1+4330 2.337 0.225 1.54e-06 1.89 62.65 169.0 *
3FGL J0032.5+3912 2.833 0.550 9.81e-07 2.45 46.83 318.7
3FGL J0102.3+4217 3.800 0.575 1.65e-06 2.73 126.19 692.1
3FGL J0041.9+3639 4.600 1.601 1.28e-06 2.19 70.10 260.1
3FGL J0105.3+3928 4.639 0.549 2.55e-06 2.23 215.82 582.0
3FGL J0023.5+4454 5.046 2.144 2.46e-06 2.45 220.86 792.9
3FGL J0102.1+4458 5.147 0.208 8.65e-07 1.72 16.48 55.1
3FGL J0022.7+4651 6.635 1.107 2.89e-07 5.00 4.97 128.0
isodiff --- 0.875 0.0389 2.12 924.97 31907.6 *
galdiff --- 1.096 0.229 0.02 6739.38 91244.0 *
2026-07-17 22:11:03 INFO GTAnalysis.extension(): Running extension fit for 3FGL J0039.1+4330
{'spatial_model': 'RadialGaussian', 'width': [], 'fit_position': False, 'width_min': 0.01, 'width_max': 5.0, 'width_nstep': 21, 'free_background': False, 'fix_shape': False, 'free_radius': None, 'fit_ebin': False, 'update': True, 'save_model_map': False, 'sqrt_ts_threshold': 3.0, 'psf_scale_fn': None, 'make_tsmap': True, 'tsmap_fitter': 'tsmap', 'make_plots': False, 'write_fits': True, 'write_npy': True, 'reoptimize': False, 'ra_format': 'hour', 'optimizer': {'optimizer': 'MINUIT', 'tol': 0.001, 'max_iter': 100, 'init_lambda': 0.0001, 'retries': 3, 'min_fit_quality': 2, 'verbosity': 0}, 'prefix': '', 'outfile': None, 'loge_bins': []}
{'spatial_model': 'RadialGaussian', 'width': [], 'fit_position': False, 'width_min': 0.01, 'width_max': 5.0, 'width_nstep': 21, 'free_background': False, 'fix_shape': False, 'free_radius': None, 'fit_ebin': False, 'update': True, 'save_model_map': False, 'sqrt_ts_threshold': 3.0, 'psf_scale_fn': None, 'make_tsmap': True, 'tsmap_fitter': 'tsmap', 'make_plots': False, 'write_fits': True, 'write_npy': True, 'reoptimize': False, 'ra_format': 'hour', 'optimizer': {'optimizer': 'MINUIT', 'tol': 0.001, 'max_iter': 100, 'init_lambda': 0.0001, 'retries': 3, 'min_fit_quality': 2, 'verbosity': 0}, 'prefix': '', 'outfile': None, 'loge_bins': []}
{'name': '3FGL J0048.0+3950', 'file': None, 'config': {'spatial_model': 'RadialGaussian', 'width': [], 'fit_position': False, 'width_min': 0.01, 'width_max': 5.0, 'width_nstep': 21, 'free_background': False, 'fix_shape': False, 'free_radius': None, 'fit_ebin': False, 'update': True, 'save_model_map': False, 'sqrt_ts_threshold': 3.0, 'psf_scale_fn': None, 'make_tsmap': True, 'tsmap_fitter': 'tsmap', 'make_plots': False, 'write_fits': True, 'write_npy': True, 'reoptimize': False, 'ra_format': 'hour', 'optimizer': {'optimizer': 'MINUIT', 'tol': 0.001, 'max_iter': 100, 'init_lambda': 0.0001, 'retries': 3, 'min_fit_quality': 2, 'verbosity': 0}, 'prefix': '', 'outfile': None, 'loge_bins': []}, 'width': array([0. , 0.01 , 0.01364421, 0.01861646, 0.02540069,
0.03465724, 0.04728708, 0.0645195 , 0.08803178, 0.12011244,
0.16388398, 0.2236068 , 0.30509388, 0.4162766 , 0.56797668,
0.77495949, 1.05737126, 1.44269991, 1.96845052, 2.68579588,
3.66455719, 5. ]), 'dloglike': array([ 0.00000000e+00, -1.16357114e-07, -1.22789061e-06, -4.72646207e-08,
-1.69093255e-08, 6.11180440e-09, -1.85513636e-06, -9.41217877e-08,
-2.06765253e-06, 3.60887498e-08, 3.83297447e-08, 3.60305421e-08,
3.98722477e-08, 3.51574272e-08, 4.60713636e-08, 1.74040906e-08,
2.48546712e-08, 6.36209734e-08, -1.78930350e-06, -1.71433203e-06,
-1.56840542e-06, -1.44398655e-06]), 'loglike': array([-246708.08087564, -246708.08087576, -246708.08087687,
-246708.08087569, -246708.08087566, -246708.08087563,
-246708.08087749, -246708.08087573, -246708.08087771,
-246708.0808756 , -246708.0808756 , -246708.0808756 ,
-246708.0808756 , -246708.0808756 , -246708.08087559,
-246708.08087562, -246708.08087561, -246708.08087558,
-246708.08087743, -246708.08087735, -246708.08087721,
-246708.08087708]), 'loglike_ptsrc': -246708.08087563963, 'loglike_ext': -246708.08087563986, 'loglike_init': -246710.32239001768, 'loglike_base': -246708.0808758099, 'ext': np.float64(1.08202492943041), 'ext_err_hi': np.float64(nan), 'ext_err_lo': np.float64(nan), 'ext_err': nan, 'ext_ul95': nan, 'ts_ext': -4.656612873077393e-10, 'ebin_e_min': array([], dtype=float64), 'ebin_e_ctr': array([], dtype=float64), 'ebin_e_max': array([], dtype=float64), 'ebin_ext': array([], dtype=float64), 'ebin_ext_err': array([], dtype=float64), 'ebin_ext_err_hi': array([], dtype=float64), 'ebin_ext_err_lo': array([], dtype=float64), 'ebin_ext_ul95': array([], dtype=float64), 'ebin_ts_ext': array([], dtype=float64), 'ebin_dloglike': array([], shape=(0, 22), dtype=float64), 'ebin_loglike': array([], shape=(0, 22), dtype=float64), 'ebin_loglike_ptsrc': array([], dtype=float64), 'ebin_loglike_ext': array([], dtype=float64), 'ra': np.float64(11.974954260227895), 'dec': np.float64(39.79551175967951), 'glon': np.float64(122.19324352946532), 'glat': np.float64(-23.07116120986983), 'ra_err': nan, 'dec_err': nan, 'glon_err': nan, 'glat_err': nan, 'pos_offset': 0.0, 'pos_err': nan, 'pos_r68': nan, 'pos_r95': nan, 'pos_r99': nan, 'pos_err_semimajor': nan, 'pos_err_semiminor': nan, 'pos_angle': nan, 'tsmap': <gammapy.maps.wcs.ndmap.WcsNDMap object at 0x7f7855e81d90>, 'ptsrc_tot_map': None, 'ptsrc_src_map': None, 'ptsrc_bkg_map': None, 'ext_tot_map': None, 'ext_src_map': None, 'ext_bkg_map': None, 'source_fit': {'param_names': array([b'Prefactor', b'Index', b'Scale', b'', b'', b'', b'', b'', b'',
b''], dtype='|S32'), 'param_values': array([ 6.63951404e-14, -2.01233823e+00, 3.47691821e+03, nan,
nan, nan, nan, nan,
nan, nan]), 'param_errors': array([4.77102356e-15, 5.52857653e-02, nan, nan,
nan, nan, nan, nan,
nan, nan]), 'ts': np.float64(596.0977175915614), 'loglike': np.float64(-246708.08087563986), 'loglike_scan': array([-247006.12973444, -246710.79052196, -246710.13764205,
-246709.57921199, -246709.11274807, -246708.73588538,
-246708.44636979, -246708.24205057, -246708.12087369,
-246708.08087564, -246708.10937011, -246708.19418962,
-246708.33426132, -246708.52854998, -246708.77605607,
-246709.07581403, -246709.42689061, -246709.82838329,
-246710.2794189 , -246710.77915219]), 'dloglike_scan': array([-2.98048859e+02, -2.70964632e+00, -2.05676641e+00, -1.49833635e+00,
-1.03187243e+00, -6.55009745e-01, -3.65494152e-01, -1.61174933e-01,
-3.99980543e-02, 0.00000000e+00, -2.84944695e-02, -1.13313976e-01,
-2.53385680e-01, -4.47674338e-01, -6.95180431e-01, -9.94938393e-01,
-1.34601497e+00, -1.74750765e+00, -2.19854326e+00, -2.69827655e+00]), 'eflux_scan': array([0.00000000e+00, 4.98145019e-06, 5.09186471e-06, 5.20227922e-06,
5.31269373e-06, 5.42310825e-06, 5.53352276e-06, 5.64393727e-06,
5.75435178e-06, 5.86476630e-06, 5.95873687e-06, 6.05270744e-06,
6.14667802e-06, 6.24064859e-06, 6.33461916e-06, 6.42858974e-06,
6.52256031e-06, 6.61653088e-06, 6.71050146e-06, 6.80447203e-06]), 'flux_scan': array([0.00000000e+00, 2.31357633e-09, 2.36485706e-09, 2.41613779e-09,
2.46741852e-09, 2.51869925e-09, 2.56997998e-09, 2.62126071e-09,
2.67254144e-09, 2.72382217e-09, 2.76746571e-09, 2.81110924e-09,
2.85475278e-09, 2.89839631e-09, 2.94203985e-09, 2.98568338e-09,
3.02932692e-09, 3.07297045e-09, 3.11661399e-09, 3.16025752e-09]), 'norm_scan': array([0. , 0.56395101, 0.57645106, 0.58895111, 0.60145116,
0.61395121, 0.62645125, 0.6389513 , 0.65145135, 0.6639514 ,
0.67458983, 0.68522826, 0.69586669, 0.70650512, 0.71714354,
0.72778197, 0.7384204 , 0.74905883, 0.75969726, 0.77033568]), 'npred': 846.011905574458, 'npred_wt': 846.011905574458, 'pivot_energy': 2159.3182595081225, 'flux': 2.723822174279735e-09, 'flux100': 8.285840068487338e-09, 'flux1000': 8.030105906640471e-10, 'flux10000': 7.589614758289618e-11, 'flux_err': np.float64(2.352443719901443e-10), 'flux100_err': np.float64(1.1042839582685014e-09), 'flux1000_err': np.float64(5.440906793948171e-11), 'flux10000_err': np.float64(1.1322784877266674e-11), 'flux_ul95': 3.029915448273216e-09, 'flux100_ul95': 9.216972775423435e-09, 'flux1000_ul95': 8.932500134386976e-10, 'flux10000_ul95': 8.442508185639889e-11, 'eflux': 5.864766297007247e-06, 'eflux100': 6.432971436547513e-06, 'eflux1000': 4.52925564812297e-06, 'eflux10000': 2.6788632297376143e-06, 'eflux_err': np.float64(6.708871333775206e-07), 'eflux100_err': np.float64(5.340946023640097e-07), 'eflux1000_err': np.float64(6.012493242140751e-07), 'eflux10000_err': np.float64(5.132225455471032e-07), 'eflux_ul95': 6.52382749931656e-06, 'eflux100_ul95': 7.155885475177829e-06, 'eflux1000_ul95': 5.038236999100488e-06, 'eflux10000_ul95': 2.979904180323151e-06, 'dnde': 1.7315874718127703e-13, 'dnde100': 8.385729572002595e-11, 'dnde1000': 8.150844815889441e-13, 'dnde10000': 7.922539194982191e-15, 'dnde_err': np.float64(1.1577162039464658e-14), 'dnde100_err': np.float64(1.53076925644838e-11), 'dnde1000_err': np.float64(6.459986694895603e-14), 'dnde10000_err': np.float64(8.551573559204738e-16), 'dnde_index': np.float64(2.0123382282525877), 'dnde100_index': np.float64(2.0123382282192823), 'dnde1000_index': np.float64(2.0123382282525877), 'dnde10000_index': np.float64(2.012338228241486), 'name': '3FGL J0048.0+3950', 'spectral_pars': {'Prefactor': {'name': 'Prefactor', 'value': 0.6639514042970941, 'error': 0.04771023564910526, 'min': 1e-05, 'max': 1000.0, 'free': True, 'scale': 1e-13}, 'Index': {'name': 'Index', 'value': 2.0123382282322395, 'error': 0.055285765265078626, 'min': 0.0, 'max': 5.0, 'free': True, 'scale': -1.0}, 'Scale': {'name': 'Scale', 'value': 3476.918213, 'error': nan, 'min': 3476.918213, 'max': 3476.918213, 'free': False, 'scale': 1.0}}, 'model_counts': array([168.68827722, 142.31128983, 117.41373407, 95.37646267,
76.22408556, 59.93920204, 46.11569304, 35.01017278,
26.34714281, 19.65605024, 14.726463 , 11.15990569,
8.37415286, 6.27136158, 4.69530226, 3.54017432,
2.69929184, 2.04137909, 1.52790077, 1.13844204,
0.8491398 , 0.63127825, 0.47152342, 0.3518632 ,
0.2612633 , 0.19035388]), 'model_counts_wt': array([168.68827722, 142.31128983, 117.41373407, 95.37646267,
76.22408556, 59.93920204, 46.11569304, 35.01017278,
26.34714281, 19.65605024, 14.726463 , 11.15990569,
8.37415286, 6.27136158, 4.69530226, 3.54017432,
2.69929184, 2.04137909, 1.52790077, 1.13844204,
0.8491398 , 0.63127825, 0.47152342, 0.3518632 ,
0.2612633 , 0.19035388]), 'covar': array([[ 0.00227627, -0.00096665],
[-0.00096665, 0.00305652]]), 'model_flux': {'energies': array([2.99999133e+02, 3.49037461e+02, 4.06091671e+02, 4.72472050e+02,
5.49703071e+02, 6.39558395e+02, 7.44101611e+02, 8.65733625e+02,
1.00724780e+03, 1.17189410e+03, 1.36345374e+03, 1.58632602e+03,
1.84562936e+03, 2.14731882e+03, 2.49832292e+03, 2.90670269e+03,
3.38183686e+03, 3.93463720e+03, 4.57779916e+03, 5.32609337e+03,
6.19670492e+03, 7.20962801e+03, 8.38812508e+03, 9.75926113e+03,
1.13545252e+04, 1.32105537e+04, 1.53699715e+04, 1.78823711e+04,
2.08054514e+04, 2.42063430e+04, 2.81631498e+04, 3.27667423e+04,
3.81228452e+04, 4.43544652e+04, 5.16047155e+04, 6.00401030e+04,
6.98543522e+04, 8.12728539e+04, 9.45578417e+04, 1.10014415e+05,
1.27997543e+05, 1.48920221e+05, 1.73262954e+05, 2.01584787e+05,
2.34536152e+05, 2.72873799e+05, 3.17478177e+05, 3.69373656e+05,
4.29752052e+05, 4.99999995e+05]), 'log_energies': array([2.47712 , 2.54287204, 2.60862408, 2.67437612, 2.74012816,
2.8058802 , 2.87163224, 2.93738429, 3.00313633, 3.06888837,
3.13464041, 3.20039245, 3.26614449, 3.33189653, 3.39764857,
3.46340061, 3.52915265, 3.59490469, 3.66065673, 3.72640878,
3.79216082, 3.85791286, 3.9236649 , 3.98941694, 4.05516898,
4.12092102, 4.18667306, 4.2524251 , 4.31817714, 4.38392918,
4.44968122, 4.51543327, 4.58118531, 4.64693735, 4.71268939,
4.77844143, 4.84419347, 4.90994551, 4.97569755, 5.04144959,
5.10720163, 5.17295367, 5.23870571, 5.30445776, 5.3702098 ,
5.43596184, 5.50171388, 5.56746592, 5.63321796, 5.69897 ]), 'dnde': array([9.19208512e-12, 6.77795517e-12, 4.99785149e-12, 3.68525888e-12,
2.71739428e-12, 2.00372128e-12, 1.47748121e-12, 1.08944829e-12,
8.03324986e-13, 5.92346640e-13, 4.36777828e-13, 3.22066267e-13,
2.37481560e-13, 1.75111452e-13, 1.29121690e-13, 9.52102834e-14,
7.02050758e-14, 5.17670202e-14, 3.81713765e-14, 2.81463754e-14,
2.07542542e-14, 1.53035359e-14, 1.12843472e-14, 8.32072359e-15,
6.13544051e-15, 4.52408134e-15, 3.33591564e-15, 2.45979953e-15,
1.81377900e-15, 1.33742373e-15, 9.86174294e-16, 7.27173984e-16,
5.36195281e-16, 3.95373577e-16, 2.91536071e-16, 2.14969552e-16,
1.58511803e-16, 1.16881630e-16, 8.61848471e-17, 6.35500022e-17,
4.68597778e-17, 3.45529299e-17, 2.54782464e-17, 1.87868596e-17,
1.38528408e-17, 1.02146502e-17, 7.53196256e-18, 5.55383288e-18,
4.09522212e-18, 3.01968830e-18]), 'dnde_lo': array([8.14918612e-12, 6.04679059e-12, 4.48625105e-12, 3.32794162e-12,
2.46821758e-12, 1.83014203e-12, 1.35660322e-12, 1.00520598e-12,
7.44479989e-13, 5.51065031e-13, 4.07621458e-13, 3.01278531e-13,
2.22481897e-13, 1.64137332e-13, 1.20974897e-13, 8.90774680e-14,
6.55319586e-14, 4.81717076e-14, 3.53860209e-14, 2.59788460e-14,
1.90634129e-14, 1.39834068e-14, 1.02539174e-14, 7.51724036e-15,
5.50986807e-15, 4.03790641e-15, 2.95881821e-15, 2.16789980e-15,
1.58828590e-15, 1.16357552e-15, 8.52399749e-16, 6.24424833e-16,
4.57414024e-16, 3.35069448e-16, 2.45447837e-16, 1.79798096e-16,
1.31708724e-16, 9.64826681e-17, 7.06790701e-17, 5.17774111e-17,
3.79313978e-17, 2.77886365e-17, 2.03585213e-17, 1.49154525e-17,
1.09279415e-17, 8.00667946e-18, 5.86649938e-18, 4.29851471e-18,
3.14971200e-18, 2.30800375e-18]), 'dnde_hi': array([1.03684500e-11, 7.59753056e-12, 5.56779352e-12, 4.08094089e-12,
2.99172638e-12, 2.19376360e-12, 1.60912984e-12, 1.18075060e-12,
8.66821194e-13, 6.36720754e-13, 4.68019697e-13, 3.44288322e-13,
2.53492497e-13, 1.86819294e-13, 1.37817112e-13, 1.01765331e-13,
7.52114353e-14, 5.56306702e-14, 4.11759771e-14, 3.04947514e-14,
2.25950656e-14, 1.67482942e-14, 1.24183263e-14, 9.21008744e-15,
6.83203842e-15, 5.06879305e-15, 3.76107363e-15, 2.79100248e-15,
2.07128593e-15, 1.53724635e-15, 1.14094325e-15, 8.46830515e-16,
6.28545178e-16, 4.66530943e-16, 3.46278386e-16, 2.57021121e-16,
1.90769380e-16, 1.41593467e-16, 1.05092326e-16, 7.79993185e-17,
5.78897404e-17, 4.29637837e-17, 3.18854711e-17, 2.36631166e-17,
1.75605989e-17, 1.30315044e-17, 9.67024052e-18, 7.17574832e-18,
5.32456433e-18, 3.95082437e-18]), 'dnde_err': array([1.17636489e-12, 8.19575391e-13, 5.69942027e-13, 3.95682004e-13,
2.74332104e-13, 1.90042317e-13, 1.31648634e-13, 9.13023164e-14,
6.34962080e-14, 4.43741137e-14, 3.12418688e-14, 2.22220556e-14,
1.60109363e-14, 1.17078426e-14, 8.69542150e-15, 6.55504809e-15,
5.00635952e-15, 3.86365003e-15, 3.00460061e-15, 2.34837592e-15,
1.84081146e-15, 1.44475831e-15, 1.13397909e-15, 8.89363857e-16,
6.96597904e-16, 5.44711708e-16, 4.25157993e-16, 3.31202948e-16,
2.57506935e-16, 1.99822627e-16, 1.54768954e-16, 1.19656531e-16,
9.23498972e-17, 7.11573655e-17, 5.47423151e-17, 4.20515689e-17,
3.22575770e-17, 2.47118369e-17, 1.89074788e-17, 1.44493163e-17,
1.10299626e-17, 8.41085374e-18, 6.40722469e-18, 4.87625703e-18,
3.70775814e-18, 2.81685418e-18, 2.13827796e-18, 1.62191544e-18,
1.22934222e-18, 9.31136063e-19]), 'dnde_ferr': array([0.12071602, 0.11439586, 0.10820074, 0.10216369, 0.09632551,
0.09073656, 0.08545849, 0.08056583, 0.07614677, 0.07230202,
0.06914069, 0.06677165, 0.06529054, 0.06476436, 0.06521838,
0.06663074, 0.06893716, 0.07204358, 0.0758416 , 0.08022179,
0.08508262, 0.09033492, 0.09590315, 0.10172475, 0.10774861,
0.11393326, 0.12024516, 0.12665721, 0.13314743, 0.139698 ,
0.14629437, 0.15292467, 0.15957913, 0.16624972, 0.1729298 ,
0.17961387, 0.18629734, 0.19297643, 0.19964795, 0.20630926,
0.21295814, 0.21959277, 0.2262116 , 0.23281337, 0.23939701,
0.24596167, 0.25250664, 0.25903135, 0.26553533, 0.27201824]), 'pivot_energy': 2159.3182595081225}}}
1.082 nan nan -0.000
Running extension on source 3FGL J0039.1+4330
2026-07-17 22:11:39 INFO GTAnalysis._extension(): Fitting extended-source model.
2026-07-17 22:12:00 INFO GTAnalysis._extension(): Generating TS map.
2026-07-17 22:12:04 INFO GTAnalysis._extension(): Testing point-source model.
2026-07-17 22:12:06 INFO GTAnalysis._extension(): Best-fit extension: 0.4179 + nan - nan
2026-07-17 22:12:06 INFO GTAnalysis._extension(): TS_ext: 0.000
2026-07-17 22:12:06 INFO GTAnalysis._extension(): Extension UL: nan
2026-07-17 22:12:06 INFO GTAnalysis._extension(): LogLike: -246708.347 DeltaLogLike: 1.217
2026-07-17 22:12:06 INFO GTAnalysis.extension(): Finished extension fit.
2026-07-17 22:12:06 WARNING GTAnalysis.extension(): Saving maps in .npy files is disabled b/c of incompatibilities in python3, remove the maps from the /home/runner/work/fermipy/fermipy/fermipy-extra/notebooks/M31_data/3fgl_j0039.1+4330_ext.npy
2026-07-17 22:12:06 INFO GTAnalysis.extension(): Execution time: 63.59 s
2026-07-17 22:12:06 INFO GTAnalysis.print_model():
sourcename offset norm eflux index ts npred free
--------------------------------------------------------------------------------
3FGL J0042.5+4117 0.031 1.053 8.52e-07 2.58 30.07 324.2 *
3FGL J0040.3+4049 0.624 0.222 1.99e-06 1.77 73.87 149.1 *
3FGL J0049.0+4224 1.650 0.278 1.33e-06 1.63 29.89 61.4 *
3FGL J0048.0+3950 1.771 0.603 5.84e-06 1.94 545.61 728.3
3FGL J0039.1+4330 2.337 0.225 1.54e-06 1.89 62.65 169.0 *
3FGL J0032.5+3912 2.833 0.550 9.81e-07 2.45 46.83 318.7
3FGL J0102.3+4217 3.800 0.575 1.65e-06 2.73 126.19 692.1
3FGL J0041.9+3639 4.600 1.601 1.28e-06 2.19 70.10 260.1
3FGL J0105.3+3928 4.639 0.549 2.55e-06 2.23 215.82 582.0
3FGL J0023.5+4454 5.046 2.144 2.46e-06 2.45 220.86 792.9
3FGL J0102.1+4458 5.147 0.208 8.65e-07 1.72 16.48 55.1
3FGL J0022.7+4651 6.635 1.107 2.89e-07 5.00 4.97 128.0
isodiff --- 0.875 0.0389 2.12 924.97 31907.6 *
galdiff --- 1.096 0.229 0.02 6739.38 91244.0 *
2026-07-17 22:12:06 INFO GTAnalysis.free_source(): Fixing parameters for 3FGL J0042.5+4117 : ['Prefactor', 'Index']
2026-07-17 22:12:06 INFO GTAnalysis.free_source(): Fixing parameters for 3FGL J0040.3+4049 : ['Prefactor', 'Index']
2026-07-17 22:12:06 INFO GTAnalysis.free_source(): Fixing parameters for 3FGL J0049.0+4224 : ['Prefactor', 'Index']
2026-07-17 22:12:06 INFO GTAnalysis.free_source(): Fixing parameters for 3FGL J0039.1+4330 : ['Prefactor', 'Index']
2026-07-17 22:12:06 INFO GTAnalysis.free_source(): Fixing parameters for isodiff : ['Normalization']
2026-07-17 22:12:06 INFO GTAnalysis.free_source(): Fixing parameters for galdiff : ['Prefactor', 'Index']
2026-07-17 22:12:06 INFO GTAnalysis.print_model():
sourcename offset norm eflux index ts npred free
--------------------------------------------------------------------------------
3FGL J0042.5+4117 0.031 1.053 8.52e-07 2.58 30.07 324.2
3FGL J0040.3+4049 0.624 0.222 1.99e-06 1.77 73.87 149.1
3FGL J0049.0+4224 1.650 0.278 1.33e-06 1.63 29.89 61.4
3FGL J0048.0+3950 1.771 0.603 5.84e-06 1.94 545.61 728.3
3FGL J0039.1+4330 2.337 0.225 1.54e-06 1.89 62.65 169.0
3FGL J0032.5+3912 2.833 0.550 9.81e-07 2.45 46.83 318.7
3FGL J0102.3+4217 3.800 0.575 1.65e-06 2.73 126.19 692.1
3FGL J0041.9+3639 4.600 1.601 1.28e-06 2.19 70.10 260.1
3FGL J0105.3+3928 4.639 0.549 2.55e-06 2.23 215.82 582.0
3FGL J0023.5+4454 5.046 2.144 2.46e-06 2.45 220.86 792.9
3FGL J0102.1+4458 5.147 0.208 8.65e-07 1.72 16.48 55.1
3FGL J0022.7+4651 6.635 1.107 2.89e-07 5.00 4.97 128.0
isodiff --- 0.875 0.0389 2.12 924.97 31907.6
galdiff --- 1.096 0.229 0.02 6739.38 91244.0
2026-07-17 22:12:06 INFO GTAnalysis.free_source(): Freeing parameters for 3FGL J0032.5+3912 : ['Prefactor', 'Index']
2026-07-17 22:12:06 INFO GTAnalysis.free_source(): Freeing parameters for 3FGL J0040.3+4049 : ['Prefactor', 'Index']
2026-07-17 22:12:06 INFO GTAnalysis.free_source(): Freeing parameters for 3FGL J0041.9+3639 : ['Prefactor', 'Index']
2026-07-17 22:12:06 INFO GTAnalysis.free_source(): Freeing parameters for 3FGL J0048.0+3950 : ['Prefactor', 'Index']
2026-07-17 22:12:06 INFO GTAnalysis.free_source(): Freeing parameters for 3FGL J0042.5+4117 : ['Prefactor', 'Index']
2026-07-17 22:12:06 INFO GTAnalysis.free_source(): Freeing parameters for isodiff : ['Normalization']
2026-07-17 22:12:06 INFO GTAnalysis.free_source(): Freeing parameters for galdiff : ['Prefactor', 'Index']
2026-07-17 22:12:06 INFO GTAnalysis.print_model():
sourcename offset norm eflux index ts npred free
--------------------------------------------------------------------------------
3FGL J0042.5+4117 0.031 1.053 8.52e-07 2.58 30.07 324.2 *
3FGL J0040.3+4049 0.624 0.222 1.99e-06 1.77 73.87 149.1 *
3FGL J0049.0+4224 1.650 0.278 1.33e-06 1.63 29.89 61.4
3FGL J0048.0+3950 1.771 0.603 5.84e-06 1.94 545.61 728.3 *
3FGL J0039.1+4330 2.337 0.225 1.54e-06 1.89 62.65 169.0
3FGL J0032.5+3912 2.833 0.550 9.81e-07 2.45 46.83 318.7 *
3FGL J0102.3+4217 3.800 0.575 1.65e-06 2.73 126.19 692.1
3FGL J0041.9+3639 4.600 1.601 1.28e-06 2.19 70.10 260.1 *
3FGL J0105.3+3928 4.639 0.549 2.55e-06 2.23 215.82 582.0
3FGL J0023.5+4454 5.046 2.144 2.46e-06 2.45 220.86 792.9
3FGL J0102.1+4458 5.147 0.208 8.65e-07 1.72 16.48 55.1
3FGL J0022.7+4651 6.635 1.107 2.89e-07 5.00 4.97 128.0
isodiff --- 0.875 0.0389 2.12 924.97 31907.6 *
galdiff --- 1.096 0.229 0.02 6739.38 91244.0 *
2026-07-17 22:12:06 INFO GTAnalysis.extension(): Running extension fit for 3FGL J0032.5+3912
{'spatial_model': 'RadialGaussian', 'width': [], 'fit_position': False, 'width_min': 0.01, 'width_max': 5.0, 'width_nstep': 21, 'free_background': False, 'fix_shape': False, 'free_radius': None, 'fit_ebin': False, 'update': True, 'save_model_map': False, 'sqrt_ts_threshold': 3.0, 'psf_scale_fn': None, 'make_tsmap': True, 'tsmap_fitter': 'tsmap', 'make_plots': False, 'write_fits': True, 'write_npy': True, 'reoptimize': False, 'ra_format': 'hour', 'optimizer': {'optimizer': 'MINUIT', 'tol': 0.001, 'max_iter': 100, 'init_lambda': 0.0001, 'retries': 3, 'min_fit_quality': 2, 'verbosity': 0}, 'prefix': '', 'outfile': None, 'loge_bins': []}
{'spatial_model': 'RadialGaussian', 'width': [], 'fit_position': False, 'width_min': 0.01, 'width_max': 5.0, 'width_nstep': 21, 'free_background': False, 'fix_shape': False, 'free_radius': None, 'fit_ebin': False, 'update': True, 'save_model_map': False, 'sqrt_ts_threshold': 3.0, 'psf_scale_fn': None, 'make_tsmap': True, 'tsmap_fitter': 'tsmap', 'make_plots': False, 'write_fits': True, 'write_npy': True, 'reoptimize': False, 'ra_format': 'hour', 'optimizer': {'optimizer': 'MINUIT', 'tol': 0.001, 'max_iter': 100, 'init_lambda': 0.0001, 'retries': 3, 'min_fit_quality': 2, 'verbosity': 0}, 'prefix': '', 'outfile': None, 'loge_bins': []}
{'name': '3FGL J0039.1+4330', 'file': None, 'config': {'spatial_model': 'RadialGaussian', 'width': [], 'fit_position': False, 'width_min': 0.01, 'width_max': 5.0, 'width_nstep': 21, 'free_background': False, 'fix_shape': False, 'free_radius': None, 'fit_ebin': False, 'update': True, 'save_model_map': False, 'sqrt_ts_threshold': 3.0, 'psf_scale_fn': None, 'make_tsmap': True, 'tsmap_fitter': 'tsmap', 'make_plots': False, 'write_fits': True, 'write_npy': True, 'reoptimize': False, 'ra_format': 'hour', 'optimizer': {'optimizer': 'MINUIT', 'tol': 0.001, 'max_iter': 100, 'init_lambda': 0.0001, 'retries': 3, 'min_fit_quality': 2, 'verbosity': 0}, 'prefix': '', 'outfile': None, 'loge_bins': []}, 'width': array([0. , 0.01 , 0.01364421, 0.01861646, 0.02540069,
0.03465724, 0.04728708, 0.0645195 , 0.08803178, 0.12011244,
0.16388398, 0.2236068 , 0.30509388, 0.4162766 , 0.56797668,
0.77495949, 1.05737126, 1.44269991, 1.96845052, 2.68579588,
3.66455719, 5. ]), 'dloglike': array([ 1.16415322e-10, -3.60159902e-07, -9.17061698e-07, -1.65600213e-05,
-1.83450175e-06, -1.38499308e-06, -2.80035893e-05, -2.03063246e-06,
-3.12097836e-06, -4.34677349e-06, 4.21423465e-07, -1.35300797e-06,
-1.45443482e-05, 3.79979610e-07, -1.18219759e-07, -1.17637683e-07,
-1.17550371e-07, -1.17055606e-07, -1.11962436e-07, -1.11875124e-07,
-1.07596861e-07, -9.70903784e-08]), 'loglike': array([-246708.34706647, -246708.34706683, -246708.34706739,
-246708.34708303, -246708.34706831, -246708.34706786,
-246708.34709448, -246708.3470685 , -246708.34706959,
-246708.34707082, -246708.34706605, -246708.34706783,
-246708.34708102, -246708.34706609, -246708.34706659,
-246708.34706659, -246708.34706659, -246708.34706659,
-246708.34706659, -246708.34706659, -246708.34706658,
-246708.34706657]), 'loglike_ptsrc': -246708.34706647362, 'loglike_ext': -246708.34706636184, 'loglike_init': -246709.56379189593, 'loglike_base': -246708.34706991963, 'ext': np.float64(0.4179041485140988), 'ext_err_hi': np.float64(nan), 'ext_err_lo': np.float64(nan), 'ext_err': nan, 'ext_ul95': nan, 'ts_ext': 2.235756255686283e-07, 'ebin_e_min': array([], dtype=float64), 'ebin_e_ctr': array([], dtype=float64), 'ebin_e_max': array([], dtype=float64), 'ebin_ext': array([], dtype=float64), 'ebin_ext_err': array([], dtype=float64), 'ebin_ext_err_hi': array([], dtype=float64), 'ebin_ext_err_lo': array([], dtype=float64), 'ebin_ext_ul95': array([], dtype=float64), 'ebin_ts_ext': array([], dtype=float64), 'ebin_dloglike': array([], shape=(0, 22), dtype=float64), 'ebin_loglike': array([], shape=(0, 22), dtype=float64), 'ebin_loglike_ptsrc': array([], dtype=float64), 'ebin_loglike_ext': array([], dtype=float64), 'ra': np.float64(9.777463984258688), 'dec': np.float64(43.50900494860791), 'glon': np.float64(120.5639243541753), 'glat': np.float64(-19.306052898583964), 'ra_err': nan, 'dec_err': nan, 'glon_err': nan, 'glat_err': nan, 'pos_offset': 0.0, 'pos_err': nan, 'pos_r68': nan, 'pos_r95': nan, 'pos_r99': nan, 'pos_err_semimajor': nan, 'pos_err_semiminor': nan, 'pos_angle': nan, 'tsmap': <gammapy.maps.wcs.ndmap.WcsNDMap object at 0x7f7860d58690>, 'ptsrc_tot_map': None, 'ptsrc_src_map': None, 'ptsrc_bkg_map': None, 'ext_tot_map': None, 'ext_src_map': None, 'ext_bkg_map': None, 'source_fit': {'param_names': array([b'Prefactor', b'Index', b'Scale', b'', b'', b'', b'', b'', b'',
b''], dtype='|S32'), 'param_values': array([ 2.88195777e-14, -2.01750848e+00, 2.76052368e+03, nan,
nan, nan, nan, nan,
nan, nan]), 'param_errors': array([4.75719871e-15, 1.21648899e-01, nan, nan,
nan, nan, nan, nan,
nan, nan]), 'ts': np.float64(77.21833826630609), 'loglike': np.float64(-246708.34706636184), 'loglike_scan': array([-246746.95623549, -246711.05549904, -246710.37741639,
-246709.80884486, -246709.34258199, -246708.97229032,
-246708.69235306, -246708.49775997, -246708.38401583,
-246708.34706636, -246708.37742366, -246708.46646111,
-246708.61180967, -246708.8112818 , -246709.06285172,
-246709.36463839, -246709.7148908 , -246710.11197517,
-246710.55436374, -246711.0406249 ]), 'dloglike_scan': array([-3.86091691e+01, -2.70843268e+00, -2.03035003e+00, -1.46177850e+00,
-9.95515627e-01, -6.25223954e-01, -3.45286699e-01, -1.50693605e-01,
-3.69494655e-02, 0.00000000e+00, -3.03573030e-02, -1.19394744e-01,
-2.64743304e-01, -4.64215441e-01, -7.15785361e-01, -1.01757203e+00,
-1.36782444e+00, -1.76490881e+00, -2.20729737e+00, -2.69355854e+00]), 'eflux_scan': array([0.00000000e+00, 1.02136163e-06, 1.09224512e-06, 1.16312862e-06,
1.23401211e-06, 1.30489560e-06, 1.37577909e-06, 1.44666258e-06,
1.51754607e-06, 1.58842956e-06, 1.65330859e-06, 1.71818762e-06,
1.78306665e-06, 1.84794567e-06, 1.91282470e-06, 1.97770373e-06,
2.04258276e-06, 2.10746179e-06, 2.17234082e-06, 2.23721985e-06]), 'flux_scan': array([0.00000000e+00, 4.80929556e-10, 5.14306535e-10, 5.47683513e-10,
5.81060492e-10, 6.14437471e-10, 6.47814450e-10, 6.81191429e-10,
7.14568407e-10, 7.47945386e-10, 7.78495038e-10, 8.09044690e-10,
8.39594343e-10, 8.70143995e-10, 9.00693647e-10, 9.31243299e-10,
9.61792951e-10, 9.92342603e-10, 1.02289226e-09, 1.05344191e-09]), 'norm_scan': array([0. , 0.18531014, 0.19817085, 0.21103155, 0.22389226,
0.23675296, 0.24961366, 0.26247437, 0.27533507, 0.28819578,
0.29996707, 0.31173835, 0.32350964, 0.33528093, 0.34705222,
0.35882351, 0.37059479, 0.38236608, 0.39413737, 0.40590866]), 'npred': 238.52321514872472, 'npred_wt': 238.52321514872472, 'pivot_energy': 2788.0687251970166, 'flux': 7.479453862107873e-10, 'flux100': 2.288184391476549e-09, 'flux1000': 2.191476458747762e-10, 'flux10000': 2.047701836773925e-11, 'flux_err': np.float64(1.6780227571748828e-10), 'flux100_err': np.float64(7.542591136620192e-10), 'flux1000_err': np.float64(3.619706608820572e-11), 'flux10000_err': np.float64(6.34117286886323e-12), 'flux_ul95': 9.605642937604358e-10, 'flux100_ul95': 2.9386480142988597e-09, 'flux1000_ul95': 2.8144488564254807e-10, 'flux10000_ul95': 2.6298033318148757e-11, 'eflux': 1.588429558441656e-06, 'eflux100': 1.7494612322850136e-06, 'eflux1000': 1.2241808865721233e-06, 'eflux10000': 7.196560058799078e-07, 'eflux_err': np.float64(3.767039933018145e-07), 'eflux100_err': np.float64(3.16347293400593e-07), 'eflux1000_err': np.float64(3.3623961478625153e-07), 'eflux10000_err': np.float64(2.872042155340753e-07), 'eflux_ul95': 2.0399734327162626e-06, 'eflux100_ul95': 2.2467816822357175e-06, 'eflux1000_ul95': 1.5721795607330354e-06, 'eflux10000_ul95': 9.242330734074121e-07, 'dnde': 2.8248027096701887e-14, 'dnde100': 2.3275559727597923e-11, 'dnde1000': 2.2355874167735803e-13, 'dnde10000': 2.1472528078929054e-15, 'dnde_err': np.float64(4.66273156568875e-15), 'dnde100_err': np.float64(1.0175735411766054e-11), 'dnde1000_err': np.float64(4.6250857948342436e-14), 'dnde10000_err': np.float64(4.86774053437794e-16), 'dnde_index': np.float64(2.0175084771463476), 'dnde100_index': np.float64(2.0175084771463476), 'dnde1000_index': np.float64(2.0175084771463476), 'dnde10000_index': np.float64(2.017508477168551), 'name': '3FGL J0039.1+4330', 'spectral_pars': {'Prefactor': {'name': 'Prefactor', 'value': 0.2881957770857291, 'error': 0.04757198708995827, 'min': 1e-05, 'max': 1000.0, 'free': True, 'scale': 1e-13}, 'Index': {'name': 'Index', 'value': 2.017508477154515, 'error': 0.12164889862231325, 'min': 0.0, 'max': 5.0, 'free': True, 'scale': -1.0}, 'Scale': {'name': 'Scale', 'value': 2760.523682, 'error': nan, 'min': 2760.523682, 'max': 2760.523682, 'free': False, 'scale': 1.0}}, 'model_counts': array([47.72335691, 40.24303826, 33.18026403, 26.91870193, 21.47369911,
16.85762824, 12.95379149, 9.82752023, 7.39118342, 5.51076341,
4.12723929, 3.1241365 , 2.33996819, 1.75043493, 1.30894916,
0.98464342, 0.74860286, 0.56508372, 0.42230139, 0.31419333,
0.23402287, 0.17375359, 0.12960683, 0.09657082, 0.07162735,
0.05213388]), 'model_counts_wt': array([47.72335691, 40.24303826, 33.18026403, 26.91870193, 21.47369911,
16.85762824, 12.95379149, 9.82752023, 7.39118342, 5.51076341,
4.12723929, 3.1241365 , 2.33996819, 1.75043493, 1.30894916,
0.98464342, 0.74860286, 0.56508372, 0.42230139, 0.31419333,
0.23402287, 0.17375359, 0.12960683, 0.09657082, 0.07162735,
0.05213388]), 'covar': array([[2.26309396e-03, 4.19085835e-05],
[4.19085835e-05, 1.47984545e-02]]), 'model_flux': {'energies': array([2.99999133e+02, 3.49037461e+02, 4.06091671e+02, 4.72472050e+02,
5.49703071e+02, 6.39558395e+02, 7.44101611e+02, 8.65733625e+02,
1.00724780e+03, 1.17189410e+03, 1.36345374e+03, 1.58632602e+03,
1.84562936e+03, 2.14731882e+03, 2.49832292e+03, 2.90670269e+03,
3.38183686e+03, 3.93463720e+03, 4.57779916e+03, 5.32609337e+03,
6.19670492e+03, 7.20962801e+03, 8.38812508e+03, 9.75926113e+03,
1.13545252e+04, 1.32105537e+04, 1.53699715e+04, 1.78823711e+04,
2.08054514e+04, 2.42063430e+04, 2.81631498e+04, 3.27667423e+04,
3.81228452e+04, 4.43544652e+04, 5.16047155e+04, 6.00401030e+04,
6.98543522e+04, 8.12728539e+04, 9.45578417e+04, 1.10014415e+05,
1.27997543e+05, 1.48920221e+05, 1.73262954e+05, 2.01584787e+05,
2.34536152e+05, 2.72873799e+05, 3.17478177e+05, 3.69373656e+05,
4.29752052e+05, 4.99999995e+05]), 'log_energies': array([2.47712 , 2.54287204, 2.60862408, 2.67437612, 2.74012816,
2.8058802 , 2.87163224, 2.93738429, 3.00313633, 3.06888837,
3.13464041, 3.20039245, 3.26614449, 3.33189653, 3.39764857,
3.46340061, 3.52915265, 3.59490469, 3.66065673, 3.72640878,
3.79216082, 3.85791286, 3.9236649 , 3.98941694, 4.05516898,
4.12092102, 4.18667306, 4.2524251 , 4.31817714, 4.38392918,
4.44968122, 4.51543327, 4.58118531, 4.64693735, 4.71268939,
4.77844143, 4.84419347, 4.90994551, 4.97569755, 5.04144959,
5.10720163, 5.17295367, 5.23870571, 5.30445776, 5.3702098 ,
5.43596184, 5.50171388, 5.56746592, 5.63321796, 5.69897 ]), 'dnde': array([2.53691835e-12, 1.86918027e-12, 1.37719643e-12, 1.01470684e-12,
7.47627539e-13, 5.50845734e-13, 4.05858542e-13, 2.99033188e-13,
2.20325158e-13, 1.62333739e-13, 1.19606145e-13, 8.81248096e-14,
6.49296246e-14, 4.78396058e-14, 3.52478225e-14, 2.59703016e-14,
1.91347016e-14, 1.40982885e-14, 1.03875014e-14, 7.65342435e-15,
5.63897922e-15, 4.15475285e-15, 3.06118724e-15, 2.25545722e-15,
1.66180207e-15, 1.22440190e-15, 9.02129108e-16, 6.64681201e-16,
4.89731565e-16, 3.60830132e-16, 2.65856631e-16, 1.95880948e-16,
1.44323448e-16, 1.06336313e-16, 7.83477083e-17, 5.77259380e-17,
4.25319895e-17, 3.13372151e-17, 2.30889987e-17, 1.70117816e-17,
1.25341388e-17, 9.23504891e-18, 6.80430700e-18, 5.01335664e-18,
3.69379935e-18, 2.72156055e-18, 2.00522311e-18, 1.47743166e-18,
1.08855932e-18, 8.02041429e-19]), 'dnde_lo': array([1.92560122e-12, 1.43574615e-12, 1.07037882e-12, 7.97855000e-13,
5.94579928e-13, 4.42959101e-13, 3.29871238e-13, 2.45530234e-13,
1.82636906e-13, 1.35746671e-13, 1.00798114e-13, 7.47614190e-14,
5.53761179e-14, 4.09553941e-14, 3.02400200e-14, 2.22893842e-14,
1.64003064e-14, 1.20466989e-14, 8.83482403e-15, 6.47011797e-15,
4.73250868e-15, 3.45794113e-15, 2.52445959e-15, 1.84167870e-15,
1.34281058e-15, 9.78639517e-16, 7.12985997e-16, 5.19308221e-16,
3.78167897e-16, 2.75348922e-16, 2.00466112e-16, 1.45939690e-16,
1.06241403e-16, 7.73415299e-17, 5.63039681e-17, 4.09901618e-17,
2.98428596e-17, 2.17283188e-17, 1.58212405e-17, 1.15209093e-17,
8.39010296e-18, 6.11060383e-18, 4.45080785e-18, 3.24214676e-18,
2.36192739e-18, 1.72084262e-18, 1.25388296e-18, 9.13722669e-19,
6.65906923e-19, 4.85349346e-19]), 'dnde_hi': array([3.34230921e-12, 2.43346284e-12, 1.77196147e-12, 1.29049762e-12,
9.40070308e-13, 6.85009118e-13, 4.99349858e-13, 3.64194853e-13,
2.65790614e-13, 1.94128095e-13, 1.41923586e-13, 1.03876868e-13,
7.61313056e-14, 5.58809879e-14, 4.10849262e-14, 3.02590936e-14,
2.23249978e-14, 1.64992701e-14, 1.22130542e-14, 9.05314318e-15,
6.71907624e-15, 4.99197950e-15, 3.71202905e-15, 2.76220130e-15,
2.05657161e-15, 1.53188175e-15, 1.14144868e-15, 8.50749289e-16,
6.34207734e-16, 4.72848714e-16, 3.52577039e-16, 2.62912342e-16,
1.96055936e-16, 1.46201031e-16, 1.09021861e-16, 8.12947245e-17,
6.06165147e-17, 4.51954455e-17, 3.36953262e-17, 2.51196071e-17,
1.87249949e-17, 1.39570705e-17, 1.04022900e-17, 7.75219217e-18,
5.77670326e-18, 4.30422382e-18, 3.20677435e-18, 2.38891338e-18,
1.77947001e-18, 1.32537616e-18]), 'dnde_err': array([8.05390865e-13, 5.64282569e-13, 3.94765032e-13, 2.75790778e-13,
1.92442769e-13, 1.34163384e-13, 9.34913161e-14, 6.51616645e-14,
4.54654560e-14, 3.17943566e-14, 2.23174413e-14, 1.57520586e-14,
1.12016810e-14, 8.04138212e-15, 5.83710375e-15, 4.28879203e-15,
3.19029626e-15, 2.40098162e-15, 1.82555282e-15, 1.39971883e-15,
1.08009702e-15, 8.37226649e-16, 6.50841806e-16, 5.06744077e-16,
3.94769536e-16, 3.07479850e-16, 2.39319576e-16, 1.86068088e-16,
1.44476170e-16, 1.12018582e-16, 8.67204078e-17, 6.70313940e-17,
5.17324880e-17, 3.98647185e-17, 3.06741529e-17, 2.35687866e-17,
1.80845251e-17, 1.38582304e-17, 1.06063275e-17, 8.10782547e-18,
6.19085614e-18, 4.72202158e-18, 3.59798295e-18, 2.73883554e-18,
2.08290391e-18, 1.58266327e-18, 1.20155124e-18, 9.11481720e-19,
6.90910687e-19, 5.23334733e-19]), 'dnde_ferr': array([0.27921829, 0.26688616, 0.25471408, 0.24275121, 0.23105782,
0.21970763, 0.20879026, 0.19841379, 0.18870679, 0.17981913,
0.1719204 , 0.1651944 , 0.15982834, 0.1559962 , 0.15383796,
0.15343891, 0.15481536, 0.15791177, 0.16261034, 0.16874964,
0.17614603, 0.18461247, 0.19397204, 0.20406563, 0.21475513,
0.22592346, 0.23747304, 0.24932334, 0.26140835, 0.2736742 ,
0.28607698, 0.29858098, 0.31115711, 0.32378169, 0.33643545,
0.34910271, 0.3617707 , 0.37442904, 0.38706931, 0.3996847 ,
0.41226973, 0.42481998, 0.43733198, 0.44980297, 0.46223083,
0.47461395, 0.48695115, 0.49924161, 0.5114848 , 0.52368044]), 'pivot_energy': 2788.0687251970166}}}
0.418 nan nan 0.000
Running extension on source 3FGL J0032.5+3912
2026-07-17 22:12:42 INFO GTAnalysis._extension(): Fitting extended-source model.
2026-07-17 22:13:01 INFO GTAnalysis._extension(): Generating TS map.
2026-07-17 22:13:03 INFO GTAnalysis._extension(): Testing point-source model.
2026-07-17 22:13:05 INFO GTAnalysis._extension(): Best-fit extension: 0.0032 + nan - nan
2026-07-17 22:13:05 INFO GTAnalysis._extension(): TS_ext: 0.000
2026-07-17 22:13:05 INFO GTAnalysis._extension(): Extension UL: nan
2026-07-17 22:13:05 INFO GTAnalysis._extension(): LogLike: -246707.184 DeltaLogLike: 2.049
2026-07-17 22:13:05 INFO GTAnalysis.extension(): Finished extension fit.
2026-07-17 22:13:05 WARNING GTAnalysis.extension(): Saving maps in .npy files is disabled b/c of incompatibilities in python3, remove the maps from the /home/runner/work/fermipy/fermipy/fermipy-extra/notebooks/M31_data/3fgl_j0032.5+3912_ext.npy
2026-07-17 22:13:05 INFO GTAnalysis.extension(): Execution time: 58.95 s
2026-07-17 22:13:05 INFO GTAnalysis.print_model():
sourcename offset norm eflux index ts npred free
--------------------------------------------------------------------------------
3FGL J0042.5+4117 0.031 1.053 8.52e-07 2.58 30.07 324.2 *
3FGL J0040.3+4049 0.624 0.222 1.99e-06 1.77 73.87 149.1 *
3FGL J0049.0+4224 1.650 0.278 1.33e-06 1.63 29.89 61.4
3FGL J0048.0+3950 1.771 0.603 5.84e-06 1.94 545.61 728.3 *
3FGL J0039.1+4330 2.337 0.225 1.54e-06 1.89 62.65 169.0
3FGL J0032.5+3912 2.833 0.550 9.81e-07 2.45 46.83 318.7 *
3FGL J0102.3+4217 3.800 0.575 1.65e-06 2.73 126.19 692.1
3FGL J0041.9+3639 4.600 1.601 1.28e-06 2.19 70.10 260.1 *
3FGL J0105.3+3928 4.639 0.549 2.55e-06 2.23 215.82 582.0
3FGL J0023.5+4454 5.046 2.144 2.46e-06 2.45 220.86 792.9
3FGL J0102.1+4458 5.147 0.208 8.65e-07 1.72 16.48 55.1
3FGL J0022.7+4651 6.635 1.107 2.89e-07 5.00 4.97 128.0
isodiff --- 0.875 0.0389 2.12 924.97 31907.6 *
galdiff --- 1.096 0.229 0.02 6739.38 91244.0 *
2026-07-17 22:13:05 INFO GTAnalysis.free_source(): Fixing parameters for 3FGL J0042.5+4117 : ['Prefactor', 'Index']
2026-07-17 22:13:05 INFO GTAnalysis.free_source(): Fixing parameters for 3FGL J0040.3+4049 : ['Prefactor', 'Index']
2026-07-17 22:13:05 INFO GTAnalysis.free_source(): Fixing parameters for 3FGL J0048.0+3950 : ['Prefactor', 'Index']
2026-07-17 22:13:05 INFO GTAnalysis.free_source(): Fixing parameters for 3FGL J0032.5+3912 : ['Prefactor', 'Index']
2026-07-17 22:13:05 INFO GTAnalysis.free_source(): Fixing parameters for 3FGL J0041.9+3639 : ['Prefactor', 'Index']
2026-07-17 22:13:05 INFO GTAnalysis.free_source(): Fixing parameters for isodiff : ['Normalization']
2026-07-17 22:13:05 INFO GTAnalysis.free_source(): Fixing parameters for galdiff : ['Prefactor', 'Index']
2026-07-17 22:13:05 INFO GTAnalysis.print_model():
sourcename offset norm eflux index ts npred free
--------------------------------------------------------------------------------
3FGL J0042.5+4117 0.031 1.053 8.52e-07 2.58 30.07 324.2
3FGL J0040.3+4049 0.624 0.222 1.99e-06 1.77 73.87 149.1
3FGL J0049.0+4224 1.650 0.278 1.33e-06 1.63 29.89 61.4
3FGL J0048.0+3950 1.771 0.603 5.84e-06 1.94 545.61 728.3
3FGL J0039.1+4330 2.337 0.225 1.54e-06 1.89 62.65 169.0
3FGL J0032.5+3912 2.833 0.550 9.81e-07 2.45 46.83 318.7
3FGL J0102.3+4217 3.800 0.575 1.65e-06 2.73 126.19 692.1
3FGL J0041.9+3639 4.600 1.601 1.28e-06 2.19 70.10 260.1
3FGL J0105.3+3928 4.639 0.549 2.55e-06 2.23 215.82 582.0
3FGL J0023.5+4454 5.046 2.144 2.46e-06 2.45 220.86 792.9
3FGL J0102.1+4458 5.147 0.208 8.65e-07 1.72 16.48 55.1
3FGL J0022.7+4651 6.635 1.107 2.89e-07 5.00 4.97 128.0
isodiff --- 0.875 0.0389 2.12 924.97 31907.6
galdiff --- 1.096 0.229 0.02 6739.38 91244.0
2026-07-17 22:13:05 INFO GTAnalysis.free_source(): Freeing parameters for 3FGL J0102.3+4217 : ['Prefactor', 'Index']
2026-07-17 22:13:05 INFO GTAnalysis.free_source(): Freeing parameters for 3FGL J0049.0+4224 : ['Prefactor', 'Index']
2026-07-17 22:13:05 INFO GTAnalysis.free_source(): Freeing parameters for 3FGL J0105.3+3928 : ['Prefactor', 'Index']
2026-07-17 22:13:05 INFO GTAnalysis.free_source(): Freeing parameters for 3FGL J0102.1+4458 : ['Prefactor', 'Index']
2026-07-17 22:13:05 INFO GTAnalysis.free_source(): Freeing parameters for isodiff : ['Normalization']
2026-07-17 22:13:05 INFO GTAnalysis.free_source(): Freeing parameters for galdiff : ['Prefactor', 'Index']
2026-07-17 22:13:05 INFO GTAnalysis.print_model():
sourcename offset norm eflux index ts npred free
--------------------------------------------------------------------------------
3FGL J0042.5+4117 0.031 1.053 8.52e-07 2.58 30.07 324.2
3FGL J0040.3+4049 0.624 0.222 1.99e-06 1.77 73.87 149.1
3FGL J0049.0+4224 1.650 0.278 1.33e-06 1.63 29.89 61.4 *
3FGL J0048.0+3950 1.771 0.603 5.84e-06 1.94 545.61 728.3
3FGL J0039.1+4330 2.337 0.225 1.54e-06 1.89 62.65 169.0
3FGL J0032.5+3912 2.833 0.550 9.81e-07 2.45 46.83 318.7
3FGL J0102.3+4217 3.800 0.575 1.65e-06 2.73 126.19 692.1 *
3FGL J0041.9+3639 4.600 1.601 1.28e-06 2.19 70.10 260.1
3FGL J0105.3+3928 4.639 0.549 2.55e-06 2.23 215.82 582.0 *
3FGL J0023.5+4454 5.046 2.144 2.46e-06 2.45 220.86 792.9
3FGL J0102.1+4458 5.147 0.208 8.65e-07 1.72 16.48 55.1 *
3FGL J0022.7+4651 6.635 1.107 2.89e-07 5.00 4.97 128.0
isodiff --- 0.875 0.0389 2.12 924.97 31907.6 *
galdiff --- 1.096 0.229 0.02 6739.38 91244.0 *
2026-07-17 22:13:05 INFO GTAnalysis.extension(): Running extension fit for 3FGL J0102.3+4217
{'spatial_model': 'RadialGaussian', 'width': [], 'fit_position': False, 'width_min': 0.01, 'width_max': 5.0, 'width_nstep': 21, 'free_background': False, 'fix_shape': False, 'free_radius': None, 'fit_ebin': False, 'update': True, 'save_model_map': False, 'sqrt_ts_threshold': 3.0, 'psf_scale_fn': None, 'make_tsmap': True, 'tsmap_fitter': 'tsmap', 'make_plots': False, 'write_fits': True, 'write_npy': True, 'reoptimize': False, 'ra_format': 'hour', 'optimizer': {'optimizer': 'MINUIT', 'tol': 0.001, 'max_iter': 100, 'init_lambda': 0.0001, 'retries': 3, 'min_fit_quality': 2, 'verbosity': 0}, 'prefix': '', 'outfile': None, 'loge_bins': []}
{'spatial_model': 'RadialGaussian', 'width': [], 'fit_position': False, 'width_min': 0.01, 'width_max': 5.0, 'width_nstep': 21, 'free_background': False, 'fix_shape': False, 'free_radius': None, 'fit_ebin': False, 'update': True, 'save_model_map': False, 'sqrt_ts_threshold': 3.0, 'psf_scale_fn': None, 'make_tsmap': True, 'tsmap_fitter': 'tsmap', 'make_plots': False, 'write_fits': True, 'write_npy': True, 'reoptimize': False, 'ra_format': 'hour', 'optimizer': {'optimizer': 'MINUIT', 'tol': 0.001, 'max_iter': 100, 'init_lambda': 0.0001, 'retries': 3, 'min_fit_quality': 2, 'verbosity': 0}, 'prefix': '', 'outfile': None, 'loge_bins': []}
{'name': '3FGL J0032.5+3912', 'file': None, 'config': {'spatial_model': 'RadialGaussian', 'width': [], 'fit_position': False, 'width_min': 0.01, 'width_max': 5.0, 'width_nstep': 21, 'free_background': False, 'fix_shape': False, 'free_radius': None, 'fit_ebin': False, 'update': True, 'save_model_map': False, 'sqrt_ts_threshold': 3.0, 'psf_scale_fn': None, 'make_tsmap': True, 'tsmap_fitter': 'tsmap', 'make_plots': False, 'write_fits': True, 'write_npy': True, 'reoptimize': False, 'ra_format': 'hour', 'optimizer': {'optimizer': 'MINUIT', 'tol': 0.001, 'max_iter': 100, 'init_lambda': 0.0001, 'retries': 3, 'min_fit_quality': 2, 'verbosity': 0}, 'prefix': '', 'outfile': None, 'loge_bins': []}, 'width': array([0. , 0.01 , 0.01364421, 0.01861646, 0.02540069,
0.03465724, 0.04728708, 0.0645195 , 0.08803178, 0.12011244,
0.16388398, 0.2236068 , 0.30509388, 0.4162766 , 0.56797668,
0.77495949, 1.05737126, 1.44269991, 1.96845052, 2.68579588,
3.66455719, 5. ]), 'dloglike': array([ 0.00000000e+00, 2.57598003e-07, 1.00495527e-07, -1.55440648e-06,
-5.82015491e-06, -1.14770955e-06, -2.48604920e-06, -6.15301542e-06,
-1.45506056e-05, -2.83531554e-05, -4.72409592e-05, -1.44939986e-06,
-3.86804459e-06, -4.91112587e-06, -4.90210368e-06, -4.85175406e-06,
-7.82738789e-06, -4.78242873e-06, -2.59969966e-06, -1.44483056e-06,
-5.36412699e-07, -1.30297849e-07]), 'loglike': array([-246707.18414312, -246707.18414286, -246707.18414302,
-246707.18414468, -246707.18414894, -246707.18414427,
-246707.18414561, -246707.18414927, -246707.18415767,
-246707.18417147, -246707.18419036, -246707.18414457,
-246707.18414699, -246707.18414803, -246707.18414802,
-246707.18414797, -246707.18415095, -246707.1841479 ,
-246707.18414572, -246707.18414457, -246707.18414366,
-246707.18414325]), 'loglike_ptsrc': -246707.1841431208, 'loglike_ext': -246707.1841431208, 'loglike_init': -246709.23315368232, 'loglike_base': -246707.18414776505, 'ext': 0.0031622776601683794, 'ext_err_hi': np.float64(nan), 'ext_err_lo': np.float64(nan), 'ext_err': nan, 'ext_ul95': nan, 'ts_ext': 0.0, 'ebin_e_min': array([], dtype=float64), 'ebin_e_ctr': array([], dtype=float64), 'ebin_e_max': array([], dtype=float64), 'ebin_ext': array([], dtype=float64), 'ebin_ext_err': array([], dtype=float64), 'ebin_ext_err_hi': array([], dtype=float64), 'ebin_ext_err_lo': array([], dtype=float64), 'ebin_ext_ul95': array([], dtype=float64), 'ebin_ts_ext': array([], dtype=float64), 'ebin_dloglike': array([], shape=(0, 22), dtype=float64), 'ebin_loglike': array([], shape=(0, 22), dtype=float64), 'ebin_loglike_ptsrc': array([], dtype=float64), 'ebin_loglike_ext': array([], dtype=float64), 'ra': np.float64(8.52845635600777), 'dec': np.float64(38.966298885517645), 'glon': np.float64(119.25299755586654), 'glat': np.float64(-23.781666364568487), 'ra_err': nan, 'dec_err': nan, 'glon_err': nan, 'glat_err': nan, 'pos_offset': 0.0, 'pos_err': nan, 'pos_r68': nan, 'pos_r95': nan, 'pos_r99': nan, 'pos_err_semimajor': nan, 'pos_err_semiminor': nan, 'pos_angle': nan, 'tsmap': <gammapy.maps.wcs.ndmap.WcsNDMap object at 0x7f7854187310>, 'ptsrc_tot_map': None, 'ptsrc_src_map': None, 'ptsrc_bkg_map': None, 'ext_tot_map': None, 'ext_src_map': None, 'ext_bkg_map': None, 'source_fit': {'param_names': array([b'Prefactor', b'Index', b'Scale', b'', b'', b'', b'', b'', b'',
b''], dtype='|S32'), 'param_values': array([ 7.85886720e-13, -2.58389162e+00, 7.44708008e+02, nan,
nan, nan, nan, nan,
nan, nan]), 'param_errors': array([1.16587964e-13, 1.41963498e-01, nan, nan,
nan, nan, nan, nan,
nan, nan]), 'ts': np.float64(69.88680818525609), 'loglike': np.float64(-246707.1841431208), 'loglike_scan': array([-246742.12754721, -246709.89488527, -246709.23922505,
-246708.67963062, -246708.21308246, -246707.83677607,
-246707.54809774, -246707.3446039 , -246707.22400355,
-246707.18414312, -246707.21260222, -246707.29748802,
-246707.43765102, -246707.63199346, -246707.87946564,
-246708.17906249, -246708.5298206 , -246708.93081545,
-246709.38115889, -246709.87999687]), 'dloglike_scan': array([-3.49434041e+01, -2.71074215e+00, -2.05508193e+00, -1.49548750e+00,
-1.02893934e+00, -6.52632952e-01, -3.63954622e-01, -1.60460783e-01,
-3.98604337e-02, 0.00000000e+00, -2.84590989e-02, -1.13344896e-01,
-2.53507894e-01, -4.47850342e-01, -6.95322517e-01, -9.94919366e-01,
-1.34567748e+00, -1.74667233e+00, -2.19701576e+00, -2.69585375e+00]), 'eflux_scan': array([0.00000000e+00, 8.56131639e-07, 9.05714904e-07, 9.55298168e-07,
1.00488143e-06, 1.05446470e-06, 1.10404796e-06, 1.15363123e-06,
1.20321449e-06, 1.25279775e-06, 1.29522623e-06, 1.33765470e-06,
1.38008318e-06, 1.42251165e-06, 1.46494013e-06, 1.50736860e-06,
1.54979708e-06, 1.59222555e-06, 1.63465403e-06, 1.67708250e-06]), 'flux_scan': array([0.00000000e+00, 1.06711461e-09, 1.12891705e-09, 1.19071949e-09,
1.25252194e-09, 1.31432438e-09, 1.37612682e-09, 1.43792926e-09,
1.49973170e-09, 1.56153415e-09, 1.61441859e-09, 1.66730303e-09,
1.72018748e-09, 1.77307192e-09, 1.82595636e-09, 1.87884081e-09,
1.93172525e-09, 1.98460969e-09, 2.03749414e-09, 2.09037858e-09]), 'norm_scan': array([0. , 0.53705595, 0.5681598 , 0.59926364, 0.63036749,
0.66147133, 0.69257518, 0.72367903, 0.75478287, 0.78588672,
0.81250233, 0.83911794, 0.86573355, 0.89234916, 0.91896476,
0.94558037, 0.97219598, 0.99881159, 1.0254272 , 1.05204281]), 'npred': 444.10105803005126, 'npred_wt': 444.10105803005126, 'pivot_energy': 1028.6249534295357, 'flux': 1.5615341454213245e-09, 'flux100': 8.899215073968834e-09, 'flux1000': 2.318031938380576e-10, 'flux10000': 6.015162810965554e-12, 'flux_err': np.float64(2.571640594538308e-10), 'flux100_err': np.float64(2.4839549804481943e-09), 'flux1000_err': np.float64(3.821509748938708e-11), 'flux10000_err': np.float64(2.609845250229062e-12), 'flux_ul95': 1.9340829725505976e-09, 'flux100_ul95': 1.1022378469338391e-08, 'flux1000_ul95': 2.87106504522876e-10, 'flux10000_ul95': 7.450252691508768e-12, 'eflux': 1.2527977539613986e-06, 'eflux100': 2.3893569869771003e-06, 'eflux1000': 6.06679880842888e-07, 'eflux10000': 1.420195881463485e-07, 'eflux_err': np.float64(1.8929333741059203e-07), 'eflux100_err': np.float64(4.1066302271078685e-07), 'eflux1000_err': np.float64(1.5333672455375522e-07), 'eflux10000_err': np.float64(7.251139473656953e-08), 'eflux_ul95': 1.5516886461247442e-06, 'eflux100_ul95': 2.9594067330563177e-06, 'eflux1000_ul95': 7.514207939466245e-07, 'eflux10000_ul95': 1.7590244056327656e-07, 'dnde': 3.41125988256894e-13, 'dnde100': 1.4075937453427066e-10, 'dnde1000': 3.6693210324066517e-13, 'dnde10000': 9.565200814091259e-16, 'dnde_err': np.float64(4.8126904438287624e-14), 'dnde100_err': np.float64(5.0635080569275755e-11), 'dnde1000_err': np.float64(5.178875509961828e-14), 'dnde10000_err': np.float64(3.3701798065831865e-16), 'dnde_index': np.float64(2.5838916181435785), 'dnde100_index': np.float64(2.5838916180880704), 'dnde1000_index': np.float64(2.5838916181435785), 'dnde10000_index': np.float64(2.5838916181435785), 'name': '3FGL J0032.5+3912', 'spectral_pars': {'Prefactor': {'name': 'Prefactor', 'value': 0.785886720462821, 'error': 0.11658796443323456, 'min': 1e-05, 'max': 1000.0, 'free': True, 'scale': 1e-12}, 'Index': {'name': 'Index', 'value': 2.5838916181176037, 'error': 0.14196349845384001, 'min': 0.0, 'max': 5.0, 'free': True, 'scale': -1.0}, 'Scale': {'name': 'Scale', 'value': 744.7080078, 'error': nan, 'min': 744.7080078, 'max': 744.7080078, 'free': False, 'scale': 1.0}}, 'model_counts': array([1.35902681e+02, 9.79625294e+01, 6.88730217e+01, 4.76193576e+01,
3.23697890e+01, 2.16875703e+01, 1.42186453e+01, 9.20316386e+00,
5.89867094e+00, 3.74685445e+00, 2.38471894e+00, 1.53561265e+00,
9.79070123e-01, 6.22732648e-01, 3.95927219e-01, 2.53346252e-01,
1.64100524e-01, 1.05462198e-01, 6.70356772e-02, 4.24082893e-02,
2.68631157e-02, 1.69536464e-02, 1.07518806e-02, 6.81447587e-03,
4.30338137e-03, 2.67354213e-03]), 'model_counts_wt': array([1.35902681e+02, 9.79625294e+01, 6.88730217e+01, 4.76193576e+01,
3.23697890e+01, 2.16875703e+01, 1.42186453e+01, 9.20316386e+00,
5.89867094e+00, 3.74685445e+00, 2.38471894e+00, 1.53561265e+00,
9.79070123e-01, 6.22732648e-01, 3.95927219e-01, 2.53346252e-01,
1.64100524e-01, 1.05462198e-01, 6.70356772e-02, 4.24082893e-02,
2.68631157e-02, 1.69536464e-02, 1.07518806e-02, 6.81447587e-03,
4.30338137e-03, 2.67354213e-03]), 'covar': array([[0.01359275, 0.00511762],
[0.00511762, 0.02015363]]), 'model_flux': {'energies': array([2.99999133e+02, 3.49037461e+02, 4.06091671e+02, 4.72472050e+02,
5.49703071e+02, 6.39558395e+02, 7.44101611e+02, 8.65733625e+02,
1.00724780e+03, 1.17189410e+03, 1.36345374e+03, 1.58632602e+03,
1.84562936e+03, 2.14731882e+03, 2.49832292e+03, 2.90670269e+03,
3.38183686e+03, 3.93463720e+03, 4.57779916e+03, 5.32609337e+03,
6.19670492e+03, 7.20962801e+03, 8.38812508e+03, 9.75926113e+03,
1.13545252e+04, 1.32105537e+04, 1.53699715e+04, 1.78823711e+04,
2.08054514e+04, 2.42063430e+04, 2.81631498e+04, 3.27667423e+04,
3.81228452e+04, 4.43544652e+04, 5.16047155e+04, 6.00401030e+04,
6.98543522e+04, 8.12728539e+04, 9.45578417e+04, 1.10014415e+05,
1.27997543e+05, 1.48920221e+05, 1.73262954e+05, 2.01584787e+05,
2.34536152e+05, 2.72873799e+05, 3.17478177e+05, 3.69373656e+05,
4.29752052e+05, 4.99999995e+05]), 'log_energies': array([2.47712 , 2.54287204, 2.60862408, 2.67437612, 2.74012816,
2.8058802 , 2.87163224, 2.93738429, 3.00313633, 3.06888837,
3.13464041, 3.20039245, 3.26614449, 3.33189653, 3.39764857,
3.46340061, 3.52915265, 3.59490469, 3.66065673, 3.72640878,
3.79216082, 3.85791286, 3.9236649 , 3.98941694, 4.05516898,
4.12092102, 4.18667306, 4.2524251 , 4.31817714, 4.38392918,
4.44968122, 4.51543327, 4.58118531, 4.64693735, 4.71268939,
4.77844143, 4.84419347, 4.90994551, 4.97569755, 5.04144959,
5.10720163, 5.17295367, 5.23870571, 5.30445776, 5.3702098 ,
5.43596184, 5.50171388, 5.56746592, 5.63321796, 5.69897 ]), 'dnde': array([8.23476025e-12, 5.56871270e-12, 3.76581226e-12, 2.54661046e-12,
1.72213174e-12, 1.16458240e-12, 7.87542639e-13, 5.32571509e-13,
3.60148643e-13, 2.43548599e-13, 1.64698441e-13, 1.11376442e-13,
7.53177251e-14, 5.09332099e-14, 3.44433115e-14, 2.32921057e-14,
1.57511623e-14, 1.06516395e-14, 7.20311438e-15, 4.87106768e-15,
3.29403354e-15, 2.22757261e-15, 1.50638410e-15, 1.01868421e-15,
6.88879765e-16, 4.65851267e-16, 3.15029435e-16, 2.13036975e-16,
1.44065118e-16, 9.74232678e-17, 6.58819652e-17, 4.45523276e-17,
3.01282739e-17, 2.03740845e-17, 1.37778660e-17, 9.31720840e-18,
6.30071249e-18, 4.26082322e-18, 2.88135897e-18, 1.94850364e-18,
1.31766519e-18, 8.91064059e-19, 6.02577317e-19, 4.07489697e-19,
2.75562734e-19, 1.86347829e-19, 1.26016726e-19, 8.52181386e-20,
5.76283117e-20, 3.89708385e-20]), 'dnde_lo': array([6.72365520e-12, 4.60814120e-12, 3.15612171e-12, 2.15963782e-12,
1.47595139e-12, 1.00708481e-12, 6.85781019e-13, 4.65863269e-13,
3.15611346e-13, 2.13210932e-13, 1.43635728e-13, 9.65220517e-14,
6.47241309e-14, 4.33271583e-14, 2.89651353e-14, 1.93443945e-14,
1.29096555e-14, 8.61082793e-15, 5.74137574e-15, 3.82720238e-15,
2.55083382e-15, 1.70000173e-15, 1.13293980e-15, 7.55044911e-16,
5.03223790e-16, 3.35415130e-16, 2.23586408e-16, 1.49058116e-16,
9.93843563e-17, 6.62729211e-17, 4.41990009e-17, 2.94814529e-17,
1.96673865e-17, 1.31221968e-17, 8.75646822e-18, 5.84405184e-18,
3.90087180e-18, 2.60418314e-18, 1.73877399e-18, 1.16111688e-18,
7.75477617e-19, 5.17991188e-19, 3.46046496e-19, 2.31208969e-19,
1.54501309e-19, 1.03256171e-19, 6.90168810e-20, 4.61369819e-20,
3.08458435e-20, 2.06251358e-20]), 'dnde_hi': array([1.00854780e-11, 6.72951626e-12, 4.49328108e-12, 3.00292242e-12,
2.00937358e-12, 1.34671098e-12, 9.04404455e-13, 6.08831885e-13,
4.10970792e-13, 2.78202995e-13, 1.88849785e-13, 1.28516869e-13,
8.76452048e-14, 5.98744983e-14, 4.09575753e-14, 2.80454468e-14,
1.92181048e-14, 1.31761341e-14, 9.03700770e-15, 6.19964612e-15,
4.25376867e-15, 2.91886746e-15, 2.00292465e-15, 1.37437854e-15,
9.43030398e-16, 6.47011371e-16, 4.43871100e-16, 3.04476898e-16,
2.08833251e-16, 1.43215252e-16, 9.82020690e-17, 6.73274110e-17,
4.61532035e-17, 3.16336760e-17, 2.16787850e-17, 1.48544836e-17,
1.01769501e-17, 6.97132786e-18, 4.77476059e-18, 3.26984000e-18,
2.23893188e-18, 1.53283526e-18, 1.04927930e-18, 7.18172196e-19,
4.91483348e-19, 3.36304485e-19, 2.30091753e-19, 1.57403689e-19,
1.07665148e-19, 7.36347273e-20]), 'dnde_err': array([1.85071772e-12, 1.16080356e-12, 7.27468821e-13, 4.56311959e-13,
2.87241844e-13, 1.82128574e-13, 1.16861816e-13, 7.62603758e-14,
5.08221496e-14, 3.46543963e-14, 2.41513442e-14, 1.71404270e-14,
1.23274797e-14, 8.94128842e-15, 6.51426379e-15, 4.75334113e-15,
3.46694252e-15, 2.52449461e-15, 1.83389332e-15, 1.32857844e-15,
9.59735126e-16, 6.91294850e-16, 4.96540555e-16, 3.55694330e-16,
2.54150632e-16, 1.81160104e-16, 1.28841665e-16, 9.14399232e-17,
6.47681333e-17, 4.57919843e-17, 3.23201038e-17, 2.27750834e-17,
1.60249295e-17, 1.12595915e-17, 7.90091898e-18, 5.53727523e-18,
3.87623766e-18, 2.71050465e-18, 1.89340162e-18, 1.32133636e-18,
9.21266690e-19, 6.41771200e-19, 4.46701978e-19, 3.10682499e-19,
2.15920614e-19, 1.49956656e-19, 1.04075028e-19, 7.21855506e-20,
5.00368366e-20, 3.46638889e-20]), 'dnde_ferr': array([0.2041239 , 0.19047266, 0.1775393 , 0.16557 , 0.15487265,
0.14581457, 0.13880102, 0.13422481, 0.13238901, 0.1334273 ,
0.13726316, 0.14363368, 0.15216255, 0.16244156, 0.17408953,
0.18678114, 0.20025345, 0.21430063, 0.22876438, 0.243524 ,
0.25848778, 0.27358608, 0.28876594, 0.30398706, 0.3192187 ,
0.33443747, 0.34962557, 0.3647695 , 0.37985911, 0.39488683,
0.40984713, 0.42473604, 0.43955085, 0.45428984, 0.46895204,
0.4835371 , 0.49804513, 0.51247664, 0.52683241, 0.54111347,
0.55532099, 0.56945629, 0.5835208 , 0.597516 , 0.61144342,
0.62530461, 0.63910116, 0.65283465, 0.66650664, 0.68011869]), 'pivot_energy': 1028.6249534295357}}}
0.003 nan nan 0.000
Running extension on source 3FGL J0102.3+4217
2026-07-17 22:13:40 INFO GTAnalysis._extension(): Fitting extended-source model.
2026-07-17 22:13:59 INFO GTAnalysis._extension(): Generating TS map.
2026-07-17 22:14:21 INFO GTAnalysis._extension(): Testing point-source model.
2026-07-17 22:14:23 INFO GTAnalysis._extension(): Best-fit extension: 1.2688 + nan - nan
2026-07-17 22:14:23 INFO GTAnalysis._extension(): TS_ext: 0.000
2026-07-17 22:14:23 INFO GTAnalysis._extension(): Extension UL: nan
2026-07-17 22:14:23 INFO GTAnalysis._extension(): LogLike: -246705.415 DeltaLogLike: 3.316
2026-07-17 22:14:23 INFO GTAnalysis.extension(): Finished extension fit.
2026-07-17 22:14:23 WARNING GTAnalysis.extension(): Saving maps in .npy files is disabled b/c of incompatibilities in python3, remove the maps from the /home/runner/work/fermipy/fermipy/fermipy-extra/notebooks/M31_data/3fgl_j0102.3+4217_ext.npy
2026-07-17 22:14:23 INFO GTAnalysis.extension(): Execution time: 77.92 s
2026-07-17 22:14:23 INFO GTAnalysis.print_model():
sourcename offset norm eflux index ts npred free
--------------------------------------------------------------------------------
3FGL J0042.5+4117 0.031 1.053 8.52e-07 2.58 30.07 324.2
3FGL J0040.3+4049 0.624 0.222 1.99e-06 1.77 73.87 149.1
3FGL J0049.0+4224 1.650 0.278 1.33e-06 1.63 29.89 61.4 *
3FGL J0048.0+3950 1.771 0.603 5.84e-06 1.94 545.61 728.3
3FGL J0039.1+4330 2.337 0.225 1.54e-06 1.89 62.65 169.0
3FGL J0032.5+3912 2.833 0.550 9.81e-07 2.45 46.83 318.7
3FGL J0102.3+4217 3.800 0.575 1.65e-06 2.73 126.19 692.1 *
3FGL J0041.9+3639 4.600 1.601 1.28e-06 2.19 70.10 260.1
3FGL J0105.3+3928 4.639 0.549 2.55e-06 2.23 215.82 582.0 *
3FGL J0023.5+4454 5.046 2.144 2.46e-06 2.45 220.86 792.9
3FGL J0102.1+4458 5.147 0.208 8.65e-07 1.72 16.48 55.1 *
3FGL J0022.7+4651 6.635 1.107 2.89e-07 5.00 4.97 128.0
isodiff --- 0.875 0.0389 2.12 924.97 31907.6 *
galdiff --- 1.096 0.229 0.02 6739.38 91244.0 *
2026-07-17 22:14:23 INFO GTAnalysis.free_source(): Fixing parameters for 3FGL J0049.0+4224 : ['Prefactor', 'Index']
2026-07-17 22:14:23 INFO GTAnalysis.free_source(): Fixing parameters for 3FGL J0102.3+4217 : ['Prefactor', 'Index']
2026-07-17 22:14:23 INFO GTAnalysis.free_source(): Fixing parameters for 3FGL J0105.3+3928 : ['Prefactor', 'Index']
2026-07-17 22:14:23 INFO GTAnalysis.free_source(): Fixing parameters for 3FGL J0102.1+4458 : ['Prefactor', 'Index']
2026-07-17 22:14:23 INFO GTAnalysis.free_source(): Fixing parameters for isodiff : ['Normalization']
2026-07-17 22:14:23 INFO GTAnalysis.free_source(): Fixing parameters for galdiff : ['Prefactor', 'Index']
2026-07-17 22:14:23 INFO GTAnalysis.print_model():
sourcename offset norm eflux index ts npred free
--------------------------------------------------------------------------------
3FGL J0042.5+4117 0.031 1.053 8.52e-07 2.58 30.07 324.2
3FGL J0040.3+4049 0.624 0.222 1.99e-06 1.77 73.87 149.1
3FGL J0049.0+4224 1.650 0.278 1.33e-06 1.63 29.89 61.4
3FGL J0048.0+3950 1.771 0.603 5.84e-06 1.94 545.61 728.3
3FGL J0039.1+4330 2.337 0.225 1.54e-06 1.89 62.65 169.0
3FGL J0032.5+3912 2.833 0.550 9.81e-07 2.45 46.83 318.7
3FGL J0102.3+4217 3.800 0.575 1.65e-06 2.73 126.19 692.1
3FGL J0041.9+3639 4.600 1.601 1.28e-06 2.19 70.10 260.1
3FGL J0105.3+3928 4.639 0.549 2.55e-06 2.23 215.82 582.0
3FGL J0023.5+4454 5.046 2.144 2.46e-06 2.45 220.86 792.9
3FGL J0102.1+4458 5.147 0.208 8.65e-07 1.72 16.48 55.1
3FGL J0022.7+4651 6.635 1.107 2.89e-07 5.00 4.97 128.0
isodiff --- 0.875 0.0389 2.12 924.97 31907.6
galdiff --- 1.096 0.229 0.02 6739.38 91244.0
2026-07-17 22:14:23 INFO GTAnalysis.free_source(): Freeing parameters for 3FGL J0041.9+3639 : ['Prefactor', 'Index']
2026-07-17 22:14:23 INFO GTAnalysis.free_source(): Freeing parameters for 3FGL J0032.5+3912 : ['Prefactor', 'Index']
2026-07-17 22:14:23 INFO GTAnalysis.free_source(): Freeing parameters for isodiff : ['Normalization']
2026-07-17 22:14:23 INFO GTAnalysis.free_source(): Freeing parameters for galdiff : ['Prefactor', 'Index']
2026-07-17 22:14:23 INFO GTAnalysis.print_model():
sourcename offset norm eflux index ts npred free
--------------------------------------------------------------------------------
3FGL J0042.5+4117 0.031 1.053 8.52e-07 2.58 30.07 324.2
3FGL J0040.3+4049 0.624 0.222 1.99e-06 1.77 73.87 149.1
3FGL J0049.0+4224 1.650 0.278 1.33e-06 1.63 29.89 61.4
3FGL J0048.0+3950 1.771 0.603 5.84e-06 1.94 545.61 728.3
3FGL J0039.1+4330 2.337 0.225 1.54e-06 1.89 62.65 169.0
3FGL J0032.5+3912 2.833 0.550 9.81e-07 2.45 46.83 318.7 *
3FGL J0102.3+4217 3.800 0.575 1.65e-06 2.73 126.19 692.1
3FGL J0041.9+3639 4.600 1.601 1.28e-06 2.19 70.10 260.1 *
3FGL J0105.3+3928 4.639 0.549 2.55e-06 2.23 215.82 582.0
3FGL J0023.5+4454 5.046 2.144 2.46e-06 2.45 220.86 792.9
3FGL J0102.1+4458 5.147 0.208 8.65e-07 1.72 16.48 55.1
3FGL J0022.7+4651 6.635 1.107 2.89e-07 5.00 4.97 128.0
isodiff --- 0.875 0.0389 2.12 924.97 31907.6 *
galdiff --- 1.096 0.229 0.02 6739.38 91244.0 *
2026-07-17 22:14:23 INFO GTAnalysis.extension(): Running extension fit for 3FGL J0041.9+3639
{'spatial_model': 'RadialGaussian', 'width': [], 'fit_position': False, 'width_min': 0.01, 'width_max': 5.0, 'width_nstep': 21, 'free_background': False, 'fix_shape': False, 'free_radius': None, 'fit_ebin': False, 'update': True, 'save_model_map': False, 'sqrt_ts_threshold': 3.0, 'psf_scale_fn': None, 'make_tsmap': True, 'tsmap_fitter': 'tsmap', 'make_plots': False, 'write_fits': True, 'write_npy': True, 'reoptimize': False, 'ra_format': 'hour', 'optimizer': {'optimizer': 'MINUIT', 'tol': 0.001, 'max_iter': 100, 'init_lambda': 0.0001, 'retries': 3, 'min_fit_quality': 2, 'verbosity': 0}, 'prefix': '', 'outfile': None, 'loge_bins': []}
{'spatial_model': 'RadialGaussian', 'width': [], 'fit_position': False, 'width_min': 0.01, 'width_max': 5.0, 'width_nstep': 21, 'free_background': False, 'fix_shape': False, 'free_radius': None, 'fit_ebin': False, 'update': True, 'save_model_map': False, 'sqrt_ts_threshold': 3.0, 'psf_scale_fn': None, 'make_tsmap': True, 'tsmap_fitter': 'tsmap', 'make_plots': False, 'write_fits': True, 'write_npy': True, 'reoptimize': False, 'ra_format': 'hour', 'optimizer': {'optimizer': 'MINUIT', 'tol': 0.001, 'max_iter': 100, 'init_lambda': 0.0001, 'retries': 3, 'min_fit_quality': 2, 'verbosity': 0}, 'prefix': '', 'outfile': None, 'loge_bins': []}
{'name': '3FGL J0102.3+4217', 'file': None, 'config': {'spatial_model': 'RadialGaussian', 'width': [], 'fit_position': False, 'width_min': 0.01, 'width_max': 5.0, 'width_nstep': 21, 'free_background': False, 'fix_shape': False, 'free_radius': None, 'fit_ebin': False, 'update': True, 'save_model_map': False, 'sqrt_ts_threshold': 3.0, 'psf_scale_fn': None, 'make_tsmap': True, 'tsmap_fitter': 'tsmap', 'make_plots': False, 'write_fits': True, 'write_npy': True, 'reoptimize': False, 'ra_format': 'hour', 'optimizer': {'optimizer': 'MINUIT', 'tol': 0.001, 'max_iter': 100, 'init_lambda': 0.0001, 'retries': 3, 'min_fit_quality': 2, 'verbosity': 0}, 'prefix': '', 'outfile': None, 'loge_bins': []}, 'width': array([0. , 0.01 , 0.01364421, 0.01861646, 0.02540069,
0.03465724, 0.04728708, 0.0645195 , 0.08803178, 0.12011244,
0.16388398, 0.2236068 , 0.30509388, 0.4162766 , 0.56797668,
0.77495949, 1.05737126, 1.44269991, 1.96845052, 2.68579588,
3.66455719, 5. ]), 'dloglike': array([-2.91038305e-11, -3.69473128e-06, 2.06829282e-06, 2.27207784e-06,
1.63604273e-06, 2.35141488e-06, 1.30533590e-06, -1.00492616e-05,
2.38473876e-06, 2.49157893e-06, 1.62323704e-06, -1.10070105e-05,
1.94326276e-07, -3.09664756e-08, 2.33302126e-06, 2.56375642e-06,
2.56672502e-06, 2.56672502e-06, 2.56672502e-06, 2.56672502e-06,
2.56672502e-06, 2.56672502e-06]), 'loglike': array([-246705.41468172, -246705.41468542, -246705.41467966,
-246705.41467945, -246705.41468009, -246705.41467937,
-246705.41468042, -246705.41469177, -246705.41467934,
-246705.41467923, -246705.4146801 , -246705.41469273,
-246705.41468153, -246705.41468176, -246705.41467939,
-246705.41467916, -246705.41467916, -246705.41467916,
-246705.41467916, -246705.41467916, -246705.41467916,
-246705.41467916]), 'loglike_ptsrc': -246705.4146817245, 'loglike_ext': -246705.41467934859, 'loglike_init': -246708.73054776064, 'loglike_base': -246705.4146832445, 'ext': np.float64(1.268845516128677), 'ext_err_hi': np.float64(nan), 'ext_err_lo': np.float64(nan), 'ext_err': nan, 'ext_ul95': nan, 'ts_ext': 4.751840606331825e-06, 'ebin_e_min': array([], dtype=float64), 'ebin_e_ctr': array([], dtype=float64), 'ebin_e_max': array([], dtype=float64), 'ebin_ext': array([], dtype=float64), 'ebin_ext_err': array([], dtype=float64), 'ebin_ext_err_hi': array([], dtype=float64), 'ebin_ext_err_lo': array([], dtype=float64), 'ebin_ext_ul95': array([], dtype=float64), 'ebin_ts_ext': array([], dtype=float64), 'ebin_dloglike': array([], shape=(0, 22), dtype=float64), 'ebin_loglike': array([], shape=(0, 22), dtype=float64), 'ebin_loglike_ptsrc': array([], dtype=float64), 'ebin_loglike_ext': array([], dtype=float64), 'ra': np.float64(15.619669420657145), 'dec': np.float64(42.20940589603612), 'glon': np.float64(125.11594301756404), 'glat': np.float64(-20.615517250498943), 'ra_err': nan, 'dec_err': nan, 'glon_err': nan, 'glat_err': nan, 'pos_offset': 0.0, 'pos_err': nan, 'pos_r68': nan, 'pos_r95': nan, 'pos_r99': nan, 'pos_err_semimajor': nan, 'pos_err_semiminor': nan, 'pos_angle': nan, 'tsmap': <gammapy.maps.wcs.ndmap.WcsNDMap object at 0x7f78576e74d0>, 'ptsrc_tot_map': None, 'ptsrc_src_map': None, 'ptsrc_bkg_map': None, 'ext_tot_map': None, 'ext_src_map': None, 'ext_bkg_map': None, 'source_fit': {'param_names': array([b'Prefactor', b'Index', b'Scale', b'', b'', b'', b'', b'', b'',
b''], dtype='|S32'), 'param_values': array([ 7.70543753e-12, -2.80898972e+00, 4.09733124e+02, nan,
nan, nan, nan, nan,
nan, nan]), 'param_errors': array([8.35502617e-13, 1.04417524e-01, nan, nan,
nan, nan, nan, nan,
nan, nan]), 'ts': np.float64(176.90555299806874), 'loglike': np.float64(-246705.41467934859), 'loglike_scan': array([-246793.86745585, -246708.12682849, -246707.4793279 ,
-246706.9230382 , -246706.45635343, -246706.0777257 ,
-246705.78566183, -246705.57872029, -246705.45550832,
-246705.41467935, -246705.44264261, -246705.52617331,
-246705.66455887, -246705.85710509, -246706.10313536,
-246706.40199003, -246706.75302563, -246707.15561437,
-246707.60914342, -246708.11301444]), 'dloglike_scan': array([-8.84527765e+01, -2.71214915e+00, -2.06464855e+00, -1.50835885e+00,
-1.04167408e+00, -6.63046348e-01, -3.70982481e-01, -1.64040937e-01,
-4.08289680e-02, 0.00000000e+00, -2.79632648e-02, -1.11493964e-01,
-2.49879524e-01, -4.42425738e-01, -6.88456015e-01, -9.87310677e-01,
-1.33834629e+00, -1.74093502e+00, -2.19446407e+00, -2.69833509e+00]), 'eflux_scan': array([0.00000000e+00, 1.64495094e-06, 1.69598437e-06, 1.74701781e-06,
1.79805125e-06, 1.84908469e-06, 1.90011813e-06, 1.95115157e-06,
2.00218501e-06, 2.05321845e-06, 2.09574413e-06, 2.13826982e-06,
2.18079550e-06, 2.22332119e-06, 2.26584687e-06, 2.30837256e-06,
2.35089824e-06, 2.39342393e-06, 2.43594961e-06, 2.47847530e-06]), 'flux_scan': array([0.00000000e+00, 2.46119897e-09, 2.53755593e-09, 2.61391288e-09,
2.69026984e-09, 2.76662680e-09, 2.84298376e-09, 2.91934071e-09,
2.99569767e-09, 3.07205463e-09, 3.13568216e-09, 3.19930970e-09,
3.26293723e-09, 3.32656477e-09, 3.39019230e-09, 3.45381983e-09,
3.51744737e-09, 3.58107490e-09, 3.64470244e-09, 3.70832997e-09]), 'norm_scan': array([0. , 0.61732675, 0.63647887, 0.655631 , 0.67478312,
0.69393525, 0.71308738, 0.7322395 , 0.75139163, 0.77054375,
0.78650304, 0.80246233, 0.81842161, 0.8343809 , 0.85034018,
0.86629947, 0.88225876, 0.89821804, 0.91417733, 0.93013662]), 'npred': 861.5441209971523, 'npred_wt': 861.5441209971523, 'pivot_energy': 758.5015672759246, 'flux': 3.0720546285041784e-09, 'flux100': 2.2420952452419836e-08, 'flux1000': 3.4775055281456903e-10, 'flux10000': 5.385105965352705e-12, 'flux_err': np.float64(2.934595077890761e-10), 'flux100_err': np.float64(3.959251542949772e-09), 'flux1000_err': np.float64(4.27079628567009e-11), 'flux10000_err': np.float64(1.8183405278867406e-12), 'flux_ul95': 3.521556602967584e-09, 'flux100_ul95': 2.570157848790804e-08, 'flux1000_ul95': 3.986332938506557e-10, 'flux10000_ul95': 6.173052814233883e-12, 'eflux': 2.053218449731512e-06, 'eflux100': 4.998961172322106e-06, 'eflux1000': 7.696800900201887e-07, 'eflux10000': 1.1324039457502323e-07, 'eflux_err': np.float64(1.8964732649879681e-07), 'eflux100_err': np.float64(6.045360219380818e-07), 'eflux1000_err': np.float64(1.3498932709139614e-07), 'eflux10000_err': np.float64(4.3581063541255134e-08), 'eflux_ul95': 2.3536446656573636e-06, 'eflux100_ul95': 5.730407448171309e-06, 'eflux1000_ul95': 8.822994155227775e-07, 'eflux10000_ul95': 1.2980969008109722e-07, 'dnde': 1.3662111117626516e-12, 'dnde100': 4.048615430645883e-10, 'dnde1000': 6.285166784620476e-13, 'dnde10000': 9.757242244219395e-16, 'dnde_err': np.float64(1.192592415251126e-13), 'dnde100_err': np.float64(9.266656596586245e-11), 'dnde1000_err': np.float64(5.778227506486717e-14), 'dnde10000_err': np.float64(2.761990648617883e-16), 'dnde_index': np.float64(2.8089897193274536), 'dnde100_index': np.float64(2.808989719316352), 'dnde1000_index': np.float64(2.8089897193274536), 'dnde10000_index': np.float64(2.808989719305251), 'name': '3FGL J0102.3+4217', 'spectral_pars': {'Prefactor': {'name': 'Prefactor', 'value': 0.7705437531211374, 'error': 0.08355026173744015, 'min': 1e-05, 'max': 1000.0, 'free': True, 'scale': 1e-11}, 'Index': {'name': 'Index', 'value': 2.808989719307584, 'error': 0.10441752442013369, 'min': 0.0, 'max': 5.0, 'free': True, 'scale': -1.0}, 'Scale': {'name': 'Scale', 'value': 409.7331238, 'error': nan, 'min': 409.7331238, 'max': 409.7331238, 'free': False, 'scale': 1.0}}, 'model_counts': array([2.94992928e+02, 2.01061259e+02, 1.33451162e+02, 8.69469027e+01,
5.55871570e+01, 3.50376702e+01, 2.15953242e+01, 1.31452258e+01,
7.92192142e+00, 4.72933957e+00, 2.82667085e+00, 1.70881818e+00,
1.02176691e+00, 6.09607344e-01, 3.63570674e-01, 2.17960671e-01,
1.32217898e-01, 7.96612207e-02, 4.74802120e-02, 2.81672775e-02,
1.67322592e-02, 9.90213599e-03, 5.88968238e-03, 3.50077736e-03,
2.07423834e-03, 1.21050415e-03]), 'model_counts_wt': array([2.94992928e+02, 2.01061259e+02, 1.33451162e+02, 8.69469027e+01,
5.55871570e+01, 3.50376702e+01, 2.15953242e+01, 1.31452258e+01,
7.92192142e+00, 4.72933957e+00, 2.82667085e+00, 1.70881818e+00,
1.02176691e+00, 6.09607344e-01, 3.63570674e-01, 2.17960671e-01,
1.32217898e-01, 7.96612207e-02, 4.74802120e-02, 2.81672775e-02,
1.67322592e-02, 9.90213599e-03, 5.88968238e-03, 3.50077736e-03,
2.07423834e-03, 1.21050415e-03]), 'covar': array([[0.00698065, 0.00517518],
[0.00517518, 0.01090302]]), 'model_flux': {'energies': array([2.99999133e+02, 3.49037461e+02, 4.06091671e+02, 4.72472050e+02,
5.49703071e+02, 6.39558395e+02, 7.44101611e+02, 8.65733625e+02,
1.00724780e+03, 1.17189410e+03, 1.36345374e+03, 1.58632602e+03,
1.84562936e+03, 2.14731882e+03, 2.49832292e+03, 2.90670269e+03,
3.38183686e+03, 3.93463720e+03, 4.57779916e+03, 5.32609337e+03,
6.19670492e+03, 7.20962801e+03, 8.38812508e+03, 9.75926113e+03,
1.13545252e+04, 1.32105537e+04, 1.53699715e+04, 1.78823711e+04,
2.08054514e+04, 2.42063430e+04, 2.81631498e+04, 3.27667423e+04,
3.81228452e+04, 4.43544652e+04, 5.16047155e+04, 6.00401030e+04,
6.98543522e+04, 8.12728539e+04, 9.45578417e+04, 1.10014415e+05,
1.27997543e+05, 1.48920221e+05, 1.73262954e+05, 2.01584787e+05,
2.34536152e+05, 2.72873799e+05, 3.17478177e+05, 3.69373656e+05,
4.29752052e+05, 4.99999995e+05]), 'log_energies': array([2.47712 , 2.54287204, 2.60862408, 2.67437612, 2.74012816,
2.8058802 , 2.87163224, 2.93738429, 3.00313633, 3.06888837,
3.13464041, 3.20039245, 3.26614449, 3.33189653, 3.39764857,
3.46340061, 3.52915265, 3.59490469, 3.66065673, 3.72640878,
3.79216082, 3.85791286, 3.9236649 , 3.98941694, 4.05516898,
4.12092102, 4.18667306, 4.2524251 , 4.31817714, 4.38392918,
4.44968122, 4.51543327, 4.58118531, 4.64693735, 4.71268939,
4.77844143, 4.84419347, 4.90994551, 4.97569755, 5.04144959,
5.10720163, 5.17295367, 5.23870571, 5.30445776, 5.3702098 ,
5.43596184, 5.50171388, 5.56746592, 5.63321796, 5.69897 ]), 'dnde': array([1.84961505e-11, 1.20888376e-11, 7.90110326e-12, 5.16405586e-12,
3.37515813e-12, 2.20595840e-12, 1.44178503e-12, 9.42331490e-13,
6.15895311e-13, 4.02540972e-13, 2.63095418e-13, 1.71955661e-13,
1.12387930e-13, 7.34552539e-14, 4.80093756e-14, 3.13782884e-14,
2.05084314e-14, 1.34040376e-14, 8.76070045e-15, 5.72587713e-15,
3.74235703e-15, 2.44595471e-15, 1.59864342e-15, 1.04485205e-15,
6.82901381e-16, 4.46335247e-16, 2.91718773e-16, 1.90663504e-16,
1.24615127e-16, 8.14467872e-17, 5.32325353e-17, 3.47920761e-17,
2.27396375e-17, 1.48623242e-17, 9.71381715e-18, 6.34882151e-18,
4.14950518e-18, 2.71206132e-18, 1.77256715e-18, 1.15852628e-18,
7.57197348e-19, 4.94894101e-19, 3.23456193e-19, 2.11406660e-19,
1.38172577e-19, 9.03077560e-20, 5.90239465e-20, 3.85772653e-20,
2.52135868e-20, 1.64792645e-20]), 'dnde_lo': array([1.63624979e-11, 1.08020355e-11, 7.12462077e-12, 4.69321895e-12,
3.08642837e-12, 2.02549912e-12, 1.32600456e-12, 8.65815443e-13,
5.63916980e-13, 3.66480743e-13, 2.37747303e-13, 1.54024643e-13,
9.96851713e-14, 6.44702230e-14, 4.16743117e-14, 2.69293980e-14,
1.73973848e-14, 1.12376967e-14, 7.25828346e-15, 4.68785445e-15,
3.02770169e-15, 1.95552001e-15, 1.26307846e-15, 8.15875429e-16,
5.27045177e-16, 3.40491354e-16, 2.19989247e-16, 1.42146470e-16,
9.18568494e-17, 5.93647962e-17, 3.83697675e-17, 2.48023371e-17,
1.60339148e-17, 1.03664526e-17, 6.70292477e-18, 4.33452936e-18,
2.80325578e-18, 1.81311918e-18, 1.17282292e-18, 7.58718326e-19,
4.90874275e-19, 3.17615030e-19, 2.05528654e-19, 1.33009829e-19,
8.60864048e-20, 5.57216971e-20, 3.60705256e-20, 2.33516953e-20,
1.51189494e-20, 9.78952235e-21]), 'dnde_hi': array([2.09080292e-11, 1.35289312e-11, 8.76221132e-12, 5.68212844e-12,
3.69089803e-12, 2.40249547e-12, 1.56767490e-12, 1.02560961e-12,
6.72664679e-13, 4.42149383e-13, 2.91146095e-13, 1.91974147e-13,
1.26709385e-13, 8.36925030e-14, 5.53074556e-14, 3.65621610e-14,
2.41758036e-14, 1.59879938e-14, 1.05741079e-14, 6.99374719e-15,
4.62569882e-15, 3.05938799e-15, 2.02335870e-15, 1.33809128e-15,
8.84846910e-16, 5.85081384e-16, 3.86836372e-16, 2.55740236e-16,
1.69055764e-16, 1.11742642e-16, 7.38524886e-17, 4.88054232e-17,
3.22498354e-17, 2.13080298e-17, 1.40771748e-17, 9.29917212e-18,
6.14228404e-18, 4.05669779e-18, 2.67900146e-18, 1.76901374e-18,
1.16801359e-18, 7.71122737e-19, 5.09047799e-19, 3.36011076e-19,
2.21773241e-19, 1.46361134e-19, 9.65837398e-20, 6.37300793e-20,
4.20482232e-20, 2.77404911e-20]), 'dnde_err': array([2.41187867e-12, 1.44009358e-12, 8.61108061e-13, 5.18072586e-13,
3.15739901e-13, 1.96537068e-13, 1.25889873e-13, 8.32781178e-14,
5.67693680e-14, 3.96084106e-14, 2.80506771e-14, 2.00184857e-14,
1.43214551e-14, 1.02372490e-14, 7.29807998e-15, 5.18387253e-15,
3.66737224e-15, 2.58395618e-15, 1.81340743e-15, 1.26787006e-15,
8.83341788e-16, 6.13433283e-16, 4.24715278e-16, 2.93239235e-16,
2.01945529e-16, 1.38746137e-16, 9.51175996e-17, 6.50767316e-17,
4.44406371e-17, 3.02958544e-17, 2.06199533e-17, 1.40133471e-17,
9.51019791e-18, 6.44570555e-18, 4.36335763e-18, 2.95035061e-18,
1.99277886e-18, 1.34463648e-18, 9.06434302e-19, 6.10487462e-19,
4.10816241e-19, 2.76228635e-19, 1.85591606e-19, 1.24604417e-19,
8.36006643e-20, 5.60533781e-20, 3.75597934e-20, 2.51528140e-20,
1.68346364e-20, 1.12612266e-20]), 'dnde_ferr': array([0.12287777, 0.11278569, 0.1036305 , 0.0957493 , 0.08954687,
0.08544956, 0.08380942, 0.0847866 , 0.08828424, 0.09398874,
0.1014818 , 0.11034677, 0.12022738, 0.13084347, 0.14198418,
0.15349408, 0.16525932, 0.1771965 , 0.18924425, 0.20135716,
0.21350143, 0.22565176, 0.23778919, 0.24989943, 0.26197175,
0.27399811, 0.28597255, 0.29789069, 0.30974937, 0.32154642,
0.3332804 , 0.34495047, 0.35655627, 0.36809778, 0.37957529,
0.39098932, 0.40234053, 0.41362977, 0.42485796, 0.43602611,
0.44713529, 0.45818662, 0.46918122, 0.48012028, 0.49100494,
0.50183639, 0.51261579, 0.5233443 , 0.53402307, 0.54465322]), 'pivot_energy': 758.5015672759246}}}
1.269 nan nan 0.000
Running extension on source 3FGL J0041.9+3639
2026-07-17 22:15:00 INFO GTAnalysis._extension(): Fitting extended-source model.
2026-07-17 22:15:20 INFO GTAnalysis._extension(): Generating TS map.
2026-07-17 22:16:54 INFO GTAnalysis._extension(): Testing point-source model.
/home/runner/work/fermipy/fermipy/fermipy/extension.py:314: RuntimeWarning: invalid value encountered in sqrt
np.sqrt(o['ts_ext']) > sqrt_ts_threshold):
2026-07-17 22:16:56 INFO GTAnalysis._extension(): Best-fit extension: 4.3975 + nan - nan
2026-07-17 22:16:56 INFO GTAnalysis._extension(): TS_ext: -0.000
2026-07-17 22:16:56 INFO GTAnalysis._extension(): Extension UL: nan
2026-07-17 22:16:56 INFO GTAnalysis._extension(): LogLike: -246706.338 DeltaLogLike: 1.347
2026-07-17 22:16:56 INFO GTAnalysis.extension(): Finished extension fit.
2026-07-17 22:16:56 WARNING GTAnalysis.extension(): Saving maps in .npy files is disabled b/c of incompatibilities in python3, remove the maps from the /home/runner/work/fermipy/fermipy/fermipy-extra/notebooks/M31_data/3fgl_j0041.9+3639_ext.npy
2026-07-17 22:16:56 INFO GTAnalysis.extension(): Execution time: 152.51 s
2026-07-17 22:16:56 INFO GTAnalysis.print_model():
sourcename offset norm eflux index ts npred free
--------------------------------------------------------------------------------
3FGL J0042.5+4117 0.031 1.053 8.52e-07 2.58 30.07 324.2
3FGL J0040.3+4049 0.624 0.222 1.99e-06 1.77 73.87 149.1
3FGL J0049.0+4224 1.650 0.278 1.33e-06 1.63 29.89 61.4
3FGL J0048.0+3950 1.771 0.603 5.84e-06 1.94 545.61 728.3
3FGL J0039.1+4330 2.337 0.225 1.54e-06 1.89 62.65 169.0
3FGL J0032.5+3912 2.833 0.550 9.81e-07 2.45 46.83 318.7 *
3FGL J0102.3+4217 3.800 0.575 1.65e-06 2.73 126.19 692.1
3FGL J0041.9+3639 4.600 1.601 1.28e-06 2.19 70.10 260.1 *
3FGL J0105.3+3928 4.639 0.549 2.55e-06 2.23 215.82 582.0
3FGL J0023.5+4454 5.046 2.144 2.46e-06 2.45 220.86 792.9
3FGL J0102.1+4458 5.147 0.208 8.65e-07 1.72 16.48 55.1
3FGL J0022.7+4651 6.635 1.107 2.89e-07 5.00 4.97 128.0
isodiff --- 0.875 0.0389 2.12 924.97 31907.6 *
galdiff --- 1.096 0.229 0.02 6739.38 91244.0 *
2026-07-17 22:16:56 INFO GTAnalysis.free_source(): Fixing parameters for 3FGL J0032.5+3912 : ['Prefactor', 'Index']
2026-07-17 22:16:56 INFO GTAnalysis.free_source(): Fixing parameters for 3FGL J0041.9+3639 : ['Prefactor', 'Index']
2026-07-17 22:16:56 INFO GTAnalysis.free_source(): Fixing parameters for isodiff : ['Normalization']
2026-07-17 22:16:56 INFO GTAnalysis.free_source(): Fixing parameters for galdiff : ['Prefactor', 'Index']
2026-07-17 22:16:56 INFO GTAnalysis.print_model():
sourcename offset norm eflux index ts npred free
--------------------------------------------------------------------------------
3FGL J0042.5+4117 0.031 1.053 8.52e-07 2.58 30.07 324.2
3FGL J0040.3+4049 0.624 0.222 1.99e-06 1.77 73.87 149.1
3FGL J0049.0+4224 1.650 0.278 1.33e-06 1.63 29.89 61.4
3FGL J0048.0+3950 1.771 0.603 5.84e-06 1.94 545.61 728.3
3FGL J0039.1+4330 2.337 0.225 1.54e-06 1.89 62.65 169.0
3FGL J0032.5+3912 2.833 0.550 9.81e-07 2.45 46.83 318.7
3FGL J0102.3+4217 3.800 0.575 1.65e-06 2.73 126.19 692.1
3FGL J0041.9+3639 4.600 1.601 1.28e-06 2.19 70.10 260.1
3FGL J0105.3+3928 4.639 0.549 2.55e-06 2.23 215.82 582.0
3FGL J0023.5+4454 5.046 2.144 2.46e-06 2.45 220.86 792.9
3FGL J0102.1+4458 5.147 0.208 8.65e-07 1.72 16.48 55.1
3FGL J0022.7+4651 6.635 1.107 2.89e-07 5.00 4.97 128.0
isodiff --- 0.875 0.0389 2.12 924.97 31907.6
galdiff --- 1.096 0.229 0.02 6739.38 91244.0
2026-07-17 22:16:56 INFO GTAnalysis.free_source(): Freeing parameters for 3FGL J0105.3+3928 : ['Prefactor', 'Index']
2026-07-17 22:16:56 INFO GTAnalysis.free_source(): Freeing parameters for 3FGL J0102.3+4217 : ['Prefactor', 'Index']
2026-07-17 22:16:56 INFO GTAnalysis.free_source(): Freeing parameters for isodiff : ['Normalization']
2026-07-17 22:16:56 INFO GTAnalysis.free_source(): Freeing parameters for galdiff : ['Prefactor', 'Index']
2026-07-17 22:16:56 INFO GTAnalysis.print_model():
sourcename offset norm eflux index ts npred free
--------------------------------------------------------------------------------
3FGL J0042.5+4117 0.031 1.053 8.52e-07 2.58 30.07 324.2
3FGL J0040.3+4049 0.624 0.222 1.99e-06 1.77 73.87 149.1
3FGL J0049.0+4224 1.650 0.278 1.33e-06 1.63 29.89 61.4
3FGL J0048.0+3950 1.771 0.603 5.84e-06 1.94 545.61 728.3
3FGL J0039.1+4330 2.337 0.225 1.54e-06 1.89 62.65 169.0
3FGL J0032.5+3912 2.833 0.550 9.81e-07 2.45 46.83 318.7
3FGL J0102.3+4217 3.800 0.575 1.65e-06 2.73 126.19 692.1 *
3FGL J0041.9+3639 4.600 1.601 1.28e-06 2.19 70.10 260.1
3FGL J0105.3+3928 4.639 0.549 2.55e-06 2.23 215.82 582.0 *
3FGL J0023.5+4454 5.046 2.144 2.46e-06 2.45 220.86 792.9
3FGL J0102.1+4458 5.147 0.208 8.65e-07 1.72 16.48 55.1
3FGL J0022.7+4651 6.635 1.107 2.89e-07 5.00 4.97 128.0
isodiff --- 0.875 0.0389 2.12 924.97 31907.6 *
galdiff --- 1.096 0.229 0.02 6739.38 91244.0 *
2026-07-17 22:16:56 INFO GTAnalysis.extension(): Running extension fit for 3FGL J0105.3+3928
{'spatial_model': 'RadialGaussian', 'width': [], 'fit_position': False, 'width_min': 0.01, 'width_max': 5.0, 'width_nstep': 21, 'free_background': False, 'fix_shape': False, 'free_radius': None, 'fit_ebin': False, 'update': True, 'save_model_map': False, 'sqrt_ts_threshold': 3.0, 'psf_scale_fn': None, 'make_tsmap': True, 'tsmap_fitter': 'tsmap', 'make_plots': False, 'write_fits': True, 'write_npy': True, 'reoptimize': False, 'ra_format': 'hour', 'optimizer': {'optimizer': 'MINUIT', 'tol': 0.001, 'max_iter': 100, 'init_lambda': 0.0001, 'retries': 3, 'min_fit_quality': 2, 'verbosity': 0}, 'prefix': '', 'outfile': None, 'loge_bins': []}
{'spatial_model': 'RadialGaussian', 'width': [], 'fit_position': False, 'width_min': 0.01, 'width_max': 5.0, 'width_nstep': 21, 'free_background': False, 'fix_shape': False, 'free_radius': None, 'fit_ebin': False, 'update': True, 'save_model_map': False, 'sqrt_ts_threshold': 3.0, 'psf_scale_fn': None, 'make_tsmap': True, 'tsmap_fitter': 'tsmap', 'make_plots': False, 'write_fits': True, 'write_npy': True, 'reoptimize': False, 'ra_format': 'hour', 'optimizer': {'optimizer': 'MINUIT', 'tol': 0.001, 'max_iter': 100, 'init_lambda': 0.0001, 'retries': 3, 'min_fit_quality': 2, 'verbosity': 0}, 'prefix': '', 'outfile': None, 'loge_bins': []}
{'name': '3FGL J0041.9+3639', 'file': None, 'config': {'spatial_model': 'RadialGaussian', 'width': [], 'fit_position': False, 'width_min': 0.01, 'width_max': 5.0, 'width_nstep': 21, 'free_background': False, 'fix_shape': False, 'free_radius': None, 'fit_ebin': False, 'update': True, 'save_model_map': False, 'sqrt_ts_threshold': 3.0, 'psf_scale_fn': None, 'make_tsmap': True, 'tsmap_fitter': 'tsmap', 'make_plots': False, 'write_fits': True, 'write_npy': True, 'reoptimize': False, 'ra_format': 'hour', 'optimizer': {'optimizer': 'MINUIT', 'tol': 0.001, 'max_iter': 100, 'init_lambda': 0.0001, 'retries': 3, 'min_fit_quality': 2, 'verbosity': 0}, 'prefix': '', 'outfile': None, 'loge_bins': []}, 'width': array([0. , 0.01 , 0.01364421, 0.01861646, 0.02540069,
0.03465724, 0.04728708, 0.0645195 , 0.08803178, 0.12011244,
0.16388398, 0.2236068 , 0.30509388, 0.4162766 , 0.56797668,
0.77495949, 1.05737126, 1.44269991, 1.96845052, 2.68579588,
3.66455719, 5. ]), 'dloglike': array([-1.45519152e-10, 5.21072070e-06, 4.16120747e-06, 2.45313277e-06,
5.48927346e-06, 4.31292574e-06, 1.84829696e-06, 5.49087417e-06,
4.57212445e-06, 1.73976878e-06, 5.26176882e-06, 4.30530054e-06,
2.36462802e-06, 4.77669528e-06, 4.79348819e-06, 4.82625910e-06,
4.82884934e-06, 4.84843622e-06, 4.85262717e-06, 5.81311178e-06,
5.89308911e-06, 5.89308911e-06]), 'loglike': array([-246706.33823868, -246706.33823346, -246706.33823451,
-246706.33823622, -246706.33823319, -246706.33823436,
-246706.33823683, -246706.33823318, -246706.3382341 ,
-246706.33823694, -246706.33823341, -246706.33823437,
-246706.33823631, -246706.3382339 , -246706.33823388,
-246706.33823385, -246706.33823385, -246706.33823383,
-246706.33823382, -246706.33823286, -246706.33823278,
-246706.33823278]), 'loglike_ptsrc': -246706.33823867547, 'loglike_ext': -246706.3382452338, 'loglike_init': -246707.68573162134, 'loglike_base': -246706.33824532264, 'ext': np.float64(4.397468631325612), 'ext_err_hi': np.float64(nan), 'ext_err_lo': np.float64(nan), 'ext_err': nan, 'ext_ul95': nan, 'ts_ext': -1.3116688933223486e-05, 'ebin_e_min': array([], dtype=float64), 'ebin_e_ctr': array([], dtype=float64), 'ebin_e_max': array([], dtype=float64), 'ebin_ext': array([], dtype=float64), 'ebin_ext_err': array([], dtype=float64), 'ebin_ext_err_hi': array([], dtype=float64), 'ebin_ext_err_lo': array([], dtype=float64), 'ebin_ext_ul95': array([], dtype=float64), 'ebin_ts_ext': array([], dtype=float64), 'ebin_dloglike': array([], shape=(0, 22), dtype=float64), 'ebin_loglike': array([], shape=(0, 22), dtype=float64), 'ebin_loglike_ptsrc': array([], dtype=float64), 'ebin_loglike_ext': array([], dtype=float64), 'ra': np.float64(10.530501369170892), 'dec': np.float64(36.67208327063212), 'glon': np.float64(120.8508276625059), 'glat': np.float64(-26.162017906265916), 'ra_err': nan, 'dec_err': nan, 'glon_err': nan, 'glat_err': nan, 'pos_offset': 0.0, 'pos_err': nan, 'pos_r68': nan, 'pos_r95': nan, 'pos_r99': nan, 'pos_err_semimajor': nan, 'pos_err_semiminor': nan, 'pos_angle': nan, 'tsmap': <gammapy.maps.wcs.ndmap.WcsNDMap object at 0x7f7855e41650>, 'ptsrc_tot_map': None, 'ptsrc_src_map': None, 'ptsrc_bkg_map': None, 'ext_tot_map': None, 'ext_src_map': None, 'ext_bkg_map': None, 'source_fit': {'param_names': array([b'Prefactor', b'Index', b'Scale', b'', b'', b'', b'', b'', b'',
b''], dtype='|S32'), 'param_values': array([ 1.83300566e-14, -2.32893197e+00, 3.54921436e+03, nan,
nan, nan, nan, nan,
nan, nan]), 'param_errors': array([3.17402794e-15, 1.36938945e-01, nan, nan,
nan, nan, nan, nan,
nan, nan]), 'ts': np.float64(87.09175897575915), 'loglike': np.float64(-246706.3382452338), 'loglike_scan': array([-246749.88412472, -246709.0478367 , -246708.3833291 ,
-246707.81989367, -246707.35306495, -246706.97879991,
-246706.69341821, -246706.49355355, -246706.37611335,
-246706.33824523, -246706.36815372, -246706.45502219,
-246706.59731205, -246706.79357434, -246707.04244174,
-246707.34262157, -246707.6928895 , -246708.09208405,
-246708.53910159, -246709.03289197]), 'dloglike_scan': array([-4.35458795e+01, -2.70959146e+00, -2.04508387e+00, -1.48164843e+00,
-1.01481972e+00, -6.40554674e-01, -3.55172980e-01, -1.55308318e-01,
-3.78681120e-02, 0.00000000e+00, -2.99084897e-02, -1.16776960e-01,
-2.59066817e-01, -4.55329101e-01, -7.04196506e-01, -1.00437633e+00,
-1.35464427e+00, -1.75383881e+00, -2.20085636e+00, -2.69464674e+00]), 'eflux_scan': array([0.00000000e+00, 9.84948735e-07, 1.04238332e-06, 1.09981791e-06,
1.15725250e-06, 1.21468709e-06, 1.27212168e-06, 1.32955627e-06,
1.38699086e-06, 1.44442545e-06, 1.49455225e-06, 1.54467904e-06,
1.59480584e-06, 1.64493264e-06, 1.69505943e-06, 1.74518623e-06,
1.79531303e-06, 1.84543982e-06, 1.89556662e-06, 1.94569342e-06]), 'flux_scan': array([0.00000000e+00, 8.90857063e-10, 9.42804954e-10, 9.94752845e-10,
1.04670074e-09, 1.09864863e-09, 1.15059652e-09, 1.20254441e-09,
1.25449230e-09, 1.30644019e-09, 1.35177840e-09, 1.39711661e-09,
1.44245482e-09, 1.48779302e-09, 1.53313123e-09, 1.57846944e-09,
1.62380765e-09, 1.66914586e-09, 1.71448407e-09, 1.75982227e-09]), 'norm_scan': array([0. , 1.24992024, 1.32280592, 1.3956916 , 1.46857728,
1.54146295, 1.61434863, 1.68723431, 1.76011998, 1.83300566,
1.8966176 , 1.96022954, 2.02384148, 2.08745341, 2.15106535,
2.21467729, 2.27828923, 2.34190117, 2.4055131 , 2.46912504]), 'npred': 353.5395465982804, 'npred_wt': 353.5395465982804, 'pivot_energy': 1746.484442962712, 'flux': 1.3064401910577348e-09, 'flux100': 5.626355004638918e-09, 'flux1000': 2.6356686598792853e-10, 'flux10000': 1.2234758511819364e-11, 'flux_err': np.float64(2.599461905831755e-10), 'flux100_err': np.float64(1.8114705796724415e-09), 'flux1000_err': np.float64(3.839674613779544e-11), 'flux10000_err': np.float64(4.481764571757059e-12), 'flux_ul95': 1.6243067482997354e-09, 'flux100_ul95': 6.995288773966624e-09, 'flux1000_ul95': 3.2769463308212395e-10, 'flux10000_ul95': 1.5211565711612117e-11, 'eflux': 1.4444254487110042e-06, 'eflux100': 2.1107845225481757e-06, 'eflux1000': 9.045471511267108e-07, 'eflux10000': 3.389806879243761e-07, 'eflux_err': np.float64(2.3580764776987453e-07), 'eflux100_err': np.float64(3.273227890102651e-07), 'eflux1000_err': np.float64(2.2277496755734931e-07), 'eflux10000_err': np.float64(1.5416739139224033e-07), 'eflux_ul95': 1.7958648392909663e-06, 'eflux100_ul95': 2.6243540023104825e-06, 'eflux1000_ul95': 1.1246301604827824e-06, 'eflux10000_ul95': 4.2145719544425603e-07, 'dnde': 9.558707699738962e-14, 'dnde100': 7.469926233351926e-11, 'dnde1000': 3.502549995366367e-13, 'dnde10000': 1.6422995471182946e-15, 'dnde_err': np.float64(1.3702875221857082e-14), 'dnde100_err': np.float64(3.1154235856463445e-11), 'dnde1000_err': np.float64(5.68859542941388e-14), 'dnde10000_err': np.float64(4.576697153101571e-16), 'dnde_index': np.float64(2.3289319700148736), 'dnde100_index': np.float64(2.3289319700037723), 'dnde1000_index': np.float64(2.3289319700148736), 'dnde10000_index': np.float64(2.32893196999267), 'name': '3FGL J0041.9+3639', 'spectral_pars': {'Prefactor': {'name': 'Prefactor', 'value': 1.8330056616953612, 'error': 0.31740279394785226, 'min': 1e-05, 'max': 1000.0, 'free': True, 'scale': 1e-14}, 'Index': {'name': 'Index', 'value': 2.3289319699955815, 'error': 0.13693894492389377, 'min': 0.0, 'max': 5.0, 'free': True, 'scale': -1.0}, 'Scale': {'name': 'Scale', 'value': 3549.214355, 'error': nan, 'min': 3549.214355, 'max': 3549.214355, 'free': False, 'scale': 1.0}}, 'model_counts': array([8.75428797e+01, 6.94465156e+01, 5.36628499e+01, 4.06362247e+01,
3.01150561e+01, 2.19021718e+01, 1.55288287e+01, 1.08438287e+01,
7.49013281e+00, 5.12312627e+00, 3.51177052e+00, 2.43464865e+00,
1.67109159e+00, 1.14368392e+00, 7.82048917e-01, 5.38742055e-01,
3.75709012e-01, 2.59771746e-01, 1.77635435e-01, 1.20911623e-01,
8.23883520e-02, 5.59366430e-02, 3.81561973e-02, 2.60082783e-02,
1.76539869e-02, 1.17753121e-02]), 'model_counts_wt': array([8.75428797e+01, 6.94465156e+01, 5.36628499e+01, 4.06362247e+01,
3.01150561e+01, 2.19021718e+01, 1.55288287e+01, 1.08438287e+01,
7.49013281e+00, 5.12312627e+00, 3.51177052e+00, 2.43464865e+00,
1.67109159e+00, 1.14368392e+00, 7.82048917e-01, 5.38742055e-01,
3.75709012e-01, 2.59771746e-01, 1.77635435e-01, 1.20911623e-01,
8.23883520e-02, 5.59366430e-02, 3.81561973e-02, 2.60082783e-02,
1.76539869e-02, 1.17753121e-02]), 'covar': array([[ 0.10074453, -0.02437986],
[-0.02437986, 0.01875227]]), 'model_flux': {'energies': array([2.99999133e+02, 3.49037461e+02, 4.06091671e+02, 4.72472050e+02,
5.49703071e+02, 6.39558395e+02, 7.44101611e+02, 8.65733625e+02,
1.00724780e+03, 1.17189410e+03, 1.36345374e+03, 1.58632602e+03,
1.84562936e+03, 2.14731882e+03, 2.49832292e+03, 2.90670269e+03,
3.38183686e+03, 3.93463720e+03, 4.57779916e+03, 5.32609337e+03,
6.19670492e+03, 7.20962801e+03, 8.38812508e+03, 9.75926113e+03,
1.13545252e+04, 1.32105537e+04, 1.53699715e+04, 1.78823711e+04,
2.08054514e+04, 2.42063430e+04, 2.81631498e+04, 3.27667423e+04,
3.81228452e+04, 4.43544652e+04, 5.16047155e+04, 6.00401030e+04,
6.98543522e+04, 8.12728539e+04, 9.45578417e+04, 1.10014415e+05,
1.27997543e+05, 1.48920221e+05, 1.73262954e+05, 2.01584787e+05,
2.34536152e+05, 2.72873799e+05, 3.17478177e+05, 3.69373656e+05,
4.29752052e+05, 4.99999995e+05]), 'log_energies': array([2.47712 , 2.54287204, 2.60862408, 2.67437612, 2.74012816,
2.8058802 , 2.87163224, 2.93738429, 3.00313633, 3.06888837,
3.13464041, 3.20039245, 3.26614449, 3.33189653, 3.39764857,
3.46340061, 3.52915265, 3.59490469, 3.66065673, 3.72640878,
3.79216082, 3.85791286, 3.9236649 , 3.98941694, 4.05516898,
4.12092102, 4.18667306, 4.2524251 , 4.31817714, 4.38392918,
4.44968122, 4.51543327, 4.58118531, 4.64693735, 4.71268939,
4.77844143, 4.84419347, 4.90994551, 4.97569755, 5.04144959,
5.10720163, 5.17295367, 5.23870571, 5.30445776, 5.3702098 ,
5.43596184, 5.50171388, 5.56746592, 5.63321796, 5.69897 ]), 'dnde': array([5.78277496e-12, 4.06447318e-12, 2.85674997e-12, 2.00789132e-12,
1.41126370e-12, 9.91918846e-13, 6.97178703e-13, 4.90018055e-13,
3.44413409e-13, 2.42073931e-13, 1.70143747e-13, 1.19586998e-13,
8.40527510e-14, 5.90771998e-14, 4.15229186e-14, 2.91847409e-14,
2.05127465e-14, 1.44175605e-14, 1.01335065e-14, 7.12242234e-15,
5.00605587e-15, 3.51854948e-15, 2.47304280e-15, 1.73819943e-15,
1.22170844e-15, 8.58688295e-16, 6.03536462e-16, 4.24200800e-16,
2.98153185e-16, 2.09559534e-16, 1.47290723e-16, 1.03524553e-16,
7.27631234e-17, 5.11421879e-17, 3.59457271e-17, 2.52647639e-17,
1.77575568e-17, 1.24810517e-17, 8.77241469e-18, 6.16576721e-18,
4.33366258e-18, 3.04595206e-18, 2.14087363e-18, 1.50473147e-18,
1.05761347e-18, 7.43352735e-19, 5.22471871e-19, 3.67223854e-19,
2.58106448e-19, 1.81412340e-19]), 'dnde_lo': array([4.51570340e-12, 3.21815299e-12, 2.29299126e-12, 1.63331238e-12,
1.16292399e-12, 8.27516780e-13, 5.88375464e-13, 4.17899130e-13,
2.96409707e-13, 2.09877414e-13, 1.48298650e-13, 1.04538035e-13,
7.35012592e-14, 5.15451913e-14, 3.60594403e-14, 2.51715009e-14,
1.75391919e-14, 1.22032233e-14, 8.48094950e-15, 5.88895873e-15,
4.08651877e-15, 2.83443253e-15, 1.96533342e-15, 1.36241757e-15,
9.44330381e-16, 6.54493182e-16, 4.53602208e-16, 3.14376923e-16,
2.17893610e-16, 1.51031190e-16, 1.04694733e-16, 7.25813474e-17,
5.03236116e-17, 3.48954370e-17, 2.42001556e-17, 1.67850357e-17,
1.16434675e-17, 8.07791495e-18, 5.60497461e-18, 3.88960702e-18,
2.69957588e-18, 1.87388503e-18, 1.30091113e-18, 9.03252519e-19,
6.27230365e-19, 4.35612881e-19, 3.02572489e-19, 2.10190238e-19,
1.46032421e-19, 1.01470289e-19]), 'dnde_hi': array([7.40537702e-12, 5.13336136e-12, 3.55911536e-12, 2.46837506e-12,
1.71263578e-12, 1.18898253e-12, 8.26101993e-13, 5.74582900e-13,
4.00191336e-13, 2.79209596e-13, 1.95206729e-13, 1.36802360e-13,
9.61189648e-14, 6.77098184e-14, 4.78141857e-14, 3.38378353e-14,
2.39904307e-14, 1.70337004e-14, 1.21080729e-14, 8.61423935e-15,
6.13250466e-15, 4.36778449e-15, 3.11190998e-15, 2.21762940e-15,
1.58056072e-15, 1.12659017e-15, 8.03030178e-16, 5.72390354e-16,
4.07975808e-16, 2.90769066e-16, 2.07217273e-16, 1.47659604e-16,
1.05208509e-16, 7.49531630e-17, 5.33920245e-17, 3.80284145e-17,
2.70822094e-17, 1.92842650e-17, 1.37298141e-17, 9.77391420e-18,
6.95688217e-18, 4.95111696e-18, 3.52317680e-18, 2.50673731e-18,
1.78331011e-18, 1.26849621e-18, 9.02186637e-19, 6.41577649e-19,
4.56192796e-19, 3.24335698e-19]), 'dnde_err': array([1.62260207e-12, 1.06888818e-12, 7.02365387e-13, 4.60483743e-13,
3.01372077e-13, 1.97063688e-13, 1.28923290e-13, 8.45648452e-14,
5.57779265e-14, 3.71356651e-14, 2.50629828e-14, 1.72153628e-14,
1.20662138e-14, 8.63261854e-15, 6.29126703e-15, 4.65309441e-15,
3.47768424e-15, 2.61613995e-15, 1.97456637e-15, 1.49181701e-15,
1.12644878e-15, 8.49235013e-16, 6.38867183e-16, 4.79429973e-16,
3.58852280e-16, 2.67901879e-16, 1.99493715e-16, 1.48189555e-16,
1.09822623e-16, 8.12095329e-17, 5.99265499e-17, 4.41350514e-17,
3.24453853e-17, 2.38109752e-17, 1.74462974e-17, 1.27636506e-17,
9.32465256e-18, 6.80321326e-18, 4.95739943e-18, 3.60814699e-18,
2.62321960e-18, 1.90516490e-18, 1.38230316e-18, 1.00200585e-18,
7.25696642e-19, 5.25143476e-19, 3.79714766e-19, 2.74353795e-19,
1.98086348e-19, 1.42923358e-19]), 'dnde_ferr': array([0.24985181, 0.23560352, 0.22160219, 0.20794519, 0.19475871,
0.18220531, 0.17049182, 0.15987551, 0.15066433, 0.14320456,
0.13784838, 0.13489897, 0.13454471, 0.13680935, 0.14154527,
0.14847373, 0.15724951, 0.16752061, 0.17896685, 0.19131698,
0.20435108, 0.21789547, 0.23181495, 0.2460051 , 0.2603855 ,
0.27489427, 0.28948373, 0.3041171 , 0.318766 , 0.33340854,
0.34802783, 0.36261087, 0.37714775, 0.39163094, 0.40605478,
0.42041515, 0.43470907, 0.44893452, 0.46309025, 0.47717559,
0.49119033, 0.50513466, 0.51900907, 0.53281427, 0.54655116,
0.5602208 , 0.57382433, 0.587363 , 0.6008381 , 0.61425096]), 'pivot_energy': 1746.484442962712}}}
4.397 nan nan -0.000
Running extension on source 3FGL J0105.3+3928
2026-07-17 22:17:28 INFO GTAnalysis._extension(): Fitting extended-source model.
2026-07-17 22:17:47 INFO GTAnalysis._extension(): Generating TS map.
2026-07-17 22:18:03 INFO GTAnalysis._extension(): Testing point-source model.
2026-07-17 22:18:05 INFO GTAnalysis._extension(): Best-fit extension: 1.2688 + nan - nan
2026-07-17 22:18:05 INFO GTAnalysis._extension(): TS_ext: 0.000
2026-07-17 22:18:05 INFO GTAnalysis._extension(): Extension UL: nan
2026-07-17 22:18:05 INFO GTAnalysis._extension(): LogLike: -246705.962 DeltaLogLike: 1.493
2026-07-17 22:18:05 INFO GTAnalysis.extension(): Finished extension fit.
2026-07-17 22:18:05 WARNING GTAnalysis.extension(): Saving maps in .npy files is disabled b/c of incompatibilities in python3, remove the maps from the /home/runner/work/fermipy/fermipy/fermipy-extra/notebooks/M31_data/3fgl_j0105.3+3928_ext.npy
2026-07-17 22:18:05 INFO GTAnalysis.extension(): Execution time: 69.61 s
2026-07-17 22:18:05 INFO GTAnalysis.print_model():
sourcename offset norm eflux index ts npred free
--------------------------------------------------------------------------------
3FGL J0042.5+4117 0.031 1.053 8.52e-07 2.58 30.07 324.2
3FGL J0040.3+4049 0.624 0.222 1.99e-06 1.77 73.87 149.1
3FGL J0049.0+4224 1.650 0.278 1.33e-06 1.63 29.89 61.4
3FGL J0048.0+3950 1.771 0.603 5.84e-06 1.94 545.61 728.3
3FGL J0039.1+4330 2.337 0.225 1.54e-06 1.89 62.65 169.0
3FGL J0032.5+3912 2.833 0.550 9.81e-07 2.45 46.83 318.7
3FGL J0102.3+4217 3.800 0.575 1.65e-06 2.73 126.19 692.1 *
3FGL J0041.9+3639 4.600 1.601 1.28e-06 2.19 70.10 260.1
3FGL J0105.3+3928 4.639 0.549 2.55e-06 2.23 215.82 582.0 *
3FGL J0023.5+4454 5.046 2.144 2.46e-06 2.45 220.86 792.9
3FGL J0102.1+4458 5.147 0.208 8.65e-07 1.72 16.48 55.1
3FGL J0022.7+4651 6.635 1.107 2.89e-07 5.00 4.97 128.0
isodiff --- 0.875 0.0389 2.12 924.97 31907.6 *
galdiff --- 1.096 0.229 0.02 6739.38 91244.0 *
2026-07-17 22:18:05 INFO GTAnalysis.free_source(): Fixing parameters for 3FGL J0102.3+4217 : ['Prefactor', 'Index']
2026-07-17 22:18:05 INFO GTAnalysis.free_source(): Fixing parameters for 3FGL J0105.3+3928 : ['Prefactor', 'Index']
2026-07-17 22:18:05 INFO GTAnalysis.free_source(): Fixing parameters for isodiff : ['Normalization']
2026-07-17 22:18:05 INFO GTAnalysis.free_source(): Fixing parameters for galdiff : ['Prefactor', 'Index']
2026-07-17 22:18:05 INFO GTAnalysis.print_model():
sourcename offset norm eflux index ts npred free
--------------------------------------------------------------------------------
3FGL J0042.5+4117 0.031 1.053 8.52e-07 2.58 30.07 324.2
3FGL J0040.3+4049 0.624 0.222 1.99e-06 1.77 73.87 149.1
3FGL J0049.0+4224 1.650 0.278 1.33e-06 1.63 29.89 61.4
3FGL J0048.0+3950 1.771 0.603 5.84e-06 1.94 545.61 728.3
3FGL J0039.1+4330 2.337 0.225 1.54e-06 1.89 62.65 169.0
3FGL J0032.5+3912 2.833 0.550 9.81e-07 2.45 46.83 318.7
3FGL J0102.3+4217 3.800 0.575 1.65e-06 2.73 126.19 692.1
3FGL J0041.9+3639 4.600 1.601 1.28e-06 2.19 70.10 260.1
3FGL J0105.3+3928 4.639 0.549 2.55e-06 2.23 215.82 582.0
3FGL J0023.5+4454 5.046 2.144 2.46e-06 2.45 220.86 792.9
3FGL J0102.1+4458 5.147 0.208 8.65e-07 1.72 16.48 55.1
3FGL J0022.7+4651 6.635 1.107 2.89e-07 5.00 4.97 128.0
isodiff --- 0.875 0.0389 2.12 924.97 31907.6
galdiff --- 1.096 0.229 0.02 6739.38 91244.0
2026-07-17 22:18:05 INFO GTAnalysis.free_source(): Freeing parameters for 3FGL J0023.5+4454 : ['Prefactor', 'Index']
2026-07-17 22:18:05 INFO GTAnalysis.free_source(): Freeing parameters for 3FGL J0022.7+4651 : ['Prefactor', 'Index']
2026-07-17 22:18:05 INFO GTAnalysis.free_source(): Freeing parameters for isodiff : ['Normalization']
2026-07-17 22:18:05 INFO GTAnalysis.free_source(): Freeing parameters for galdiff : ['Prefactor', 'Index']
2026-07-17 22:18:05 INFO GTAnalysis.print_model():
sourcename offset norm eflux index ts npred free
--------------------------------------------------------------------------------
3FGL J0042.5+4117 0.031 1.053 8.52e-07 2.58 30.07 324.2
3FGL J0040.3+4049 0.624 0.222 1.99e-06 1.77 73.87 149.1
3FGL J0049.0+4224 1.650 0.278 1.33e-06 1.63 29.89 61.4
3FGL J0048.0+3950 1.771 0.603 5.84e-06 1.94 545.61 728.3
3FGL J0039.1+4330 2.337 0.225 1.54e-06 1.89 62.65 169.0
3FGL J0032.5+3912 2.833 0.550 9.81e-07 2.45 46.83 318.7
3FGL J0102.3+4217 3.800 0.575 1.65e-06 2.73 126.19 692.1
3FGL J0041.9+3639 4.600 1.601 1.28e-06 2.19 70.10 260.1
3FGL J0105.3+3928 4.639 0.549 2.55e-06 2.23 215.82 582.0
3FGL J0023.5+4454 5.046 2.144 2.46e-06 2.45 220.86 792.9 *
3FGL J0102.1+4458 5.147 0.208 8.65e-07 1.72 16.48 55.1
3FGL J0022.7+4651 6.635 1.107 2.89e-07 5.00 4.97 128.0 *
isodiff --- 0.875 0.0389 2.12 924.97 31907.6 *
galdiff --- 1.096 0.229 0.02 6739.38 91244.0 *
2026-07-17 22:18:05 INFO GTAnalysis.extension(): Running extension fit for 3FGL J0023.5+4454
{'spatial_model': 'RadialGaussian', 'width': [], 'fit_position': False, 'width_min': 0.01, 'width_max': 5.0, 'width_nstep': 21, 'free_background': False, 'fix_shape': False, 'free_radius': None, 'fit_ebin': False, 'update': True, 'save_model_map': False, 'sqrt_ts_threshold': 3.0, 'psf_scale_fn': None, 'make_tsmap': True, 'tsmap_fitter': 'tsmap', 'make_plots': False, 'write_fits': True, 'write_npy': True, 'reoptimize': False, 'ra_format': 'hour', 'optimizer': {'optimizer': 'MINUIT', 'tol': 0.001, 'max_iter': 100, 'init_lambda': 0.0001, 'retries': 3, 'min_fit_quality': 2, 'verbosity': 0}, 'prefix': '', 'outfile': None, 'loge_bins': []}
{'spatial_model': 'RadialGaussian', 'width': [], 'fit_position': False, 'width_min': 0.01, 'width_max': 5.0, 'width_nstep': 21, 'free_background': False, 'fix_shape': False, 'free_radius': None, 'fit_ebin': False, 'update': True, 'save_model_map': False, 'sqrt_ts_threshold': 3.0, 'psf_scale_fn': None, 'make_tsmap': True, 'tsmap_fitter': 'tsmap', 'make_plots': False, 'write_fits': True, 'write_npy': True, 'reoptimize': False, 'ra_format': 'hour', 'optimizer': {'optimizer': 'MINUIT', 'tol': 0.001, 'max_iter': 100, 'init_lambda': 0.0001, 'retries': 3, 'min_fit_quality': 2, 'verbosity': 0}, 'prefix': '', 'outfile': None, 'loge_bins': []}
{'name': '3FGL J0105.3+3928', 'file': None, 'config': {'spatial_model': 'RadialGaussian', 'width': [], 'fit_position': False, 'width_min': 0.01, 'width_max': 5.0, 'width_nstep': 21, 'free_background': False, 'fix_shape': False, 'free_radius': None, 'fit_ebin': False, 'update': True, 'save_model_map': False, 'sqrt_ts_threshold': 3.0, 'psf_scale_fn': None, 'make_tsmap': True, 'tsmap_fitter': 'tsmap', 'make_plots': False, 'write_fits': True, 'write_npy': True, 'reoptimize': False, 'ra_format': 'hour', 'optimizer': {'optimizer': 'MINUIT', 'tol': 0.001, 'max_iter': 100, 'init_lambda': 0.0001, 'retries': 3, 'min_fit_quality': 2, 'verbosity': 0}, 'prefix': '', 'outfile': None, 'loge_bins': []}, 'width': array([0. , 0.01 , 0.01364421, 0.01861646, 0.02540069,
0.03465724, 0.04728708, 0.0645195 , 0.08803178, 0.12011244,
0.16388398, 0.2236068 , 0.30509388, 0.4162766 , 0.56797668,
0.77495949, 1.05737126, 1.44269991, 1.96845052, 2.68579588,
3.66455719, 5. ]), 'dloglike': array([7.56699592e-10, 1.54741574e-05, 1.79161143e-05, 1.43800571e-05,
2.13461462e-05, 2.10225699e-05, 1.91534637e-05, 2.13342719e-05,
2.11255974e-05, 2.05000397e-05, 2.09285645e-05, 2.12329905e-05,
1.94984605e-05, 2.11790029e-05, 2.13269959e-05, 2.13450403e-05,
2.13482417e-05, 2.13482417e-05, 2.13482417e-05, 2.13482417e-05,
2.13482417e-05, 2.13482417e-05]), 'loglike': array([-246705.96233872, -246705.96232324, -246705.9623208 ,
-246705.96232434, -246705.96231737, -246705.9623177 ,
-246705.96231957, -246705.96231738, -246705.96231759,
-246705.96231822, -246705.96231779, -246705.96231749,
-246705.96231922, -246705.96231754, -246705.96231739,
-246705.96231737, -246705.96231737, -246705.96231737,
-246705.96231737, -246705.96231737, -246705.96231737,
-246705.96231737]), 'loglike_ptsrc': -246705.96233871876, 'loglike_ext': -246705.96231737663, 'loglike_init': -246707.45503826975, 'loglike_base': -246705.96231906314, 'ext': np.float64(1.268845516128677), 'ext_err_hi': np.float64(nan), 'ext_err_lo': np.float64(nan), 'ext_err': nan, 'ext_ul95': nan, 'ts_ext': 4.2684259824454784e-05, 'ebin_e_min': array([], dtype=float64), 'ebin_e_ctr': array([], dtype=float64), 'ebin_e_max': array([], dtype=float64), 'ebin_ext': array([], dtype=float64), 'ebin_ext_err': array([], dtype=float64), 'ebin_ext_err_hi': array([], dtype=float64), 'ebin_ext_err_lo': array([], dtype=float64), 'ebin_ext_ul95': array([], dtype=float64), 'ebin_ts_ext': array([], dtype=float64), 'ebin_dloglike': array([], shape=(0, 22), dtype=float64), 'ebin_loglike': array([], shape=(0, 22), dtype=float64), 'ebin_loglike_ptsrc': array([], dtype=float64), 'ebin_loglike_ext': array([], dtype=float64), 'ra': np.float64(16.306550101735052), 'dec': np.float64(39.48501978708362), 'glon': np.float64(125.82826240605303), 'glat': np.float64(-23.309173854222827), 'ra_err': nan, 'dec_err': nan, 'glon_err': nan, 'glat_err': nan, 'pos_offset': 0.0, 'pos_err': nan, 'pos_r68': nan, 'pos_r95': nan, 'pos_r99': nan, 'pos_err_semimajor': nan, 'pos_err_semiminor': nan, 'pos_angle': nan, 'tsmap': <gammapy.maps.wcs.ndmap.WcsNDMap object at 0x7f7856fac950>, 'ptsrc_tot_map': None, 'ptsrc_src_map': None, 'ptsrc_bkg_map': None, 'ext_tot_map': None, 'ext_src_map': None, 'ext_bkg_map': None, 'source_fit': {'param_names': array([b'Prefactor', b'Index', b'Scale', b'', b'', b'', b'', b'', b'',
b''], dtype='|S32'), 'param_values': array([ 6.46301296e-13, -2.28247041e+00, 9.96943298e+02, nan,
nan, nan, nan, nan,
nan, nan]), 'param_errors': array([5.68447008e-14, 7.50078176e-02, nan, nan,
nan, nan, nan, nan,
nan, nan]), 'ts': np.float64(250.74229021789506), 'loglike': np.float64(-246705.96231737663), 'loglike_scan': array([-246831.33346249, -246708.67641842, -246708.02245991,
-246707.46311933, -246706.99589213, -246706.61840296,
-246706.32839581, -246706.12372523, -246706.0023483 ,
-246705.96231738, -246705.9908483 , -246706.07569279,
-246706.2157978 , -246706.41014873, -246706.65776737,
-246706.95770993, -246707.30906528, -246707.71095322,
-246708.16252294, -246708.66295159]), 'dloglike_scan': array([-1.25371145e+02, -2.71410105e+00, -2.06014253e+00, -1.50080195e+00,
-1.03357476e+00, -6.56085579e-01, -3.66078432e-01, -1.61407856e-01,
-4.00309230e-02, 0.00000000e+00, -2.85309204e-02, -1.13375415e-01,
-2.53480424e-01, -4.47831356e-01, -6.95449993e-01, -9.95392557e-01,
-1.34674790e+00, -1.74863584e+00, -2.20020557e+00, -2.70063421e+00]), 'eflux_scan': array([0.00000000e+00, 2.26420624e-06, 2.33116504e-06, 2.39812383e-06,
2.46508263e-06, 2.53204143e-06, 2.59900022e-06, 2.66595902e-06,
2.73291781e-06, 2.79987661e-06, 2.85678133e-06, 2.91368605e-06,
2.97059076e-06, 3.02749548e-06, 3.08440020e-06, 3.14130492e-06,
3.19820964e-06, 3.25511436e-06, 3.31201908e-06, 3.36892380e-06]), 'flux_scan': array([0.00000000e+00, 1.89675077e-09, 1.95284290e-09, 2.00893503e-09,
2.06502715e-09, 2.12111928e-09, 2.17721141e-09, 2.23330354e-09,
2.28939567e-09, 2.34548780e-09, 2.39315751e-09, 2.44082723e-09,
2.48849695e-09, 2.53616666e-09, 2.58383638e-09, 2.63150610e-09,
2.67917581e-09, 2.72684553e-09, 2.77451525e-09, 2.82218496e-09]), 'norm_scan': array([0. , 0.5226514 , 0.53810764, 0.55356387, 0.56902011,
0.58447635, 0.59993258, 0.61538882, 0.63084506, 0.6463013 ,
0.65943673, 0.67257216, 0.6857076 , 0.69884303, 0.71197846,
0.7251139 , 0.73824933, 0.75138477, 0.7645202 , 0.77765563]), 'npred': 666.9114305592084, 'npred_wt': 666.9114305592084, 'pivot_energy': 1359.057545116593, 'flux': 2.3454877954329006e-09, 'flux100': 9.598504016021355e-09, 'flux1000': 5.003616107447138e-10, 'flux10000': 2.5807560225059927e-11, 'flux_err': np.float64(2.3678163111541956e-10), 'flux100_err': np.float64(1.5473631007348142e-09), 'flux1000_err': np.float64(4.593412822803735e-11), 'flux10000_err': np.float64(5.726149681019376e-12), 'flux_ul95': 2.6809485698218927e-09, 'flux100_ul95': 1.097131934102972e-08, 'flux1000_ul95': 5.719252717203895e-10, 'flux10000_ul95': 2.949865772513934e-11, 'eflux': 2.799876607087625e-06, 'eflux100': 3.90732426938655e-06, 'eflux1000': 1.8251986938827044e-06, 'eflux10000': 7.387151206089495e-07, 'eflux_err': np.float64(3.1549435306806417e-07), 'eflux100_err': np.float64(3.314461137803057e-07), 'eflux1000_err': np.float64(2.937848708548572e-07), 'eflux10000_err': np.float64(2.009746144179582e-07), 'eflux_ul95': 3.2003258341678646e-06, 'eflux100_ul95': 4.466164962460971e-06, 'eflux1000_ul95': 2.0862457001625484e-06, 'eflux10000_ul95': 8.443690263316175e-07, 'dnde': 3.1863167419570275e-13, 'dnde100': 1.2299028322222582e-10, 'dnde1000': 6.418009964751104e-13, 'dnde10000': 3.3491143225695737e-15, 'dnde_err': np.float64(2.7028862729416187e-14), 'dnde100_err': np.float64(2.6235605473065297e-11), 'dnde1000_err': np.float64(5.6410119915264354e-14), 'dnde10000_err': np.float64(5.762643139338907e-16), 'dnde_index': np.float64(2.282470414572691), 'dnde100_index': np.float64(2.282470414561589), 'dnde1000_index': np.float64(2.282470414572691), 'dnde10000_index': np.float64(2.282470414561589), 'name': '3FGL J0105.3+3928', 'spectral_pars': {'Prefactor': {'name': 'Prefactor', 'value': 0.6463012958668248, 'error': 0.05684470081564189, 'min': 1e-05, 'max': 1000.0, 'free': True, 'scale': 1e-12}, 'Index': {'name': 'Index', 'value': 2.2824704145490555, 'error': 0.07500781755616874, 'min': 0.0, 'max': 5.0, 'free': True, 'scale': -1.0}, 'Scale': {'name': 'Scale', 'value': 996.9432983, 'error': nan, 'min': 996.9432983, 'max': 996.9432983, 'free': False, 'scale': 1.0}}, 'model_counts': array([1.61033747e+02, 1.28867108e+02, 1.00408107e+02, 7.66826914e+01,
5.73540831e+01, 4.21256206e+01, 3.01936766e+01, 2.13318602e+01,
1.49195924e+01, 1.03355533e+01, 7.17929168e+00, 5.04270981e+00,
3.50525970e+00, 2.43059100e+00, 1.68472287e+00, 1.17553025e+00,
8.29693191e-01, 5.81024319e-01, 4.02565663e-01, 2.77617201e-01,
1.91678177e-01, 1.31893591e-01, 9.11951779e-02, 6.30021441e-02,
4.33310888e-02, 2.92849698e-02]), 'model_counts_wt': array([1.61033747e+02, 1.28867108e+02, 1.00408107e+02, 7.66826914e+01,
5.73540831e+01, 4.21256206e+01, 3.01936766e+01, 2.13318602e+01,
1.49195924e+01, 1.03355533e+01, 7.17929168e+00, 5.04270981e+00,
3.50525970e+00, 2.43059100e+00, 1.68472287e+00, 1.17553025e+00,
8.29693191e-01, 5.81024319e-01, 4.02565663e-01, 2.77617201e-01,
1.91678177e-01, 1.31893591e-01, 9.11951779e-02, 6.30021441e-02,
4.33310888e-02, 2.92849698e-02]), 'covar': array([[0.00323132, 0.00112663],
[0.00112663, 0.00562617]]), 'model_flux': {'energies': array([2.99999133e+02, 3.49037461e+02, 4.06091671e+02, 4.72472050e+02,
5.49703071e+02, 6.39558395e+02, 7.44101611e+02, 8.65733625e+02,
1.00724780e+03, 1.17189410e+03, 1.36345374e+03, 1.58632602e+03,
1.84562936e+03, 2.14731882e+03, 2.49832292e+03, 2.90670269e+03,
3.38183686e+03, 3.93463720e+03, 4.57779916e+03, 5.32609337e+03,
6.19670492e+03, 7.20962801e+03, 8.38812508e+03, 9.75926113e+03,
1.13545252e+04, 1.32105537e+04, 1.53699715e+04, 1.78823711e+04,
2.08054514e+04, 2.42063430e+04, 2.81631498e+04, 3.27667423e+04,
3.81228452e+04, 4.43544652e+04, 5.16047155e+04, 6.00401030e+04,
6.98543522e+04, 8.12728539e+04, 9.45578417e+04, 1.10014415e+05,
1.27997543e+05, 1.48920221e+05, 1.73262954e+05, 2.01584787e+05,
2.34536152e+05, 2.72873799e+05, 3.17478177e+05, 3.69373656e+05,
4.29752052e+05, 4.99999995e+05]), 'log_energies': array([2.47712 , 2.54287204, 2.60862408, 2.67437612, 2.74012816,
2.8058802 , 2.87163224, 2.93738429, 3.00313633, 3.06888837,
3.13464041, 3.20039245, 3.26614449, 3.33189653, 3.39764857,
3.46340061, 3.52915265, 3.59490469, 3.66065673, 3.72640878,
3.79216082, 3.85791286, 3.9236649 , 3.98941694, 4.05516898,
4.12092102, 4.18667306, 4.2524251 , 4.31817714, 4.38392918,
4.44968122, 4.51543327, 4.58118531, 4.64693735, 4.71268939,
4.77844143, 4.84419347, 4.90994551, 4.97569755, 5.04144959,
5.10720163, 5.17295367, 5.23870571, 5.30445776, 5.3702098 ,
5.43596184, 5.50171388, 5.56746592, 5.63321796, 5.69897 ]), 'dnde': array([1.00197876e-11, 7.09220744e-12, 5.02000722e-12, 3.55326218e-12,
2.51507052e-12, 1.78021755e-12, 1.26007383e-12, 8.91905624e-13,
6.31308758e-13, 4.46853050e-13, 3.16291586e-13, 2.23877553e-13,
1.58465039e-13, 1.12164745e-13, 7.93924652e-14, 5.61955854e-14,
3.97763668e-14, 2.81545133e-14, 1.99283314e-14, 1.41056742e-14,
9.98428019e-15, 7.06707454e-15, 5.00221765e-15, 3.54067037e-15,
2.50615778e-15, 1.77390893e-15, 1.25560846e-15, 8.88744948e-16,
6.29071569e-16, 4.45269522e-16, 3.15170733e-16, 2.23084190e-16,
1.57903482e-16, 1.11767264e-16, 7.91111195e-17, 5.59964432e-17,
3.96354100e-17, 2.80547412e-17, 1.98577107e-17, 1.40556874e-17,
9.94889857e-18, 7.04203072e-18, 4.98449113e-18, 3.52812318e-18,
2.49727662e-18, 1.76762267e-18, 1.25115892e-18, 8.85595473e-19,
6.26842307e-19, 4.43691606e-19]), 'dnde_lo': array([8.77734295e-12, 6.26168873e-12, 4.46573108e-12, 3.18367729e-12,
2.26858382e-12, 1.61552688e-12, 1.14958709e-12, 8.17269986e-13,
5.80378662e-13, 4.11636431e-13, 2.91559129e-13, 2.06221426e-13,
1.45664196e-13, 1.02761592e-13, 7.24159323e-14, 5.09843155e-14,
3.58682644e-14, 2.52185604e-14, 1.77223662e-14, 1.24497398e-14,
8.74325104e-15, 6.13888253e-15, 4.30956045e-15, 3.02498121e-15,
2.12311442e-15, 1.49003714e-15, 1.04569097e-15, 7.33837530e-16,
5.14983155e-16, 3.61399659e-16, 2.53622736e-16, 1.77990869e-16,
1.24916297e-16, 8.76707191e-17, 6.15326984e-17, 4.31891622e-17,
3.03153266e-17, 2.12798895e-17, 1.49381541e-17, 1.04868630e-17,
7.36233977e-18, 5.16901883e-18, 3.62929834e-18, 2.54835393e-18,
1.78944968e-18, 1.25661431e-18, 8.82484977e-19, 6.19776998e-19,
4.35297695e-19, 3.05745448e-19]), 'dnde_hi': array([1.14381021e-11, 8.03288194e-12, 5.64307882e-12, 3.96575123e-12,
2.78833855e-12, 1.96169718e-12, 1.38117943e-12, 9.73357221e-13,
6.86708135e-13, 4.85082548e-13, 3.43122054e-13, 2.43045350e-13,
1.72390810e-13, 1.22428330e-13, 8.70411156e-14, 6.19395158e-14,
4.41102848e-14, 3.14322707e-14, 2.24088807e-14, 1.59818637e-14,
1.14014627e-14, 8.13560813e-15, 5.80620268e-15, 4.14427257e-15,
2.95830820e-15, 2.11186206e-15, 1.50766589e-15, 1.07635212e-15,
7.68434918e-16, 5.48603029e-16, 3.91654914e-16, 2.79601737e-16,
1.99601734e-16, 1.42486811e-16, 1.01711275e-16, 7.26015854e-17,
5.18208411e-17, 3.69864939e-17, 2.63974163e-17, 1.88390321e-17,
1.34441748e-17, 9.59373496e-18, 6.84571767e-18, 4.88458570e-18,
3.48508851e-18, 2.48643509e-18, 1.77385302e-18, 1.26542183e-18,
9.02672543e-19, 6.43876277e-19]), 'dnde_err': array([1.41831441e-12, 9.40674507e-13, 6.23071602e-13, 4.12489049e-13,
2.73268030e-13, 1.81479631e-13, 1.21105605e-13, 8.14515966e-14,
5.53993763e-14, 3.82294974e-14, 2.68304684e-14, 1.91677975e-14,
1.39257705e-14, 1.02635845e-14, 7.64865035e-15, 5.74393037e-15,
4.33391797e-15, 3.27775745e-15, 2.48054935e-15, 1.87618952e-15,
1.41718254e-15, 1.06853359e-15, 8.03985028e-16, 6.03602202e-16,
4.52150425e-16, 3.37953128e-16, 2.52057428e-16, 1.87607174e-16,
1.39363349e-16, 1.03333507e-16, 7.64841808e-17, 5.65175465e-17,
4.16982524e-17, 3.07195477e-17, 2.26001558e-17, 1.66051422e-17,
1.21854312e-17, 8.93175268e-18, 6.53970564e-18, 4.78334468e-18,
3.49527622e-18, 2.55170424e-18, 1.86122654e-18, 1.35646252e-18,
9.87811892e-19, 7.18812420e-19, 5.22694099e-19, 3.79826356e-19,
2.75830236e-19, 2.00184672e-19]), 'dnde_ferr': array([0.13277522, 0.12486897, 0.11726554, 0.11005013, 0.10332806,
0.09722697, 0.09189634, 0.0875021 , 0.08421353, 0.08218151,
0.08151169, 0.08224122, 0.08432969, 0.08766898, 0.09210687,
0.09747385, 0.10360449, 0.11035016, 0.11758422, 0.12520224,
0.13311985, 0.1412696 , 0.14959787, 0.15806207, 0.16662833,
0.17526969, 0.18396456, 0.19269566, 0.20144907, 0.21021355,
0.21898001, 0.22774108, 0.23649079, 0.24522427, 0.25393761,
0.2626276 , 0.27129169, 0.27992781, 0.28853432, 0.29710995,
0.30565368, 0.31416478, 0.3226427 , 0.33108705, 0.3394976 ,
0.34787424, 0.35621696, 0.36452582, 0.37280098, 0.38104263]), 'pivot_energy': 1359.057545116593}}}
1.269 nan nan 0.000
Running extension on source 3FGL J0023.5+4454
2026-07-17 22:18:16 INFO GTAnalysis._extension(): Fitting extended-source model.
2026-07-17 22:18:22 INFO GTAnalysis._extension(): Generating TS map.
2026-07-17 22:18:23 INFO GTAnalysis._extension(): Testing point-source model.
2026-07-17 22:18:24 INFO GTAnalysis._extension(): Best-fit extension: 0.0935 + 0.0399 - 0.0415
2026-07-17 22:18:24 INFO GTAnalysis._extension(): TS_ext: 3.202
2026-07-17 22:18:24 INFO GTAnalysis._extension(): Extension UL: 0.1561
2026-07-17 22:18:24 INFO GTAnalysis._extension(): LogLike: -246704.949 DeltaLogLike: 1.571
2026-07-17 22:18:24 INFO GTAnalysis.extension(): Finished extension fit.
2026-07-17 22:18:24 WARNING GTAnalysis.extension(): Saving maps in .npy files is disabled b/c of incompatibilities in python3, remove the maps from the /home/runner/work/fermipy/fermipy/fermipy-extra/notebooks/M31_data/3fgl_j0023.5+4454_ext.npy
2026-07-17 22:18:24 INFO GTAnalysis.extension(): Execution time: 19.10 s
2026-07-17 22:18:24 INFO GTAnalysis.print_model():
sourcename offset norm eflux index ts npred free
--------------------------------------------------------------------------------
3FGL J0042.5+4117 0.031 1.053 8.52e-07 2.58 30.07 324.2
3FGL J0040.3+4049 0.624 0.222 1.99e-06 1.77 73.87 149.1
3FGL J0049.0+4224 1.650 0.278 1.33e-06 1.63 29.89 61.4
3FGL J0048.0+3950 1.771 0.603 5.84e-06 1.94 545.61 728.3
3FGL J0039.1+4330 2.337 0.225 1.54e-06 1.89 62.65 169.0
3FGL J0032.5+3912 2.833 0.550 9.81e-07 2.45 46.83 318.7
3FGL J0102.3+4217 3.800 0.575 1.65e-06 2.73 126.19 692.1
3FGL J0041.9+3639 4.600 1.601 1.28e-06 2.19 70.10 260.1
3FGL J0105.3+3928 4.639 0.549 2.55e-06 2.23 215.82 582.0
3FGL J0023.5+4454 5.046 2.144 2.46e-06 2.45 220.86 792.9 *
3FGL J0102.1+4458 5.147 0.208 8.65e-07 1.72 16.48 55.1
3FGL J0022.7+4651 6.635 1.107 2.89e-07 5.00 4.97 128.0 *
isodiff --- 0.875 0.0389 2.12 924.97 31907.6 *
galdiff --- 1.096 0.229 0.02 6739.38 91244.0 *
2026-07-17 22:18:24 INFO GTAnalysis.free_source(): Fixing parameters for 3FGL J0023.5+4454 : ['Prefactor', 'Index']
2026-07-17 22:18:24 INFO GTAnalysis.free_source(): Fixing parameters for 3FGL J0022.7+4651 : ['Prefactor', 'Index']
2026-07-17 22:18:24 INFO GTAnalysis.free_source(): Fixing parameters for isodiff : ['Normalization']
2026-07-17 22:18:24 INFO GTAnalysis.free_source(): Fixing parameters for galdiff : ['Prefactor', 'Index']
2026-07-17 22:18:24 INFO GTAnalysis.print_model():
sourcename offset norm eflux index ts npred free
--------------------------------------------------------------------------------
3FGL J0042.5+4117 0.031 1.053 8.52e-07 2.58 30.07 324.2
3FGL J0040.3+4049 0.624 0.222 1.99e-06 1.77 73.87 149.1
3FGL J0049.0+4224 1.650 0.278 1.33e-06 1.63 29.89 61.4
3FGL J0048.0+3950 1.771 0.603 5.84e-06 1.94 545.61 728.3
3FGL J0039.1+4330 2.337 0.225 1.54e-06 1.89 62.65 169.0
3FGL J0032.5+3912 2.833 0.550 9.81e-07 2.45 46.83 318.7
3FGL J0102.3+4217 3.800 0.575 1.65e-06 2.73 126.19 692.1
3FGL J0041.9+3639 4.600 1.601 1.28e-06 2.19 70.10 260.1
3FGL J0105.3+3928 4.639 0.549 2.55e-06 2.23 215.82 582.0
3FGL J0023.5+4454 5.046 2.144 2.46e-06 2.45 220.86 792.9
3FGL J0102.1+4458 5.147 0.208 8.65e-07 1.72 16.48 55.1
3FGL J0022.7+4651 6.635 1.107 2.89e-07 5.00 4.97 128.0
isodiff --- 0.875 0.0389 2.12 924.97 31907.6
galdiff --- 1.096 0.229 0.02 6739.38 91244.0
2026-07-17 22:18:24 INFO GTAnalysis.free_source(): Freeing parameters for 3FGL J0102.1+4458 : ['Prefactor', 'Index']
2026-07-17 22:18:24 INFO GTAnalysis.free_source(): Freeing parameters for 3FGL J0102.3+4217 : ['Prefactor', 'Index']
2026-07-17 22:18:24 INFO GTAnalysis.free_source(): Freeing parameters for isodiff : ['Normalization']
2026-07-17 22:18:24 INFO GTAnalysis.free_source(): Freeing parameters for galdiff : ['Prefactor', 'Index']
2026-07-17 22:18:24 INFO GTAnalysis.print_model():
sourcename offset norm eflux index ts npred free
--------------------------------------------------------------------------------
3FGL J0042.5+4117 0.031 1.053 8.52e-07 2.58 30.07 324.2
3FGL J0040.3+4049 0.624 0.222 1.99e-06 1.77 73.87 149.1
3FGL J0049.0+4224 1.650 0.278 1.33e-06 1.63 29.89 61.4
3FGL J0048.0+3950 1.771 0.603 5.84e-06 1.94 545.61 728.3
3FGL J0039.1+4330 2.337 0.225 1.54e-06 1.89 62.65 169.0
3FGL J0032.5+3912 2.833 0.550 9.81e-07 2.45 46.83 318.7
3FGL J0102.3+4217 3.800 0.575 1.65e-06 2.73 126.19 692.1 *
3FGL J0041.9+3639 4.600 1.601 1.28e-06 2.19 70.10 260.1
3FGL J0105.3+3928 4.639 0.549 2.55e-06 2.23 215.82 582.0
3FGL J0023.5+4454 5.046 2.144 2.46e-06 2.45 220.86 792.9
3FGL J0102.1+4458 5.147 0.208 8.65e-07 1.72 16.48 55.1 *
3FGL J0022.7+4651 6.635 1.107 2.89e-07 5.00 4.97 128.0
isodiff --- 0.875 0.0389 2.12 924.97 31907.6 *
galdiff --- 1.096 0.229 0.02 6739.38 91244.0 *
2026-07-17 22:18:24 INFO GTAnalysis.extension(): Running extension fit for 3FGL J0102.1+4458
{'spatial_model': 'RadialGaussian', 'width': [], 'fit_position': False, 'width_min': 0.01, 'width_max': 5.0, 'width_nstep': 21, 'free_background': False, 'fix_shape': False, 'free_radius': None, 'fit_ebin': False, 'update': True, 'save_model_map': False, 'sqrt_ts_threshold': 3.0, 'psf_scale_fn': None, 'make_tsmap': True, 'tsmap_fitter': 'tsmap', 'make_plots': False, 'write_fits': True, 'write_npy': True, 'reoptimize': False, 'ra_format': 'hour', 'optimizer': {'optimizer': 'MINUIT', 'tol': 0.001, 'max_iter': 100, 'init_lambda': 0.0001, 'retries': 3, 'min_fit_quality': 2, 'verbosity': 0}, 'prefix': '', 'outfile': None, 'loge_bins': []}
{'spatial_model': 'RadialGaussian', 'width': [], 'fit_position': False, 'width_min': 0.01, 'width_max': 5.0, 'width_nstep': 21, 'free_background': False, 'fix_shape': False, 'free_radius': None, 'fit_ebin': False, 'update': True, 'save_model_map': False, 'sqrt_ts_threshold': 3.0, 'psf_scale_fn': None, 'make_tsmap': True, 'tsmap_fitter': 'tsmap', 'make_plots': False, 'write_fits': True, 'write_npy': True, 'reoptimize': False, 'ra_format': 'hour', 'optimizer': {'optimizer': 'MINUIT', 'tol': 0.001, 'max_iter': 100, 'init_lambda': 0.0001, 'retries': 3, 'min_fit_quality': 2, 'verbosity': 0}, 'prefix': '', 'outfile': None, 'loge_bins': []}
{'name': '3FGL J0023.5+4454', 'file': None, 'config': {'spatial_model': 'RadialGaussian', 'width': [], 'fit_position': False, 'width_min': 0.01, 'width_max': 5.0, 'width_nstep': 21, 'free_background': False, 'fix_shape': False, 'free_radius': None, 'fit_ebin': False, 'update': True, 'save_model_map': False, 'sqrt_ts_threshold': 3.0, 'psf_scale_fn': None, 'make_tsmap': True, 'tsmap_fitter': 'tsmap', 'make_plots': False, 'write_fits': True, 'write_npy': True, 'reoptimize': False, 'ra_format': 'hour', 'optimizer': {'optimizer': 'MINUIT', 'tol': 0.001, 'max_iter': 100, 'init_lambda': 0.0001, 'retries': 3, 'min_fit_quality': 2, 'verbosity': 0}, 'prefix': '', 'outfile': None, 'loge_bins': []}, 'width': array([0. , 0.01 , 0.01364421, 0.01861646, 0.02540069,
0.03465724, 0.04728708, 0.0645195 , 0.08803178, 0.12011244,
0.16388398, 0.2236068 , 0.30509388, 0.4162766 , 0.56797668,
0.77495949, 1.05737126, 1.44269991, 1.96845052, 2.68579588,
3.66455719, 5. ]), 'dloglike': array([ 7.38211349e-03, 7.38398545e-02, 1.34392580e-01, 2.39532659e-01,
4.11858338e-01, 6.68671149e-01, 1.00107322e+00, 1.34911558e+00,
1.58131369e+00, 1.39873007e+00, -1.35386040e-01, -4.40771799e+00,
-1.25650841e+01, -2.45298697e+01, -3.99151273e+01, -5.80624394e+01,
-7.73215495e+01, -9.41089103e+01, -1.05076286e+02, -1.09071994e+02,
-1.10310447e+02, -1.10722817e+02]), 'loglike': array([-246706.54324583, -246706.47678809, -246706.41623536,
-246706.31109528, -246706.1387696 , -246705.88195679,
-246705.54955472, -246705.20151236, -246704.96931425,
-246705.15189787, -246706.68601398, -246710.95834593,
-246719.11571208, -246731.08049765, -246746.46575525,
-246764.61306739, -246783.87217739, -246800.65953827,
-246811.62691422, -246815.62262145, -246816.86107543,
-246817.27344509]), 'loglike_ptsrc': -246706.55062794, 'loglike_ext': -246704.9494481117, 'loglike_init': -246706.5205179373, 'loglike_base': -246706.37744336107, 'ext': 0.09354706142420013, 'ext_err_hi': np.float64(0.03988403125978551), 'ext_err_lo': np.float64(0.041460235620794865), 'ext_err': np.float64(0.04067213344029019), 'ext_ul95': 0.1561278566559612, 'ts_ext': 3.202359656628687, 'ebin_e_min': array([], dtype=float64), 'ebin_e_ctr': array([], dtype=float64), 'ebin_e_max': array([], dtype=float64), 'ebin_ext': array([], dtype=float64), 'ebin_ext_err': array([], dtype=float64), 'ebin_ext_err_hi': array([], dtype=float64), 'ebin_ext_err_lo': array([], dtype=float64), 'ebin_ext_ul95': array([], dtype=float64), 'ebin_ts_ext': array([], dtype=float64), 'ebin_dloglike': array([], shape=(0, 22), dtype=float64), 'ebin_loglike': array([], shape=(0, 22), dtype=float64), 'ebin_loglike_ptsrc': array([], dtype=float64), 'ebin_loglike_ext': array([], dtype=float64), 'ra': np.float64(5.953824933494801), 'dec': np.float64(44.951986278945014), 'glon': np.float64(117.809114077699), 'glat': np.float64(-17.644829318665355), 'ra_err': nan, 'dec_err': nan, 'glon_err': nan, 'glat_err': nan, 'pos_offset': 0.0, 'pos_err': nan, 'pos_r68': nan, 'pos_r95': nan, 'pos_r99': nan, 'pos_err_semimajor': nan, 'pos_err_semiminor': nan, 'pos_angle': nan, 'tsmap': <gammapy.maps.wcs.ndmap.WcsNDMap object at 0x7f7855da6a50>, 'ptsrc_tot_map': None, 'ptsrc_src_map': None, 'ptsrc_bkg_map': None, 'ext_tot_map': None, 'ext_src_map': None, 'ext_bkg_map': None, 'source_fit': {'param_names': array([b'Prefactor', b'Index', b'Scale', b'', b'', b'', b'', b'', b'',
b''], dtype='|S32'), 'param_values': array([ 2.27173233e-12, -2.42985741e+00, 6.20380676e+02, nan,
nan, nan, nan, nan,
nan, nan]), 'param_errors': array([2.18178328e-13, 8.05270249e-02, nan, nan,
nan, nan, nan, nan,
nan, nan]), 'ts': np.float64(228.58764375624014), 'loglike': np.float64(-246704.9494481117), 'loglike_scan': array([-246819.24326999, -246707.65845436, -246707.00848449,
-246706.45127195, -246705.9848126 , -246705.60718927,
-246705.31656597, -246705.11118271, -246704.98935072,
-246704.94944811, -246704.97804435, -246705.06234343,
-246705.20148432, -246705.39463257, -246705.64097905,
-246705.93973875, -246706.29014974, -246706.69147212,
-246707.14298702, -246707.64399573]), 'dloglike_scan': array([-1.14293822e+02, -2.70900625e+00, -2.05903638e+00, -1.50182383e+00,
-1.03536449e+00, -6.57741163e-01, -3.67117861e-01, -1.61734597e-01,
-3.99026115e-02, 0.00000000e+00, -2.85962369e-02, -1.12895315e-01,
-2.52036210e-01, -4.45184463e-01, -6.91530935e-01, -9.90290637e-01,
-1.34070163e+00, -1.74202401e+00, -2.19353891e+00, -2.69454762e+00]), 'eflux_scan': array([0.00000000e+00, 2.16718073e-06, 2.22944413e-06, 2.29170753e-06,
2.35397094e-06, 2.41623434e-06, 2.47849774e-06, 2.54076114e-06,
2.60302455e-06, 2.66528795e-06, 2.71753546e-06, 2.76978296e-06,
2.82203047e-06, 2.87427797e-06, 2.92652548e-06, 2.97877299e-06,
3.03102049e-06, 3.08326800e-06, 3.13551551e-06, 3.18776301e-06]), 'flux_scan': array([0.00000000e+00, 2.26700708e-09, 2.33213851e-09, 2.39726994e-09,
2.46240137e-09, 2.52753279e-09, 2.59266422e-09, 2.65779565e-09,
2.72292708e-09, 2.78805850e-09, 2.84271268e-09, 2.89736685e-09,
2.95202102e-09, 3.00667519e-09, 3.06132936e-09, 3.11598353e-09,
3.17063770e-09, 3.22529187e-09, 3.27994604e-09, 3.33460022e-09]), 'norm_scan': array([0. , 1.84717547, 1.90024507, 1.95331468, 2.00638429,
2.0594539 , 2.1125235 , 2.16559311, 2.21866272, 2.27173233,
2.31626498, 2.36079763, 2.40533029, 2.44986294, 2.4943956 ,
2.53892825, 2.58346091, 2.62799356, 2.67252622, 2.71705887]), 'npred': 810.0105559101776, 'npred_wt': 810.0105559101776, 'pivot_energy': 1144.9090512777095, 'flux': 2.7880585045549845e-09, 'flux100': 1.3415183530706746e-08, 'flux1000': 4.981819314360874e-10, 'flux10000': 1.8380753284372375e-11, 'flux_err': np.float64(2.7071906638636933e-10), 'flux100_err': np.float64(2.176831640378176e-09), 'flux1000_err': np.float64(4.682040187721247e-11), 'flux10000_err': np.float64(4.469787512921654e-12), 'flux_ul95': 3.173233902777907e-09, 'flux100_ul95': 1.5268515751042747e-08, 'flux1000_ul95': 5.670066793798138e-10, 'flux10000_ul95': 2.0920088077519215e-11, 'eflux': 2.665287950560392e-06, 'eflux100': 4.318315467863107e-06, 'eflux1000': 1.5171937730668182e-06, 'eflux10000': 4.762009602641937e-07, 'eflux_err': np.float64(2.622881397133609e-07), 'eflux100_err': np.float64(3.785603370555193e-07), 'eflux1000_err': np.float64(2.38426493691067e-07), 'eflux10000_err': np.float64(1.391652960797956e-07), 'eflux_ul95': 3.0335023714768275e-06, 'eflux100_ul95': 4.914898673441093e-06, 'eflux1000_ul95': 1.7267968767203503e-06, 'eflux10000_ul95': 5.419889967075594e-07, 'dnde': 5.125558295292785e-13, 'dnde100': 1.9160361846349005e-10, 'dnde1000': 7.121087131360664e-13, 'dnde10000': 2.6466035630790135e-15, 'dnde_err': np.float64(4.2235588571817014e-14), 'dnde100_err': np.float64(4.0792549249423686e-11), 'dnde1000_err': np.float64(5.918908030192836e-14), 'dnde10000_err': np.float64(5.108143294188874e-16), 'dnde_index': np.float64(2.4298574068674146), 'dnde100_index': np.float64(2.4298574068341092), 'dnde1000_index': np.float64(2.4298574068674146), 'dnde10000_index': np.float64(2.4298574068563132), 'name': '3FGL J0023.5+4454', 'spectral_pars': {'Prefactor': {'name': 'Prefactor', 'value': 2.2717323251917323, 'error': 0.21817832825745023, 'min': 1e-05, 'max': 1000.0, 'free': True, 'scale': 1e-12}, 'Index': {'name': 'Index', 'value': 2.4298574068456786, 'error': 0.08052702494736255, 'min': 0.0, 'max': 5.0, 'free': True, 'scale': -1.0}, 'Scale': {'name': 'Scale', 'value': 620.3806763, 'error': nan, 'min': 620.3806763, 'max': 620.3806763, 'free': False, 'scale': 1.0}}, 'model_counts': array([2.18280819e+02, 1.67561710e+02, 1.25075141e+02, 9.14354746e+01,
6.54256462e+01, 4.60173959e+01, 3.16167209e+01, 2.14352010e+01,
1.43866426e+01, 9.56626829e+00, 6.37467653e+00, 4.29266470e+00,
2.85831688e+00, 1.90064964e+00, 1.26356705e+00, 8.44285583e-01,
5.70246183e-01, 3.82595974e-01, 2.54090268e-01, 1.67993722e-01,
1.11206984e-01, 7.33598275e-02, 4.86294637e-02, 3.22066478e-02,
2.12534797e-02, 1.37929949e-02]), 'model_counts_wt': array([2.18280819e+02, 1.67561710e+02, 1.25075141e+02, 9.14354746e+01,
6.54256462e+01, 4.60173959e+01, 3.16167209e+01, 2.14352010e+01,
1.43866426e+01, 9.56626829e+00, 6.37467653e+00, 4.29266470e+00,
2.85831688e+00, 1.90064964e+00, 1.26356705e+00, 8.44285583e-01,
5.70246183e-01, 3.82595974e-01, 2.54090268e-01, 1.67993722e-01,
1.11206984e-01, 7.33598275e-02, 4.86294637e-02, 3.22066478e-02,
2.12534797e-02, 1.37929949e-02]), 'covar': array([[0.04760178, 0.00902469],
[0.00902469, 0.0064846 ]]), 'model_flux': {'energies': array([2.99999133e+02, 3.49037461e+02, 4.06091671e+02, 4.72472050e+02,
5.49703071e+02, 6.39558395e+02, 7.44101611e+02, 8.65733625e+02,
1.00724780e+03, 1.17189410e+03, 1.36345374e+03, 1.58632602e+03,
1.84562936e+03, 2.14731882e+03, 2.49832292e+03, 2.90670269e+03,
3.38183686e+03, 3.93463720e+03, 4.57779916e+03, 5.32609337e+03,
6.19670492e+03, 7.20962801e+03, 8.38812508e+03, 9.75926113e+03,
1.13545252e+04, 1.32105537e+04, 1.53699715e+04, 1.78823711e+04,
2.08054514e+04, 2.42063430e+04, 2.81631498e+04, 3.27667423e+04,
3.81228452e+04, 4.43544652e+04, 5.16047155e+04, 6.00401030e+04,
6.98543522e+04, 8.12728539e+04, 9.45578417e+04, 1.10014415e+05,
1.27997543e+05, 1.48920221e+05, 1.73262954e+05, 2.01584787e+05,
2.34536152e+05, 2.72873799e+05, 3.17478177e+05, 3.69373656e+05,
4.29752052e+05, 4.99999995e+05]), 'log_energies': array([2.47712 , 2.54287204, 2.60862408, 2.67437612, 2.74012816,
2.8058802 , 2.87163224, 2.93738429, 3.00313633, 3.06888837,
3.13464041, 3.20039245, 3.26614449, 3.33189653, 3.39764857,
3.46340061, 3.52915265, 3.59490469, 3.66065673, 3.72640878,
3.79216082, 3.85791286, 3.9236649 , 3.98941694, 4.05516898,
4.12092102, 4.18667306, 4.2524251 , 4.31817714, 4.38392918,
4.44968122, 4.51543327, 4.58118531, 4.64693735, 4.71268939,
4.77844143, 4.84419347, 4.90994551, 4.97569755, 5.04144959,
5.10720163, 5.17295367, 5.23870571, 5.30445776, 5.3702098 ,
5.43596184, 5.50171388, 5.56746592, 5.63321796, 5.69897 ]), 'dnde': array([1.32760886e-11, 9.18971530e-12, 6.36112564e-12, 4.40317443e-12,
3.04787960e-12, 2.10974382e-12, 1.46036575e-12, 1.01086592e-12,
6.99721911e-13, 4.84347865e-13, 3.35265841e-13, 2.32071187e-13,
1.60639794e-13, 1.11194948e-13, 7.69692001e-14, 5.32781198e-14,
3.68791418e-14, 2.55277609e-14, 1.76703292e-14, 1.22314109e-14,
8.46658890e-15, 5.86057718e-15, 4.05669453e-15, 2.80804603e-15,
1.94373090e-15, 1.34545153e-15, 9.31322236e-16, 6.44661729e-16,
4.46235180e-16, 3.08884220e-16, 2.13809816e-16, 1.47999264e-16,
1.02445166e-16, 7.09125967e-17, 4.90857358e-17, 3.39771715e-17,
2.35190155e-17, 1.62798746e-17, 1.12689375e-17, 7.80036434e-18,
5.39941620e-18, 3.73747866e-18, 2.58708464e-18, 1.79078132e-18,
1.23957975e-18, 8.58037735e-19, 5.93934160e-19, 4.11121530e-19,
2.84578534e-19, 1.96985407e-19]), 'dnde_lo': array([1.16895950e-11, 8.15958238e-12, 5.69339411e-12, 3.97060276e-12,
2.76730611e-12, 1.92705067e-12, 1.34051573e-12, 9.31314988e-13,
6.46069777e-13, 4.47466136e-13, 3.09401189e-13, 2.13597564e-13,
1.47249512e-13, 1.01388131e-13, 6.97417339e-14, 4.79357876e-14,
3.29279420e-14, 2.26083527e-14, 1.55175119e-14, 1.06478669e-14,
7.30500448e-15, 5.01093794e-15, 3.43697520e-15, 2.35725645e-15,
1.61667047e-15, 1.10873879e-15, 7.60391149e-16, 5.21495440e-16,
3.57663062e-16, 2.45307798e-16, 1.68253912e-16, 1.15408513e-16,
7.91646369e-17, 5.43058705e-17, 3.72550959e-17, 2.55592949e-17,
1.75362630e-17, 1.20323591e-17, 8.25639549e-18, 5.66573759e-18,
3.88820265e-18, 2.66850436e-18, 1.83152809e-18, 1.25714649e-18,
8.62948306e-19, 5.92393344e-19, 4.06688538e-19, 2.79215752e-19,
1.91709636e-19, 1.31635739e-19]), 'dnde_hi': array([1.50778985e-11, 1.03499007e-11, 7.10716994e-12, 4.88287201e-12,
3.35690006e-12, 2.30975711e-12, 1.59093108e-12, 1.09721193e-12,
7.57829525e-13, 5.24269517e-13, 3.63292670e-13, 2.52142557e-13,
1.75247736e-13, 1.21950335e-13, 8.49456620e-14, 5.92158424e-14,
4.13044672e-14, 2.88241511e-14, 2.01218169e-14, 1.40504586e-14,
9.81287934e-15, 6.85427863e-15, 4.78815513e-15, 3.34504228e-15,
2.33695728e-15, 1.63270179e-15, 1.14067754e-15, 7.96917314e-16,
5.56741404e-16, 3.88937744e-16, 2.71700293e-16, 1.89793469e-16,
1.32571973e-16, 9.25976569e-17, 6.46732855e-17, 4.51674502e-17,
3.15428714e-17, 2.20267957e-17, 1.53806771e-17, 1.07392344e-17,
7.49798760e-18, 5.23467263e-18, 3.65432941e-18, 2.55093400e-18,
1.78059095e-18, 1.24280389e-18, 8.67390530e-19, 6.05341610e-19,
4.22435428e-19, 2.94777473e-19]), 'dnde_err': array([1.80180996e-12, 1.16018540e-12, 7.46044293e-13, 4.79697574e-13,
3.09020464e-13, 2.00013291e-13, 1.30565330e-13, 8.63460071e-14,
5.81076142e-14, 3.99216513e-14, 2.80268293e-14, 2.00713697e-14,
1.46079417e-14, 1.07553866e-14, 7.97646196e-15, 5.93772265e-15,
4.42532544e-15, 3.29639024e-15, 2.45148775e-15, 1.81904766e-15,
1.34629044e-15, 9.93701458e-16, 7.31460609e-16, 5.36996253e-16,
3.93226377e-16, 2.87250261e-16, 2.09355307e-16, 1.52255585e-16,
1.10506225e-16, 8.00535242e-17, 5.78904773e-17, 4.17942054e-17,
3.01268067e-17, 2.16850603e-17, 1.55875497e-17, 1.11902787e-17,
8.02385591e-18, 5.74692113e-18, 4.11173958e-18, 2.93887003e-18,
2.09857141e-18, 1.49719397e-18, 1.06724477e-18, 7.60152679e-19,
5.41011205e-19, 3.84766159e-19, 2.73456370e-19, 1.94220080e-19,
1.37856894e-19, 9.77920660e-20]), 'dnde_ferr': array([0.12760925, 0.11917226, 0.11112623, 0.10359222, 0.09672199,
0.09069974, 0.08573721, 0.08205685, 0.07986012, 0.07928535,
0.08037127, 0.08304562, 0.08714598, 0.09246015, 0.09876631,
0.10586011, 0.11356725, 0.12174586, 0.13028351, 0.13909236,
0.14810421, 0.15726614, 0.16653706, 0.17588491, 0.1852846 ,
0.19471641, 0.20416478, 0.21361736, 0.22306437, 0.23249803,
0.24191214, 0.25130178, 0.26066304, 0.26999284, 0.27928877,
0.28854896, 0.297772 , 0.30695681, 0.31610263, 0.32520896,
0.33427549, 0.34330206, 0.35228869, 0.36123548, 0.37014264,
0.37901046, 0.38783928, 0.39662951, 0.40538158, 0.41409599]), 'pivot_energy': 1144.9090512777095}}}
0.094 0.041 0.156 3.202
Running extension on source 3FGL J0102.1+4458
2026-07-17 22:19:00 INFO GTAnalysis._extension(): Fitting extended-source model.
2026-07-17 22:19:20 INFO GTAnalysis._extension(): Generating TS map.
2026-07-17 22:21:01 INFO GTAnalysis._extension(): Testing point-source model.
2026-07-17 22:21:03 INFO GTAnalysis._extension(): Best-fit extension: 9.0000 + nan - nan
2026-07-17 22:21:03 INFO GTAnalysis._extension(): TS_ext: 0.000
2026-07-17 22:21:03 INFO GTAnalysis._extension(): Extension UL: nan
2026-07-17 22:21:03 INFO GTAnalysis._extension(): LogLike: -246705.592 DeltaLogLike: 0.638
2026-07-17 22:21:03 INFO GTAnalysis.extension(): Finished extension fit.
2026-07-17 22:21:03 WARNING GTAnalysis.extension(): Saving maps in .npy files is disabled b/c of incompatibilities in python3, remove the maps from the /home/runner/work/fermipy/fermipy/fermipy-extra/notebooks/M31_data/3fgl_j0102.1+4458_ext.npy
2026-07-17 22:21:03 INFO GTAnalysis.extension(): Execution time: 158.23 s
2026-07-17 22:21:03 INFO GTAnalysis.print_model():
sourcename offset norm eflux index ts npred free
--------------------------------------------------------------------------------
3FGL J0042.5+4117 0.031 1.053 8.52e-07 2.58 30.07 324.2
3FGL J0040.3+4049 0.624 0.222 1.99e-06 1.77 73.87 149.1
3FGL J0049.0+4224 1.650 0.278 1.33e-06 1.63 29.89 61.4
3FGL J0048.0+3950 1.771 0.603 5.84e-06 1.94 545.61 728.3
3FGL J0039.1+4330 2.337 0.225 1.54e-06 1.89 62.65 169.0
3FGL J0032.5+3912 2.833 0.550 9.81e-07 2.45 46.83 318.7
3FGL J0102.3+4217 3.800 0.575 1.65e-06 2.73 126.19 692.1 *
3FGL J0041.9+3639 4.600 1.601 1.28e-06 2.19 70.10 260.1
3FGL J0105.3+3928 4.639 0.549 2.55e-06 2.23 215.82 582.0
3FGL J0023.5+4454 5.046 2.144 2.46e-06 2.45 220.86 792.9
3FGL J0102.1+4458 5.147 0.208 8.65e-07 1.72 16.48 55.1 *
3FGL J0022.7+4651 6.635 1.107 2.89e-07 5.00 4.97 128.0
isodiff --- 0.875 0.0389 2.12 924.97 31907.6 *
galdiff --- 1.096 0.229 0.02 6739.38 91244.0 *
2026-07-17 22:21:03 INFO GTAnalysis.free_source(): Fixing parameters for 3FGL J0102.3+4217 : ['Prefactor', 'Index']
2026-07-17 22:21:03 INFO GTAnalysis.free_source(): Fixing parameters for 3FGL J0102.1+4458 : ['Prefactor', 'Index']
2026-07-17 22:21:03 INFO GTAnalysis.free_source(): Fixing parameters for isodiff : ['Normalization']
2026-07-17 22:21:03 INFO GTAnalysis.free_source(): Fixing parameters for galdiff : ['Prefactor', 'Index']
2026-07-17 22:21:03 INFO GTAnalysis.print_model():
sourcename offset norm eflux index ts npred free
--------------------------------------------------------------------------------
3FGL J0042.5+4117 0.031 1.053 8.52e-07 2.58 30.07 324.2
3FGL J0040.3+4049 0.624 0.222 1.99e-06 1.77 73.87 149.1
3FGL J0049.0+4224 1.650 0.278 1.33e-06 1.63 29.89 61.4
3FGL J0048.0+3950 1.771 0.603 5.84e-06 1.94 545.61 728.3
3FGL J0039.1+4330 2.337 0.225 1.54e-06 1.89 62.65 169.0
3FGL J0032.5+3912 2.833 0.550 9.81e-07 2.45 46.83 318.7
3FGL J0102.3+4217 3.800 0.575 1.65e-06 2.73 126.19 692.1
3FGL J0041.9+3639 4.600 1.601 1.28e-06 2.19 70.10 260.1
3FGL J0105.3+3928 4.639 0.549 2.55e-06 2.23 215.82 582.0
3FGL J0023.5+4454 5.046 2.144 2.46e-06 2.45 220.86 792.9
3FGL J0102.1+4458 5.147 0.208 8.65e-07 1.72 16.48 55.1
3FGL J0022.7+4651 6.635 1.107 2.89e-07 5.00 4.97 128.0
isodiff --- 0.875 0.0389 2.12 924.97 31907.6
galdiff --- 1.096 0.229 0.02 6739.38 91244.0
2026-07-17 22:21:03 INFO GTAnalysis.free_source(): Freeing parameters for 3FGL J0022.7+4651 : ['Prefactor', 'Index']
2026-07-17 22:21:03 INFO GTAnalysis.free_source(): Freeing parameters for 3FGL J0023.5+4454 : ['Prefactor', 'Index']
2026-07-17 22:21:03 INFO GTAnalysis.free_source(): Freeing parameters for isodiff : ['Normalization']
2026-07-17 22:21:03 INFO GTAnalysis.free_source(): Freeing parameters for galdiff : ['Prefactor', 'Index']
2026-07-17 22:21:03 INFO GTAnalysis.print_model():
sourcename offset norm eflux index ts npred free
--------------------------------------------------------------------------------
3FGL J0042.5+4117 0.031 1.053 8.52e-07 2.58 30.07 324.2
3FGL J0040.3+4049 0.624 0.222 1.99e-06 1.77 73.87 149.1
3FGL J0049.0+4224 1.650 0.278 1.33e-06 1.63 29.89 61.4
3FGL J0048.0+3950 1.771 0.603 5.84e-06 1.94 545.61 728.3
3FGL J0039.1+4330 2.337 0.225 1.54e-06 1.89 62.65 169.0
3FGL J0032.5+3912 2.833 0.550 9.81e-07 2.45 46.83 318.7
3FGL J0102.3+4217 3.800 0.575 1.65e-06 2.73 126.19 692.1
3FGL J0041.9+3639 4.600 1.601 1.28e-06 2.19 70.10 260.1
3FGL J0105.3+3928 4.639 0.549 2.55e-06 2.23 215.82 582.0
3FGL J0023.5+4454 5.046 2.144 2.46e-06 2.45 220.86 792.9 *
3FGL J0102.1+4458 5.147 0.208 8.65e-07 1.72 16.48 55.1
3FGL J0022.7+4651 6.635 1.107 2.89e-07 5.00 4.97 128.0 *
isodiff --- 0.875 0.0389 2.12 924.97 31907.6 *
galdiff --- 1.096 0.229 0.02 6739.38 91244.0 *
2026-07-17 22:21:03 INFO GTAnalysis.extension(): Running extension fit for 3FGL J0022.7+4651
{'spatial_model': 'RadialGaussian', 'width': [], 'fit_position': False, 'width_min': 0.01, 'width_max': 5.0, 'width_nstep': 21, 'free_background': False, 'fix_shape': False, 'free_radius': None, 'fit_ebin': False, 'update': True, 'save_model_map': False, 'sqrt_ts_threshold': 3.0, 'psf_scale_fn': None, 'make_tsmap': True, 'tsmap_fitter': 'tsmap', 'make_plots': False, 'write_fits': True, 'write_npy': True, 'reoptimize': False, 'ra_format': 'hour', 'optimizer': {'optimizer': 'MINUIT', 'tol': 0.001, 'max_iter': 100, 'init_lambda': 0.0001, 'retries': 3, 'min_fit_quality': 2, 'verbosity': 0}, 'prefix': '', 'outfile': None, 'loge_bins': []}
{'spatial_model': 'RadialGaussian', 'width': [], 'fit_position': False, 'width_min': 0.01, 'width_max': 5.0, 'width_nstep': 21, 'free_background': False, 'fix_shape': False, 'free_radius': None, 'fit_ebin': False, 'update': True, 'save_model_map': False, 'sqrt_ts_threshold': 3.0, 'psf_scale_fn': None, 'make_tsmap': True, 'tsmap_fitter': 'tsmap', 'make_plots': False, 'write_fits': True, 'write_npy': True, 'reoptimize': False, 'ra_format': 'hour', 'optimizer': {'optimizer': 'MINUIT', 'tol': 0.001, 'max_iter': 100, 'init_lambda': 0.0001, 'retries': 3, 'min_fit_quality': 2, 'verbosity': 0}, 'prefix': '', 'outfile': None, 'loge_bins': []}
{'name': '3FGL J0102.1+4458', 'file': None, 'config': {'spatial_model': 'RadialGaussian', 'width': [], 'fit_position': False, 'width_min': 0.01, 'width_max': 5.0, 'width_nstep': 21, 'free_background': False, 'fix_shape': False, 'free_radius': None, 'fit_ebin': False, 'update': True, 'save_model_map': False, 'sqrt_ts_threshold': 3.0, 'psf_scale_fn': None, 'make_tsmap': True, 'tsmap_fitter': 'tsmap', 'make_plots': False, 'write_fits': True, 'write_npy': True, 'reoptimize': False, 'ra_format': 'hour', 'optimizer': {'optimizer': 'MINUIT', 'tol': 0.001, 'max_iter': 100, 'init_lambda': 0.0001, 'retries': 3, 'min_fit_quality': 2, 'verbosity': 0}, 'prefix': '', 'outfile': None, 'loge_bins': []}, 'width': array([0. , 0.01 , 0.01364421, 0.01861646, 0.02540069,
0.03465724, 0.04728708, 0.0645195 , 0.08803178, 0.12011244,
0.16388398, 0.2236068 , 0.30509388, 0.4162766 , 0.56797668,
0.77495949, 1.05737126, 1.44269991, 1.96845052, 2.68579588,
3.66455719, 5. ]), 'dloglike': array([ 5.52972779e-10, 1.99796341e-05, 3.24519351e-06, 2.31710728e-05,
8.68836651e-06, 2.33697065e-05, 1.40031334e-05, 2.07226258e-05,
2.00495706e-05, 2.08802521e-05, 2.00480281e-05, 2.11096776e-05,
2.03897944e-05, -4.44456236e-06, 9.34887794e-06, 1.70356652e-05,
2.08384299e-05, 2.31136801e-05, 2.35480838e-05, 2.35669140e-05,
2.35887128e-05, 2.35905172e-05]), 'loglike': array([-246705.5919211 , -246705.59190113, -246705.59191786,
-246705.59189793, -246705.59191242, -246705.59189774,
-246705.5919071 , -246705.59190038, -246705.59190106,
-246705.59190023, -246705.59190106, -246705.5919 ,
-246705.59190072, -246705.59192555, -246705.59191176,
-246705.59190407, -246705.59190027, -246705.59189799,
-246705.59189756, -246705.59189754, -246705.59189752,
-246705.59189751]), 'loglike_ptsrc': -246705.5919211054, 'loglike_ext': -246705.5919188452, 'loglike_init': -246706.23030146884, 'loglike_base': -246705.5919672069, 'ext': np.float64(9.000000000000004), 'ext_err_hi': np.float64(nan), 'ext_err_lo': np.float64(nan), 'ext_err': nan, 'ext_ul95': nan, 'ts_ext': 4.520406946539879e-06, 'ebin_e_min': array([], dtype=float64), 'ebin_e_ctr': array([], dtype=float64), 'ebin_e_max': array([], dtype=float64), 'ebin_ext': array([], dtype=float64), 'ebin_ext_err': array([], dtype=float64), 'ebin_ext_err_hi': array([], dtype=float64), 'ebin_ext_err_lo': array([], dtype=float64), 'ebin_ext_ul95': array([], dtype=float64), 'ebin_ts_ext': array([], dtype=float64), 'ebin_dloglike': array([], shape=(0, 22), dtype=float64), 'ebin_loglike': array([], shape=(0, 22), dtype=float64), 'ebin_loglike_ptsrc': array([], dtype=float64), 'ebin_loglike_ext': array([], dtype=float64), 'ra': np.float64(15.564823293965377), 'dec': np.float64(44.98747160167069), 'glon': np.float64(124.94165109785158), 'glat': np.float64(-17.842044698812686), 'ra_err': nan, 'dec_err': nan, 'glon_err': nan, 'glat_err': nan, 'pos_offset': 0.0, 'pos_err': nan, 'pos_r68': nan, 'pos_r95': nan, 'pos_r99': nan, 'pos_err_semimajor': nan, 'pos_err_semiminor': nan, 'pos_angle': nan, 'tsmap': <gammapy.maps.wcs.ndmap.WcsNDMap object at 0x7f78563aaed0>, 'ptsrc_tot_map': None, 'ptsrc_src_map': None, 'ptsrc_bkg_map': None, 'ext_tot_map': None, 'ext_src_map': None, 'ext_bkg_map': None, 'source_fit': {'param_names': array([b'Prefactor', b'Index', b'Scale', b'', b'', b'', b'', b'', b'',
b''], dtype='|S32'), 'param_values': array([ 3.36614869e-14, -1.86734234e+00, 1.64542835e+03, nan,
nan, nan, nan, nan,
nan, nan]), 'param_errors': array([1.22871892e-14, 1.79273020e-01, nan, nan,
nan, nan, nan, nan,
nan, nan]), 'ts': np.float64(22.52964494295884), 'loglike': np.float64(-246705.5919188452), 'loglike_scan': array([-246716.85674132, -246708.29735529, -246707.56839817,
-246706.9834178 , -246706.52123112, -246706.16571366,
-246705.90424493, -246705.72671948, -246705.62489054,
-246705.59191885, -246705.62451222, -246705.71990072,
-246705.87338668, -246706.08091237, -246706.33894161,
-246706.64436814, -246706.99444389, -246707.38672199,
-246707.81901102, -246708.28933788]), 'dloglike_scan': array([-11.26482247, -2.70543645, -1.97647933, -1.39149895,
-0.92931228, -0.57379481, -0.31232608, -0.13480064,
-0.03297169, 0. , -0.03259338, -0.12798188,
-0.28146783, -0.48899353, -0.74702277, -1.05244929,
-1.40252504, -1.79480314, -2.22709218, -2.69741904]), 'eflux_scan': array([0.00000000e+00, 3.68174953e-07, 4.36957565e-07, 5.05740177e-07,
5.74522789e-07, 6.43305401e-07, 7.12088013e-07, 7.80870624e-07,
8.49653236e-07, 9.18435848e-07, 9.89983558e-07, 1.06153127e-06,
1.13307898e-06, 1.20462669e-06, 1.27617440e-06, 1.34772211e-06,
1.41926981e-06, 1.49081752e-06, 1.56236523e-06, 1.63391294e-06]), 'flux_scan': array([0.00000000e+00, 1.11888674e-10, 1.32791767e-10, 1.53694860e-10,
1.74597953e-10, 1.95501045e-10, 2.16404138e-10, 2.37307231e-10,
2.58210324e-10, 2.79113417e-10, 3.00856825e-10, 3.22600234e-10,
3.44343642e-10, 3.66087050e-10, 3.87830459e-10, 4.09573867e-10,
4.31317275e-10, 4.53060684e-10, 4.74804092e-10, 4.96547500e-10]), 'norm_scan': array([0. , 0.13493938, 0.16014882, 0.18535825, 0.21056769,
0.23577712, 0.26098656, 0.286196 , 0.31140543, 0.33661487,
0.36283774, 0.38906061, 0.41528348, 0.44150634, 0.46772921,
0.49395208, 0.52017495, 0.54639782, 0.57262069, 0.59884356]), 'npred': 89.87779555150681, 'npred_wt': 89.87779555150681, 'pivot_energy': 5315.3149748051355, 'flux': 2.791134169370881e-10, 'flux100': 7.24322762171141e-10, 'flux1000': 9.771118852213653e-11, 'flux10000': 1.2683034265658308e-11, 'flux_err': np.float64(1.2021526067575445e-10), 'flux100_err': np.float64(4.258987333863258e-10), 'flux1000_err': np.float64(3.074105188624367e-11), 'flux10000_err': np.float64(5.2542927237676045e-12), 'flux_ul95': 4.283453176860223e-10, 'flux100_ul95': 1.111592079929812e-09, 'flux1000_ul95': 1.4995384510099446e-10, 'flux10000_ul95': 1.946419631619015e-11, 'eflux': 9.184358481124914e-07, 'eflux100': 9.062968808723917e-07, 'eflux1000': 7.370240225554251e-07, 'eflux10000': 5.072838404875058e-07, 'eflux_err': np.float64(3.6169953965200476e-07), 'eflux100_err': np.float64(2.973747436744414e-07), 'eflux1000_err': np.float64(3.023728867040212e-07), 'eflux10000_err': np.float64(2.724123947153529e-07), 'eflux_ul95': 1.4094904481881295e-06, 'eflux100_ul95': 1.3908612119589994e-06, 'eflux1000_ul95': 1.1310842472144304e-06, 'eflux10000_ul95': 7.785102564939893e-07, 'dnde': 3.768679024890159e-15, 'dnde100': 6.285538978282433e-12, 'dnde1000': 8.53100471440414e-14, 'dnde10000': 1.1578647700482919e-15, 'dnde_err': np.float64(1.12463107620116e-15), 'dnde100_err': np.float64(4.854121795976719e-12), 'dnde1000_err': np.float64(3.6067754849558373e-14), 'dnde10000_err': np.float64(3.6959027245183083e-16), 'dnde_index': np.float64(1.867342341957303), 'dnde100_index': np.float64(1.8673423419462012), 'dnde1000_index': np.float64(1.867342341957303), 'dnde10000_index': np.float64(1.8673423419462012), 'name': '3FGL J0102.1+4458', 'spectral_pars': {'Prefactor': {'name': 'Prefactor', 'value': 0.33661486866946877, 'error': 0.12287189244279717, 'min': 1e-05, 'max': 1000.0, 'free': True, 'scale': 1e-13}, 'Index': {'name': 'Index', 'value': 1.8673423419526058, 'error': 0.17927301967144252, 'min': 0.0, 'max': 5.0, 'free': True, 'scale': -1.0}, 'Scale': {'name': 'Scale', 'value': 1645.428345, 'error': nan, 'min': 1645.428345, 'max': 1645.428345, 'free': False, 'scale': 1.0}}, 'model_counts': array([14.62076797, 13.15715514, 11.5297074 , 9.89609448, 8.31282139,
6.84845889, 5.50974347, 4.37041883, 3.43526342, 2.67648705,
2.0947301 , 1.65596477, 1.29492065, 1.0114576 , 0.78973461,
0.62017698, 0.49194681, 0.38755888, 0.30238043, 0.23488574,
0.18265892, 0.14160887, 0.11028374, 0.08578207, 0.06639493,
0.05039239]), 'model_counts_wt': array([14.62076797, 13.15715514, 11.5297074 , 9.89609448, 8.31282139,
6.84845889, 5.50974347, 4.37041883, 3.43526342, 2.67648705,
2.0947301 , 1.65596477, 1.29492065, 1.0114576 , 0.78973461,
0.62017698, 0.49194681, 0.38755888, 0.30238043, 0.23488574,
0.18265892, 0.14160887, 0.11028374, 0.08578207, 0.06639493,
0.05039239]), 'covar': array([[0.0150975 , 0.01268551],
[0.01268551, 0.03213882]]), 'model_flux': {'energies': array([2.99999133e+02, 3.49037461e+02, 4.06091671e+02, 4.72472050e+02,
5.49703071e+02, 6.39558395e+02, 7.44101611e+02, 8.65733625e+02,
1.00724780e+03, 1.17189410e+03, 1.36345374e+03, 1.58632602e+03,
1.84562936e+03, 2.14731882e+03, 2.49832292e+03, 2.90670269e+03,
3.38183686e+03, 3.93463720e+03, 4.57779916e+03, 5.32609337e+03,
6.19670492e+03, 7.20962801e+03, 8.38812508e+03, 9.75926113e+03,
1.13545252e+04, 1.32105537e+04, 1.53699715e+04, 1.78823711e+04,
2.08054514e+04, 2.42063430e+04, 2.81631498e+04, 3.27667423e+04,
3.81228452e+04, 4.43544652e+04, 5.16047155e+04, 6.00401030e+04,
6.98543522e+04, 8.12728539e+04, 9.45578417e+04, 1.10014415e+05,
1.27997543e+05, 1.48920221e+05, 1.73262954e+05, 2.01584787e+05,
2.34536152e+05, 2.72873799e+05, 3.17478177e+05, 3.69373656e+05,
4.29752052e+05, 4.99999995e+05]), 'log_energies': array([2.47712 , 2.54287204, 2.60862408, 2.67437612, 2.74012816,
2.8058802 , 2.87163224, 2.93738429, 3.00313633, 3.06888837,
3.13464041, 3.20039245, 3.26614449, 3.33189653, 3.39764857,
3.46340061, 3.52915265, 3.59490469, 3.66065673, 3.72640878,
3.79216082, 3.85791286, 3.9236649 , 3.98941694, 4.05516898,
4.12092102, 4.18667306, 4.2524251 , 4.31817714, 4.38392918,
4.44968122, 4.51543327, 4.58118531, 4.64693735, 4.71268939,
4.77844143, 4.84419347, 4.90994551, 4.97569755, 5.04144959,
5.10720163, 5.17295367, 5.23870571, 5.30445776, 5.3702098 ,
5.43596184, 5.50171388, 5.56746592, 5.63321796, 5.69897 ]), 'dnde': array([8.07971693e-13, 6.08996190e-13, 4.59021477e-13, 3.45980352e-13,
2.60777349e-13, 1.96556901e-13, 1.48151730e-13, 1.11667079e-13,
8.41673370e-14, 6.34398309e-14, 4.78167932e-14, 3.60411697e-14,
2.71654752e-14, 2.04755576e-14, 1.54331354e-14, 1.16324876e-14,
8.76780793e-15, 6.60859987e-15, 4.98113013e-15, 3.75444994e-15,
2.82985868e-15, 2.13296229e-15, 1.60768740e-15, 1.21176956e-15,
9.13352598e-16, 6.88425421e-16, 5.18890033e-16, 3.91105352e-16,
2.94789621e-16, 2.22193126e-16, 1.67474639e-16, 1.26231423e-16,
9.51449866e-17, 7.17140648e-17, 5.40533693e-17, 4.07418926e-17,
3.07085726e-17, 2.31461125e-17, 1.74460250e-17, 1.31496720e-17,
9.91136227e-18, 7.47053630e-18, 5.63080141e-18, 4.24412963e-18,
3.19894719e-18, 2.41115706e-18, 1.81737241e-18, 1.36981640e-18,
1.03247796e-18, 7.78214326e-19]), 'dnde_lo': array([5.06407102e-13, 3.87359768e-13, 2.96296494e-13, 2.26631980e-13,
1.73332896e-13, 1.32551562e-13, 1.01346227e-13, 7.74674416e-14,
5.91948911e-14, 4.52127423e-14, 3.45144064e-14, 2.63297604e-14,
2.00695210e-14, 1.52827211e-14, 1.16241940e-14, 8.82970483e-15,
6.69692436e-15, 5.07087148e-15, 3.83277596e-15, 2.89156298e-15,
2.17735005e-15, 1.63648829e-15, 1.22778522e-15, 9.19626705e-16,
6.87778455e-16, 5.13699099e-16, 3.83238900e-16, 2.85631366e-16,
2.12709850e-16, 1.58298881e-16, 1.17742276e-16, 8.75386459e-17,
6.50611352e-17, 4.83429578e-17, 3.59140524e-17, 2.66772022e-17,
1.98144390e-17, 1.47165628e-17, 1.09302131e-17, 8.11821501e-18,
6.02992782e-18, 4.47910800e-18, 3.32740419e-18, 2.47206398e-18,
1.83678559e-18, 1.36491451e-18, 1.01438674e-18, 7.53971761e-19,
5.60482138e-19, 4.16701426e-19]), 'dnde_hi': array([1.28911750e-12, 9.57446774e-13, 7.11114442e-13, 5.28179667e-13,
3.92336524e-13, 2.91468579e-13, 2.16573777e-13, 1.60964869e-13,
1.19674865e-13, 8.90149976e-14, 6.62461258e-14, 4.93345131e-14,
3.67703366e-14, 2.74328411e-14, 2.04901664e-14, 1.53249480e-14,
1.14790689e-14, 8.61264034e-15, 6.47354754e-15, 4.87483567e-15,
3.67791120e-15, 2.78005542e-15, 2.10513918e-15, 1.59671903e-15,
1.21290942e-15, 9.22582034e-16, 7.02556203e-16, 5.35527307e-16,
4.08542061e-16, 3.11877032e-16, 2.38213117e-16, 1.82026716e-16,
1.39139418e-16, 1.06383791e-16, 8.13544150e-17, 6.22217353e-17,
4.75923861e-17, 3.64040525e-17, 2.78460983e-17, 2.12994942e-17,
1.62912567e-17, 1.24598274e-17, 9.52872651e-18, 7.28647660e-18,
5.57128888e-18, 4.25937180e-18, 3.25599928e-18, 2.48868335e-18,
1.90195311e-18, 1.45336085e-18]), 'dnde_err': array([4.81145805e-13, 3.48450584e-13, 2.52092965e-13, 1.82199315e-13,
1.31559175e-13, 9.49116781e-14, 6.84220468e-14, 4.92977895e-14,
3.55075282e-14, 2.55751667e-14, 1.84293326e-14, 1.32933434e-14,
9.60486140e-15, 6.95728351e-15, 5.05703099e-15, 3.69246040e-15,
2.71126094e-15, 2.00404047e-15, 1.49241740e-15, 1.12038573e-15,
8.48052524e-16, 6.47093125e-16, 4.97451783e-16, 3.84949475e-16,
2.99556824e-16, 2.34156613e-16, 1.83666170e-16, 1.44421955e-16,
1.13752440e-16, 8.96839062e-17, 7.07384787e-17, 5.57952926e-17,
4.39944312e-17, 3.46697258e-17, 2.73010458e-17, 2.14798427e-17,
1.68838135e-17, 1.32579400e-17, 1.04000733e-17, 8.14982223e-18,
6.37989445e-18, 4.98929112e-18, 3.89792510e-18, 3.04234697e-18,
2.37234169e-18, 1.84821474e-18, 1.43862687e-18, 1.11886695e-18,
8.69475148e-19, 6.75146519e-19]), 'dnde_ferr': array([0.48436746, 0.46805466, 0.45185026, 0.4357873 , 0.41990539,
0.40425194, 0.38888358, 0.3738677 , 0.35928411, 0.34522677,
0.33180518, 0.31914548, 0.30739046, 0.29669815, 0.28723821,
0.27918548, 0.27271038, 0.26796666, 0.26507755, 0.26412294,
0.26513005, 0.26807017, 0.27286211, 0.27938164, 0.28747439,
0.29696967, 0.30769265, 0.31947395, 0.33215588, 0.34559609,
0.35966891, 0.37426525, 0.38929157, 0.40466841, 0.42032868,
0.43621603, 0.45228327, 0.46849098, 0.48480629, 0.50120183,
0.51765482, 0.53414635, 0.55066072, 0.56718492, 0.58370818,
0.60022164, 0.616718 , 0.63319128, 0.64963661, 0.66605007]), 'pivot_energy': 5315.3149748051355}}}
9.000 nan nan 0.000
Running extension on source 3FGL J0022.7+4651
2026-07-17 22:21:12 INFO GTAnalysis._extension(): Fitting extended-source model.
2026-07-17 22:21:17 INFO GTAnalysis._extension(): Generating TS map.
2026-07-17 22:21:18 INFO GTAnalysis._extension(): Testing point-source model.
2026-07-17 22:21:19 INFO GTAnalysis._extension(): Best-fit extension: 0.3428 + 0.8401 - nan
2026-07-17 22:21:19 INFO GTAnalysis._extension(): TS_ext: 0.190
2026-07-17 22:21:19 INFO GTAnalysis._extension(): Extension UL: 1.7686
2026-07-17 22:21:19 INFO GTAnalysis._extension(): LogLike: -246706.105 DeltaLogLike: 0.085
2026-07-17 22:21:19 INFO GTAnalysis.extension(): Finished extension fit.
2026-07-17 22:21:19 WARNING GTAnalysis.extension(): Saving maps in .npy files is disabled b/c of incompatibilities in python3, remove the maps from the /home/runner/work/fermipy/fermipy/fermipy-extra/notebooks/M31_data/3fgl_j0022.7+4651_ext.npy
2026-07-17 22:21:19 INFO GTAnalysis.extension(): Execution time: 16.73 s
2026-07-17 22:21:19 INFO GTAnalysis.print_model():
sourcename offset norm eflux index ts npred free
--------------------------------------------------------------------------------
3FGL J0042.5+4117 0.031 1.053 8.52e-07 2.58 30.07 324.2
3FGL J0040.3+4049 0.624 0.222 1.99e-06 1.77 73.87 149.1
3FGL J0049.0+4224 1.650 0.278 1.33e-06 1.63 29.89 61.4
3FGL J0048.0+3950 1.771 0.603 5.84e-06 1.94 545.61 728.3
3FGL J0039.1+4330 2.337 0.225 1.54e-06 1.89 62.65 169.0
3FGL J0032.5+3912 2.833 0.550 9.81e-07 2.45 46.83 318.7
3FGL J0102.3+4217 3.800 0.575 1.65e-06 2.73 126.19 692.1
3FGL J0041.9+3639 4.600 1.601 1.28e-06 2.19 70.10 260.1
3FGL J0105.3+3928 4.639 0.549 2.55e-06 2.23 215.82 582.0
3FGL J0023.5+4454 5.046 2.144 2.46e-06 2.45 220.86 792.9 *
3FGL J0102.1+4458 5.147 0.208 8.65e-07 1.72 16.48 55.1
3FGL J0022.7+4651 6.635 1.107 2.89e-07 5.00 4.97 128.0 *
isodiff --- 0.875 0.0389 2.12 924.97 31907.6 *
galdiff --- 1.096 0.229 0.02 6739.38 91244.0 *
{'spatial_model': 'RadialGaussian', 'width': [], 'fit_position': False, 'width_min': 0.01, 'width_max': 5.0, 'width_nstep': 21, 'free_background': False, 'fix_shape': False, 'free_radius': None, 'fit_ebin': False, 'update': True, 'save_model_map': False, 'sqrt_ts_threshold': 3.0, 'psf_scale_fn': None, 'make_tsmap': True, 'tsmap_fitter': 'tsmap', 'make_plots': False, 'write_fits': True, 'write_npy': True, 'reoptimize': False, 'ra_format': 'hour', 'optimizer': {'optimizer': 'MINUIT', 'tol': 0.001, 'max_iter': 100, 'init_lambda': 0.0001, 'retries': 3, 'min_fit_quality': 2, 'verbosity': 0}, 'prefix': '', 'outfile': None, 'loge_bins': []}
{'spatial_model': 'RadialGaussian', 'width': [], 'fit_position': False, 'width_min': 0.01, 'width_max': 5.0, 'width_nstep': 21, 'free_background': False, 'fix_shape': False, 'free_radius': None, 'fit_ebin': False, 'update': True, 'save_model_map': False, 'sqrt_ts_threshold': 3.0, 'psf_scale_fn': None, 'make_tsmap': True, 'tsmap_fitter': 'tsmap', 'make_plots': False, 'write_fits': True, 'write_npy': True, 'reoptimize': False, 'ra_format': 'hour', 'optimizer': {'optimizer': 'MINUIT', 'tol': 0.001, 'max_iter': 100, 'init_lambda': 0.0001, 'retries': 3, 'min_fit_quality': 2, 'verbosity': 0}, 'prefix': '', 'outfile': None, 'loge_bins': []}
{'name': '3FGL J0022.7+4651', 'file': None, 'config': {'spatial_model': 'RadialGaussian', 'width': [], 'fit_position': False, 'width_min': 0.01, 'width_max': 5.0, 'width_nstep': 21, 'free_background': False, 'fix_shape': False, 'free_radius': None, 'fit_ebin': False, 'update': True, 'save_model_map': False, 'sqrt_ts_threshold': 3.0, 'psf_scale_fn': None, 'make_tsmap': True, 'tsmap_fitter': 'tsmap', 'make_plots': False, 'write_fits': True, 'write_npy': True, 'reoptimize': False, 'ra_format': 'hour', 'optimizer': {'optimizer': 'MINUIT', 'tol': 0.001, 'max_iter': 100, 'init_lambda': 0.0001, 'retries': 3, 'min_fit_quality': 2, 'verbosity': 0}, 'prefix': '', 'outfile': None, 'loge_bins': []}, 'width': array([0. , 0.01 , 0.01364421, 0.01861646, 0.02540069,
0.03465724, 0.04728708, 0.0645195 , 0.08803178, 0.12011244,
0.16388398, 0.2236068 , 0.30509388, 0.4162766 , 0.56797668,
0.77495949, 1.05737126, 1.44269991, 1.96845052, 2.68579588,
3.66455719, 5. ]), 'dloglike': array([ 1.94717431e-05, 3.00720101e-04, 5.73768048e-04, 1.07852602e-03,
2.01103935e-03, 3.72076107e-03, 6.81039371e-03, 1.22668995e-02,
2.15365068e-02, 3.61934325e-02, 5.65964100e-02, 7.92568040e-02,
9.43714764e-02, 8.57049956e-02, 3.71236684e-02, -6.20885650e-02,
-2.68461120e-01, -7.53064614e-01, -1.59216778e+00, -2.34148627e+00,
-2.52590712e+00, -2.52577545e+00]), 'loglike': array([-246706.20003528, -246706.19975404, -246706.19948099,
-246706.19897623, -246706.19804372, -246706.196334 ,
-246706.19324436, -246706.18778786, -246706.17851825,
-246706.16386132, -246706.14345835, -246706.12079795,
-246706.10568328, -246706.11434976, -246706.16293109,
-246706.26214332, -246706.46851588, -246706.95311937,
-246707.79222254, -246708.54154102, -246708.72596187,
-246708.7258302 ]), 'loglike_ptsrc': -246706.20005475625, 'loglike_ext': -246706.10514994172, 'loglike_init': -246706.19026714965, 'loglike_base': -246706.19024228893, 'ext': 0.3427807317319466, 'ext_err_hi': np.float64(0.8400546412921881), 'ext_err_lo': np.float64(nan), 'ext_err': np.float64(0.8400546412921881), 'ext_ul95': 1.7686011125713825, 'ts_ext': 0.1898096290533431, 'ebin_e_min': array([], dtype=float64), 'ebin_e_ctr': array([], dtype=float64), 'ebin_e_max': array([], dtype=float64), 'ebin_ext': array([], dtype=float64), 'ebin_ext_err': array([], dtype=float64), 'ebin_ext_err_hi': array([], dtype=float64), 'ebin_ext_err_lo': array([], dtype=float64), 'ebin_ext_ul95': array([], dtype=float64), 'ebin_ts_ext': array([], dtype=float64), 'ebin_dloglike': array([], shape=(0, 22), dtype=float64), 'ebin_loglike': array([], shape=(0, 22), dtype=float64), 'ebin_loglike_ptsrc': array([], dtype=float64), 'ebin_loglike_ext': array([], dtype=float64), 'ra': np.float32(5.6872), 'dec': np.float32(46.8528), 'glon': np.float64(117.8426231303472), 'glat': np.float64(-15.735255577899073), 'ra_err': nan, 'dec_err': nan, 'glon_err': nan, 'glat_err': nan, 'pos_offset': 0.0, 'pos_err': nan, 'pos_r68': nan, 'pos_r95': nan, 'pos_r99': nan, 'pos_err_semimajor': nan, 'pos_err_semiminor': nan, 'pos_angle': nan, 'tsmap': <gammapy.maps.wcs.ndmap.WcsNDMap object at 0x7f7855690bd0>, 'ptsrc_tot_map': None, 'ptsrc_src_map': None, 'ptsrc_bkg_map': None, 'ext_tot_map': None, 'ext_src_map': None, 'ext_bkg_map': None, 'source_fit': {'param_names': array([b'Prefactor', b'Index', b'Scale', b'', b'', b'', b'', b'', b'',
b''], dtype='|S32'), 'param_values': array([ 1.21811055e-12, -4.99999983e+00, 4.62097046e+02, nan,
nan, nan, nan, nan,
nan, nan]), 'param_errors': array([5.45112994e-13, 8.05563205e-04, nan, nan,
nan, nan, nan, nan,
nan, nan]), 'ts': np.float64(5.241355842386838), 'loglike': np.float64(-246706.10514994172), 'loglike_scan': array([-246708.72582786, -246708.16473798, -246707.67367067,
-246707.25148601, -246706.89707781, -246706.6093721 ,
-246706.38732583, -246706.22992555, -246706.1361862 ,
-246706.10514994, -246706.13344112, -246706.21777926,
-246706.35738404, -246706.55149482, -246706.79936998,
-246707.10028619, -246707.45353776, -246707.85843603,
-246708.31430876, -246708.82049957]), 'dloglike_scan': array([-2.62067792, -2.05958804, -1.56852073, -1.14633607, -0.79192786,
-0.50422216, -0.28217589, -0.12477561, -0.03103625, 0. ,
-0.02829118, -0.11262932, -0.25223409, -0.44634488, -0.69422004,
-0.99513625, -1.34838782, -1.75328608, -2.20915882, -2.71534963]), 'eflux_scan': array([0.00000000e+00, 3.53551379e-08, 7.07102757e-08, 1.06065414e-07,
1.41420551e-07, 1.76775689e-07, 2.12130827e-07, 2.47485965e-07,
2.82841103e-07, 3.18196241e-07, 3.52113132e-07, 3.86030023e-07,
4.19946914e-07, 4.53863805e-07, 4.87780696e-07, 5.21697588e-07,
5.55614479e-07, 5.89531370e-07, 6.23448261e-07, 6.57365152e-07]), 'flux_scan': array([0.00000000e+00, 8.86757352e-11, 1.77351470e-10, 2.66027206e-10,
3.54702941e-10, 4.43378676e-10, 5.32054411e-10, 6.20730146e-10,
7.09405881e-10, 7.98081617e-10, 8.83150024e-10, 9.68218431e-10,
1.05328684e-09, 1.13835524e-09, 1.22342365e-09, 1.30849206e-09,
1.39356047e-09, 1.47862887e-09, 1.56369728e-09, 1.64876569e-09]), 'norm_scan': array([0. , 0.13534562, 0.27069123, 0.40603685, 0.54138247,
0.67672808, 0.8120737 , 0.94741932, 1.08276493, 1.21811055,
1.34795031, 1.47779007, 1.60762982, 1.73746958, 1.86730934,
1.9971491 , 2.12698885, 2.25682861, 2.38666837, 2.51650813]), 'npred': 139.27029460702371, 'npred_wt': 139.27029460702371, 'pivot_energy': np.float64(499999.995007974), 'flux': 7.980816165980983e-10, 'flux100': 6.473009886067541e-08, 'flux1000': 6.4453183973673036e-12, 'flux10000': 6.426825226184318e-16, 'flux_err': np.float64(3.545282051305971e-10), 'flux100_err': np.float64(2.8719435077427888e-08), 'flux1000_err': np.float64(2.871288989999034e-12), 'flux10000_err': np.float64(2.870721560861888e-16), 'flux_ul95': 1.3956412633092508e-09, 'flux100_ul95': 1.1319643889697509e-07, 'flux1000_ul95': 1.1271218536364284e-11, 'flux10000_ul95': 1.12388786951054e-15, 'eflux': 3.1819624078545333e-07, 'eflux100': 8.597700172234989e-06, 'eflux1000': 8.576908566771224e-09, 'eflux10000': 8.562767045367441e-12, 'eflux_err': np.float64(1.418053587722543e-07), 'eflux100_err': np.float64(3.829085816420361e-06), 'eflux1000_err': np.float64(3.828286589014987e-09), 'eflux10000_err': np.float64(3.827462790377316e-12), 'eflux_ul95': 5.564440957342595e-07, 'eflux100_ul95': 1.5035185475240527e-05, 'eflux1000_ul95': 1.499882625844843e-08, 'eflux10000_ul95': 1.497409634312822e-11, 'dnde': 8.213025814076876e-28, 'dnde100': 2.5665666728502096e-09, 'dnde1000': 2.5665676909506337e-14, 'dnde10000': 2.566568709051463e-19, 'dnde_err': np.float64(3.673615156269569e-28), 'dnde100_err': np.float64(1.1487020372994945e-09), 'dnde1000_err': np.float64(1.1484869216597549e-14), 'dnde10000_err': np.float64(1.1482915026900698e-19), 'dnde_index': np.float64(4.999999827767667), 'dnde100_index': np.float64(4.9999998277010596), 'dnde1000_index': np.float64(4.999999827767667), 'dnde10000_index': np.float64(4.999999827734364), 'name': '3FGL J0022.7+4651', 'spectral_pars': {'Prefactor': {'name': 'Prefactor', 'value': 1.2181105491185011, 'error': 0.5451129944528251, 'min': 1e-05, 'max': 1000.0, 'free': True, 'scale': 1e-12}, 'Index': {'name': 'Index', 'value': 4.999999827724986, 'error': 0.0008055632047251457, 'min': 0.0, 'max': 5.0, 'free': True, 'scale': -1.0}, 'Scale': {'name': 'Scale', 'value': 462.0970459, 'error': nan, 'min': 462.0970459, 'max': 462.0970459, 'free': False, 'scale': 1.0}}, 'model_counts': array([8.85470705e+01, 3.26420270e+01, 1.17268626e+01, 4.15068915e+00,
1.44642660e+00, 5.01313999e-01, 1.70248508e-01, 5.73609765e-02,
1.90333975e-02, 6.24768297e-03, 2.03073228e-03, 6.66227425e-04,
2.15218897e-04, 6.92336046e-05, 2.22332412e-05, 7.14189338e-06,
2.32077471e-06, 7.50709063e-07, 2.40117259e-07, 7.64275683e-08,
2.43672389e-08, 7.72610065e-09, 2.46458853e-09, 7.84893928e-10,
2.46302534e-10, 5.76676484e-11]), 'model_counts_wt': array([8.85470705e+01, 3.26420270e+01, 1.17268626e+01, 4.15068915e+00,
1.44642660e+00, 5.01313999e-01, 1.70248508e-01, 5.73609765e-02,
1.90333975e-02, 6.24768297e-03, 2.03073228e-03, 6.66227425e-04,
2.15218897e-04, 6.92336046e-05, 2.22332412e-05, 7.14189338e-06,
2.32077471e-06, 7.50709063e-07, 2.40117259e-07, 7.64275683e-08,
2.43672389e-08, 7.72610065e-09, 2.46458853e-09, 7.84893928e-10,
2.46302534e-10, 5.76676484e-11]), 'covar': array([[2.97148177e-01, 1.95850610e-05],
[1.95850610e-05, 6.48932077e-07]]), 'model_flux': {'energies': array([2.99999133e+02, 3.49037461e+02, 4.06091671e+02, 4.72472050e+02,
5.49703071e+02, 6.39558395e+02, 7.44101611e+02, 8.65733625e+02,
1.00724780e+03, 1.17189410e+03, 1.36345374e+03, 1.58632602e+03,
1.84562936e+03, 2.14731882e+03, 2.49832292e+03, 2.90670269e+03,
3.38183686e+03, 3.93463720e+03, 4.57779916e+03, 5.32609337e+03,
6.19670492e+03, 7.20962801e+03, 8.38812508e+03, 9.75926113e+03,
1.13545252e+04, 1.32105537e+04, 1.53699715e+04, 1.78823711e+04,
2.08054514e+04, 2.42063430e+04, 2.81631498e+04, 3.27667423e+04,
3.81228452e+04, 4.43544652e+04, 5.16047155e+04, 6.00401030e+04,
6.98543522e+04, 8.12728539e+04, 9.45578417e+04, 1.10014415e+05,
1.27997543e+05, 1.48920221e+05, 1.73262954e+05, 2.01584787e+05,
2.34536152e+05, 2.72873799e+05, 3.17478177e+05, 3.69373656e+05,
4.29752052e+05, 4.99999995e+05]), 'log_energies': array([2.47712 , 2.54287204, 2.60862408, 2.67437612, 2.74012816,
2.8058802 , 2.87163224, 2.93738429, 3.00313633, 3.06888837,
3.13464041, 3.20039245, 3.26614449, 3.33189653, 3.39764857,
3.46340061, 3.52915265, 3.59490469, 3.66065673, 3.72640878,
3.79216082, 3.85791286, 3.9236649 , 3.98941694, 4.05516898,
4.12092102, 4.18667306, 4.2524251 , 4.31817714, 4.38392918,
4.44968122, 4.51543327, 4.58118531, 4.64693735, 4.71268939,
4.77844143, 4.84419347, 4.90994551, 4.97569755, 5.04144959,
5.10720163, 5.17295367, 5.23870571, 5.30445776, 5.3702098 ,
5.43596184, 5.50171388, 5.56746592, 5.63321796, 5.69897 ]), 'dnde': array([1.05621573e-11, 4.95441566e-12, 2.32397926e-12, 1.09011434e-12,
5.11342466e-13, 2.39856598e-13, 1.12510091e-13, 5.27753696e-14,
2.47554651e-14, 1.16121035e-14, 5.44691634e-15, 2.55499769e-15,
1.19847870e-15, 5.62173186e-16, 2.63699881e-16, 1.23694315e-16,
5.80215797e-17, 2.72163171e-17, 1.27664210e-17, 5.98837475e-18,
2.80898085e-18, 1.31761517e-18, 6.18056805e-19, 2.89913340e-19,
1.35990323e-19, 6.37892967e-20, 2.99217935e-20, 1.40354851e-20,
6.58365759e-21, 3.08821155e-21, 1.44859456e-21, 6.79495613e-22,
3.18732585e-22, 1.49508633e-22, 7.01303618e-23, 3.28962116e-23,
1.54307023e-23, 7.23811537e-24, 3.39519958e-24, 1.59259415e-24,
7.47041834e-25, 3.50416647e-25, 1.64370750e-25, 7.71017693e-26,
3.61663059e-26, 1.69646131e-26, 7.95763044e-27, 3.73270418e-27,
1.75090822e-27, 8.21302581e-28]), 'dnde_lo': array([7.29671299e-12, 3.42269915e-12, 1.60549952e-12, 7.53098221e-13,
3.53258853e-13, 1.65704567e-13, 7.77277132e-14, 3.64600528e-14,
1.71024641e-14, 8.02232163e-15, 3.76306260e-15, 1.76515483e-15,
8.27988223e-16, 3.88387731e-16, 1.82182575e-16, 8.54571017e-17,
4.00857001e-17, 1.88031572e-17, 8.82007077e-18, 4.13726514e-18,
1.94068311e-18, 9.10323786e-19, 4.27009114e-19, 2.00298819e-19,
9.39549405e-20, 4.40718058e-20, 2.06729312e-20, 9.69713102e-21,
4.54867028e-21, 2.13366209e-21, 1.00084498e-21, 4.69470145e-22,
2.20216134e-22, 1.03297611e-22, 4.84541983e-23, 2.27285922e-23,
1.06613856e-23, 5.00097583e-24, 2.34582629e-24, 1.10036542e-24,
5.16152468e-25, 2.42113537e-25, 1.13569085e-25, 5.32722662e-26,
2.49886162e-26, 1.17215011e-26, 5.49824700e-27, 2.57908260e-27,
1.20977957e-27, 5.67475649e-28]), 'dnde_hi': array([1.52889620e-11, 7.17160157e-12, 3.36398705e-12, 1.57794727e-12,
7.40168620e-13, 3.47191321e-13, 1.62857237e-13, 7.63915415e-14,
3.58330268e-14, 1.68082201e-14, 7.88424239e-15, 3.69826663e-15,
1.73474834e-15, 8.13719552e-16, 3.81691978e-16, 1.79040517e-16,
8.39826597e-17, 3.93938054e-17, 1.84784805e-17, 8.66771429e-18,
4.06577114e-18, 1.90713431e-18, 8.94580938e-19, 4.19621769e-19,
1.96832311e-19, 9.23282879e-20, 4.33085040e-20, 2.03147552e-20,
9.52905895e-21, 4.46980363e-21, 2.09665457e-21, 9.83479553e-22,
4.61321606e-22, 2.16392531e-22, 1.01503436e-22, 4.76123082e-23,
2.23335487e-23, 1.04760183e-23, 4.91399564e-24, 2.30501256e-24,
1.08121444e-24, 5.07166298e-25, 2.37896990e-25, 1.11590575e-25,
5.23439023e-26, 2.45530069e-26, 1.15171039e-26, 5.40233978e-27,
2.53408113e-27, 1.18866410e-27]), 'dnde_err': array([4.72680468e-12, 2.21718591e-12, 1.04000779e-12, 4.87832928e-13,
2.28826154e-13, 1.07334723e-13, 5.03471458e-14, 2.36161718e-14,
1.10775617e-14, 5.19611660e-15, 2.43732605e-15, 1.14326894e-15,
5.36269639e-16, 2.51546366e-16, 1.17992097e-16, 5.53462017e-17,
2.59610800e-17, 1.21774884e-17, 5.71205949e-18, 2.67933954e-18,
1.25679029e-18, 5.89519144e-19, 2.76524134e-19, 1.29708429e-19,
6.08419875e-20, 2.85389912e-20, 1.33867106e-20, 6.27927006e-21,
2.94540136e-21, 1.38159208e-21, 6.48060007e-22, 3.03983939e-22,
1.42589021e-22, 6.68838971e-23, 3.13730747e-23, 1.47160966e-23,
6.90284638e-24, 3.23790289e-24, 1.51879606e-24, 7.12418415e-25,
3.34172605e-25, 1.56749651e-25, 7.35262396e-26, 3.44888060e-26,
1.61775963e-26, 7.58839384e-27, 3.55947350e-27, 1.66963560e-27,
7.83172918e-28, 3.67361516e-28]), 'dnde_ferr': array([0.37834359, 0.37833951, 0.37833546, 0.37833144, 0.37832743,
0.37832346, 0.3783195 , 0.37831558, 0.37831167, 0.37830779,
0.37830394, 0.37830011, 0.3782963 , 0.37829252, 0.37828876,
0.37828503, 0.37828132, 0.37827764, 0.37827398, 0.37827034,
0.37826673, 0.37826315, 0.37825959, 0.37825605, 0.37825254,
0.37824905, 0.37824559, 0.37824215, 0.37823874, 0.37823535,
0.37823198, 0.37822864, 0.37822533, 0.37822204, 0.37821877,
0.37821553, 0.37821231, 0.37820912, 0.37820595, 0.3782028 ,
0.37819968, 0.37819659, 0.37819352, 0.37819047, 0.37818745,
0.37818445, 0.37818148, 0.37817853, 0.37817561, 0.37817271]), 'pivot_energy': np.float64(499999.995007974)}}}
0.343 0.840 1.769 0.190
[28]:
print("Ext_best Ext_err Ext_UL TS_ext")
for t in range(len(gta.roi.sources)-2):
print("%.3f %.3f %.3f %.3f"%(extension_best[t],extension_error[t],extension_ul[t],extension_TS[t]))
Ext_best Ext_err Ext_UL TS_ext
5.250 nan nan 0.000
2.220 nan nan 0.000
0.806 nan nan -0.000
1.082 nan nan -0.000
0.418 nan nan 0.000
0.003 nan nan 0.000
1.269 nan nan 0.000
4.397 nan nan -0.000
1.269 nan nan 0.000
0.094 0.041 0.156 3.202
9.000 nan nan 0.000
0.343 0.840 1.769 0.190
So the only source for which we have found an extension is 3FGL J0042.5+4117
Let’s calculate the TS map and the residual map.
[29]:
tsmap_ext = gta.tsmap(prefix='TSmap_ext',make_plots=True,write_fits=True,write_npy=True)
2026-07-17 22:21:19 INFO GTAnalysis.tsmap(): Generating TS map
2026-07-17 22:21:20 INFO GTAnalysis._make_tsmap_fast(): Fitting test source.
2026-07-17 22:23:06 INFO GTAnalysis.tsmap(): Finished TS map
2026-07-17 22:23:06 WARNING GTAnalysis.tsmap(): Saving TS maps in .npy files is disabled b/c of incompatibilities in python3, remove the maps from the /home/runner/work/fermipy/fermipy/fermipy-extra/notebooks/M31_data/TSmap_ext_pointsource_powerlaw_2.00_tsmap.npy
2026-07-17 22:23:06 INFO GTAnalysis.tsmap(): Execution time: 106.61 s
[30]:
plt.clf()
fig = plt.figure(figsize=(14,6))
ROIPlotter(tsmap_ext['sqrt_ts'],roi=gta.roi).plot(levels=[0,3,5,7],vmin=0,vmax=5,subplot=121,cmap='magma')
plt.gca().set_title('Sqrt(TS)')
ROIPlotter(tsmap_ext['npred'],roi=gta.roi).plot(vmin=0,vmax=100,subplot=122,cmap='magma')
plt.gca().set_title('NPred')
plt.show()
<Figure size 800x600 with 0 Axes>
[31]:
resid_ext = gta.residmap('Residual_ext',model={'SpatialModel' : 'PointSource', 'Index' : 2.0},write_fits=True,write_npy=True,make_plots=True)
2026-07-17 22:23:07 INFO GTAnalysis.residmap(): Generating residual maps
2026-07-17 22:23:07 INFO GTAnalysis.add_source(): Adding source residmap_testsource
2026-07-17 22:23:08 INFO GTAnalysis.delete_source(): Deleting source residmap_testsource
2026-07-17 22:23:09 INFO GTAnalysis.residmap(): Finished residual maps
2026-07-17 22:23:09 WARNING GTAnalysis.residmap(): Saving maps in .npy files is disabled b/c of incompatibilities in python3, remove the maps from the /home/runner/work/fermipy/fermipy/fermipy-extra/notebooks/M31_data/Residual_ext_pointsource_powerlaw_2.00_residmap.npy
2026-07-17 22:23:09 INFO GTAnalysis.residmap(): Execution time: 2.69 s
[32]:
plt.clf()
fig = plt.figure(figsize=(14,6))
ROIPlotter(resid_ext['data'],roi=gta.roi).plot(vmin=1000,vmax=3000,subplot=121,cmap='magma')
plt.gca().set_title('Data')
ROIPlotter(resid_ext['model'],roi=gta.roi).plot(vmin=1000,vmax=3000,subplot=122,cmap='magma')
plt.gca().set_title('Model')
plt.show()
<Figure size 640x480 with 0 Axes>
[33]:
plt.clf()
fig = plt.figure(figsize=(14,6))
ROIPlotter(resid_ext['sigma'],roi=gta.roi).plot(vmin=-5,vmax=5,levels=[-5,-3,3,5],subplot=121,cmap='RdBu_r')
plt.gca().set_title('Significance')
ROIPlotter(resid_ext['excess'],roi=gta.roi).plot(vmin=-100,vmax=100,subplot=122,cmap='RdBu_r')
plt.gca().set_title('Excess')
plt.show()
<Figure size 640x480 with 0 Axes>
[34]:
gta.write_roi('extension',make_plots=True,save_model_map=True)
2026-07-17 22:23:10 INFO GTBinnedAnalysis.write_xml(): Writing /home/runner/work/fermipy/fermipy/fermipy-extra/notebooks/M31_data/extension_00.xml...
2026-07-17 22:23:10 INFO GTAnalysis.write_fits(): Writing /home/runner/work/fermipy/fermipy/fermipy-extra/notebooks/M31_data/extension.fits...
WARNING: Format %s cannot be mapped to the accepted TDISPn keyword values. Format will not be moved into TDISPn keyword. [astropy.io.fits.column]
WARNING: Format %f cannot be mapped to the accepted TDISPn keyword values. Format will not be moved into TDISPn keyword. [astropy.io.fits.column]
WARNING: Format %f cannot be mapped to the accepted TDISPn keyword values. Format will not be moved into TDISPn keyword. [astropy.io.fits.column]
WARNING: Format %f cannot be mapped to the accepted TDISPn keyword values. Format will not be moved into TDISPn keyword. [astropy.io.fits.column]
WARNING: Format %f cannot be mapped to the accepted TDISPn keyword values. Format will not be moved into TDISPn keyword. [astropy.io.fits.column]
WARNING: Format %f cannot be mapped to the accepted TDISPn keyword values. Format will not be moved into TDISPn keyword. [astropy.io.fits.column]
WARNING: Format %f cannot be mapped to the accepted TDISPn keyword values. Format will not be moved into TDISPn keyword. [astropy.io.fits.column]
WARNING: Format %s cannot be mapped to the accepted TDISPn keyword values. Format will not be moved into TDISPn keyword. [astropy.io.fits.column]
WARNING: Format %s cannot be mapped to the accepted TDISPn keyword values. Format will not be moved into TDISPn keyword. [astropy.io.fits.column]
2026-07-17 22:23:11 INFO GTBinnedAnalysis.write_model_map(): Generating model map for component 00.
2026-07-17 22:23:12 INFO GTAnalysis.write_roi(): Writing /home/runner/work/fermipy/fermipy/fermipy-extra/notebooks/M31_data/extension.npy...
Find new sources
After we have renormalized the 3FGL sources and we have found if the sources are extended, we will try to find new sources with the tool find_sources().
find_sources() is an iterative source-finding algorithm that uses peak detection on a TS map to find new source candidates. The procedure for adding new sources at each iteration is as follows: Generate a TS map for the test source model defined with the model argument. Identify peaks with sqrt(TS) > sqrt_ts_threshold and an angular distance of at least min_separation from a higher amplitude peak in the map. Order the peaks by TS and add a source at each peak starting from the highest TS peak. Set the source position by fitting a 2D parabola to the log-likelihood surface around the peak maximum. After adding each source, re-fit its spectral parameters. Add sources at the N highest peaks up to N = sources_per_iter. Source finding is repeated up to max_iter iterations or until no peaks are found in a given iteration. Sources found by the method are added to the model and given designations PS JXXXX.X+XXXX according to their position in celestial coordinates.
Finding sources will take tens of minutes.
[35]:
gta.free_sources()
findsource = gta.find_sources(sqrt_ts_threshold=5,min_separation=0.2,tsmap_fitter='tsmap')
2026-07-17 22:23:14 INFO GTAnalysis.free_source(): Freeing parameters for 3FGL J0042.5+4117 : ['Prefactor', 'Index']
2026-07-17 22:23:14 INFO GTAnalysis.free_source(): Freeing parameters for 3FGL J0040.3+4049 : ['Prefactor', 'Index']
2026-07-17 22:23:14 INFO GTAnalysis.free_source(): Freeing parameters for 3FGL J0049.0+4224 : ['Prefactor', 'Index']
2026-07-17 22:23:14 INFO GTAnalysis.free_source(): Freeing parameters for 3FGL J0048.0+3950 : ['Prefactor', 'Index']
2026-07-17 22:23:14 INFO GTAnalysis.free_source(): Freeing parameters for 3FGL J0039.1+4330 : ['Prefactor', 'Index']
2026-07-17 22:23:14 INFO GTAnalysis.free_source(): Freeing parameters for 3FGL J0032.5+3912 : ['Prefactor', 'Index']
2026-07-17 22:23:14 INFO GTAnalysis.free_source(): Freeing parameters for 3FGL J0102.3+4217 : ['Prefactor', 'Index']
2026-07-17 22:23:14 INFO GTAnalysis.free_source(): Freeing parameters for 3FGL J0041.9+3639 : ['Prefactor', 'Index']
2026-07-17 22:23:14 INFO GTAnalysis.free_source(): Freeing parameters for 3FGL J0105.3+3928 : ['Prefactor', 'Index']
2026-07-17 22:23:14 INFO GTAnalysis.free_source(): Freeing parameters for 3FGL J0102.1+4458 : ['Prefactor', 'Index']
2026-07-17 22:23:14 INFO GTAnalysis.find_sources(): Starting.
2026-07-17 22:23:14 INFO GTAnalysis.tsmap(): Generating TS map
2026-07-17 22:23:15 INFO GTAnalysis._make_tsmap_fast(): Fitting test source.
2026-07-17 22:24:59 INFO GTAnalysis.tsmap(): Finished TS map
2026-07-17 22:24:59 WARNING GTAnalysis.tsmap(): Saving TS maps in .npy files is disabled b/c of incompatibilities in python3, remove the maps from the /home/runner/work/fermipy/fermipy/fermipy-extra/notebooks/M31_data/sourcefind_00_pointsource_powerlaw_2.00_tsmap.npy
2026-07-17 22:24:59 INFO GTAnalysis.tsmap(): Execution time: 104.51 s
2026-07-17 22:24:59 INFO GTAnalysis._build_src_dicts_from_peaks(): Found source
name: PS J0028.7+3553
ts: 53.177538
2026-07-17 22:24:59 INFO GTAnalysis._build_src_dicts_from_peaks(): Found source
name: PS J0041.4+3800
ts: 47.544168
2026-07-17 22:24:59 INFO GTAnalysis._build_src_dicts_from_peaks(): Found source
name: PS J0013.6+4051
ts: 42.903976
2026-07-17 22:24:59 INFO GTAnalysis._build_src_dicts_from_peaks(): Found source
name: PS J0037.7+3652
ts: 41.571487
2026-07-17 22:24:59 INFO GTAnalysis._build_src_dicts_from_peaks(): Found source
name: PS J0015.3+3538
ts: 36.042134
2026-07-17 22:24:59 INFO GTAnalysis.add_source(): Adding source PS J0028.7+3553
2026-07-17 22:25:00 INFO GTAnalysis.free_source(): Fixing parameters for PS J0028.7+3553 : ['Prefactor']
2026-07-17 22:25:00 INFO GTAnalysis.add_source(): Adding source PS J0041.4+3800
2026-07-17 22:25:01 INFO GTAnalysis.free_source(): Fixing parameters for PS J0041.4+3800 : ['Prefactor']
2026-07-17 22:25:01 INFO GTAnalysis.add_source(): Adding source PS J0013.6+4051
2026-07-17 22:25:02 INFO GTAnalysis.free_source(): Fixing parameters for PS J0013.6+4051 : ['Prefactor']
2026-07-17 22:25:02 INFO GTAnalysis.add_source(): Adding source PS J0037.7+3652
2026-07-17 22:25:03 INFO GTAnalysis.free_source(): Fixing parameters for PS J0037.7+3652 : ['Prefactor']
2026-07-17 22:25:03 INFO GTAnalysis._find_sources_iterate(): Performing spectral fit for PS J0028.7+3553.
2026-07-17 22:25:03 INFO GTAnalysis.free_source(): Freeing parameters for PS J0028.7+3553 : ['Prefactor', 'Index']
2026-07-17 22:25:03 INFO GTAnalysis.fit(): Starting fit.
2026-07-17 22:25:25 INFO GTAnalysis.fit(): Fit returned successfully. Quality: 2 Status: 102
2026-07-17 22:25:25 INFO GTAnalysis.fit(): LogLike: -246590.991 DeltaLogLike: 23.154
2026-07-17 22:25:25 INFO GTAnalysis._find_sources_iterate(): {'Index': {'error': np.float64(0.1528065402797435),
'value': -2.4491187002453096},
'Prefactor': {'error': np.float64(5.405118706568639e-14),
'value': 3.532326319678012e-13},
'Scale': {'error': np.float64(nan), 'value': 1000.0}}
2026-07-17 22:25:25 INFO GTAnalysis.free_source(): Fixing parameters for PS J0028.7+3553 : ['Prefactor', 'Index']
2026-07-17 22:25:25 INFO GTAnalysis._find_sources_iterate(): Performing spectral fit for PS J0041.4+3800.
2026-07-17 22:25:25 INFO GTAnalysis.free_source(): Freeing parameters for PS J0041.4+3800 : ['Prefactor', 'Index']
2026-07-17 22:25:25 INFO GTAnalysis.fit(): Starting fit.
2026-07-17 22:25:47 INFO GTAnalysis.fit(): Fit returned successfully. Quality: 2 Status: 102
2026-07-17 22:25:47 INFO GTAnalysis.fit(): LogLike: -246590.956 DeltaLogLike: 0.035
2026-07-17 22:25:47 INFO GTAnalysis._find_sources_iterate(): {'Index': {'error': np.float64(0.18586355789608583),
'value': -2.0563387663498727},
'Prefactor': {'error': np.float64(5.368725811325188e-14),
'value': 1.6692515327613884e-13},
'Scale': {'error': np.float64(nan), 'value': 1000.0}}
2026-07-17 22:25:47 INFO GTAnalysis.free_source(): Fixing parameters for PS J0041.4+3800 : ['Prefactor', 'Index']
2026-07-17 22:25:47 INFO GTAnalysis._find_sources_iterate(): Performing spectral fit for PS J0013.6+4051.
2026-07-17 22:25:47 INFO GTAnalysis.free_source(): Freeing parameters for PS J0013.6+4051 : ['Prefactor', 'Index']
2026-07-17 22:25:47 INFO GTAnalysis.fit(): Starting fit.
2026-07-17 22:26:10 INFO GTAnalysis.fit(): Fit returned successfully. Quality: 2 Status: 102
2026-07-17 22:26:10 INFO GTAnalysis.fit(): LogLike: -246587.059 DeltaLogLike: 3.897
2026-07-17 22:26:10 INFO GTAnalysis._find_sources_iterate(): {'Index': {'error': np.float64(0.15303409350426875),
'value': -2.4479254390319265},
'Prefactor': {'error': np.float64(5.071719689757155e-14),
'value': 2.8563273317439967e-13},
'Scale': {'error': np.float64(nan), 'value': 1000.0}}
2026-07-17 22:26:10 INFO GTAnalysis.free_source(): Fixing parameters for PS J0013.6+4051 : ['Prefactor', 'Index']
2026-07-17 22:26:10 INFO GTAnalysis._find_sources_iterate(): Performing spectral fit for PS J0037.7+3652.
2026-07-17 22:26:10 INFO GTAnalysis.free_source(): Freeing parameters for PS J0037.7+3652 : ['Prefactor', 'Index']
2026-07-17 22:26:10 INFO GTAnalysis.fit(): Starting fit.
2026-07-17 22:26:32 INFO GTAnalysis.fit(): Fit returned successfully. Quality: 2 Status: 102
2026-07-17 22:26:32 INFO GTAnalysis.fit(): LogLike: -246583.288 DeltaLogLike: 3.771
2026-07-17 22:26:32 INFO GTAnalysis._find_sources_iterate(): {'Index': {'error': np.float64(0.16365787340213833),
'value': -2.464390314959023},
'Prefactor': {'error': np.float64(5.1874530189232386e-14),
'value': 2.822475486640936e-13},
'Scale': {'error': np.float64(nan), 'value': 1000.0}}
2026-07-17 22:26:32 INFO GTAnalysis.free_source(): Fixing parameters for PS J0037.7+3652 : ['Prefactor', 'Index']
2026-07-17 22:26:32 INFO GTAnalysis.find_sources(): Found 4 sources in iteration 0.
2026-07-17 22:26:32 INFO GTAnalysis.tsmap(): Generating TS map
2026-07-17 22:26:33 INFO GTAnalysis._make_tsmap_fast(): Fitting test source.
2026-07-17 22:28:17 INFO GTAnalysis.tsmap(): Finished TS map
2026-07-17 22:28:17 WARNING GTAnalysis.tsmap(): Saving TS maps in .npy files is disabled b/c of incompatibilities in python3, remove the maps from the /home/runner/work/fermipy/fermipy/fermipy-extra/notebooks/M31_data/sourcefind_01_pointsource_powerlaw_2.00_tsmap.npy
2026-07-17 22:28:17 INFO GTAnalysis.tsmap(): Execution time: 105.53 s
2026-07-17 22:28:17 INFO GTAnalysis._build_src_dicts_from_peaks(): Found source
name: PS J0015.3+3538
ts: 38.384876
2026-07-17 22:28:17 INFO GTAnalysis._build_src_dicts_from_peaks(): Found source
name: PS J0110.9+4345
ts: 25.786013
2026-07-17 22:28:17 INFO GTAnalysis.add_source(): Adding source PS J0015.3+3538
2026-07-17 22:28:18 INFO GTAnalysis.free_source(): Fixing parameters for PS J0015.3+3538 : ['Prefactor']
2026-07-17 22:28:18 INFO GTAnalysis.add_source(): Adding source PS J0110.9+4345
2026-07-17 22:28:19 INFO GTAnalysis.free_source(): Fixing parameters for PS J0110.9+4345 : ['Prefactor']
2026-07-17 22:28:19 INFO GTAnalysis._find_sources_iterate(): Performing spectral fit for PS J0015.3+3538.
2026-07-17 22:28:19 INFO GTAnalysis.free_source(): Freeing parameters for PS J0015.3+3538 : ['Prefactor', 'Index']
2026-07-17 22:28:19 INFO GTAnalysis.fit(): Starting fit.
2026-07-17 22:28:41 INFO GTAnalysis.fit(): Fit returned successfully. Quality: 2 Status: 102
2026-07-17 22:28:41 INFO GTAnalysis.fit(): LogLike: -246549.104 DeltaLogLike: 0.409
2026-07-17 22:28:41 INFO GTAnalysis._find_sources_iterate(): {'Index': {'error': np.float64(0.1846261098195611),
'value': -1.8851676678998723},
'Prefactor': {'error': np.float64(4.374614264599326e-14),
'value': 1.0395025027950407e-13},
'Scale': {'error': np.float64(nan), 'value': 1000.0}}
2026-07-17 22:28:41 INFO GTAnalysis.free_source(): Fixing parameters for PS J0015.3+3538 : ['Prefactor', 'Index']
2026-07-17 22:28:41 INFO GTAnalysis._find_sources_iterate(): Performing spectral fit for PS J0110.9+4345.
2026-07-17 22:28:41 INFO GTAnalysis.free_source(): Freeing parameters for PS J0110.9+4345 : ['Prefactor', 'Index']
2026-07-17 22:28:41 INFO GTAnalysis.fit(): Starting fit.
2026-07-17 22:29:03 INFO GTAnalysis.fit(): Fit returned successfully. Quality: 2 Status: 102
2026-07-17 22:29:03 INFO GTAnalysis.fit(): LogLike: -246548.816 DeltaLogLike: 0.288
2026-07-17 22:29:03 INFO GTAnalysis._find_sources_iterate(): {'Index': {'error': np.float64(0.23828427976723307),
'value': -2.2086616577134595},
'Prefactor': {'error': np.float64(5.62027480998621e-14),
'value': 1.6107356764510112e-13},
'Scale': {'error': np.float64(nan), 'value': 1000.0}}
2026-07-17 22:29:03 INFO GTAnalysis.free_source(): Fixing parameters for PS J0110.9+4345 : ['Prefactor', 'Index']
2026-07-17 22:29:03 INFO GTAnalysis.find_sources(): Found 2 sources in iteration 1.
2026-07-17 22:29:03 INFO GTAnalysis.tsmap(): Generating TS map
2026-07-17 22:29:04 INFO GTAnalysis._make_tsmap_fast(): Fitting test source.
2026-07-17 22:30:48 INFO GTAnalysis.tsmap(): Finished TS map
2026-07-17 22:30:48 WARNING GTAnalysis.tsmap(): Saving TS maps in .npy files is disabled b/c of incompatibilities in python3, remove the maps from the /home/runner/work/fermipy/fermipy/fermipy-extra/notebooks/M31_data/sourcefind_02_pointsource_powerlaw_2.00_tsmap.npy
2026-07-17 22:30:48 INFO GTAnalysis.tsmap(): Execution time: 105.14 s
2026-07-17 22:30:48 INFO GTAnalysis.find_sources(): Found 0 sources in iteration 2.
2026-07-17 22:30:48 INFO GTAnalysis.find_sources(): Done.
2026-07-17 22:30:48 INFO GTAnalysis.find_sources(): Execution time: 454.04 s
[36]:
gta.print_model()
2026-07-17 22:30:48 INFO GTAnalysis.print_model():
sourcename offset norm eflux index ts npred free
--------------------------------------------------------------------------------
3FGL J0042.5+4117 0.031 1.823 1.27e-06 2.78 67.43 559.4 *
3FGL J0040.3+4049 0.624 0.204 1.9e-06 1.89 83.92 205.7 *
3FGL J0049.0+4224 1.650 0.370 1.3e-06 1.79 37.92 103.2 *
3FGL J0048.0+3950 1.771 0.649 5.76e-06 2.01 604.41 851.2 *
3FGL J0039.1+4330 2.337 0.297 1.56e-06 2.05 83.30 265.1 *
3FGL J0032.5+3912 2.833 0.748 1.21e-06 2.57 70.16 441.0 *
PS J0041.4+3800 3.271 1.669 1.08e-06 2.06 48.92 175.6
3FGL J0102.3+4217 3.800 0.800 2.06e-06 2.85 191.36 926.9 *
PS J0037.7+3652 4.503 2.822 1.03e-06 2.46 49.83 316.4
3FGL J0041.9+3639 4.600 1.620 1.32e-06 2.16 71.79 251.9 *
3FGL J0105.3+3928 4.639 0.669 2.77e-06 2.32 272.67 727.4 *
3FGL J0023.5+4454 5.046 2.342 2.55e-06 2.49 244.52 863.9 *
3FGL J0102.1+4458 5.147 0.364 9.11e-07 1.90 24.42 101.6 *
PS J0013.6+4051 5.496 2.856 1.05e-06 2.45 55.49 271.5
PS J0110.9+4345 5.768 1.611 7.81e-07 2.21 27.40 160.8
PS J0028.7+3553 6.025 3.532 1.3e-06 2.45 66.39 346.8
3FGL J0022.7+4651 6.635 1.495 3.91e-07 5.00 9.14 174.7 *
PS J0015.3+3538 7.780 1.040 1.06e-06 1.89 41.89 69.9
isodiff --- 0.795 0.0353 2.12 774.56 28988.2 *
galdiff --- 1.103 0.231 0.02 11183.55 91701.4 *
So 6 sources have been found with TS between about 20-50.
[37]:
tsmap_final = gta.tsmap(prefix='TSmap_final',make_plots=True,write_fits=True,write_npy=True)
2026-07-17 22:30:48 INFO GTAnalysis.tsmap(): Generating TS map
2026-07-17 22:30:49 INFO GTAnalysis._make_tsmap_fast(): Fitting test source.
2026-07-17 22:32:35 INFO GTAnalysis.tsmap(): Finished TS map
2026-07-17 22:32:35 WARNING GTAnalysis.tsmap(): Saving TS maps in .npy files is disabled b/c of incompatibilities in python3, remove the maps from the /home/runner/work/fermipy/fermipy/fermipy-extra/notebooks/M31_data/TSmap_final_pointsource_powerlaw_2.00_tsmap.npy
2026-07-17 22:32:35 INFO GTAnalysis.tsmap(): Execution time: 106.99 s
[38]:
plt.clf()
fig = plt.figure(figsize=(14,6))
ROIPlotter(tsmap_final['sqrt_ts'],roi=gta.roi).plot(levels=[0,3,5,7],vmin=0,vmax=5,subplot=121,cmap='magma')
plt.gca().set_title('Sqrt(TS)')
ROIPlotter(tsmap_final['npred'],roi=gta.roi).plot(vmin=0,vmax=100,subplot=122,cmap='magma')
plt.gca().set_title('NPred')
plt.show()
<Figure size 800x600 with 0 Axes>
[39]:
resid_final = gta.residmap('Residual_final',model={'SpatialModel' : 'PointSource', 'Index' : 2.0},write_fits=True,write_npy=True,make_plots=True)
2026-07-17 22:32:36 INFO GTAnalysis.residmap(): Generating residual maps
2026-07-17 22:32:36 INFO GTAnalysis.add_source(): Adding source residmap_testsource
2026-07-17 22:32:37 INFO GTAnalysis.delete_source(): Deleting source residmap_testsource
2026-07-17 22:32:39 INFO GTAnalysis.residmap(): Finished residual maps
2026-07-17 22:32:39 WARNING GTAnalysis.residmap(): Saving maps in .npy files is disabled b/c of incompatibilities in python3, remove the maps from the /home/runner/work/fermipy/fermipy/fermipy-extra/notebooks/M31_data/Residual_final_pointsource_powerlaw_2.00_residmap.npy
2026-07-17 22:32:39 INFO GTAnalysis.residmap(): Execution time: 2.88 s
[40]:
plt.clf()
fig = plt.figure(figsize=(14,6))
ROIPlotter(resid_final['data'],roi=gta.roi).plot(vmin=1000,vmax=3000,subplot=121,cmap='magma')
plt.gca().set_title('Data')
ROIPlotter(resid_final['model'],roi=gta.roi).plot(vmin=1000,vmax=3000,subplot=122,cmap='magma')
plt.gca().set_title('Model')
plt.show()
<Figure size 640x480 with 0 Axes>
[41]:
plt.clf()
fig = plt.figure(figsize=(14,6))
ROIPlotter(resid_final['sigma'],roi=gta.roi).plot(vmin=-5,vmax=5,levels=[-5,-3,3,5],subplot=121,cmap='RdBu_r')
plt.gca().set_title('Significance')
ROIPlotter(resid_final['excess'],roi=gta.roi).plot(vmin=-100,vmax=100,subplot=122,cmap='RdBu_r')
plt.gca().set_title('Excess')
plt.show()
<Figure size 640x480 with 0 Axes>
[42]:
gta.write_roi('rel_extension_TS25',make_plots=True,save_model_map=True)
2026-07-17 22:32:40 INFO GTBinnedAnalysis.write_xml(): Writing /home/runner/work/fermipy/fermipy/fermipy-extra/notebooks/M31_data/rel_extension_TS25_00.xml...
2026-07-17 22:32:40 INFO GTAnalysis.write_fits(): Writing /home/runner/work/fermipy/fermipy/fermipy-extra/notebooks/M31_data/rel_extension_TS25.fits...
WARNING: Format %s cannot be mapped to the accepted TDISPn keyword values. Format will not be moved into TDISPn keyword. [astropy.io.fits.column]
WARNING: Format %f cannot be mapped to the accepted TDISPn keyword values. Format will not be moved into TDISPn keyword. [astropy.io.fits.column]
WARNING: Format %f cannot be mapped to the accepted TDISPn keyword values. Format will not be moved into TDISPn keyword. [astropy.io.fits.column]
WARNING: Format %f cannot be mapped to the accepted TDISPn keyword values. Format will not be moved into TDISPn keyword. [astropy.io.fits.column]
WARNING: Format %f cannot be mapped to the accepted TDISPn keyword values. Format will not be moved into TDISPn keyword. [astropy.io.fits.column]
WARNING: Format %f cannot be mapped to the accepted TDISPn keyword values. Format will not be moved into TDISPn keyword. [astropy.io.fits.column]
WARNING: Format %f cannot be mapped to the accepted TDISPn keyword values. Format will not be moved into TDISPn keyword. [astropy.io.fits.column]
WARNING: Format %s cannot be mapped to the accepted TDISPn keyword values. Format will not be moved into TDISPn keyword. [astropy.io.fits.column]
WARNING: Format %s cannot be mapped to the accepted TDISPn keyword values. Format will not be moved into TDISPn keyword. [astropy.io.fits.column]
2026-07-17 22:32:40 INFO GTBinnedAnalysis.write_model_map(): Generating model map for component 00.
2026-07-17 22:32:41 INFO GTAnalysis.write_roi(): Writing /home/runner/work/fermipy/fermipy/fermipy-extra/notebooks/M31_data/rel_extension_TS25.npy...
[43]:
Image(filename='./M31_data/rel_extension_TS25_counts_spectrum.png')
[43]:
[44]:
Image(filename='./M31_data/rel_extension_TS25_counts_map_2.477_5.699.png')
[44]:
[45]:
Image(filename='./M31_data/rel_extension_TS25_counts_map_xproj_2.477_5.699.png')
[45]:
[46]:
Image(filename='./M31_data/rel_extension_TS25_counts_map_yproj_2.477_5.699.png')
[46]:
[ ]: