List of all members | Public Types | Public Member Functions | Static Public Member Functions | Private Types | Private Member Functions | Private Attributes
RdStationInterpolator::RdStationInterpolator Class Reference

#include <RdStationInterpolator.h>

Inheritance diagram for RdStationInterpolator::RdStationInterpolator:
Inheritance graph
[legend]

Public Types

enum  ResultFlag { eSuccess, eFailure, eBreakLoop, eContinueLoop }
 Flag returned by module methods to the RunController. More...
 
enum  VersionInfoType {
  eFilename = 1, eRevisionNumber = 2, eDate = 3, eTime = 4,
  eLastEditor = 5
}
 Different types of version info that can be retrieved from GetVersionInfo. More...
 

Public Member Functions

fwk::VModule::ResultFlag Finish ()
 Finish: invoked at end of the run (NOT end of the event) More...
 
utl::StopwatchGetStopwatch ()
 
const utl::StopwatchGetStopwatch () const
 
std::string GetVersionInfo (const VersionInfoType v) const
 Retrieve different sorts of module version info. More...
 
VModule::ResultFlag Init ()
 Initialize: invoked at beginning of run (NOT beginning of event) More...
 
void InitTiming ()
 
 RdStationInterpolator ()
 
VModule::ResultFlag Run (evt::Event &theevent)
 Run: invoked once per event. More...
 
ResultFlag RunWithTiming (evt::Event &event)
 
 ~RdStationInterpolator ()
 

Static Public Member Functions

static std::string GetResultFlagByName (const ResultFlag flag)
 

Private Types

enum  InfoLevel {
  eNone = 0, eFinal = 1, eIntermediate = 2, eObscure = 3,
  eMinuit = 4
}
 
typedef std::multimap< double,
const evt::SimRadioPulse & > 
PulseMMap
 

Private Member Functions

void BuildSimShower (evt::ShowerSimData &theshower, const utl::CoordinateSystemPtr &coord)
 BuildSimShower-----------------------------------------------------------------------------------------------------—. More...
 
PulseMMap FindClosestSimPulsesToStation (const utl::Point &pt, const utl::CoordinateSystemPtr &coord, const PulseMMap &mm_srpulse_x, const PulseMMap &mm_srpulse_y) const
 find distances of SimPulses to station More...
 
PulseMMap FindSurroundingNN (const PulseMMap &mm_simradiopulse, const utl::Point &pt, const utl::CoordinateSystemPtr &coord, const bool inverse) const
 find the surrounding four nearest neighbors More...
 
std::vector< double > GetAreaOfTriangles (const utl::Point &stationpos, const std::vector< utl::Point > &v_simloc, const utl::CoordinateSystemPtr &coord) const
 weight of the simradiopulses in for interpolation More...
 
revt::StationFFTDataContainer InterpolateInTwoD (const std::vector< revt::StationFFTDataContainer > &simData, const std::vector< double > &area, const double designLowerFreq, const double designUpperFreq) const
 interpolation between closest pulses -> station signal More...
 
revt::StationTimeSeries PadTimeSeries (const evt::SimRadioPulse &simtimeseries) const
 padding of zeros to the end of the simtimeseries More...
 
 REGISTER_MODULE ("RdStationInterpolator", RdStationInterpolator)
 

Private Attributes

unsigned int fEventcounter
 
double fEventRate
 
utl::TimeInterval fEventTimeOffset
 
std::vector< int > fExcludedStationIds
 
utl::TimeStamp fFirstEventTime
 
std::vector< int > fIncludedStationIds
 
int fInfoLevel
 
double fMaximumDistance
 
double fMinimumTraceLength
 
double fTracePaddingAtFront
 
bool fUseRateTiming
 

Detailed Description

Definition at line 48 of file RdStationInterpolator.h.

Member Typedef Documentation

typedef std::multimap<double,const evt::SimRadioPulse&> RdStationInterpolator::RdStationInterpolator::PulseMMap
private

Definition at line 58 of file RdStationInterpolator.h.

Member Enumeration Documentation

enum RdStationInterpolator::RdStationInterpolator::InfoLevel
private
Enumerator
eNone 
eFinal 
eIntermediate 
eObscure 
eMinuit 

Definition at line 83 of file RdStationInterpolator.h.

enum fwk::VModule::ResultFlag
inherited

Flag returned by module methods to the RunController.

Enumerator
eSuccess 

Report success to RunController.

eFailure 

Report failure to RunController, causing RunController to terminate execution.

eBreakLoop 

Break current loop. It works for nested loops too!

eContinueLoop 

Skip remaining modules in the current loop and continue with next iteration of the loop.

Definition at line 60 of file VModule.h.

Different types of version info that can be retrieved from GetVersionInfo.

Enumerator
eFilename 
eRevisionNumber 
eDate 
eTime 
eLastEditor 

Definition at line 110 of file VModule.h.

