Public Member Functions | List of all members
Acclaim::TemplateCorrelator Class Reference

Cross-correlate all channels of an event with a template. More...

#include <CrossCorrelator.h>

Public Member Functions

 TemplateCorrelator (Int_t run, UInt_t eventNumber)
 
virtual ~TemplateCorrelator ()
 
void initTemplate (const FilteredAnitaEvent *fEv)
 
void initTemplate (Int_t run, UInt_t eventNumber)
 
virtual void correlateEvent (const FilteredAnitaEvent *fEv)
 
virtual void correlateEvent (const FilteredAnitaEvent *fEv, AnitaPol::AnitaPol_t pol)
 
TGraph * getCrossCorrelationGraph (AnitaPol::AnitaPol_t pol, Int_t ant) const
 
Double_t getPeakCorrelation (AnitaPol::AnitaPol_t pol, Double_t minOffset=-100, Double_t maxOffset=100, Double_t stepSize=(1./2.6f)) const
 
virtual Double_t getCrossCorrelation (AnitaPol::AnitaPol_t pol, Int_t ant, Double_t deltaT) const
 
- Public Member Functions inherited from Acclaim::CrossCorrelator
void doUpsampledCrossCorrelations (AnitaPol::AnitaPol_t pol, Int_t phiSector)
 
TGraph * getCrossCorrelationGraph (AnitaPol::AnitaPol_t pol, Int_t ant1, Int_t ant2) const
 
TGraph * getUpsampledCrossCorrelationGraph (AnitaPol::AnitaPol_t pol, Int_t ant1, Int_t ant2) const
 
TGraph * getCrossCorrelationGraphWorker (Int_t numSamps, AnitaPol::AnitaPol_t pol, Int_t ant1, Int_t ant2) const
 
Double_t getTimeOfMaximumUpsampledCrossCorrelation (AnitaPol::AnitaPol_t pol, Int_t ant1, Int_t ant2) const
 
void initializeVariables ()
 
void getNormalizedInterpolatedTGraphs (const FilteredAnitaEvent *realEvent, AnitaPol::AnitaPol_t pol, bool raw=false)
 
void renormalizeFourierDomain (AnitaPol::AnitaPol_t pol, Int_t ant)
 
void doFFTs (AnitaPol::AnitaPol_t pol)
 
void doCrossCorrelations (AnitaPol::AnitaPol_t pol)
 
Bool_t useCombo (Int_t ant1, Int_t ant2, Int_t phiSector, Int_t deltaPhiSect)
 
void fillCombosToUse ()
 
void do5PhiSectorCombinatorics ()
 
Double_t getInterpolatedUpsampledCorrelationValue (AnitaPol::AnitaPol_t pol, Int_t combo, Double_t deltaT) const
 

Additional Inherited Members

- Public Attributes inherited from Acclaim::CrossCorrelator
std::complex< Double_t > ffts [AnitaPol::kNotAPol][NUM_SEAVEYS][((NUM_SAMP *2)/2+1)]
 FFTs of evenly resampled waveforms.
 
Double_t crossCorrelations [AnitaPol::kNotAPol][336][NUM_SAMP *2]
 Cross correlations.
 
Double_t crossCorrelationsUpsampled [AnitaPol::kNotAPol][336][NUM_SAMP *2 *6 *2]
 Upsampled cross correlations.
 
Double_t fVolts [AnitaPol::kNotAPol][NUM_SEAVEYS][NUM_SAMP *2]
 Hold the filtered waveforms for padding...
 
Double_t startTimes [AnitaPol::kNotAPol][NUM_SEAVEYS]
 
Double_t interpRMS [AnitaPol::kNotAPol][NUM_SEAVEYS]
 RMS of interpolated TGraphs.
 
Double_t interpRMS2 [AnitaPol::kNotAPol][NUM_SEAVEYS]
 RMS of interpolated TGraphs with extra zero padding.
 
Int_t comboIndices [NUM_SEAVEYS][NUM_SEAVEYS]
 Array mapping ant1+ant2 to combo index.
 
UInt_t eventNumber [AnitaPol::kNotAPol]
 For tracking event number.
 
Double_t nominalSamplingDeltaT
 ANITA-3 => 1./2.6 ns, deltaT for evenly resampling.
 
Double_t correlationDeltaT
 nominalSamplingDeltaT/UPSAMPLE_FACTOR, deltaT of for interpolation.
 
Int_t numSamples
 Number of samples in waveform after padding.
 
Int_t numSamplesUpsampled
 Number of samples in waveform after padding and up sampling.
 
Int_t numCombos
 Number of possible antenna pairs, counted during initialization. Should equal NUM_COMBOS.
 
std::vector< Int_t > comboToAnt1s
 Vector mapping combo index to ant1.
 
std::vector< Int_t > comboToAnt2s
 Vector mapping combo index to ant2.
 
std::vector< Int_t > combosToUseGlobal [NUM_PHI]
 Depends on L3 trigger for global image.
 
Int_t multiplyTopRingByMinusOne
 For showing how I'm an idiot with respect to compiling the ANITA-3 prioritizer.
 
Int_t kOnlyThisCombo
 For debugging, only fill histograms with one particular antenna pair.
 
Int_t kDeltaPhiSect
 Specifies how many phi-sectors around peak use in reconstruction.
 

Detailed Description

Cross-correlate all channels of an event with a template.

This class overloads a few member functions while repurposing some member variable so not really a case of straight forward inheritance...

Definition at line 153 of file CrossCorrelator.h.

Inheritance diagram for Acclaim::TemplateCorrelator:
Inheritance graph
[legend]
Collaboration diagram for Acclaim::TemplateCorrelator:
Collaboration graph
[legend]

Constructor & Destructor Documentation

Acclaim::TemplateCorrelator::TemplateCorrelator ( Int_t  run,
UInt_t  eventNumber 
)

Constructor, Initialize the template correlator

Parameters
runthe run of the event to use as a template
eventNumberof the event to use as a template

Definition at line 427 of file CrossCorrelator.cxx.

Acclaim::TemplateCorrelator::~TemplateCorrelator ( )
virtual

Destructor (do nothing)

Definition at line 437 of file CrossCorrelator.cxx.

Member Function Documentation

void Acclaim::TemplateCorrelator::correlateEvent ( const FilteredAnitaEvent fEv)
virtual

Loop over polarisations and correlate the event

Parameters
fEvis the FilteredAnitaEvent to correlate with the template

Reimplemented from Acclaim::CrossCorrelator.

Definition at line 489 of file CrossCorrelator.cxx.

void Acclaim::TemplateCorrelator::correlateEvent ( const FilteredAnitaEvent fEv,
AnitaPol::AnitaPol_t  pol 
)
virtual

Correlate the FilteredAnitaEvent to the template

Parameters
fEvis the FilteredAnitaEvent to correlate with the template
polis the

Reimplemented from Acclaim::CrossCorrelator.

Definition at line 506 of file CrossCorrelator.cxx.

TGraph * Acclaim::TemplateCorrelator::getCrossCorrelationGraph ( AnitaPol::AnitaPol_t  pol,
Int_t  ant 
) const

Look at the correlation of the template with the channel of the event

Parameters
pol
ant
Returns

Definition at line 576 of file CrossCorrelator.cxx.

void Acclaim::TemplateCorrelator::initTemplate ( const FilteredAnitaEvent fEv)

Store the template waveforms

Parameters
fEvis the FilteredAnitaEvent to use as the template

Definition at line 466 of file CrossCorrelator.cxx.

void Acclaim::TemplateCorrelator::initTemplate ( Int_t  run,
UInt_t  eventNumber 
)

Initialize the template correlator

Parameters
runthe run of the event to use as a template
eventNumberof the event to use as a template

Definition at line 450 of file CrossCorrelator.cxx.


The documentation for this class was generated from the following files: