ATLAS Offline Software
Public Member Functions | Protected Attributes | Private Attributes | List of all members
ZDCFitGeneralPulse Class Reference

#include <ZDCFitWrapper.h>

Inheritance diagram for ZDCFitGeneralPulse:
Collaboration diagram for ZDCFitGeneralPulse:

Public Member Functions

 ZDCFitGeneralPulse (const std::string &tag, float tmin, float tmax, float tau1, float tau2)
 
 ~ZDCFitGeneralPulse ()
 
virtual void DoInitialize (float initialAmp, float initialT0, float ampMin, float ampMax) override
 
virtual void SetT0FitLimits (float tMin, float tMax) override
 
virtual void SetInitialPrePulse (float amp, float t0, float expamp, bool fixPrePulseToZero) override
 
virtual void ConstrainFit () override
 
virtual void UnconstrainFit () override
 
virtual void SetPrePulseT0Range (float tmin, float tmax) override
 
virtual void SetPostPulseT0Range (float tmin, float tmax, float initialPostT0) override
 
unsigned int GetPreT0ParIndex () const override
 
virtual float GetAmplitude () const override
 
virtual float GetAmpError () const override
 
virtual float GetTau1 () const override
 
virtual float GetTau2 () const override
 
virtual float GetPreT0 () const override
 
virtual float GetPreAmp () const override
 
virtual float GetPostT0 () const override
 
virtual float GetPostAmp () const override
 
virtual float GetExpAmp () const override
 
virtual float GetTime () const override
 
virtual float GetShapeParameter (size_t index) const override
 
virtual float GetBkgdMaxFraction () const override
 
virtual double operator() (const double *x, const double *p) override
 
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)
 
void SetAmpMinMax (float minAmp, float maxAmp)
 
void SetT0Range (float t0Min, float t0Max)
 
float GetMinAmp () const
 
float GetMaxAmp () const
 
float GetTMin () const
 
float GetTMax () const
 
float GetT0Min () const
 
float GetT0Max () const
 
float GetTMinAdjust () const
 
virtual std::shared_ptr< TF1 > GetWrapperTF1 ()
 
virtual const TF1 * GetWrapperTF1 () const
 
virtual TF1 * GetWrapperTF1RawPtr () const
 

Protected Attributes

float m_preT0Min
 
float m_preT0Max
 

Private Attributes

float m_tau1
 
float m_tau2
 
float m_norm
 
float m_timeCorr
 
std::shared_ptr< TF1 > m_expFermiFunc
 
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}
 

Detailed Description

Definition at line 1048 of file ZDCFitWrapper.h.

Constructor & Destructor Documentation

◆ ZDCFitGeneralPulse()

ZDCFitGeneralPulse::ZDCFitGeneralPulse ( const std::string &  tag,
float  tmin,
float  tmax,
float  tau1,
float  tau2 
)

Definition at line 989 of file ZDCFitWrapper.cxx.

