#include <ZDCFitWrapper.h>
|
| | ZDCFitExpFermiLinearFixedTaus (const std::string &tag, float tmin, float tmax, float tau1, float tau2) |
| | ~ZDCFitExpFermiLinearFixedTaus () |
| virtual void | DoInitialize (float initialAmp, float initialT0, float ampMin, float ampMax) override |
| virtual void | SetT0FitLimits (float tMin, float tMax) override |
| virtual void | ConstrainFit () override |
| virtual void | UnconstrainFit () override |
| virtual float | GetAmplitude () const override |
| virtual float | GetAmpError () const override |
| virtual float | GetTau1 () const override |
| virtual float | GetTau2 () 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 |
Definition at line 784 of file ZDCFitWrapper.h.
◆ ZDCFitExpFermiLinearFixedTaus()
| ZDCFitExpFermiLinearFixedTaus::ZDCFitExpFermiLinearFixedTaus |
( |
const std::string & | tag, |
|
|
float | tmin, |
|
|
float | tmax, |
|
|
float | tau1, |
|
|
float | tau2 ) |
Definition at line 683 of file ZDCFitWrapper.cxx.
683 :
684 ZDCFitWrapper(std::make_shared<TF1>((
"ExpFermiFixedTaus" + tag).c_str(),
this, tmin, tmax, 4)),
686{
688
689
690 theTF1->SetParLimits(1, tmin, tmax);
691
692 theTF1->SetParName(0, "Amp");
693 theTF1->SetParName(1, "T0");
694 theTF1->SetParName(2, "s_{b}");
695 theTF1->SetParName(3, "c_{b}");
696
697
698
699 std::string funcNameRefFunc =
"ExpFermiFixedTausRefFunc" +
tag;
700
702
708
711}
double ZDCFermiExpFit(const double *xvec, const double *pvec)
std::shared_ptr< TF1 > m_expFermiFunc
virtual std::shared_ptr< TF1 > GetWrapperTF1()
ZDCFitWrapper(const std::shared_ptr< TF1 > &wrapperTF1)
◆ ~ZDCFitExpFermiLinearFixedTaus()
| ZDCFitExpFermiLinearFixedTaus::~ZDCFitExpFermiLinearFixedTaus |
( |
| ) |
|
|
inline |
◆ ConstrainFit()
| void ZDCFitExpFermiLinearFixedTaus::ConstrainFit |
( |
| ) |
|
|
overridevirtual |
◆ DoInitialize()
| void ZDCFitExpFermiLinearFixedTaus::DoInitialize |
( |
float | initialAmp, |
|
|
float | initialT0, |
|
|
float | ampMin, |
|
|
float | ampMax ) |
|
overridevirtual |
Implements ZDCFitWrapper.
Definition at line 730 of file ZDCFitWrapper.cxx.
731{
732 float slope = std::abs(0.1 * initialAmp / initialT0);
733 float intercept = std::abs(0.1 * initialAmp);
736
741
743
744 double ampStep = std::min(0.05*initialAmp, std::abs(ampMax - initialAmp)/2.);
745
750}
◆ GetAmpError()
| virtual float ZDCFitExpFermiLinearFixedTaus::GetAmpError |
( |
| ) |
const |
|
inlineoverridevirtual |
◆ GetAmplitude()
| virtual float ZDCFitExpFermiLinearFixedTaus::GetAmplitude |
( |
| ) |
const |
|
inlineoverridevirtual |
◆ GetBkgdMaxFraction()
| virtual float ZDCFitExpFermiLinearFixedTaus::GetBkgdMaxFraction |
( |
| ) |
const |
|
inlineoverridevirtual |
Implements ZDCFitWrapper.
Definition at line 824 of file ZDCFitWrapper.h.
825 {
827 double amp = theTF1->GetParameter(0);
828 double slope = theTF1->GetParameter(2);
829
830 double background = slope *
GetTime();
831 return background / amp;
832 }
virtual float GetTime() const override
◆ GetMaxAmp()
| float ZDCFitWrapper::GetMaxAmp |
( |
| ) |
const |
|
inlineinherited |
◆ GetMinAmp()
| float ZDCFitWrapper::GetMinAmp |
( |
| ) |
const |
|
inlineinherited |
◆ GetShapeParameter()
| virtual float ZDCFitExpFermiLinearFixedTaus::GetShapeParameter |
( |
size_t | index | ) |
const |
|
inlineoverridevirtual |
Implements ZDCFitWrapper.
Definition at line 817 of file ZDCFitWrapper.h.
818 {
819 if (index == 0)
return m_tau1;
820 else if (index == 1)
return m_tau2;
821 else throw std::runtime_error("Fit parameter does not exist.");
822 }
◆ GetT0Max()
| float ZDCFitWrapper::GetT0Max |
( |
| ) |
const |
|
inlineinherited |
◆ GetT0Min()
| float ZDCFitWrapper::GetT0Min |
( |
| ) |
const |
|
inlineinherited |
◆ GetTau1()
| virtual float ZDCFitExpFermiLinearFixedTaus::GetTau1 |
( |
| ) |
const |
|
inlineoverridevirtual |
◆ GetTau2()
| virtual float ZDCFitExpFermiLinearFixedTaus::GetTau2 |
( |
| ) |
const |
|
inlineoverridevirtual |
◆ GetTime()
| virtual float ZDCFitExpFermiLinearFixedTaus::GetTime |
( |
| ) |
const |
|
inlineoverridevirtual |
◆ GetTMax()
| float ZDCFitWrapper::GetTMax |
( |
| ) |
const |
|
inlineinherited |
◆ GetTMin()
| float ZDCFitWrapper::GetTMin |
( |
| ) |
const |
|
inlineinherited |
◆ GetTMinAdjust()
| float ZDCFitWrapper::GetTMinAdjust |
( |
| ) |
const |
|
inlineinherited |
◆ GetWrapperTF1() [1/2]
| virtual std::shared_ptr< TF1 > ZDCFitWrapper::GetWrapperTF1 |
( |
| ) |
|
|
inlinevirtualinherited |
◆ GetWrapperTF1() [2/2]
| virtual const TF1 * ZDCFitWrapper::GetWrapperTF1 |
( |
| ) |
const |
|
inlinevirtualinherited |
◆ GetWrapperTF1RawPtr()
| virtual TF1 * ZDCFitWrapper::GetWrapperTF1RawPtr |
( |
| ) |
const |
|
inlinevirtualinherited |
◆ 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
12
13
15 std::vector<double> zeroVec(npar, 0.0);
17
18
19
22
25 }
26
28
30}
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
35
36
38 std::vector<double> zeroVec(npar, 0.0);
40
42
44
47
50
52}
◆ operator()()
| virtual double ZDCFitExpFermiLinearFixedTaus::operator() |
( |
const double * | x, |
|
|
const double * | p ) |
|
inlineoverridevirtual |
Implements ZDCFitWrapper.
Definition at line 834 of file ZDCFitWrapper.h.
835 {
838 double deltaT =
x[0] -
t0;
839
840 double bckgd =
p[2] *
x[0] +
p[3];
841
843
844 return expFermi + bckgd;
845 }
◆ SetAmpMinMax()
| void ZDCFitWrapper::SetAmpMinMax |
( |
float | minAmp, |
|
|
float | maxAmp ) |
|
inlineinherited |
◆ SetT0FitLimits()
| void ZDCFitExpFermiLinearFixedTaus::SetT0FitLimits |
( |
float | tMin, |
|
|
float | tMax ) |
|
overridevirtual |
◆ SetT0Range()
| void ZDCFitWrapper::SetT0Range |
( |
float | t0Min, |
|
|
float | t0Max ) |
|
inlineinherited |
◆ UnconstrainFit()
| void ZDCFitExpFermiLinearFixedTaus::UnconstrainFit |
( |
| ) |
|
|
overridevirtual |
◆ m_adjTLimitsEvent
| bool ZDCFitWrapper::m_adjTLimitsEvent {false} |
|
privateinherited |
◆ m_ampMax
| float ZDCFitWrapper::m_ampMax {0} |
|
privateinherited |
◆ m_ampMin
| float ZDCFitWrapper::m_ampMin {0} |
|
privateinherited |
◆ m_expFermiFunc
| std::shared_ptr<TF1> ZDCFitExpFermiLinearFixedTaus::m_expFermiFunc |
|
private |
◆ m_norm
| float ZDCFitExpFermiLinearFixedTaus::m_norm |
|
private |
◆ m_t0Max
| float ZDCFitWrapper::m_t0Max {0} |
|
privateinherited |
◆ m_t0Min
| float ZDCFitWrapper::m_t0Min {0} |
|
privateinherited |
◆ m_tau1
| float ZDCFitExpFermiLinearFixedTaus::m_tau1 |
|
private |
◆ m_tau2
| float ZDCFitExpFermiLinearFixedTaus::m_tau2 |
|
private |
◆ m_tempTmax
| float ZDCFitWrapper::m_tempTmax {0} |
|
privateinherited |
◆ m_tempTmin
| float ZDCFitWrapper::m_tempTmin {0} |
|
privateinherited |
◆ m_timeCorr
| float ZDCFitExpFermiLinearFixedTaus::m_timeCorr |
|
private |
◆ m_tmax
| float ZDCFitWrapper::m_tmax {0} |
|
privateinherited |
◆ m_tmin
| float ZDCFitWrapper::m_tmin {0} |
|
privateinherited |
◆ m_tminAdjust
| float ZDCFitWrapper::m_tminAdjust {0} |
|
privateinherited |
◆ m_wrapperTF1
| std::shared_ptr<TF1> ZDCFitWrapper::m_wrapperTF1 {} |
|
privateinherited |
The documentation for this class was generated from the following files: