![Logo](../../ATLAS-Logo-Square-Blue-RGB.png) |
ATLAS Offline Software
|
Go to the documentation of this file.
5 #ifndef ZDCANALYSIS_ZDCDataAnalyzer_h
6 #define ZDCANALYSIS_ZDCDataAnalyzer_h
86 size_t preSampleIdx, std::string fitFunction,
90 bool forceLG =
false);
100 void enablePreExclusion(
unsigned int maxSamplesExcl,
unsigned int HGADCThresh,
unsigned int LGADCThresh);
103 void enablePostExclusion(
unsigned int maxSamplesExcl,
unsigned int HGADCThresh,
unsigned int LGADCThresh);
206 const std::vector<float>& HGSamplesDelayed,
const std::vector<float>& LGSamplesDelayed);
std::array< std::array< std::unique_ptr< TSpline >, 4 >, 2 > m_T0LGOffsetSplines
std::array< std::array< float, 4 >, 2 > m_calibAmplitude
std::array< std::array< bool, 4 >, 2 > m_dataLoaded
void enableTimeSigCut(bool AND, float sigCut, std::string TF1String, const std::array< std::array< std::vector< double >, 4 >, 2 > &parsHGArr, const std::array< std::array< std::vector< double >, 4 >, 2 > &parsLGArr)
float GetSideCalibBkgdFrac(size_t side) const
unsigned int m_moduleMask
float GetModuleStatus(size_t side, size_t module) const
float GetModuleSumPreSample(size_t side) const
float GetModuleTime(size_t side, size_t module) const
float GetModuleChisq(size_t side, size_t module) const
std::array< std::array< std::unique_ptr< ZDCPulseAnalyzer >, 4 >, 2 > m_moduleAnalyzers
ZDCDataAnalyzer(ZDCMsg::MessageFunctionPtr messageFunc_p, int nSample, float deltaTSample, size_t preSampleIdx, std::string fitFunction, const ZDCModuleIntArray &peak2ndDerivMinSamples, const ZDCModuleFloatArray &peak2ndDerivMinThresholdsHG, const ZDCModuleFloatArray &peak2ndDerivMinThresholdsLG, bool forceLG=false)
std::array< std::array< float, 4 >, 2 > ZDCModuleFloatArray
bool SideFailed(size_t side) const
float GetdelayedBS(size_t side, size_t module) const
std::array< float, 2 > m_moduleSum
std::array< std::array< std::unique_ptr< TSpline >, 4 >, 2 > m_T0HGOffsetSplines
std::array< std::array< int, 4 >, 2 > ZDCModuleIntArray
float GetModuleAmplitude(size_t side, size_t module) const
ZDCMsg::MessageFunctionPtr m_msgFunc_p
float GetCalibModuleSumErr(size_t side) const
void LoadEnergyCalibrations(std::array< std::array< std::unique_ptr< TSpline >, 4 >, 2 > &calibSplines)
float GetModuleCalibTime(size_t side, size_t module) const
void set2ndDerivStep(size_t step)
void SetCutValues(const ZDCModuleFloatArray &chisqDivAmpCutHG, const ZDCModuleFloatArray &chisqDivAmpCutLG, const ZDCModuleFloatArray &deltaT0MinHG, const ZDCModuleFloatArray &deltaT0MaxHG, const ZDCModuleFloatArray &deltaT0MinLG, const ZDCModuleFloatArray &deltaT0MaxLG)
unsigned int GetModuleMask() const
std::array< std::array< float, 4 >, 2 > m_calibTime
float GetSideBkgdFrac(size_t side) const
def save(self, fileName="./columbo.out")
std::array< float, 2 > m_moduleSumBkgdFrac
void LoadAndAnalyzeData(size_t side, size_t module, const std::vector< float > &HGSamples, const std::vector< float > &LGSamples)
std::array< bool, 2 > m_fail
std::array< float, 2 > m_calibModuleSumErrSq
void SetNoiseSigmas(const ZDCModuleFloatArray &noiseSigmasHG, const ZDCModuleFloatArray &noiseSigmasLG)
float GetModuleSumErr(size_t side) const
std::array< float, 2 > m_averageTime
float GetModuleSum(size_t side) const
ZDCModuleFloatArray m_pedestals
std::string m_fitFunction
float GetModuleCalibAmplitude(size_t side, size_t module) const
void SetADCOverUnderflowValues(const ZDCModuleFloatArray &HGOverflowADC, const ZDCModuleFloatArray &HGUnderflowADC, const ZDCModuleFloatArray &LGOverflowADC)
std::array< float, 2 > m_moduleSumPreSample
void LoadT0Calibrations(std::array< std::array< std::unique_ptr< TSpline >, 4 >, 2 > &T0HGOffsetSplines, std::array< std::array< std::unique_ptr< TSpline >, 4 >, 2 > &T0LGOffsetSplines)
std::array< float, 2 > m_calibModuleSum
void SetFitMinMaxAmpValues(const ZDCModuleFloatArray &minAmpHG, const ZDCModuleFloatArray &minAmpLG, const ZDCModuleFloatArray &maxAmpHG, const ZDCModuleFloatArray &maxAmpLG)
void SetTauT0Values(const ZDCModuleBoolArray &fxiTau1, const ZDCModuleBoolArray &fxiTau2, const ZDCModuleFloatArray &tau1, const ZDCModuleFloatArray &tau2, const ZDCModuleFloatArray &t0HG, const ZDCModuleFloatArray &t0LG)
void enableDelayed(float deltaT, const ZDCModuleFloatArray &undelayedDelayedPedestalDiff)
std::array< float, 2 > m_calibModSumBkgdFrac
void enablePostExclusion(unsigned int maxSamplesExcl, const ZDCModuleIntArray &HGADCThresh, const ZDCModuleIntArray &LGADCThresh)
const ZDCPulseAnalyzer * GetPulseAnalyzer(size_t side, size_t module) const
std::array< float, 2 > m_moduleSumErrSq
std::shared_ptr< MessageFunction > MessageFunctionPtr
ZDCModuleFloatArray m_currentT0OffsetsHG
void enablePreExclusion(unsigned int maxSamplesExcl, const ZDCModuleIntArray &HGADCThresh, const ZDCModuleIntArray &LGADCThresh)
float GetCalibModuleSum(size_t side) const
void SetNonlinCorrParams(float refADC, float refScale, const std::array< std::array< std::vector< float >, 4 >, 2 > &HGNonlinCorrParams, const std::array< std::array< std::vector< float >, 4 >, 2 > &LHGNonlinCorrParams)
std::array< std::array< unsigned int, 4 >, 2 > m_moduleStatus
bool disableModule(size_t side, size_t module)
std::array< std::array< bool, 4 >, 2 > ZDCModuleBoolArray
ZDCModuleFloatArray m_currentECalibCoeff
ZDCModuleFloatArray m_currentT0OffsetsLG
std::array< std::array< std::unique_ptr< TSpline >, 4 >, 2 > m_LBDepEcalibSplines
void SetFitTimeMax(float tmax)
void enableRepass(const ZDCModuleFloatArray &peak2ndDerivMinRepassHG, const ZDCModuleFloatArray &peak2ndDerivMinRepassLG)
ZDCModuleBoolArray m_moduleDisabled
ATLAS_NO_CHECK_FILE_THREAD_SAFETY
void SetPeak2ndDerivMinTolerances(size_t tolerance)
ZDCModuleFloatArray m_HGGains
bool ModuleDisabled(unsigned int side, unsigned int module) const
Define macros for attributes used to control the static checker.
void SetSaveFitFunc(bool save)
void SetGainFactorsHGLG(float gainFactorHG, float gainFactorLG)
void SetTimingCorrParams(ZDCPulseAnalyzer::TimingCorrMode mode, float refADC, float refScale, const std::array< std::array< std::vector< float >, 4 >, 2 > &HGParamArr, const std::array< std::array< std::vector< float >, 4 >, 2 > &LGParamArr)
void StartEvent(int lumiBlock)
float GetAverageTime(size_t side) const
std::array< std::array< float, 4 >, 2 > m_moduleAmpFractionLG
std::array< std::array< int, 4 >, 2 > m_delayedOrder
void SetModuleAmpFractionLG(const ZDCDataAnalyzer::ZDCModuleFloatArray &moduleAmpFractionLG)