989  :
990  ZDCPrePulseFitWrapper(std::make_shared<TF1>(("ExpFermiPrePulse" + tag).c_str(), this, tmin, tmax, 9)),
991  m_tau1(tau1), m_tau2(tau2)
992 {
993  // Create the reference function that we use to evaluate ExpFermiFit more efficiently
994  //
995  std::string funcNameRefFunc = "ExpFermiPerPulseRefFunc" + tag;
996 
997  m_expFermiFunc = std::make_shared<TF1>(funcNameRefFunc.c_str(), ZDCFermiExpFit, -50, 100, 4);
998 
999  m_expFermiFunc->SetParameter(0, 1);
1000  m_expFermiFunc->SetParameter(1, 0);
1001  m_expFermiFunc->SetParameter(2, m_tau1);
1002  m_expFermiFunc->SetParameter(3, m_tau2);
1003 
1004  m_norm = 1. / m_expFermiFunc->GetMaximum();
1005  m_timeCorr = m_tau1 * std::log(m_tau2 / m_tau1 - 1.0);
1006 
1007  // Now set up the actual TF1
1008  //
1009  std::shared_ptr<TF1> theTF1 = GetWrapperTF1();
1010 
1011  // BAC, parameter 0 limits now is set in DoInitialize
1012  theTF1->SetParLimits(1, tmin, tmax);
1013  theTF1->SetParLimits(2, 0, 2048); // Pre-pulse upper bound should not be greater 2 times of ADC range with overflow constrains.
1014  theTF1->SetParLimits(3, 0, 40);
1015  theTF1->SetParLimits(6, 0, 4096); // Increase the upper range to 4 times of ADC range to deal with large exponential tail case of pre-pulse.
1016  theTF1->SetParLimits(7, 0, 2048); // Post-pulse upper bound should not be greater 2 times of ADC range with overflow constrains.
1017  theTF1->SetParLimits(8, 100, 163);
1018 
1019  theTF1->SetParName(0, "Amp");
1020  theTF1->SetParName(1, "T0");
1021  theTF1->SetParName(2, "Amp_{pre}");
1022  theTF1->SetParName(3, "T0_{pre}");
1023  theTF1->SetParName(4, "s_{b}");
1024  theTF1->SetParName(5, "c_{b}");
1025  theTF1->SetParName(6, "Amp_{exp}");
1026  theTF1->SetParName(7, "Amp_{post}");
1027  theTF1->SetParName(8, "T0_{post}");
1028 }

◆ ~ZDCFitGeneralPulse()

ZDCFitGeneralPulse::~ZDCFitGeneralPulse ( )
inline

Definition at line 1059 of file ZDCFitWrapper.h.

1059 {}

Member Function Documentation

◆ ConstrainFit()

void ZDCFitGeneralPulse::ConstrainFit ( )
overridevirtual

Implements ZDCFitWrapper.

Definition at line 1030 of file ZDCFitWrapper.cxx.

1031 {
1032  // We force the linear terms and prepulse terms to zero
1033  //
1034  std::shared_ptr<TF1> theTF1 = GetWrapperTF1();
1035 
1036  theTF1->FixParameter(2, 0);
1037  theTF1->FixParameter(4, 0);
1038  theTF1->FixParameter(5, 0);
1039 }

◆ DoInitialize()

void ZDCFitGeneralPulse::DoInitialize ( float  initialAmp,
float  initialT0,
float  ampMin,
float  ampMax 
)
overridevirtual

Implements ZDCFitWrapper.

Definition at line 1066 of file ZDCFitWrapper.cxx.

1067 {
1068  float slope = std::abs(initialAmp / initialT0); // to be studied more ??? limit 0.1 0.05
1069  float intercept = std::abs(0.1 * initialAmp); // reduce from 0.25 to 0.1 fix some fail issue
1070  GetWrapperTF1()->SetParLimits(4, -slope , slope ); // if the lower limit is set to 0, there will be some fit fail issue...
1071  GetWrapperTF1()->SetParLimits(5, -intercept, intercept);
1072 
1073  GetWrapperTF1()->SetParLimits(0, ampMin, ampMax);
1074 
1075  GetWrapperTF1()->SetParameter(0, initialAmp);
1076  GetWrapperTF1()->SetParameter(1, initialT0);
1077  GetWrapperTF1()->SetParameter(4, 0);
1078  GetWrapperTF1()->SetParameter(5, 0);
1079  GetWrapperTF1()->SetParameter(7, 5);
1080 }

◆ GetAmpError()

virtual float ZDCFitGeneralPulse::GetAmpError ( ) const
inlineoverridevirtual

Implements ZDCFitWrapper.

Definition at line 1086 of file ZDCFitWrapper.h.

1086 {return GetWrapperTF1()->GetParError(0); }

◆ GetAmplitude()

virtual float ZDCFitGeneralPulse::GetAmplitude ( ) const
inlineoverridevirtual

