diff --git a/src/ctfindvar/ctfindvar.cpp b/src/ctfindvar/ctfindvar.cpp index 7f52650..4c16d22 100644 --- a/src/ctfindvar/ctfindvar.cpp +++ b/src/ctfindvar/ctfindvar.cpp @@ -639,6 +639,10 @@ void ctfindvar::get_parameters(void) (*this)["histtype"].string(); } + // Get the energy limits + m_emin = GEnergy((*this)["emin"].real(), "TeV"); + m_emax = GEnergy((*this)["emax"].real(), "TeV"); + // Write parameters into logger log_parameters(TERSE); @@ -681,16 +685,28 @@ void ctfindvar::fill_cube(GCTAObservation* obs) // Initialise binning statistics int num_outside_roi = 0; int num_invalid_wcs = 0; + int num_outside_ecut = 0; int num_outside_map = 0; int num_outside_time = 0; int num_in_map = 0; + // Specify whether we are cutting on energy or not + bool cut_emin = (m_emin.TeV() > 0.0) ? true : false; + bool cut_emax = (m_emax.TeV() > 0.0) ? true : false; + // Fill counts sky map for (int i = 0; i < events->size(); ++i) { // Get event const GCTAEventAtom* event = (*events)[i]; + // Check that the energy is valid + if ((cut_emin && event->energy() < m_emin) || + (cut_emax && event->energy() > m_emax)) { + num_outside_ecut++; + continue; + } + // Determine event time GTime evnt_time = event->time(); int time_indx = time2inx(evnt_time); diff --git a/src/ctfindvar/ctfindvar.hpp b/src/ctfindvar/ctfindvar.hpp index 65eadae..f979f6f 100644 --- a/src/ctfindvar/ctfindvar.hpp +++ b/src/ctfindvar/ctfindvar.hpp @@ -94,6 +94,8 @@ protected: GNdarray m_pixsigmax; //!< Store distribution for pixel with max significance GTime m_tstart; //!< Start time for variability study GTime m_tstop; //!< Stop time for variability study + GEnergy m_emin; //!< Minimum energy for events + GEnergy m_emax; //!< Maximum energy for events }; diff --git a/src/ctfindvar/ctfindvar.par b/src/ctfindvar/ctfindvar.par index a200270..53c54c3 100644 --- a/src/ctfindvar/ctfindvar.par +++ b/src/ctfindvar/ctfindvar.par @@ -21,8 +21,8 @@ inmodel, f, h, NONE,,, "Input model definition file for extracting source pos histtype, s, a, FITS,CSV|FITS,, "File type for storing the individual source histograms" prefix, s, a, findvar_,,, "Prefix for output files" minoff, r, h, 0,,, "Minimum required events in off bin for computing Noff and alpha" -emin, r, a, 0.1,,, "Lower energy limit (TeV)" -emax, r, a, 100.0,,, "Upper energy limit (TeV)" +emin, r, a, 0,,, "Lower energy limit (units of TeV; 0 => no cut)" +emax, r, a, 0,,, "Upper energy limit (units of TeV; 0 => no cut)" smoothkrnl, s, h, NONE, GAUSSIAN|DISK|NONE,, "Smoothing kernel for counts maps" smoothpar, r, h, 0.05,,, "Parameter for the smoothing kernel"