ATLAS Offline Software
Loading...
Searching...
No Matches
ZDCPreExpFitWrapper Class Referenceabstract

#include <ZDCFitWrapper.h>

Inheritance diagram for ZDCPreExpFitWrapper:
Collaboration diagram for ZDCPreExpFitWrapper:

Public Member Functions

 ZDCPreExpFitWrapper (std::shared_ptr< TF1 > wrapperTF1, float defaultExpTau, bool fixTau)
virtual void SetInitialExpPulse (float expamp)=0
bool fixExpTau () const
float getDefaultExpTau () const
virtual float GetExpAmp () const =0
virtual float GetExpTau () const =0
void Initialize (float initialAmp, float initialT0, float ampMin, float ampMax)
void Initialize (float initialAmp, float initialT0, float ampMin, float ampMax, float fitTmin, float fitTmax, float fitTRef)
bool finalized () const
virtual void Finalize ()
virtual void DoInitialize (float initialAmp, float initialT0, float ampMin, float ampMax)=0
virtual void DoFinalize ()
void SetAmpMinMax (float minAmp, float maxAmp)
void SetT0Range (float t0Min, float t0Max)
virtual void ConstrainFit ()=0
virtual void UnconstrainFit ()=0
virtual float GetAmplitude () const =0
virtual float GetAmpError () const =0
virtual float GetTime () const =0
virtual float GetTau1 () const =0
virtual float GetTau2 () const =0
float GetMinAmp () const
float GetMaxAmp () const
float GetTMin () const
float GetTMax () const
float GetT0Min () const
float GetT0Max () const
float GetTMinAdjust () const
virtual float GetBkgdMaxFraction () const =0
virtual unsigned int GetNumShapeParameters () const =0
virtual float GetShapeParameter (size_t index) const =0
virtual double operator() (const double *x, const double *p)=0
virtual std::shared_ptr< TF1 > GetWrapperTF1 ()
virtual const TF1 * GetWrapperTF1 () const
virtual TF1 * GetWrapperTF1RawPtr () const

Protected Member Functions

virtual void SetT0FitLimits (float tMin, float tMax)=0

Protected Attributes

float m_defaultTau
bool m_fixTau

Private Attributes

std::shared_ptr< TF1 > m_wrapperTF1 {}
float m_tmin {0}
float m_tmax {0}
float m_ampMin {0}
float m_ampMax {0}
float m_t0Min {0}
float m_t0Max {0}
bool m_adjTLimitsEvent {false}
float m_tminAdjust {0}
float m_tempTmin {0}
float m_tempTmax {0}
bool m_finalized {false}

Detailed Description

Definition at line 161 of file ZDCFitWrapper.h.

Constructor & Destructor Documentation

◆ ZDCPreExpFitWrapper()

ZDCPreExpFitWrapper::ZDCPreExpFitWrapper ( std::shared_ptr< TF1 > wrapperTF1,
float defaultExpTau,
bool fixTau )
inline

Definition at line 168 of file ZDCFitWrapper.h.

168 :
169 ZDCFitWrapper(wrapperTF1), m_defaultTau(defaultExpTau), m_fixTau(fixTau)
170 {}
ZDCFitWrapper(const std::shared_ptr< TF1 > &wrapperTF1)

Member Function Documentation

◆ ConstrainFit()

◆ DoFinalize()

virtual void ZDCFitWrapper::DoFinalize ( )
inlinevirtualinherited

◆ DoInitialize()

◆ Finalize()

virtual void ZDCFitWrapper::Finalize ( )
inlinevirtualinherited

Definition at line 68 of file ZDCFitWrapper.h.

69 {
70 DoFinalize();
71 m_finalized = true;
72 }
virtual void DoFinalize()

◆ finalized()

bool ZDCFitWrapper::finalized ( ) const
inlineinherited

Definition at line 66 of file ZDCFitWrapper.h.

66{return m_finalized;}

◆ fixExpTau()

bool ZDCPreExpFitWrapper::fixExpTau ( ) const
inline

Definition at line 174 of file ZDCFitWrapper.h.

174{return m_fixTau;}

◆ GetAmpError()

◆ GetAmplitude()

◆ GetBkgdMaxFraction()

◆ getDefaultExpTau()

float ZDCPreExpFitWrapper::getDefaultExpTau ( ) const
inline

