describe me More...
#include <SdSignalRecovery.h>
Classes | |
struct | NonLinearity |
struct | SaturationFitInterface |
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::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 () |
Initialize: invoked at beginning of run (NOT beginning of event) More... | |
void | InitTiming () |
fwk::VModule::ResultFlag | Run (evt::Event &event) |
Run: invoked once per event. More... | |
ResultFlag | RunWithTiming (evt::Event &event) |
SignalRecovery () | |
SignalRecovery (sevt::Station &station, const double distance, const double alt, const int satflag) | |
~SignalRecovery () | |
Static Public Member Functions | |
static std::string | GetResultFlagByName (const ResultFlag flag) |
Protected Types | |
enum | InfoLevel { eInfoNone = 0, eInfoFinal = 1, eInfoIntermediate = 2, eInfoDebug = 3 } |
Protected Attributes | |
int | fInfoLevel = 0 |
Private Member Functions | |
double | ComputeAmplitude (SaturationFitInterface &sfi) const |
bool | RecoverSignal () |
bool | RecoverSignal (const sevt::PMT &pmt, SaturationFitInterface &sfi, const int saturationValue) |
double | RecoverSignalUndershoot (const utl::TraceI &dynodeTrace, const utl::TraceI &anodeTrace, const int saturationValue) const |
REGISTER_MODULE ("SdSignalRecoveryKLT", SignalRecovery) | |
double | SaturationFitDriver (SaturationFitInterface &sfi) const |
bool | SetNonLinearityCurve (const NonLinearity &nL) |
Static Private Member Functions | |
static void | SaturationFitFnc (int &nPar, double *const grad, double &value, double *par, const int flag) |
Private Attributes | |
NonLinearity | fNonLinearity |
NonLinearity | fNonLinearityMinusSigma |
NonLinearity | fNonLinearityPlusSigma |
int | fRecoverUnsaturatedSignal |
Static Private Attributes | |
static double | fgVEMTrace [768] |
|
protectedinherited |
|
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 |
|
inline |
Definition at line 33 of file SdSignalRecovery.h.
|
inline |
Definition at line 34 of file SdSignalRecovery.h.
SdSignalRecoveryKLT::SignalRecovery::SignalRecovery | ( | sevt::Station & | station, |
const double | distance, | ||
const double | alt, | ||
const int | satflag | ||
) |
|
private |
Definition at line 586 of file SdSignalRecovery.cc.
References SdSignalRecoveryKLT::AmplitudeFunction(), ERROR, SdSignalRecoveryKLT::SignalRecovery::SaturationFitInterface::fAmpl, SdSignalRecoveryKLT::SignalRecovery::SaturationFitInterface::fFirstBin, SdSignalRecoveryKLT::SignalRecovery::SaturationFitInterface::fGainRatio, SdSignalRecoveryKLT::SignalRecovery::SaturationFitInterface::fSigma, SdSignalRecoveryKLT::SignalRecovery::SaturationFitInterface::fUndershootValue, SdSignalRecoveryKLT::SignalRecovery::SaturationFitInterface::fVEMPeak, SdSignalRecoveryKLT::SignalRecovery::SaturationFitInterface::fx0, utl::InverseMoyal<+1 >(), utl::InverseMoyal<-1 >(), SdSignalRecoveryKLT::kAlphaSat, SdSignalRecoveryKLT::kBetaSat, SdSignalRecoveryKLT::kMaxMoyal, SdSignalRecoveryKLT::kSignalLimits, and SdSignalRecoveryKLT::kTraceLength.
|
inlinevirtual |
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 38 of file SdSignalRecovery.h.
References fwk::VModule::eSuccess.
|
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().
|
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().
|
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 124 of file SdSignalRecovery.cc.
References io::eSuccess, utl::Branch::GetChild(), utl::Branch::GetData(), and utl::Branch::GetTopBranch().
|
inlineinherited |
Definition at line 95 of file VModule.h.
References fwk::VModule::fStopwatch, and utl::Stopwatch::Reset().
|
private |
|
private |
Definition at line 278 of file SdSignalRecovery.cc.
References utl::Trace< T >::Begin(), sdet::PMTConstants::eHighGain, sdet::PMTConstants::eLowGain, utl::Trace< T >::End(), SdSignalRecoveryKLT::ErrorParametrization(), SdSignalRecoveryKLT::SignalRecovery::SaturationFitInterface::fAmpl, SdSignalRecoveryKLT::SignalRecovery::SaturationFitInterface::fChi2, SdSignalRecoveryKLT::SignalRecovery::SaturationFitInterface::fFirstBin, SdSignalRecoveryKLT::SignalRecovery::SaturationFitInterface::fFirstSatBin, SdSignalRecoveryKLT::SignalRecovery::SaturationFitInterface::fGainRatio, SdSignalRecoveryKLT::SignalRecovery::SaturationFitInterface::fLastSatBin, SdSignalRecoveryKLT::SignalRecovery::SaturationFitInterface::fMaximum, SdSignalRecoveryKLT::SignalRecovery::SaturationFitInterface::fNdof, SdSignalRecoveryKLT::SignalRecovery::SaturationFitInterface::fSigma, SdSignalRecoveryKLT::SignalRecovery::SaturationFitInterface::fSignal, SdSignalRecoveryKLT::SignalRecovery::SaturationFitInterface::fSignalErr, SdSignalRecoveryKLT::SignalRecovery::SaturationFitInterface::fSignalErrNL, SdSignalRecoveryKLT::SignalRecovery::SaturationFitInterface::fUndershootValue, SdSignalRecoveryKLT::SignalRecovery::SaturationFitInterface::fVEMCharge, SdSignalRecoveryKLT::SignalRecovery::SaturationFitInterface::fVEMPeak, SdSignalRecoveryKLT::SignalRecovery::SaturationFitInterface::fx0, sevt::PMTRecData::GetFADCSaturatedBins(), sevt::PMT::GetFADCTrace(), sevt::PMTRecData::GetGainRatio(), sevt::PMT::GetRecData(), sevt::PMTRecData::GetVEMCharge(), sevt::PMTRecData::GetVEMPeak(), sevt::PMTRecData::GetVEMTrace(), SdSignalRecoveryKLT::kMinCounts, SdSignalRecoveryKLT::kTraceLength, max, utl::Moyal(), SdSignalRecoveryKLT::NonLinearityUncertainty(), and WARNING.
|
private |
Definition at line 641 of file SdSignalRecovery.cc.
References utl::abs(), ERROR, SdSignalRecoveryKLT::kTraceLength, std::pow(), and WARNING.
|
private |
|
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 155 of file SdSignalRecovery.cc.
References sdet::PMTConstants::eLowGain, io::eSuccess, SdSignalRecoveryKLT::SignalRecovery::SaturationFitInterface::fSignal, SdSignalRecoveryKLT::SignalRecovery::SaturationFitInterface::fSignalErr, SdSignalRecoveryKLT::SignalRecovery::SaturationFitInterface::fSignalErrNL, sevt::StationRecData::GetTotalSignal(), evt::Event::HasSEvent(), INFO, sevt::StationRecData::SetRecoveredSignal(), utl::Sqr(), and sqrt().
|
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 381 of file SdSignalRecovery.cc.
References SdSignalRecoveryKLT::SignalRecovery::SaturationFitInterface::fAmpl, SdSignalRecoveryKLT::SignalRecovery::SaturationFitInterface::fAmplErr, SdSignalRecoveryKLT::SignalRecovery::SaturationFitInterface::fChi2, SdSignalRecoveryKLT::SignalRecovery::SaturationFitInterface::fFirstBin, SdSignalRecoveryKLT::SignalRecovery::SaturationFitInterface::fFirstSatBin, SdSignalRecoveryKLT::SignalRecovery::SaturationFitInterface::fGainRatio, SdSignalRecoveryKLT::SignalRecovery::SaturationFitInterface::fLastSatBin, SdSignalRecoveryKLT::SignalRecovery::SaturationFitInterface::fMaximum, SdSignalRecoveryKLT::SignalRecovery::SaturationFitInterface::fSigma, SdSignalRecoveryKLT::SignalRecovery::SaturationFitInterface::fSigmaErr, SdSignalRecoveryKLT::SignalRecovery::SaturationFitInterface::fUndershootValue, SdSignalRecoveryKLT::SignalRecovery::SaturationFitInterface::fVEMCharge, SdSignalRecoveryKLT::SignalRecovery::SaturationFitInterface::fVEMPeak, SdSignalRecoveryKLT::SignalRecovery::SaturationFitInterface::fx0, SdSignalRecoveryKLT::SignalRecovery::SaturationFitInterface::fx0Err, SdSignalRecoveryKLT::kTraceLength, SaturationFitFnc(), SdSignalRecoveryKLT::SigmaParametrization(), WARNING, and SdSignalRecoveryKLT::X0Parametrization().
|
staticprivate |
Definition at line 460 of file SdSignalRecovery.cc.
References SdSignalRecoveryKLT::AmplitudeFunction(), utl::InverseMoyal<+1 >(), utl::InverseMoyal<-1 >(), SdSignalRecoveryKLT::kAlphaSat, SdSignalRecoveryKLT::kBetaSat, SdSignalRecoveryKLT::kMinCounts, SdSignalRecoveryKLT::kSignalLimits, SdSignalRecoveryKLT::kTraceLength, utl::Moyal(), and utl::Sqr().
Referenced by SaturationFitDriver().
|
private |
Definition at line 106 of file SdSignalRecovery.cc.
References SdSignalRecoveryKLT::SignalRecovery::NonLinearity::fAlpha, SdSignalRecoveryKLT::SignalRecovery::NonLinearity::fBeta, SdSignalRecoveryKLT::SignalRecovery::NonLinearity::fSignalLimits, SdSignalRecoveryKLT::kAlphaSat, SdSignalRecoveryKLT::kBetaSat, and SdSignalRecoveryKLT::kSignalLimits.
|
staticprivate |
Definition at line 93 of file SdSignalRecovery.h.
|
protectedinherited |
Definition at line 123 of file VModule.h.
Referenced by RdChannelASCIINoiseImporterRD::RdChannelASCIINoiseImporterRD::Init(), Rd2dLDFFitter::Rd2dLDFFitter::Init(), RdChannelNoiseImporter_AERA::RdChannelNoiseImporter_AERA::Init(), and Rd2dLDFFitter::Rd2dLDFFitter::Run().
|
private |
Definition at line 96 of file SdSignalRecovery.h.
|
private |
Definition at line 98 of file SdSignalRecovery.h.
|
private |
Definition at line 97 of file SdSignalRecovery.h.
|
private |
Definition at line 94 of file SdSignalRecovery.h.