#include <PulseShapeFunctor.h>
Public Member Functions | |
double | doublePulseShapeFunc (const double *x) |
void | EvalPulse (const double *pars) |
double | EvalPulseM2 (const double *pars, const unsigned nPar) |
int | getcntNANinfit () |
void | getPulseShape (std::array< double, HcalConst::maxSamples > &fillPulseShape) |
double | getSiPMDarkCurrent (double darkCurrent, double fcByPE, double lambda) |
PulseShapeFunctor (const HcalPulseShapes::Shape &pulse, bool iPedestalConstraint, bool iTimeConstraint, bool iAddPulseJitter, double iPulseJitter, double iTimeMean, double iPedMean, unsigned int nSamplesToFit) | |
void | setDefaultcntNANinfit () |
void | setinvertpedSig2 (double x) |
void | setinverttimeSig2 (double x) |
void | setpsFiterry (double *erry) |
void | setpsFiterry2 (double *erry2) |
void | setpsFitslew (double *slew) |
void | setpsFitx (double *x) |
void | setpsFity (double *y) |
double | singlePulseShapeFunc (const double *x) |
void | singlePulseShapeFuncMahi (const double *x) |
double | triplePulseShapeFunc (const double *x) |
~PulseShapeFunctor () | |
Private Member Functions | |
void | funcShape (std::array< double, HcalConst::maxSamples > &ntmpbin, const double pulseTime, const double pulseHeight, const double slew) |
Private Attributes | |
std::vector< float > | acc25nsVec |
std::vector< float > | accVarLenIdxMinusOneVec |
std::vector< float > | accVarLenIdxZEROVec |
bool | addPulseJitter_ |
int | cntNANinfit |
std::vector< float > | diff25nsItvlVec |
std::vector< float > | diffVarItvlIdxMinusOneVec |
std::vector< float > | diffVarItvlIdxZEROVec |
double | invertpedSig2_ |
double | inverttimeSig2_ |
unsigned | nSamplesToFit_ |
bool | pedestalConstraint_ |
double | pedMean_ |
double | psFit_erry [HcalConst::maxSamples] |
double | psFit_erry2 [HcalConst::maxSamples] |
double | psFit_slew [HcalConst::maxSamples] |
double | psFit_x [HcalConst::maxSamples] |
double | psFit_y [HcalConst::maxSamples] |
std::array< float, HcalConst::maxPSshapeBin > | pulse_hist |
std::array< double, HcalConst::maxSamples > | pulse_shape_ |
std::array< double, HcalConst::maxSamples > | pulse_shape_sum_ |
double | pulseJitter_ |
bool | timeConstraint_ |
double | timeMean_ |
double | timeShift_ |
double | timeSig_ |
bool | unConstrainedFit_ |
Definition at line 19 of file PulseShapeFunctor.h.
FitterFuncs::PulseShapeFunctor::PulseShapeFunctor | ( | const HcalPulseShapes::Shape & | pulse, |
bool | iPedestalConstraint, | ||
bool | iTimeConstraint, | ||
bool | iAddPulseJitter, | ||
double | iPulseJitter, | ||
double | iTimeMean, | ||
double | iPedMean, | ||
unsigned int | nSamplesToFit | ||
) |
Definition at line 10 of file PulseShapeFunctor.cc.
References acc25nsVec, accVarLenIdxMinusOneVec, accVarLenIdxZEROVec, addPulseJitter_, diff25nsItvlVec, diffVarItvlIdxMinusOneVec, diffVarItvlIdxZEROVec, mps_fire::i, HcalConst::maxPSshapeBin, HcalConst::maxSamples, nSamplesToFit_, HcalConst::nsPerBX, pedestalConstraint_, pedMean_, psFit_erry, psFit_erry2, psFit_slew, psFit_x, psFit_y, pulse(), pulse_hist, pulseJitter_, timeConstraint_, timeMean_, and timeShift_.
FitterFuncs::PulseShapeFunctor::~PulseShapeFunctor | ( | ) |
Definition at line 103 of file PulseShapeFunctor.cc.
double FitterFuncs::PulseShapeFunctor::doublePulseShapeFunc | ( | const double * | x | ) |
Definition at line 197 of file PulseShapeFunctor.cc.
References EvalPulseM2().
Referenced by PulseShapeFitOOTPileupCorrection::resetPulseShapeTemplate().
void FitterFuncs::PulseShapeFunctor::EvalPulse | ( | const double * | pars | ) |
Definition at line 106 of file PulseShapeFunctor.cc.
References funcShape(), HcalConst::invertnsPerBx, psFit_slew, pulse_shape_, ntuplemaker::time, timeMean_, and timeShift_.
Referenced by singlePulseShapeFuncMahi().
double FitterFuncs::PulseShapeFunctor::EvalPulseM2 | ( | const double * | pars, |
const unsigned | nPar | ||
) |
Definition at line 116 of file PulseShapeFunctor.cc.
References addPulseJitter_, cntNANinfit, edmIntegrityCheck::d, funcShape(), mps_fire::i, HcalConst::invertnsPerBx, invertpedSig2_, inverttimeSig2_, edm::isNotFinite(), nSamplesToFit_, HcalConst::nsPerBX, muonCSCDigis_cfi::pedestal, pedestalConstraint_, pedMean_, psFit_erry2, psFit_slew, psFit_y, pulse_shape_, pulse_shape_sum_, pulseJitter_, ntuplemaker::time, timeConstraint_, timeMean_, and timeShift_.
Referenced by doublePulseShapeFunc(), singlePulseShapeFunc(), and triplePulseShapeFunc().
|
private |
Definition at line 62 of file PulseShapeFunctor.cc.
References funct::abs(), acc25nsVec, accVarLenIdxMinusOneVec, accVarLenIdxZEROVec, cntNANinfit, constexpr, diff25nsItvlVec, diffVarItvlIdxMinusOneVec, diffVarItvlIdxZEROVec, f, mps_fire::i, HcalConst::iniTimeShift, createfilelist::int, edm::isNotFinite(), HcalConst::maxSamples, and HcalConst::nsPerBX.
Referenced by EvalPulse(), and EvalPulseM2().
|
inline |
Definition at line 30 of file PulseShapeFunctor.h.
|
inline |
Definition at line 46 of file PulseShapeFunctor.h.
double FitterFuncs::PulseShapeFunctor::getSiPMDarkCurrent | ( | double | darkCurrent, |
double | fcByPE, | ||
double | lambda | ||
) |
|
inline |
Definition at line 29 of file PulseShapeFunctor.h.
|
inline |
Definition at line 38 of file PulseShapeFunctor.h.
|
inline |
Definition at line 39 of file PulseShapeFunctor.h.
|
inline |
Definition at line 34 of file PulseShapeFunctor.h.
References mps_fire::i, and HcalConst::maxSamples.
|
inline |
Definition at line 35 of file PulseShapeFunctor.h.
References mps_fire::i, and HcalConst::maxSamples.
|
inline |
Definition at line 36 of file PulseShapeFunctor.h.
References mps_fire::i, and HcalConst::maxSamples.
|
inline |
Definition at line 32 of file PulseShapeFunctor.h.
References mps_fire::i, and HcalConst::maxSamples.
|
inline |
Definition at line 33 of file PulseShapeFunctor.h.
References mps_fire::i, and HcalConst::maxSamples.
double FitterFuncs::PulseShapeFunctor::singlePulseShapeFunc | ( | const double * | x | ) |
Definition at line 193 of file PulseShapeFunctor.cc.
References EvalPulseM2().
Referenced by PulseShapeFitOOTPileupCorrection::resetPulseShapeTemplate().
void FitterFuncs::PulseShapeFunctor::singlePulseShapeFuncMahi | ( | const double * | x | ) |
Definition at line 189 of file PulseShapeFunctor.cc.
References EvalPulse().
double FitterFuncs::PulseShapeFunctor::triplePulseShapeFunc | ( | const double * | x | ) |
Definition at line 201 of file PulseShapeFunctor.cc.
References EvalPulseM2().
Referenced by PulseShapeFitOOTPileupCorrection::resetPulseShapeTemplate().
|
private |
Definition at line 54 of file PulseShapeFunctor.h.
Referenced by funcShape(), and PulseShapeFunctor().
|
private |
Definition at line 56 of file PulseShapeFunctor.h.
Referenced by funcShape(), and PulseShapeFunctor().
|
private |
Definition at line 55 of file PulseShapeFunctor.h.
Referenced by funcShape(), and PulseShapeFunctor().
|
private |
Definition at line 64 of file PulseShapeFunctor.h.
Referenced by EvalPulseM2(), and PulseShapeFunctor().
|
private |
Definition at line 53 of file PulseShapeFunctor.h.
Referenced by EvalPulseM2(), and funcShape().
|
private |
Definition at line 54 of file PulseShapeFunctor.h.
Referenced by funcShape(), and PulseShapeFunctor().
|
private |
Definition at line 56 of file PulseShapeFunctor.h.
Referenced by funcShape(), and PulseShapeFunctor().
|
private |
Definition at line 55 of file PulseShapeFunctor.h.
Referenced by funcShape(), and PulseShapeFunctor().
|
private |
Definition at line 73 of file PulseShapeFunctor.h.
Referenced by EvalPulseM2().
|
private |
Definition at line 72 of file PulseShapeFunctor.h.
Referenced by EvalPulseM2().
|
private |
Definition at line 61 of file PulseShapeFunctor.h.
Referenced by EvalPulseM2(), and PulseShapeFunctor().
|
private |
Definition at line 62 of file PulseShapeFunctor.h.
Referenced by EvalPulseM2(), and PulseShapeFunctor().
|
private |
Definition at line 69 of file PulseShapeFunctor.h.
Referenced by EvalPulseM2(), and PulseShapeFunctor().
|
private |
Definition at line 59 of file PulseShapeFunctor.h.
Referenced by PulseShapeFunctor().
|
private |
Definition at line 59 of file PulseShapeFunctor.h.
Referenced by EvalPulseM2(), and PulseShapeFunctor().
|
private |
Definition at line 59 of file PulseShapeFunctor.h.
Referenced by EvalPulse(), EvalPulseM2(), and PulseShapeFunctor().
|
private |
Definition at line 59 of file PulseShapeFunctor.h.
Referenced by PulseShapeFunctor().
|
private |
Definition at line 59 of file PulseShapeFunctor.h.
Referenced by EvalPulseM2(), and PulseShapeFunctor().
|
private |
Definition at line 51 of file PulseShapeFunctor.h.
Referenced by PulseShapeFunctor().
|
private |
Definition at line 74 of file PulseShapeFunctor.h.
Referenced by EvalPulse(), and EvalPulseM2().
|
private |
Definition at line 75 of file PulseShapeFunctor.h.
Referenced by EvalPulseM2().
|
private |
Definition at line 66 of file PulseShapeFunctor.h.
Referenced by EvalPulseM2(), and PulseShapeFunctor().
|
private |
Definition at line 63 of file PulseShapeFunctor.h.
Referenced by EvalPulseM2(), and PulseShapeFunctor().
|
private |
Definition at line 67 of file PulseShapeFunctor.h.
Referenced by EvalPulse(), EvalPulseM2(), and PulseShapeFunctor().
|
private |
Definition at line 70 of file PulseShapeFunctor.h.
Referenced by EvalPulse(), EvalPulseM2(), and PulseShapeFunctor().
|
private |
Definition at line 68 of file PulseShapeFunctor.h.
|
private |
Definition at line 65 of file PulseShapeFunctor.h.