Constructor & Destructor Documentation

RdStationInterpolator::RdStationInterpolator::RdStationInterpolator ( )

Definition at line 60 of file RdStationInterpolator.cc.

RdStationInterpolator::RdStationInterpolator::~RdStationInterpolator ( )

Definition at line 73 of file RdStationInterpolator.cc.

Member Function Documentation

void RdStationInterpolator::RdStationInterpolator::BuildSimShower ( evt::ShowerSimData theshower,
const utl::CoordinateSystemPtr coord 
)
private

BuildSimShower-----------------------------------------------------------------------------------------------------—.

Definition at line 636 of file RdStationInterpolator.cc.

References evt::ShowerSimData::HasPosition(), and evt::ShowerSimData::MakeGeometry().

Referenced by Run().

PulseMMap RdStationInterpolator::RdStationInterpolator::FindClosestSimPulsesToStation ( const utl::Point pt,
const utl::CoordinateSystemPtr coord,
const PulseMMap mm_srpulse_x,
const PulseMMap mm_srpulse_y 
) const
private
PulseMMap RdStationInterpolator::RdStationInterpolator::FindSurroundingNN ( const PulseMMap mm_simradiopulse,
const utl::Point pt,
const utl::CoordinateSystemPtr coord,
const bool  inverse 
) const
private

find the surrounding four nearest neighbors

Definition at line 398 of file RdStationInterpolator.cc.

References RdGeoCeLDFFitter::b, utl::BasicVector< HepVector >::GetX(), and utl::BasicVector< HepVector >::GetY().

Referenced by FindClosestSimPulsesToStation().

fwk::VModule::ResultFlag RdStationInterpolator::RdStationInterpolator::Finish ( )
virtual

Finish: invoked at end of the run (NOT end of the event)

This method is for things that should be done at the end of the run (for example, closing files or writing out histograms) {You must override this method in your concrete module}

Implements fwk::VModule.

Definition at line 316 of file RdStationInterpolator.cc.

References eIntermediate, fwk::VModule::eSuccess, and OUT.

vector< double > RdStationInterpolator::RdStationInterpolator::GetAreaOfTriangles ( const utl::Point stationpos,
const std::vector< utl::Point > &  v_simloc,
const utl::CoordinateSystemPtr coord 
) const
private

weight of the simradiopulses in for interpolation

Definition at line 465 of file RdStationInterpolator.cc.

References utl::BasicVector< HepVector >::GetX(), utl::BasicVector< HepVector >::GetY(), std::pow(), utl::s, and sqrt().

Referenced by FindClosestSimPulsesToStation().

std::string fwk::VModule::GetResultFlagByName ( const ResultFlag  flag)
staticinherited
utl::Stopwatch& fwk::VModule::GetStopwatch ( )
inlineinherited

Definition at line 106 of file VModule.h.

References fwk::VModule::fStopwatch.

const utl::Stopwatch& fwk::VModule::GetStopwatch ( ) const
inlineinherited

Definition at line 107 of file VModule.h.

References fwk::VModule::fStopwatch.

std::string fwk::VModule::GetVersionInfo ( const VersionInfoType  v) const
inherited
fwk::VModule::ResultFlag RdStationInterpolator::RdStationInterpolator::Init ( )
virtual

Initialize: invoked at beginning of run (NOT beginning of event)

This method is for things that should be done once at the beginning of a run (for example, booking histograms, performing calculations that need to be done only once, initializing parameters) {You must override this method in your concrete module}

Implements fwk::VModule.

Definition at line 78 of file RdStationInterpolator.cc.

References eFinal, fwk::VModule::eSuccess, fEventRate, fExcludedStationIds, fFirstEventTime, fIncludedStationIds, fInfoLevel, fMaximumDistance, fMinimumTraceLength, fTracePaddingAtFront, fUseRateTiming, utl::Branch::GetChild(), utl::Branch::GetData(), utl::Branch::GetTopBranch(), utl::hertz, utl::nanosecond, OUT, and utl::StringEquivalent().

void fwk::VModule::InitTiming ( )
inlineinherited

Definition at line 95 of file VModule.h.

References fwk::VModule::fStopwatch, and utl::Stopwatch::Reset().

revt::StationFFTDataContainer RdStationInterpolator::RdStationInterpolator::InterpolateInTwoD ( const std::vector< revt::StationFFTDataContainer > &  simData,
const std::vector< double > &  area,
const double  designLowerFreq,
const double  designUpperFreq 
) const
private

interpolation between closest pulses -> station signal

Definition at line 537 of file RdStationInterpolator.cc.

References utl::abs(), utl::FFTDataContainer< C, T, F >::GetFrequencySpectrum(), utl::kPi, utl::Trace< T >::PushBack(), and utl::Trace< T >::SetBinning().

Referenced by Run().

revt::StationTimeSeries RdStationInterpolator::RdStationInterpolator::PadTimeSeries ( const evt::SimRadioPulse simtimeseries) const
private
RdStationInterpolator::RdStationInterpolator::REGISTER_MODULE ( "RdStationInterpolator"  ,
RdStationInterpolator   
)
private
fwk::VModule::ResultFlag RdStationInterpolator::RdStationInterpolator::Run ( evt::Event event)
virtual

Run: invoked once per event.

This method is for things that should be done once per event {You must override this method in your concrete module}

Implements fwk::VModule.

Definition at line 113 of file RdStationInterpolator.cc.

References utl::Trace< T >::Begin(), BuildSimShower(), fwk::VModule::eFailure, utl::Trace< T >::End(), eObscure, fwk::VModule::eSuccess, fEventTimeOffset, fExcludedStationIds, fFirstEventTime, fIncludedStationIds, FindClosestSimPulsesToStation(), fTracePaddingAtFront, fUseRateTiming, rdet::Channel::GetDesignLowerFreq(), rdet::Channel::GetDesignUpperFreq(), evt::RadioSimulation::GetEventNumber(), evt::RadioSimulation::GetEventTime(), revt::REvent::GetHeader(), evt::RadioSimulation::GetLocalCoordinateSystem(), evt::SimRadioPulse::GetLocation(), evt::RadioSimulation::GetNextSimRadioPulse(), evt::ShowerSimData::GetRadioSimulation(), det::Detector::GetRDetector(), evt::Event::GetREvent(), evt::RadioSimulation::GetRunNumber(), evt::Event::GetSimShower(), utl::Trace< T >::GetSize(), rdet::RDetector::GetStation(), revt::REvent::GetStation(), revt::Station::GetStationTimeSeries(), revt::Header::GetTime(), revt::REvent::GetTrigger(), utl::BasicVector< HepVector >::GetX(), evt::RadioSimulation::GoToFirstSimRadioPulse(), evt::Event::HasREvent(), INFO, InterpolateInTwoD(), revt::Station::MakeGPSData(), evt::Event::MakeREvent(), revt::Station::MakeSimData(), revt::REvent::MakeStation(), evt::ShowerSimData::MakeTimeStamp(), revt::REvent::MakeTrigger(), revt::Station::MakeTriggerData(), ok(), OUT, PadTimeSeries(), utl::Trace< T >::PushBack(), utl::Trace< T >::SetBinning(), revt::EventTrigger::SetExternalTrigger(), revt::Header::SetId(), revt::Station::SetRawTraceStartTime(), revt::Header::SetRunNumber(), revt::Header::SetTime(), rdet::RDetector::StationsBegin(), rdet::RDetector::StationsEnd(), det::Detector::Update(), and WARNING.

ResultFlag fwk::VModule::RunWithTiming ( evt::Event event)
inlineinherited

Member Data Documentation

unsigned int RdStationInterpolator::RdStationInterpolator::fEventcounter
private

Definition at line 81 of file RdStationInterpolator.h.

double RdStationInterpolator::RdStationInterpolator::fEventRate
private

Definition at line 74 of file RdStationInterpolator.h.

Referenced by Init().

utl::TimeInterval RdStationInterpolator::RdStationInterpolator::fEventTimeOffset
private

Definition at line 75 of file RdStationInterpolator.h.

Referenced by Run().

std::vector<int> RdStationInterpolator::RdStationInterpolator::fExcludedStationIds
private

Definition at line 79 of file RdStationInterpolator.h.

Referenced by Init(), and Run().

utl::TimeStamp RdStationInterpolator::RdStationInterpolator::fFirstEventTime
private

Definition at line 76 of file RdStationInterpolator.h.

Referenced by Init(), and Run().

std::vector<int> RdStationInterpolator::RdStationInterpolator::fIncludedStationIds
private

Definition at line 78 of file RdStationInterpolator.h.

Referenced by Init(), and Run().

int RdStationInterpolator::RdStationInterpolator::fInfoLevel
private

Definition at line 80 of file RdStationInterpolator.h.

Referenced by Init().

double RdStationInterpolator::RdStationInterpolator::fMaximumDistance
private

We want to have a complete shower so some more information will be written (Axis)

Definition at line 71 of file RdStationInterpolator.h.

Referenced by Init().

double RdStationInterpolator::RdStationInterpolator::fMinimumTraceLength
private

Definition at line 73 of file RdStationInterpolator.h.

Referenced by Init(), and PadTimeSeries().

double RdStationInterpolator::RdStationInterpolator::fTracePaddingAtFront
private

Definition at line 72 of file RdStationInterpolator.h.

Referenced by Init(), PadTimeSeries(), and Run().

bool RdStationInterpolator::RdStationInterpolator::fUseRateTiming
private

Definition at line 77 of file RdStationInterpolator.h.

Referenced by Init(), and Run().


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

, generated on Tue Sep 26 2023.