Commit eb766d52d8a904bd4be6a7d3bc0316ddf510f2b5

Authored by Jürgen Knödlseder
1 parent b8aaf5fa

Use energy boundary dimension in set_energies() instead of the map dimension. Th…

…is allows to use a dummy map.
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 }
... ...