RdDirectionConvergenceChecker.h
Go to the documentation of this file.
1 #ifndef _RdDirectionConvergenceChecker_RdDirectionConvergenceChecker_h_
2 #define _RdDirectionConvergenceChecker_RdDirectionConvergenceChecker_h_
3 
4 #include <fwk/VModule.h>
5 
6 #include <utl/AugerUnits.h>
7 
9 
22 
23  public:
24  fwk::VModule::ResultFlag Init() override;
25  fwk::VModule::ResultFlag Run(evt::Event& event) override;
27 
28  private:
30  double fAngleEpsilon = 0.5 * utl::degree;
31 
33  unsigned long int fMaxIterations = 10;
34 
35  bool fCheckMirrorZenith = false;
36 
37  // vectors to store the azimuth and zenith angles of all iterations for an event
38  std::vector<double> fAllAzimuths;
39  std::vector<double> fAllZeniths;
40 
41  double GetAngularDifference(const double zen1, const double azim1, const double zen2, const double azim2);
42 
43  REGISTER_MODULE("RdDirectionConvergenceChecker", RdDirectionConvergenceChecker);
44  };
45 
46 }
47 
48 
49 #endif
REGISTER_MODULE("RdDirectionConvergenceChecker", RdDirectionConvergenceChecker)
unsigned long int fMaxIterations
xml settings: Maximum number of iterations to be processed
fwk::VModule::ResultFlag Finish() override
Finish: invoked at end of the run (NOT end of the event)
fwk::VModule::ResultFlag Init() override
Initialize: invoked at beginning of run (NOT beginning of event)
double GetAngularDifference(const double zen1, const double azim1, const double zen2, const double azim2)
Checks if convergence during angular reconstruction is achieved and if yes, breaks the looping struct...
constexpr double degree
fwk::VModule::ResultFlag Run(evt::Event &event) override
Run: invoked once per event.
Module interface.
Definition: VModule.h:53
ResultFlag
Flag returned by module methods to the RunController.
Definition: VModule.h:60
double fAngleEpsilon
xml settings: azimuthal epsilon limit for convergence

, generated on Tue Sep 26 2023.