ANITA Analysis Framework
BandwidthMeasure.h
1 #ifndef BANDWIDTH_MEASURE_H
2 #define BANDWIDTH_MEASURE_H
3 
4 #include <vector>
5 
6 
14 class AnalysisWaveform;
15 class TGraph;
16 class TGraphAligned;
17 
18 namespace bandwidth
19 {
28  double bandwidthMeasure(const AnalysisWaveform * wf, int timeCheck = 0, TGraph* gTest = 0);
33  double differenceFromImpulse(const AnalysisWaveform * wf, int timeCheck = 0, TGraph* gTest = 0);
38  double maxDifferenceFromImpulse(const AnalysisWaveform * wf, int timeCheck = 0, TGraph* gTest = 0);
43  double hooverIndex(const AnalysisWaveform * wf, int timeCheck = 0);
48  double theilIndex(const AnalysisWaveform * wf, int timeCheck = 0);
52  double powerInBand(const AnalysisWaveform * wf, double minFreq=.17, double maxFreq=.26);
53 
54 
56  double lowness(const AnalysisWaveform *wf, double minf = 0.17, double maxf = 0.6) ;
57 
58 
60  void checkNotches(int timeCheck, double& notch0, double& notch1, double& notch2);
61  double fillPowers(const TGraphAligned* powd, std::vector<double> &powers, double notch0, double notch1, double notch2);
62  TGraph* loadImpulsePower(int timeCheck);
63  void normalizePower(TGraph* g);
64  TGraph* downsampleImpulse(TGraph* imp, const TGraphAligned* examp);
65 
66 }
67 
68 
69 
70 
71 #endif
This class is intended to be the main storage vessel for ANITA waveforms. It is similar in principle ...