Definition at line 175 of file ZDCFitWrapper.h.

175{return m_defaultTau;}

◆ GetExpAmp()

virtual float ZDCPreExpFitWrapper::GetExpAmp ( ) const
pure virtual

◆ GetExpTau()

virtual float ZDCPreExpFitWrapper::GetExpTau ( ) const
pure virtual

◆ GetMaxAmp()

float ZDCFitWrapper::GetMaxAmp ( ) const
inlineinherited

Definition at line 104 of file ZDCFitWrapper.h.

104{return m_ampMax;}

◆ GetMinAmp()

float ZDCFitWrapper::GetMinAmp ( ) const
inlineinherited

Definition at line 103 of file ZDCFitWrapper.h.

103{return m_ampMin;}

◆ GetNumShapeParameters()

◆ GetShapeParameter()

◆ GetT0Max()

float ZDCFitWrapper::GetT0Max ( ) const
inlineinherited

Definition at line 114 of file ZDCFitWrapper.h.

114 {
115 if (m_adjTLimitsEvent) return m_tempTmax;
116 else return m_t0Max;
117 }

◆ GetT0Min()

float ZDCFitWrapper::GetT0Min ( ) const
inlineinherited

Definition at line 109 of file ZDCFitWrapper.h.

109 {
110 if (m_adjTLimitsEvent) return m_tempTmin;
111 else return m_t0Min;
112 }

◆ GetTau1()

◆ GetTau2()

◆ GetTime()

◆ GetTMax()

float ZDCFitWrapper::GetTMax ( ) const
inlineinherited

Definition at line 107 of file ZDCFitWrapper.h.

107{return m_tmax;}

◆ GetTMin()

float ZDCFitWrapper::GetTMin ( ) const
inlineinherited

Definition at line 106 of file ZDCFitWrapper.h.

106{return m_tmin;}

◆ GetTMinAdjust()

float ZDCFitWrapper::GetTMinAdjust ( ) const
inlineinherited

Definition at line 119 of file ZDCFitWrapper.h.

119{return m_tminAdjust;}

◆ GetWrapperTF1() [1/2]

virtual std::shared_ptr< TF1 > ZDCFitWrapper::GetWrapperTF1 ( )
inlinevirtualinherited

Definition at line 128 of file ZDCFitWrapper.h.

128{return m_wrapperTF1;}
std::shared_ptr< TF1 > m_wrapperTF1

◆ GetWrapperTF1() [2/2]

virtual const TF1 * ZDCFitWrapper::GetWrapperTF1 ( ) const
inlinevirtualinherited

Definition at line 129 of file ZDCFitWrapper.h.

129{return m_wrapperTF1.get();}

◆ GetWrapperTF1RawPtr()

virtual TF1 * ZDCFitWrapper::GetWrapperTF1RawPtr ( ) const
inlinevirtualinherited

Definition at line 130 of file ZDCFitWrapper.h.

130{return m_wrapperTF1.get();}

◆ Initialize() [1/2]

void ZDCFitWrapper::Initialize ( float initialAmp,
float initialT0,
float ampMin,
float ampMax )
inherited

Definition at line 9 of file ZDCFitWrapper.cxx.

10{
11 // Clear the errors on the TF1 because retaining the errors seems to affect
12 // the convergence of fits
13 //
14 unsigned int npar = GetWrapperTF1()->GetNpar();
15 std::vector<double> zeroVec(npar, 0.0);
16 GetWrapperTF1()->SetParErrors(&zeroVec[0]);
17
18 // If we adjusted the time range on the previous event, restore to default
19 //
22
23 m_adjTLimitsEvent = false;
24 m_tminAdjust = 0;
25 }
26
27 SetAmpMinMax(ampMin, ampMax);
28
29 DoInitialize(initialAmp, initialT0, ampMin, ampMax);
30}
virtual std::shared_ptr< TF1 > GetWrapperTF1()
virtual void SetT0FitLimits(float tMin, float tMax)=0
void SetAmpMinMax(float minAmp, float maxAmp)
virtual void DoInitialize(float initialAmp, float initialT0, float ampMin, float ampMax)=0

◆ Initialize() [2/2]

void ZDCFitWrapper::Initialize ( float initialAmp,
float initialT0,
float ampMin,
float ampMax,
float fitTmin,
float fitTmax,
float fitTRef )
inherited

