Commit 8346a5226c2b70ab1235fe1e7359ab3646f45c8d
1 parent
f0bb0f8b
Correct handling of flux for diffuse cube models in csspec (#2954)
Showing
4 changed files
with
15 additions
and
2 deletions
ChangeLog
| @@ -4,6 +4,7 @@ | @@ -4,6 +4,7 @@ | ||
| 4 | ================================ | 4 | ================================ |
| 5 | 5 | ||
| 6 | Improve documentation and tutorials (#2962) | 6 | Improve documentation and tutorials (#2962) |
| 7 | + Correct handling of flux for diffuse cube models in csspec (#2954) | ||
| 7 | Fix OpenMP issue in ctbin when using energy bounds from file (#2912) | 8 | Fix OpenMP issue in ctbin when using energy bounds from file (#2912) |
| 8 | Fix multi-instrument handling in csbkgmodel (#2862) | 9 | Fix multi-instrument handling in csbkgmodel (#2862) |
| 9 | 10 |
NEWS
| @@ -255,7 +255,8 @@ None | @@ -255,7 +255,8 @@ None | ||
| 255 | 255 | ||
| 256 | csspec - Generates Spectral Energy Distribution | 256 | csspec - Generates Spectral Energy Distribution |
| 257 | ----------------------------------------------- | 257 | ----------------------------------------------- |
| 258 | -None | 258 | +If a diffuse cube sky model is used the script now correctly multiplies the |
| 259 | +result with the diffuse cube sky model spectrum (#2954). | ||
| 259 | 260 | ||
| 260 | 261 | ||
| 261 | cssrcdetect - Detects sources in sky map | 262 | cssrcdetect - Detects sources in sky map |
cscripts/csspec.py
| @@ -2,7 +2,7 @@ | @@ -2,7 +2,7 @@ | ||
| 2 | # ========================================================================== | 2 | # ========================================================================== |
| 3 | # Generates a spectrum. | 3 | # Generates a spectrum. |
| 4 | # | 4 | # |
| 5 | -# Copyright (C) 2014-2018 Michael Mayer | 5 | +# Copyright (C) 2014-2019 Michael Mayer |
| 6 | # | 6 | # |
| 7 | # This program is free software: you can redistribute it and/or modify | 7 | # This program is free software: you can redistribute it and/or modify |
| 8 | # it under the terms of the GNU General Public License as published by | 8 | # it under the terms of the GNU General Public License as published by |
| @@ -729,6 +729,15 @@ class csspec(ctools.csobservation): | @@ -729,6 +729,15 @@ class csspec(ctools.csobservation): | ||
| 729 | else: | 729 | else: |
| 730 | e_flux = 0.0 | 730 | e_flux = 0.0 |
| 731 | 731 | ||
| 732 | + # If the source model is a cube then multiply-in the cube | ||
| 733 | + # spectrum | ||
| 734 | + if source.spatial().classname() == 'GModelSpatialDiffuseCube': | ||
| 735 | + dir = gammalib.GSkyDir() | ||
| 736 | + source.spatial().set_mc_cone(dir, 180.0) | ||
| 737 | + norm = source.spatial().spectrum().eval(elogmean) | ||
| 738 | + fitted_flux *= norm | ||
| 739 | + e_flux *= norm | ||
| 740 | + | ||
| 732 | # Convert differential flux and flux error to nuFnu | 741 | # Convert differential flux and flux error to nuFnu |
| 733 | elogmean2 = elogmean.MeV() * elogmean.MeV() | 742 | elogmean2 = elogmean.MeV() * elogmean.MeV() |
| 734 | result['flux'] = fitted_flux * elogmean2 * gammalib.MeV2erg | 743 | result['flux'] = fitted_flux * elogmean2 * gammalib.MeV2erg |
doc/source/admin/release_history/1.6.2.rst
| @@ -12,6 +12,8 @@ The following bugs were fixed: | @@ -12,6 +12,8 @@ The following bugs were fixed: | ||
| 12 | 12 | ||
| 13 | * [`2962 <https://cta-redmine.irap.omp.eu/issues/2962>`_] - | 13 | * [`2962 <https://cta-redmine.irap.omp.eu/issues/2962>`_] - |
| 14 | Improve documentation and tutorials | 14 | Improve documentation and tutorials |
| 15 | +* [`2954 <https://cta-redmine.irap.omp.eu/issues/2954>`_] - | ||
| 16 | + Correct handling of flux for diffuse cube models in csspec | ||
| 15 | * [`2912 <https://cta-redmine.irap.omp.eu/issues/2912>`_] - | 17 | * [`2912 <https://cta-redmine.irap.omp.eu/issues/2912>`_] - |
| 16 | Fix OpenMP issue in ctbin when using energy bounds from file | 18 | Fix OpenMP issue in ctbin when using energy bounds from file |
| 17 | * [`2862 <https://cta-redmine.irap.omp.eu/issues/2862>`_] - | 19 | * [`2862 <https://cta-redmine.irap.omp.eu/issues/2862>`_] - |