3 #include <fwk/CentralConfig.h>
4 #include <fwk/CoordinateSystemRegistry.h>
6 #include <utl/ErrorLogger.h>
7 #include <utl/Reader.h>
8 #include <utl/config.h>
10 #include <utl/TraceAlgorithm.h>
11 #include <utl/TimeStamp.h>
12 #include <utl/TimeInterval.h>
13 #include <utl/AugerUnits.h>
14 #include <utl/AugerException.h>
15 #include <utl/FFTDataContainerAlgorithm.h>
17 #include <utl/Vector.h>
18 #include <utl/AxialVector.h>
19 #include <utl/AugerCoordinateSystem.h>
20 #include <utl/CoordinateSystemPtr.h>
21 #include <utl/UTMPoint.h>
23 #include <evt/Event.h>
24 #include <revt/REvent.h>
25 #include <revt/Header.h>
26 #include <evt/ShowerRecData.h>
27 #include <evt/ShowerSimData.h>
28 #include <evt/ShowerRRecData.h>
29 #include <evt/ShowerFRecData.h>
30 #include <evt/ShowerSRecData.h>
31 #include <revt/Channel.h>
33 #include <rdet/RDetector.h>
34 #include <rdet/Station.h>
36 #include <fwk/LocalCoordinateSystem.h>
50 RdStationQualityAssessor::~RdStationQualityAssessor() {}
54 INFO(
"RdStationQualityAssessor::Init()");
58 CentralConfig::GetInstance()->
GetTopBranch(
"RdStationQualityAssessor");
67 INFO(
"RdStationQualityAssessor::Run()");
71 WARNING(
"No radio event found!");
75 REvent& rEvent =
event.GetREvent();
81 double signalSearchWindowStart = recData.
GetParameter(eSignalSearchWindowStart);
82 double signalSearchWindowStop = recData.GetParameter(eSignalSearchWindowStop);
87 double maxOutsideSignalSearchWindow = 0;
89 for (
unsigned int i = 0; i < timeSeries.
GetSize(); ++i) {
91 amplitude = timeSeries[i].GetMag();
93 amplitude = fabs(timeSeries[i][0]);
95 amplitude = fabs(timeSeries[i][1]);
97 amplitude = fabs(timeSeries[i][2]);
99 amplitude =
sqrt(
pow(timeSeries[i][0], 2) +
pow(timeSeries[i][1], 2));
100 bool isOutside = i * binning < signalSearchWindowStart or i * binning > signalSearchWindowStop;
101 if ( amplitude > maxOutsideSignalSearchWindow and isOutside) {
102 maxOutsideSignalSearchWindow = amplitude;
105 recData.SetParameter(eMaxAmplitudeOutsideSignalSearchWindow, maxOutsideSignalSearchWindow);
111 RdStationQualityAssessor::Finish()
114 INFO(
"RdStationQualityAssessor::Finish()");
Branch GetTopBranch() const
Class to access station level reconstructed data.
Report success to RunController.
Interface class to access to the Radio part of an event.
Skip remaining modules in the current loop and continue with next iteration of the loop...
double GetBinning() const
size of one slot
#define INFO(message)
Macro for logging informational messages.
void Init()
Initialise the registry.
Branch GetChild(const std::string &childName) const
Get child of this Branch by child name.
double pow(const double x, const unsigned int i)
Class representing a document branch.
#define WARNING(message)
Macro for logging warning messages.
void GetData(bool &b) const
Overloads of the GetData member template function.
unsigned int fVectorialComponent
double GetParameter(const Parameter i) const
ResultFlag
Flag returned by module methods to the RunController.
Template class for a FADC data or calibrated data container. Use the typedefs (TraceD, TraceI, etc.) defined in Trace-fwd.h.
SignalStationIterator SignalStationsEnd()
boost::filter_iterator< SignalStationFilter, AllStationIterator > SignalStationIterator
Iterator over all signal stations.
SignalStationIterator SignalStationsBegin()