#include <PulseShapeFitOOTPileupCorrection.h>
Public Member Functions | |
void | apply (const CaloSamples &cs, const std::vector< int > &capidvec, const HcalCalibrations &calibs, double &reconstructedEnergy, float &reconstructedTime, bool &useTriple, float &chi2) const |
void | phase1Apply (const HBHEChannelInfo &channelData, float &reconstructedEnergy, float &reconstructedTime, bool &useTriple, float &chi2) const |
PulseShapeFitOOTPileupCorrection () | |
void | resetPulseShapeTemplate (const HcalPulseShapes::Shape &ps) |
void | setChi2Term (bool isHPD) |
void | setPulseShapeTemplate (const HcalPulseShapes::Shape &ps, bool isHPD) |
void | setPUParams (bool iPedestalConstraint, bool iTimeConstraint, bool iAddPulseJitter, bool iApplyTimeSlew, double iTS4Min, const std::vector< double > &iTS4Max, double iPulseJitter, double iTimeMean, double iTimeSigHPD, double iTimeSigSiPM, double iPedMean, double iPedSigHPD, double iPedSigSiPM, double iNoiseHPD, double iNoiseSiPM, double iTMin, double iTMax, const std::vector< double > &its4Chi2, HcalTimeSlew::BiasSetting slewFlavor, int iFitTimes, bool iDCConstraint=false) |
~PulseShapeFitOOTPileupCorrection () | |
Public Attributes | |
const HcalPulseShapes::Shape * | currentPulseShape_ =nullptr |
Private Member Functions | |
void | fit (int iFit, float &timevalfit, float &chargevalfit, float &pedvalfit, float &chi2, bool &fitStatus, double &iTSMax, const double &iTSTOTen, double *iEnArr, int(&iBX)[3]) const |
int | pulseShapeFit (const double *energyArr, const double *pedenArr, const double *chargeArr, const double *pedArr, const double *gainArr, const double tsTOTen, std::vector< float > &fitParsVec, const double *ADCnoise) const |
Private Attributes | |
bool | addPulseJitter_ |
bool | applyTimeSlew_ |
double | chargeThreshold_ |
int | cntsetPulseShape |
bool | dcConstraint_ |
std::unique_ptr< ROOT::Math::Functor > | dpfunctor_ |
int | fitTimes_ |
PSFitter::HybridMinimizer * | hybridfitter |
std::array< double, HcalConst::maxSamples > | iniTimesArr |
bool | isCurrentChannelHPD_ |
double | noise_ |
double | noiseHPD_ |
double | noiseSiPM_ |
bool | pedestalConstraint_ |
double | pedMean_ |
double | pedSig_ |
double | pedSigHPD_ |
double | pedSigSiPM_ |
std::unique_ptr< FitterFuncs::PulseShapeFunctor > | psfPtr_ |
double | pulseJitter_ |
HcalTimeSlew::BiasSetting | slewFlavor_ |
std::unique_ptr< ROOT::Math::Functor > | spfunctor_ |
bool | timeConstraint_ |
double | timeMean_ |
double | timeSig_ |
double | timeSigHPD_ |
double | timeSigSiPM_ |
std::unique_ptr< ROOT::Math::Functor > | tpfunctor_ |
double | ts4Chi2_ |
double | ts4Max_ |
double | ts4Min_ |
int | TSMax_ |
int | TSMin_ |
bool | unConstrainedFit_ |
std::vector< double > | vts4Chi2_ |
std::vector< double > | vts4Max_ |
Definition at line 91 of file PulseShapeFitOOTPileupCorrection.h.
PulseShapeFitOOTPileupCorrection::PulseShapeFitOOTPileupCorrection | ( | ) |
Definition at line 210 of file PulseShapeFitOOTPileupCorrection.cc.
References hybridfitter, iniTimesArr, and PSFitter::HybridMinimizer::kMigrad.
PulseShapeFitOOTPileupCorrection::~PulseShapeFitOOTPileupCorrection | ( | ) |
Definition at line 220 of file PulseShapeFitOOTPileupCorrection.cc.
References hybridfitter.
void PulseShapeFitOOTPileupCorrection::apply | ( | const CaloSamples & | cs, |
const std::vector< int > & | capidvec, | ||
const HcalCalibrations & | calibs, | ||
double & | reconstructedEnergy, | ||
float & | reconstructedTime, | ||
bool & | useTriple, | ||
float & | chi2 | ||
) | const |
Definition at line 299 of file PulseShapeFitOOTPileupCorrection.cc.
References ALCARECOTkAlJpsiMuMu_cff::charge, muonCSCDigis_cfi::gain, HcalConst::maxSamples, noise_, HcalCalibrations::pedestal(), psfPtr_, pulseShapeFit(), HcalCalibrations::respcorrgain(), CaloSamples::size(), mathSSE::sqrt(), ts4Chi2_, ts4Max_, ts4Min_, vts4Chi2_, and vts4Max_.
Referenced by heavyIonTools.ConfigureHeavyIons::__call__(), editorTools.UserCodeTool::__call__(), HiCoreTools.RestrictInputToAOD::__call__(), coreTools.RunOnData::__call__(), trackTools.MakeAODTrackCandidates::__call__(), runJetUncertainties.RunJetUncertainties::__call__(), metTools.AddMETCollection::__call__(), heavyIonTools.ProductionDefaults::__call__(), editorTools.ChangeSource::__call__(), HiCoreTools.RemoveMCMatching::__call__(), coreTools.RemoveMCMatching::__call__(), trackTools.MakePATTrackCandidates::__call__(), trigTools.SwitchOnTrigger::__call__(), runMETCorrectionsAndUncertainties.RunMETCorrectionsAndUncertainties::__call__(), heavyIonTools.SelectionDefaults::__call__(), HiCoreTools.RemoveAllPATObjectsBut::__call__(), heavyIonTools.DisbaleMonteCarloDeps::__call__(), HiCoreTools.RemoveSpecificPATObjects::__call__(), trigTools.SwitchOnTriggerStandAlone::__call__(), trackTools.MakeTrackCandidates::__call__(), tauTools.AddTauCollection::__call__(), trigTools.SwitchOnTriggerMatching::__call__(), HiCoreTools.RemoveCleaning::__call__(), HiCoreTools.AddCleaning::__call__(), trigTools.SwitchOnTriggerMatchingStandAlone::__call__(), trigTools.SwitchOnTriggerMatchEmbedding::__call__(), jetTools.AddJetCollection::__call__(), jetTools.SwitchJetCollection::__call__(), jetTools.UpdateJetCollection::__call__(), jetTools.AddJetID::__call__(), jetTools.SetTagInfos::__call__(), HcalSimpleRecAlgoImpl::reco(), and HcalSimpleRecAlgoImpl::recoHBHE().
|
private |
Definition at line 437 of file PulseShapeFitOOTPileupCorrection.cc.
References funct::abs(), PSFitter::HybridMinimizer::Clear(), dpfunctor_, fitTimes_, hybridfitter, mps_fire::i, iniTimesArr, createfilelist::int, PSFitter::HybridMinimizer::kMigrad, PSFitter::HybridMinimizer::kScan, PSFitter::HybridMinimizer::Minimize(), PSFitter::HybridMinimizer::MinValue(), gen::n, pedMean_, pedSig_, mps_update::results, PSFitter::HybridMinimizer::SetFixedVariable(), PSFitter::HybridMinimizer::SetFunction(), PSFitter::HybridMinimizer::SetLimitedVariable(), PSFitter::HybridMinimizer::SetMinimizerType(), spfunctor_, timeMean_, timeSig_, tpfunctor_, TSMax_, TSMin_, varNames, and PSFitter::HybridMinimizer::X().
Referenced by trackingPlots.Iteration::modules(), and pulseShapeFit().
void PulseShapeFitOOTPileupCorrection::phase1Apply | ( | const HBHEChannelInfo & | channelData, |
float & | reconstructedEnergy, | ||
float & | reconstructedTime, | ||
bool & | useTriple, | ||
float & | chi2 | ||
) | const |
Definition at line 514 of file PulseShapeFitOOTPileupCorrection.cc.
References ALCARECOTkAlJpsiMuMu_cff::charge, HBHEChannelInfo::darkCurrent(), dcConstraint_, HBHEChannelInfo::fcByPE(), muonCSCDigis_cfi::gain, HBHEChannelInfo::hasTimeInfo(), HBHEChannelInfo::lambda(), HcalConst::maxSamples, HBHEChannelInfo::nSamples(), psfPtr_, pulseShapeFit(), mathSSE::sqrt(), ts4Chi2_, ts4Max_, ts4Min_, HBHEChannelInfo::tsDFcPerADC(), HBHEChannelInfo::tsGain(), HBHEChannelInfo::tsPedestal(), HBHEChannelInfo::tsPedestalWidth(), HBHEChannelInfo::tsRawCharge(), vts4Chi2_, and vts4Max_.
Referenced by SimpleHBHEPhase1Algo::reconstruct().
|
private |
Definition at line 373 of file PulseShapeFitOOTPileupCorrection.cc.
References funct::abs(), applyTimeSlew_, rpcdqm::BX, vertices_cff::chi2, HcalTimeSlew::delay(), fit(), mps_fire::i, SiStripPI::max, HcalConst::maxSamples, psfPtr_, slewFlavor_, mathSSE::sqrt(), ts4Chi2_, and ts4Max_.
Referenced by apply(), and phase1Apply().
void PulseShapeFitOOTPileupCorrection::resetPulseShapeTemplate | ( | const HcalPulseShapes::Shape & | ps | ) |
Definition at line 289 of file PulseShapeFitOOTPileupCorrection.cc.
References addPulseJitter_, applyTimeSlew_, cntsetPulseShape, FitterFuncs::PulseShapeFunctor::doublePulseShapeFunc(), dpfunctor_, noise_, pedestalConstraint_, pedMean_, pedSig_, psfPtr_, pulseJitter_, FitterFuncs::PulseShapeFunctor::singlePulseShapeFunc(), spfunctor_, timeConstraint_, timeMean_, timeSig_, tpfunctor_, and FitterFuncs::PulseShapeFunctor::triplePulseShapeFunc().
Referenced by setPulseShapeTemplate().
void PulseShapeFitOOTPileupCorrection::setChi2Term | ( | bool | isHPD | ) |
Definition at line 224 of file PulseShapeFitOOTPileupCorrection.cc.
References noise_, noiseHPD_, noiseSiPM_, pedSig_, pedSigHPD_, pedSigSiPM_, timeSig_, timeSigHPD_, and timeSigSiPM_.
Referenced by setPulseShapeTemplate().
void PulseShapeFitOOTPileupCorrection::setPulseShapeTemplate | ( | const HcalPulseShapes::Shape & | ps, |
bool | isHPD | ||
) |
Definition at line 277 of file PulseShapeFitOOTPileupCorrection.cc.
References currentPulseShape_, isCurrentChannelHPD_, resetPulseShapeTemplate(), and setChi2Term().
void PulseShapeFitOOTPileupCorrection::setPUParams | ( | bool | iPedestalConstraint, |
bool | iTimeConstraint, | ||
bool | iAddPulseJitter, | ||
bool | iApplyTimeSlew, | ||
double | iTS4Min, | ||
const std::vector< double > & | iTS4Max, | ||
double | iPulseJitter, | ||
double | iTimeMean, | ||
double | iTimeSigHPD, | ||
double | iTimeSigSiPM, | ||
double | iPedMean, | ||
double | iPedSigHPD, | ||
double | iPedSigSiPM, | ||
double | iNoiseHPD, | ||
double | iNoiseSiPM, | ||
double | iTMin, | ||
double | iTMax, | ||
const std::vector< double > & | its4Chi2, | ||
HcalTimeSlew::BiasSetting | slewFlavor, | ||
int | iFitTimes, | ||
bool | iDCConstraint = false |
||
) |
Definition at line 239 of file PulseShapeFitOOTPileupCorrection.cc.
References addPulseJitter_, applyTimeSlew_, dcConstraint_, fitTimes_, noiseHPD_, noiseSiPM_, pedestalConstraint_, pedMean_, pedSigHPD_, pedSigSiPM_, pulseJitter_, slewFlavor_, timeConstraint_, timeMean_, timeSigHPD_, timeSigSiPM_, ts4Min_, TSMax_, TSMin_, vts4Chi2_, and vts4Max_.
|
private |
Definition at line 148 of file PulseShapeFitOOTPileupCorrection.h.
Referenced by resetPulseShapeTemplate(), and setPUParams().
|
private |
Definition at line 150 of file PulseShapeFitOOTPileupCorrection.h.
Referenced by pulseShapeFit(), resetPulseShapeTemplate(), and setPUParams().
|
private |
Definition at line 135 of file PulseShapeFitOOTPileupCorrection.h.
|
private |
Definition at line 133 of file PulseShapeFitOOTPileupCorrection.h.
Referenced by resetPulseShapeTemplate().
const HcalPulseShapes::Shape* PulseShapeFitOOTPileupCorrection::currentPulseShape_ =nullptr |
Definition at line 120 of file PulseShapeFitOOTPileupCorrection.h.
Referenced by setPulseShapeTemplate().
|
private |
Definition at line 167 of file PulseShapeFitOOTPileupCorrection.h.
Referenced by phase1Apply(), and setPUParams().
|
private |
Definition at line 140 of file PulseShapeFitOOTPileupCorrection.h.
Referenced by fit(), and resetPulseShapeTemplate().
|
private |
Definition at line 136 of file PulseShapeFitOOTPileupCorrection.h.
Referenced by fit(), and setPUParams().
|
private |
Definition at line 132 of file PulseShapeFitOOTPileupCorrection.h.
Referenced by fit(), PulseShapeFitOOTPileupCorrection(), and ~PulseShapeFitOOTPileupCorrection().
|
private |
Definition at line 134 of file PulseShapeFitOOTPileupCorrection.h.
Referenced by fit(), and PulseShapeFitOOTPileupCorrection().
|
private |
Definition at line 169 of file PulseShapeFitOOTPileupCorrection.h.
Referenced by setPulseShapeTemplate().
|
private |
Definition at line 163 of file PulseShapeFitOOTPileupCorrection.h.
Referenced by apply(), resetPulseShapeTemplate(), and setChi2Term().
|
private |
Definition at line 164 of file PulseShapeFitOOTPileupCorrection.h.
Referenced by setChi2Term(), and setPUParams().
|
private |
Definition at line 165 of file PulseShapeFitOOTPileupCorrection.h.
Referenced by setChi2Term(), and setPUParams().
|
private |
Definition at line 146 of file PulseShapeFitOOTPileupCorrection.h.
Referenced by resetPulseShapeTemplate(), and setPUParams().
|
private |
Definition at line 159 of file PulseShapeFitOOTPileupCorrection.h.
Referenced by fit(), resetPulseShapeTemplate(), and setPUParams().
|
private |
Definition at line 160 of file PulseShapeFitOOTPileupCorrection.h.
Referenced by fit(), resetPulseShapeTemplate(), and setChi2Term().
|
private |
Definition at line 161 of file PulseShapeFitOOTPileupCorrection.h.
Referenced by setChi2Term(), and setPUParams().
|
private |
Definition at line 162 of file PulseShapeFitOOTPileupCorrection.h.
Referenced by setChi2Term(), and setPUParams().
|
private |
Definition at line 138 of file PulseShapeFitOOTPileupCorrection.h.
Referenced by apply(), phase1Apply(), pulseShapeFit(), and resetPulseShapeTemplate().
|
private |
Definition at line 154 of file PulseShapeFitOOTPileupCorrection.h.
Referenced by resetPulseShapeTemplate(), and setPUParams().
|
private |
Definition at line 166 of file PulseShapeFitOOTPileupCorrection.h.
Referenced by pulseShapeFit(), and setPUParams().
|
private |
Definition at line 139 of file PulseShapeFitOOTPileupCorrection.h.
Referenced by fit(), and resetPulseShapeTemplate().
|
private |
Definition at line 147 of file PulseShapeFitOOTPileupCorrection.h.
Referenced by resetPulseShapeTemplate(), and setPUParams().
|
private |
Definition at line 155 of file PulseShapeFitOOTPileupCorrection.h.
Referenced by fit(), resetPulseShapeTemplate(), and setPUParams().
|
private |
Definition at line 156 of file PulseShapeFitOOTPileupCorrection.h.
Referenced by fit(), resetPulseShapeTemplate(), and setChi2Term().
|
private |
Definition at line 157 of file PulseShapeFitOOTPileupCorrection.h.
Referenced by setChi2Term(), and setPUParams().
|
private |
Definition at line 158 of file PulseShapeFitOOTPileupCorrection.h.
Referenced by setChi2Term(), and setPUParams().
|
private |
Definition at line 141 of file PulseShapeFitOOTPileupCorrection.h.
Referenced by fit(), and resetPulseShapeTemplate().
|
mutableprivate |
Definition at line 144 of file PulseShapeFitOOTPileupCorrection.h.
Referenced by apply(), phase1Apply(), and pulseShapeFit().
|
mutableprivate |
Definition at line 152 of file PulseShapeFitOOTPileupCorrection.h.
Referenced by apply(), phase1Apply(), and pulseShapeFit().
|
private |
Definition at line 151 of file PulseShapeFitOOTPileupCorrection.h.
Referenced by apply(), phase1Apply(), and setPUParams().
|
private |
Definition at line 143 of file PulseShapeFitOOTPileupCorrection.h.
Referenced by fit(), and setPUParams().
|
private |
Definition at line 142 of file PulseShapeFitOOTPileupCorrection.h.
Referenced by fit(), and setPUParams().
|
private |
Definition at line 149 of file PulseShapeFitOOTPileupCorrection.h.
|
private |
Definition at line 145 of file PulseShapeFitOOTPileupCorrection.h.
Referenced by apply(), phase1Apply(), and setPUParams().
|
private |
Definition at line 153 of file PulseShapeFitOOTPileupCorrection.h.
Referenced by apply(), phase1Apply(), and setPUParams().