11 #include "AveragePowerSpectrum.h" 12 #include "FancyFFTs.h" 13 #include "RootTools.h" 21 #include <RawAnitaHeader.h> 22 #include <UsefulAnitaEvent.h> 23 #include <CalibratedAnitaEvent.h> 25 void testAveragePowerSpectrum();
29 testAveragePowerSpectrum();
34 void testAveragePowerSpectrum(){
36 char eventFileName[1024];
39 sprintf(eventFileName,
"~/UCL/ANITA/calibratedFlight1415/run%d/calEventFile%d.root", run, run);
41 TFile* eventFile = TFile::Open(eventFileName);
42 TTree* eventTree = (TTree*) eventFile->Get(
"eventTree");
44 char rawHeaderFileName[1024];
45 sprintf(rawHeaderFileName,
"~/UCL/ANITA/flight1415/root/run%d/headFile%d.root", run, run);
47 TFile* rawHeaderFile = TFile::Open(rawHeaderFileName);
48 TTree* headTree = (TTree*) rawHeaderFile->Get(
"headTree");
50 CalibratedAnitaEvent*
event = NULL;
51 eventTree->SetBranchAddress(
"event", &event);
53 RawAnitaHeader* header = NULL;
54 headTree->SetBranchAddress(
"header", &header);
56 TFile* outFile =
new TFile(
"/tmp/testAveragePowerSpectrum.root",
"recreate");
59 const Long64_t numEntries = 1000;
61 const Int_t numSamps = 256;
62 const Double_t deltaT = 1./2.6;
67 for(Long64_t entry=0; entry<numEntries; entry++){
69 headTree->GetEntry(entry);
70 eventTree->GetEntry(entry);
71 UsefulAnitaEvent* realEvent =
new UsefulAnitaEvent(event);
73 TGraph* gr = realEvent->getGraph(16, AnitaPol::kHorizontal);
80 TGraph* gr2 = realEvent->getGraph(16+8, AnitaPol::kHorizontal);
90 TGraph* gr = aps.makeAvePowSpecTGraph();
92 TGraph* gr2 = aps2.makeAvePowSpecTGraph_dB();
95 aps.fitAllRayleighHistograms();
Takes in waveforms and averages averages their power spectra.