コード例 #1
0
ファイル: test_models.py プロジェクト: mservillat/gammapy
def diffuse_model():
    axis = MapAxis.from_nodes([0.1, 100],
                              name="energy",
                              unit="TeV",
                              interp="log")
    m = Map.create(npix=(4, 3),
                   binsz=2,
                   axes=[axis],
                   unit="cm-2 s-1 MeV-1 sr-1",
                   coordsys="GAL")
    m.data += 42
    return SkyDiffuseCube(m)
コード例 #2
0

# In[ ]:


psf_kernel.psf_kernel_map.sum_over_axes().plot(stretch="log", add_cbar=True);


# ## Background
# 
# Let's compute a background cube, with predicted number of background events per pixel from the diffuse Galactic and isotropic model components. For this, we use the use the [gammapy.cube.MapEvaluator](http://docs.gammapy.org/dev/api/gammapy.cube.MapEvaluator.html) to multiply with the exposure and apply the PSF. The Fermi-LAT energy dispersion at high energies is small, we neglect it here.

# In[ ]:


model = SkyDiffuseCube(diffuse_galactic)

evaluator = MapEvaluator(model=model, exposure=exposure, psf=psf_kernel)

background_gal = counts.copy(data=evaluator.compute_npred())
background_gal.sum_over_axes().plot()
print("Background counts from Galactic diffuse: ", background_gal.data.sum())


# In[ ]:


model = SkyModel(SkyDiffuseConstant(), diffuse_iso)

evaluator = MapEvaluator(model=model, exposure=exposure, psf=psf_kernel)