Implements ZDCFitWrapper.

Definition at line 1085 of file ZDCFitWrapper.h.

1085 {return GetWrapperTF1()->GetParameter(0); }

◆ GetBkgdMaxFraction()

virtual float ZDCFitGeneralPulse::GetBkgdMaxFraction ( ) const
inlineoverridevirtual

Implements ZDCFitWrapper.

Definition at line 1127 of file ZDCFitWrapper.h.

1128  {
1129  const TF1* theTF1 = ZDCFitWrapper::GetWrapperTF1();
1130 
1131  double maxTime = GetTime();
1132 
1133  double amp = theTF1->GetParameter(0);
1134  double preAmp = theTF1->GetParameter(2);
1135  double preT0 = theTF1->GetParameter(3);
1136  double slope = theTF1->GetParameter(4);
1137 
1138  double deltaTPre = maxTime - preT0;
1139 
1140  double background = slope * maxTime + preAmp * m_norm * (m_expFermiFunc->operator()(deltaTPre) -
1141  m_expFermiFunc->operator()(-preT0));
1142 
1143  return background / amp;
1144  }

◆ GetExpAmp()

virtual float ZDCFitGeneralPulse::GetExpAmp ( ) const
inlineoverridevirtual

Implements ZDCPrePulseFitWrapper.

Definition at line 1113 of file ZDCFitWrapper.h.

1113 {return GetWrapperTF1()->GetParameter(6);}

◆ GetMaxAmp()

float ZDCFitWrapper::GetMaxAmp ( ) const
inlineinherited

Definition at line 87 of file ZDCFitWrapper.h.

87 {return m_ampMax;}

◆ GetMinAmp()

float ZDCFitWrapper::GetMinAmp ( ) const
inlineinherited

Definition at line 86 of file ZDCFitWrapper.h.

86 {return m_ampMin;}

◆ GetPostAmp()

virtual float ZDCFitGeneralPulse::GetPostAmp ( ) const
inlineoverridevirtual

Implements ZDCPrePulseFitWrapper.

Definition at line 1111 of file ZDCFitWrapper.h.

1111 {return GetWrapperTF1()->GetParameter(7);}

◆ GetPostT0()

virtual float ZDCFitGeneralPulse::GetPostT0 ( ) const
inlineoverridevirtual

Implements ZDCPrePulseFitWrapper.

Definition at line 1102 of file ZDCFitWrapper.h.

1102  {
1103  float fitPostT0 = GetWrapperTF1()->GetParameter(8);
1104 
1105  // Correct the time to the maximum
1106  //
1107  fitPostT0 += m_timeCorr;
1108 
1109  return fitPostT0;
1110  }

◆ GetPreAmp()

virtual float ZDCFitGeneralPulse::GetPreAmp ( ) const
inlineoverridevirtual

Implements ZDCPrePulseFitWrapper.

Definition at line 1100 of file ZDCFitWrapper.h.

1100 {return GetWrapperTF1()->GetParameter(2);}

◆ GetPreT0()

virtual float ZDCFitGeneralPulse::GetPreT0 ( ) const
inlineoverridevirtual

Implements ZDCPrePulseFitWrapper.

Definition at line 1091 of file ZDCFitWrapper.h.

1091  {
1092  float fitPreT0 = GetWrapperTF1()->GetParameter(3);
1093 
1094  // Correct the time to the maximum
1095  //
1096  fitPreT0 += m_timeCorr;
1097 
1098  return fitPreT0;
1099  }

◆ GetPreT0ParIndex()

unsigned int ZDCFitGeneralPulse::GetPreT0ParIndex ( ) const
inlineoverridevirtual

Implements ZDCPrePulseFitWrapper.

Definition at line 1083 of file ZDCFitWrapper.h.

1083 {return 3;}

◆ GetShapeParameter()

virtual float ZDCFitGeneralPulse::GetShapeParameter ( size_t  index) const
inlineoverridevirtual

Implements ZDCFitWrapper.

Definition at line 1119 of file ZDCFitWrapper.h.

1120  {
1121  if (index == 0) return m_tau1;
1122  else if (index == 1) return m_tau2;
1123  else if (index < 5) return GetWrapperTF1()->GetParameter(index);
1124  else throw std::runtime_error("Fit parameter does not exist.");
1125  }

◆ GetT0Max()

float ZDCFitWrapper::GetT0Max ( ) const
inlineinherited

Definition at line 97 of file ZDCFitWrapper.h.

97  {
98  if (m_adjTLimitsEvent) return m_tempTmax;
99  else return m_t0Max;
100  }

◆ GetT0Min()

float ZDCFitWrapper::GetT0Min ( ) const
inlineinherited

Definition at line 92 of file ZDCFitWrapper.h.

92  {
93  if (m_adjTLimitsEvent) return m_tempTmin;
94  else return m_t0Min;
95  }

◆ GetTau1()

virtual float ZDCFitGeneralPulse::GetTau1 ( ) const
inlineoverridevirtual

Implements ZDCFitWrapper.

Definition at line 1088 of file ZDCFitWrapper.h.

1088 {return m_tau1;}

◆ GetTau2()

virtual float ZDCFitGeneralPulse::GetTau2 ( ) const
inlineoverridevirtual

Implements ZDCFitWrapper.

Definition at line 1089 of file ZDCFitWrapper.h.

1089 {return m_tau2;}

◆ GetTime()

virtual float ZDCFitGeneralPulse::GetTime ( ) const
inlineoverridevirtual

Implements ZDCFitWrapper.

Definition at line 1115 of file ZDCFitWrapper.h.

1115  {
1116  return GetWrapperTF1()->GetParameter(1) + m_timeCorr; // Correct the time to the maximum
1117  }

◆ GetTMax()

float ZDCFitWrapper::GetTMax ( ) const
inlineinherited

Definition at line 90 of file ZDCFitWrapper.h.

90 {return m_tmax;}

◆ GetTMin()

float ZDCFitWrapper::GetTMin ( ) const
inlineinherited

Definition at line 89 of file ZDCFitWrapper.h.

89 {return m_tmin;}

◆ GetTMinAdjust()

float ZDCFitWrapper::GetTMinAdjust ( ) const
inlineinherited

Definition at line 102 of file ZDCFitWrapper.h.

102 {return m_tminAdjust;}

◆ GetWrapperTF1() [1/2]

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

Definition at line 110 of file ZDCFitWrapper.h.

110 {return m_wrapperTF1;}

◆ GetWrapperTF1() [2/2]

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

Definition at line 111 of file ZDCFitWrapper.h.

111 {return m_wrapperTF1.get();}

◆ GetWrapperTF1RawPtr()

virtual TF1* ZDCFitWrapper::GetWrapperTF1RawPtr ( ) const
inlinevirtualinherited

Definition at line 112 of file ZDCFitWrapper.h.

112 {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  //
20  if (m_adjTLimitsEvent) {
22 
23  m_adjTLimitsEvent = false;
24  m_tminAdjust = 0;
25  }
26 
27  SetAmpMinMax(ampMin, ampMax);
28 
29  DoInitialize(initialAmp, initialT0, ampMin, ampMax);
30 }

◆ 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()()

virtual double ZDCFitGeneralPulse::operator() ( const double *  x,
const double *  p 
)
inlineoverridevirtual

Implements ZDCFitWrapper.

Definition at line 1146 of file ZDCFitWrapper.h.

1147  {
1148  double t = x[0];
1149 
1150  double amp = p[0];
1151  double t0 = p[1];
1152  double preAmp = p[2];
1153  double preT0 = p[3];
1154  double linSlope = p[4];
1155  double linConst = p[5];
1156  double expamp = p[6];
1157  double postAmp = p[7];
1158  double postT0 = p[8];
1159 
1160  double deltaT = t - t0;
1161  double deltaTPre = t - preT0;
1162  double deltaTPost = t - postT0;
1163 
1164  // We subtract off the value of the pre-pulse at the minimum time (nominally 0,
1165  // but can change if we exclude early samples) to account for the subtraction of the pre-sample
1166  //
1167  double deltaPresamp = GetTMinAdjust() - preT0;
1168 
1169  double pulse1 = amp * m_norm * m_expFermiFunc->operator()(deltaT);
1170  double pulse2 = preAmp * m_norm * (m_expFermiFunc->operator()(deltaTPre) - m_expFermiFunc->operator()(deltaPresamp));
1171  double pulse3 = postAmp * m_norm * m_expFermiFunc->operator()(deltaTPost);
1172 
1173  double linBG = linSlope * t + linConst;
1174  double expBG = expamp * std::exp(-(t) / m_tau2) - expamp * std::exp(-(GetTMinAdjust()) / m_tau2); // deltaPresamp
1175 
1176  return pulse1 + pulse2 + pulse3 + linBG + expBG;
1177  }

◆ SetAmpMinMax()

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

Definition at line 63 of file ZDCFitWrapper.h.

64  {
65  m_ampMin = minAmp;
66  m_ampMax = maxAmp;
67  }

◆ SetInitialPrePulse()

virtual void ZDCFitGeneralPulse::SetInitialPrePulse ( float  amp,
float  t0,
float  expamp,
bool  fixPrePulseToZero 
)
inlineoverridevirtual

Implements ZDCPrePulseFitWrapper.

Definition at line 1064 of file ZDCFitWrapper.h.

1064  {
1065  GetWrapperTF1()->ReleaseParameter(2);
1066  GetWrapperTF1()->ReleaseParameter(3);
1067  GetWrapperTF1()->SetParameter(2, std::max(amp, (float) 1.5)); //1.5 here ensures that we're above lower limit
1068  GetWrapperTF1()->SetParameter(3, std::max(t0, (float) 20.0));
1069  GetWrapperTF1()->SetParameter(6, std::max(std::abs(expamp), (float) 1.5));
1070 
1071  if (fixPrePulseToZero) {
1072  GetWrapperTF1()->FixParameter(2, 0. );
1073  GetWrapperTF1()->FixParameter(3, 20.);
1074  }
1075  }

◆ SetPostPulseT0Range()

void ZDCFitGeneralPulse::SetPostPulseT0Range ( float  tmin,
float  tmax,
float  initialPostT0 
)
overridevirtual

Implements ZDCPrePulseFitWrapper.

Definition at line 1059 of file ZDCFitWrapper.cxx.

1060 {
1061  GetWrapperTF1()->SetParLimits(8, tmin, tmax);
1062  float iniPostT0 = initialPostT0;
1063  GetWrapperTF1()->SetParameter(8, iniPostT0);
1064 }

◆ SetPrePulseT0Range()

void ZDCFitGeneralPulse::SetPrePulseT0Range ( float  tmin,
float  tmax 
)
overridevirtual

Implements ZDCPrePulseFitWrapper.

Definition at line 1048 of file ZDCFitWrapper.cxx.

1049 {
1050  if (tmin > GetTMin()) {
1051  if (tmin < 0) tmin = 0;
1052  GetWrapperTF1()->SetParLimits(3, tmin, tmax);
1053  }
1054  else {
1055  GetWrapperTF1()->SetParLimits(3, 0, tmax);
1056  }
1057 }

◆ SetT0FitLimits()

void ZDCFitGeneralPulse::SetT0FitLimits ( float  tMin,
float  tMax 
)
overridevirtual

Implements ZDCFitWrapper.

Definition at line 1082 of file ZDCFitWrapper.cxx.

1083 {
1084  GetWrapperTF1()->SetParLimits(1, t0Min, t0Max);
1085 }

◆ SetT0Range()

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

Definition at line 69 of file ZDCFitWrapper.h.

70  {
71  m_t0Min = t0Min;
72  m_t0Max = t0Max;
73 
74  SetT0FitLimits(t0Min, t0Max);
75  }

◆ UnconstrainFit()

void ZDCFitGeneralPulse::UnconstrainFit ( )
overridevirtual

Implements ZDCFitWrapper.

Definition at line 1040 of file ZDCFitWrapper.cxx.

1041 {
1042  std::shared_ptr<TF1> theTF1 = GetWrapperTF1();
1043  theTF1->ReleaseParameter(2);
1044  theTF1->ReleaseParameter(4);
1045  theTF1->ReleaseParameter(5);
1046 }

Member Data Documentation

◆ m_adjTLimitsEvent

bool ZDCFitWrapper::m_adjTLimitsEvent {false}
privateinherited

Definition at line 32 of file ZDCFitWrapper.h.

◆ m_ampMax

float ZDCFitWrapper::m_ampMax {0}
privateinherited

Definition at line 27 of file ZDCFitWrapper.h.

◆ m_ampMin

float ZDCFitWrapper::m_ampMin {0}
privateinherited

Definition at line 26 of file ZDCFitWrapper.h.

◆ m_expFermiFunc

std::shared_ptr<TF1> ZDCFitGeneralPulse::m_expFermiFunc
private

Definition at line 1055 of file ZDCFitWrapper.h.

◆ m_norm

float ZDCFitGeneralPulse::m_norm
private

Definition at line 1053 of file ZDCFitWrapper.h.

◆ m_preT0Max

float ZDCPrePulseFitWrapper::m_preT0Max
protectedinherited

Definition at line 119 of file ZDCFitWrapper.h.

◆ m_preT0Min

float ZDCPrePulseFitWrapper::m_preT0Min
protectedinherited

Definition at line 118 of file ZDCFitWrapper.h.

◆ m_t0Max

float ZDCFitWrapper::m_t0Max {0}
privateinherited

Definition at line 30 of file ZDCFitWrapper.h.

◆ m_t0Min

float ZDCFitWrapper::m_t0Min {0}
privateinherited

Definition at line 29 of file ZDCFitWrapper.h.

◆ m_tau1

float ZDCFitGeneralPulse::m_tau1
private

Definition at line 1051 of file ZDCFitWrapper.h.

◆ m_tau2

float ZDCFitGeneralPulse::m_tau2
private

Definition at line 1052 of file ZDCFitWrapper.h.

◆ m_tempTmax

float ZDCFitWrapper::m_tempTmax {0}
privateinherited

Definition at line 35 of file ZDCFitWrapper.h.

◆ m_tempTmin

float ZDCFitWrapper::m_tempTmin {0}
privateinherited

Definition at line 34 of file ZDCFitWrapper.h.

◆ m_timeCorr

float ZDCFitGeneralPulse::m_timeCorr
private

Definition at line 1054 of file ZDCFitWrapper.h.

◆ m_tmax

float ZDCFitWrapper::m_tmax {0}
privateinherited

Definition at line 24 of file ZDCFitWrapper.h.

◆ m_tmin

float ZDCFitWrapper::m_tmin {0}
privateinherited

Definition at line 23 of file ZDCFitWrapper.h.

◆ m_tminAdjust

float ZDCFitWrapper::m_tminAdjust {0}
privateinherited

Definition at line 33 of file ZDCFitWrapper.h.

◆ m_wrapperTF1

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

Definition at line 21 of file ZDCFitWrapper.h.


The documentation for this class was generated from the following files:
ZDCFitWrapper::GetTMinAdjust
float GetTMinAdjust() const
Definition: ZDCFitWrapper.h:102
ZDCFitWrapper::m_wrapperTF1
std::shared_ptr< TF1 > m_wrapperTF1
Definition: ZDCFitWrapper.h:21
ZDCFitWrapper::m_tmin
float m_tmin
Definition: ZDCFitWrapper.h:23
ZDCFitWrapper::SetT0FitLimits
virtual void SetT0FitLimits(float tMin, float tMax)=0
python.PerfMonSerializer.p
def p
Definition: PerfMonSerializer.py:743
max
#define max(a, b)
Definition: cfImp.cxx:41
ZDCFitGeneralPulse::m_norm
float m_norm
Definition: ZDCFitWrapper.h:1053
ZDCFitWrapper::DoInitialize
virtual void DoInitialize(float initialAmp, float initialT0, float ampMin, float ampMax)=0
ZDCFitGeneralPulse::m_expFermiFunc
std::shared_ptr< TF1 > m_expFermiFunc
Definition: ZDCFitWrapper.h:1055
index
Definition: index.py:1
ZDCFitGeneralPulse::m_tau1
float m_tau1
Definition: ZDCFitWrapper.h:1051
ZDCFitWrapper::m_ampMin
float m_ampMin
Definition: ZDCFitWrapper.h:26
ALFA_EventTPCnv_Dict::t0
std::vector< ALFA_RawData_p1 > t0
Definition: ALFA_EventTPCnvDict.h:42
ZDCFitWrapper::m_t0Max
float m_t0Max
Definition: ZDCFitWrapper.h:30
ZDCFitWrapper::GetWrapperTF1
virtual std::shared_ptr< TF1 > GetWrapperTF1()
Definition: ZDCFitWrapper.h:110
read_hist_ntuple.t
t
Definition: read_hist_ntuple.py:5
ZDCFitWrapper::m_adjTLimitsEvent
bool m_adjTLimitsEvent
Definition: ZDCFitWrapper.h:32
ZDCFitWrapper::m_tempTmax
float m_tempTmax
Definition: ZDCFitWrapper.h:35
drawFromPickle.exp
exp
Definition: drawFromPickle.py:36
x
#define x
ZDCFitGeneralPulse::GetTime
virtual float GetTime() const override
Definition: ZDCFitWrapper.h:1115
ZDCFitWrapper::m_ampMax
float m_ampMax
Definition: ZDCFitWrapper.h:27
ZDCFermiExpFit
double ZDCFermiExpFit(const double *xvec, const double *pvec)
Definition: ZDCFitWrapper.cxx:662
ZDCFitGeneralPulse::m_timeCorr
float m_timeCorr
Definition: ZDCFitWrapper.h:1054
ZDCFitWrapper::GetTMin
float GetTMin() const
Definition: ZDCFitWrapper.h:89
min
#define min(a, b)
Definition: cfImp.cxx:40
ZDCFitWrapper::m_t0Min
float m_t0Min
Definition: ZDCFitWrapper.h:29
ZDCFitWrapper::m_tminAdjust
float m_tminAdjust
Definition: ZDCFitWrapper.h:33
ZDCFitWrapper::m_tmax
float m_tmax
Definition: ZDCFitWrapper.h:24
ZDCFitWrapper::SetAmpMinMax
void SetAmpMinMax(float minAmp, float maxAmp)
Definition: ZDCFitWrapper.h:63
ZDCFitGeneralPulse::m_tau2
float m_tau2
Definition: ZDCFitWrapper.h:1052
ZDCPrePulseFitWrapper::ZDCPrePulseFitWrapper
ZDCPrePulseFitWrapper(std::shared_ptr< TF1 > wrapperTF1)
Definition: ZDCFitWrapper.h:121
python.CaloCondTools.log
log
Definition: CaloCondTools.py:20
CaloCondBlobAlgs_fillNoiseFromASCII.tag
string tag
Definition: CaloCondBlobAlgs_fillNoiseFromASCII.py:24
ZDCFitWrapper::m_tempTmin
float m_tempTmin
Definition: ZDCFitWrapper.h:34