Commit eb766d52d8a904bd4be6a7d3bc0316ddf510f2b5
1 parent
b8aaf5fa
Use energy boundary dimension in set_energies() instead of the map dimension. Th…
…is allows to use a dummy map.
Showing
1 changed file
with
7 additions
and
4 deletions
inst/cta/src/GCTAEventCube.cpp
| ... | ... | @@ -732,8 +732,11 @@ void GCTAEventCube::set_directions(void) |
| 732 | 732 | ***************************************************************************/ |
| 733 | 733 | void GCTAEventCube::set_energies(void) |
| 734 | 734 | { |
| 735 | + // Determine number of energy bins | |
| 736 | + int ebins = ebounds().size(); | |
| 737 | + | |
| 735 | 738 | // Throw an error if we have no energy bins |
| 736 | - if (ebins() < 1) { | |
| 739 | + if (ebins < 1) { | |
| 737 | 740 | throw GCTAException::no_ebds(G_SET_ENERGIES, "Every CTA event cube" |
| 738 | 741 | " needs a definition of the energy boundaries."); |
| 739 | 742 | } |
| ... | ... | @@ -743,11 +746,11 @@ void GCTAEventCube::set_energies(void) |
| 743 | 746 | m_ewidth.clear(); |
| 744 | 747 | |
| 745 | 748 | // Reserve space for bin energies and energy widths |
| 746 | - m_energies.reserve(ebins()); | |
| 747 | - m_ewidth.reserve(ebins()); | |
| 749 | + m_energies.reserve(ebins); | |
| 750 | + m_ewidth.reserve(ebins); | |
| 748 | 751 | |
| 749 | 752 | // Setup bin energies and energy widths |
| 750 | - for (int i = 0; i < ebins(); ++i) { | |
| 753 | + for (int i = 0; i < ebins; ++i) { | |
| 751 | 754 | m_energies.push_back(ebounds().elogmean(i)); |
| 752 | 755 | m_ewidth.push_back(ebounds().emax(i) - ebounds().emin(i)); |
| 753 | 756 | } | ... | ... |