Definition at line 32 of file ZDCFitWrapper.cxx.

33{
34 // Clear the errors on the TF1 because retaining the errors seems to affect
35 // the convergence of fits
36 //
37 unsigned int npar = GetWrapperTF1()->GetNpar();
38 std::vector<double> zeroVec(npar, 0.0);
39 GetWrapperTF1()->SetParErrors(&zeroVec[0]);
40
41 m_adjTLimitsEvent = true;
42
43 m_tminAdjust = fitTRef; // Note: this is the time corresponding to the sample used for presample subtraction
44
45 m_tempTmin = std::max(m_t0Min, fitTmin);
46 m_tempTmax = std::min(m_t0Max, fitTmax);
47
48 SetAmpMinMax(ampMin, ampMax);
50
51 DoInitialize(initialAmp, initialT0, ampMin, ampMax);
52}

◆ operator()()

◆ SetAmpMinMax()

void ZDCFitWrapper::SetAmpMinMax ( float minAmp,
float maxAmp )
inlineinherited

Definition at line 79 of file ZDCFitWrapper.h.

80 {
81 m_ampMin = minAmp;
82 m_ampMax = maxAmp;
83 }

◆ SetInitialExpPulse()

virtual void ZDCPreExpFitWrapper::SetInitialExpPulse ( float expamp)
pure virtual

◆ SetT0FitLimits()

◆ SetT0Range()

void ZDCFitWrapper::SetT0Range ( float t0Min,
float t0Max )
inlineinherited

Definition at line 85 of file ZDCFitWrapper.h.

86 {
87 m_t0Min = t0Min;
88 m_t0Max = t0Max;
89
90 SetT0FitLimits(t0Min, t0Max);
91 }

◆ UnconstrainFit()

Member Data Documentation

◆ m_adjTLimitsEvent

bool ZDCFitWrapper::m_adjTLimitsEvent {false}
privateinherited

Definition at line 37 of file ZDCFitWrapper.h.

37{false};

◆ m_ampMax

float ZDCFitWrapper::m_ampMax {0}
privateinherited

Definition at line 32 of file ZDCFitWrapper.h.

32{0};

◆ m_ampMin

float ZDCFitWrapper::m_ampMin {0}
privateinherited

Definition at line 31 of file ZDCFitWrapper.h.

31{0};

◆ m_defaultTau

float ZDCPreExpFitWrapper::m_defaultTau
protected

Definition at line 164 of file ZDCFitWrapper.h.

◆ m_finalized

bool ZDCFitWrapper::m_finalized {false}
privateinherited

Definition at line 42 of file ZDCFitWrapper.h.

42{false};

◆ m_fixTau

bool ZDCPreExpFitWrapper::m_fixTau
protected

Definition at line 165 of file ZDCFitWrapper.h.

◆ m_t0Max

float ZDCFitWrapper::m_t0Max {0}
privateinherited

Definition at line 35 of file ZDCFitWrapper.h.

35{0};

◆ m_t0Min

float ZDCFitWrapper::m_t0Min {0}
privateinherited

Definition at line 34 of file ZDCFitWrapper.h.

34{0};

◆ m_tempTmax

float ZDCFitWrapper::m_tempTmax {0}
privateinherited

Definition at line 40 of file ZDCFitWrapper.h.

40{0};

◆ m_tempTmin

float ZDCFitWrapper::m_tempTmin {0}
privateinherited

Definition at line 39 of file ZDCFitWrapper.h.

39{0};

◆ m_tmax

float ZDCFitWrapper::m_tmax {0}
privateinherited

Definition at line 29 of file ZDCFitWrapper.h.

29{0};

◆ m_tmin

float ZDCFitWrapper::m_tmin {0}
privateinherited

Definition at line 28 of file ZDCFitWrapper.h.

28{0};

◆ m_tminAdjust

float ZDCFitWrapper::m_tminAdjust {0}
privateinherited

Definition at line 38 of file ZDCFitWrapper.h.

38{0};

◆ m_wrapperTF1

std::shared_ptr<TF1> ZDCFitWrapper::m_wrapperTF1 {}
privateinherited

Definition at line 26 of file ZDCFitWrapper.h.

26{};

The documentation for this class was generated from the following file: