#include <RdPolarizationReconstructor.h>
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 () override |
Finish: invoked at end of the run (NOT end of the event) More... | |
utl::Stopwatch & | GetStopwatch () |
const utl::Stopwatch & | GetStopwatch () const |
std::string | GetVersionInfo (const VersionInfoType v) const |
Retrieve different sorts of module version info. More... | |
fwk::VModule::ResultFlag | Init () override |
Initialize: invoked at beginning of run (NOT beginning of event) More... | |
void | InitTiming () |
RdPolarizationReconstructor () | |
fwk::VModule::ResultFlag | Run (evt::Event &event) override |
Run: invoked once per event. More... | |
ResultFlag | RunWithTiming (evt::Event &event) |
~RdPolarizationReconstructor () override | |
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 } |
Private Member Functions | |
void | CalculateAndFillChargeExcessFraction (revt::Station &station, double &alpha, double &chxfraction) |
void | CalculateAndFillStokesParameters (revt::Station &station, BoostVecC &traceX, BoostVecC &traceY, double observerAngle, double alpha) |
void | CheckSignalAndNoiseRanges (SizeT signal_start_bin, SizeT signal_stop_bin, SizeT noise_start_bin, SizeT noise_stop_bin, SizeT size) const |
utl::Vector | GetArrivalDirection (const evt::Event &event) const |
utl::Point | GetCore (const evt::Event &event) const |
void | GetCoreXY (const evt::Event &event, const utl::CoordinateSystemPtr &CS, double &CoreX, double &CoreY) const |
utl::CoordinateSystemPtr | GetCS (const evt::Event &event) const |
utl::Vector | GetPerpVector (const utl::Point &point, const utl::Line &line) const |
void | GetRotatedPolarizationTraces (const evt::Event &event, const revt::Station &station, const rdet::RDetector &rDetector, const utl::TraceV3C &stationTimeSeries, BoostVecC &traceX, BoostVecC &traceY, double &observerAngle, double &alpha) const |
REGISTER_MODULE ("RdPolarizationReconstructor", RdPolarizationReconstructor) | |
Private Attributes | |
bool | fAssumeGroundPlaneIsHorizontalAndFlat |
std::string | fErrorCalculationType |
std::string | fGeometrySource |
int | fInfoLevel |
double | fNoiseWindowStartOverride |
double | fNoiseWindowStopOverride |
int | fProjectOntoGroundPlane |
bool | fQuadraticNoiseSubtraction |
double | fSignalWindowStartOverride |
double | fSignalWindowStopOverride |
Definition at line 153 of file RdPolarizationReconstructor.h.
|
private |
Enumerator | |
---|---|
eNone | |
eFinal | |
eIntermediate | |
eObscure | |
eMinuit |
Definition at line 164 of file RdPolarizationReconstructor.h.
|
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. |
|
inherited |
RdPolarizationReconstructor::RdPolarizationReconstructor::RdPolarizationReconstructor | ( | ) |
Definition at line 352 of file RdPolarizationReconstructor.cc.
References RdPolarizationReconstructor::GetRodrigoCS().
|
inlineoverride |
Definition at line 157 of file RdPolarizationReconstructor.h.
|
private |
Definition at line 800 of file RdPolarizationReconstructor.cc.
References utl::abs(), revt::StationRecData::GetParameter(), revt::StationRecData::GetParameterError(), revt::Station::GetRecData(), and revt::StationRecData::SetParameter().
Referenced by Run().
|
private |
Definition at line 716 of file RdPolarizationReconstructor.cc.
References CheckSignalAndNoiseRanges(), eAlpha, fErrorCalculationType, fNoiseWindowStartOverride, fNoiseWindowStopOverride, fQuadraticNoiseSubtraction, fSignalWindowStartOverride, fSignalWindowStopOverride, RdPolarizationReconstructor::StokesParameters::GetAnalyticMethodVariance(), utl::Trace< T >::GetBinning(), RdPolarizationReconstructor::StokesParameters::GetNoiseAdditionCovariance(), revt::StationRecData::GetParameter(), RdPolarizationReconstructor::StokesParameters::GetPolarizationAngle(), revt::Station::GetRecData(), utl::Trace< T >::GetSize(), revt::Station::GetStationTimeSeries(), RdPolarizationReconstructor::StokesParameters::GetStokesI(), RdPolarizationReconstructor::StokesParameters::GetStokesQ(), RdPolarizationReconstructor::StokesParameters::GetStokesRatioQdivI(), RdPolarizationReconstructor::StokesParameters::GetStokesRatioUdivI(), RdPolarizationReconstructor::StokesParameters::GetStokesRatioVdivI(), RdPolarizationReconstructor::StokesParameters::GetStokesU(), RdPolarizationReconstructor::StokesParameters::GetStokesV(), ns, OUT, and revt::StationRecData::SetParameter().
Referenced by Run().
|
private |
Definition at line 684 of file RdPolarizationReconstructor.cc.
References ERROR, OUT, and WARNING.
Referenced by CalculateAndFillStokesParameters().
|
overridevirtual |
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 821 of file RdPolarizationReconstructor.cc.
References fwk::VModule::eSuccess, and INFO.
|
private |
Definition at line 376 of file RdPolarizationReconstructor.cc.
References ERROR, fGeometrySource, utl::Vector::GetMag(), evt::Event::GetRecShower(), evt::Event::HasRecShower(), evt::ShowerRecData::HasRRecShower(), evt::Event::HasSimShower(), and evt::ShowerRecData::HasSRecShower().
Referenced by GetRotatedPolarizationTraces().
|
private |
Definition at line 448 of file RdPolarizationReconstructor.cc.
References ERROR, fGeometrySource, evt::Event::GetRecShower(), evt::Event::HasRecShower(), evt::ShowerRecData::HasRRecShower(), evt::Event::HasSimShower(), and evt::ShowerRecData::HasSRecShower().
Referenced by GetRotatedPolarizationTraces().
|
private |
Definition at line 422 of file RdPolarizationReconstructor.cc.
References ERROR, fGeometrySource, evt::Event::GetRecShower(), utl::BasicVector< HepVector >::GetX(), utl::BasicVector< HepVector >::GetY(), evt::Event::HasRecShower(), evt::ShowerRecData::HasRRecShower(), evt::Event::HasSimShower(), and evt::ShowerRecData::HasSRecShower().
|
private |
Definition at line 400 of file RdPolarizationReconstructor.cc.
References ERROR, fGeometrySource, evt::ShowerSRecData::GetBarycenter(), evt::ShowerRRecData::GetCoordinateOrigin(), evt::Event::GetRecShower(), evt::ShowerRecData::GetRRecShower(), evt::ShowerRecData::GetSRecShower(), evt::Event::HasRecShower(), evt::ShowerRecData::HasRRecShower(), evt::Event::HasSimShower(), and evt::ShowerRecData::HasSRecShower().
Referenced by GetRotatedPolarizationTraces().
|
private |
Definition at line 470 of file RdPolarizationReconstructor.cc.
References RdGeoCeLDFFitter::a, RdGeoCeLDFFitter::b, utl::Line::GetAnchor(), and utl::Line::GetDirection().
Referenced by GetRotatedPolarizationTraces().
|
staticinherited |
Definition at line 8 of file VModule.cc.
References fwk::VModule::eBreakLoop, fwk::VModule::eContinueLoop, fwk::VModule::eFailure, and fwk::VModule::eSuccess.
Referenced by fwk::RunController::DoNextInSequence(), fwk::RunController::FinishBranch(), and fwk::RunController::InitBranch().
|
private |
Definition at line 566 of file RdPolarizationReconstructor.cc.
References Angle(), utl::Cross(), fAssumeGroundPlaneIsHorizontalAndFlat, fProjectOntoGroundPlane, GetArrivalDirection(), GetCore(), GetCS(), revt::Station::GetId(), utl::AxialVector::GetMag(), utl::Vector::GetMag(), GetPerpVector(), rdet::Station::GetPosition(), utl::Trace< T >::GetSize(), rdet::RDetector::GetStation(), utl::BasicVector< HepVector >::GetX(), utl::BasicVector< HepVector >::GetY(), utl::BasicVector< HepVector >::GetZ(), utl::kPi, and OUT.
Referenced by Run().
|
inlineinherited |
Definition at line 106 of file VModule.h.
References fwk::VModule::fStopwatch.
|
inlineinherited |
Definition at line 107 of file VModule.h.
References fwk::VModule::fStopwatch.
|
inherited |
Retrieve different sorts of module version info.
Definition at line 26 of file VModule.cc.
Referenced by fwk::CentralConfig::GetConfig(), ThresholdCalculatorKG::ThresholdCalculator::Init(), fdDoubleBumpFinder::FdDoubleBumpFinder::Init(), LaserGeneratorNA::LaserGenerator::Init(), LaserLightSimulatorNA::LaserLightSimulator::Init(), FdElectronicsSimulatorOG::FdElectronicsSimulator::Init(), TelescopeSimulatorKG::TelescopeSimulator::Init(), TelescopeSimulatorKG2::TelescopeSimulator::Init(), SdSimpleSimKG::SdSimpleSim::Init(), ShowerPhotonGeneratorOG::ShowerPhotonGenerator::Init(), and testRunController::testModuleVersionInfo().
|
overridevirtual |
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 482 of file RdPolarizationReconstructor.cc.
References fwk::VModule::eSuccess, fAssumeGroundPlaneIsHorizontalAndFlat, fErrorCalculationType, fGeometrySource, fInfoLevel, fNoiseWindowStartOverride, fNoiseWindowStopOverride, fProjectOntoGroundPlane, fQuadraticNoiseSubtraction, fSignalWindowStartOverride, fSignalWindowStopOverride, utl::Branch::GetChild(), utl::Branch::GetData(), utl::Branch::GetTopBranch(), and INFO.
|
inlineinherited |
Definition at line 95 of file VModule.h.
References fwk::VModule::fStopwatch, and utl::Stopwatch::Reset().
|
private |
|
overridevirtual |
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 505 of file RdPolarizationReconstructor.cc.
References RdGeoCeLDFFitter::c, CalculateAndFillChargeExcessFraction(), CalculateAndFillStokesParameters(), fwk::VModule::eContinueLoop, fwk::VModule::eSuccess, GetRotatedPolarizationTraces(), utl::Trace< T >::GetSize(), evt::Event::HasREvent(), INFO, utl::Trace< T >::PushBack(), revt::REvent::SignalStationsBegin(), revt::REvent::SignalStationsEnd(), and WARNING.
|
inlineinherited |
Definition at line 98 of file VModule.h.
References fwk::VModule::fStopwatch, fwk::VModule::Run(), utl::Stopwatch::Start(), and utl::Stopwatch::Stop().
Referenced by fwk::RunController::DoNextInSequence().
|
private |
Definition at line 176 of file RdPolarizationReconstructor.h.
Referenced by GetRotatedPolarizationTraces(), and Init().
|
private |
Definition at line 178 of file RdPolarizationReconstructor.h.
Referenced by CalculateAndFillStokesParameters(), and Init().
|
private |
Definition at line 177 of file RdPolarizationReconstructor.h.
Referenced by GetArrivalDirection(), GetCore(), GetCoreXY(), GetCS(), and Init().
|
private |
Definition at line 172 of file RdPolarizationReconstructor.h.
Referenced by Init().
|
private |
Definition at line 182 of file RdPolarizationReconstructor.h.
Referenced by CalculateAndFillStokesParameters(), and Init().
|
private |
Definition at line 183 of file RdPolarizationReconstructor.h.
Referenced by CalculateAndFillStokesParameters(), and Init().
|
private |
Definition at line 173 of file RdPolarizationReconstructor.h.
Referenced by GetRotatedPolarizationTraces(), and Init().
|
private |
Definition at line 174 of file RdPolarizationReconstructor.h.
Referenced by CalculateAndFillStokesParameters(), and Init().
|
private |
Definition at line 180 of file RdPolarizationReconstructor.h.
Referenced by CalculateAndFillStokesParameters(), and Init().
|
private |
Definition at line 181 of file RdPolarizationReconstructor.h.
Referenced by CalculateAndFillStokesParameters(), and Init().