GRSISort "v4.0.0.5"
An extension of the ROOT analysis Framework
Loading...
Searching...
No Matches
TGauss.h
Go to the documentation of this file.
1#ifndef TGAUSS_H
2#define TGAUSS_H
3
4/** \addtogroup Fitting Fitting & Analysis
5 * @{
6 */
7
8#include <cstdarg>
9
10#include "TF1.h"
11#include "TGraph.h"
12
13#include "TSinglePeak.h"
14
15/////////////////////////////////////////////////////////////////
16///
17/// \class TGauss
18///
19/// This class is used to fit simple gaussian peaks in data
20///
21/////////////////////////////////////////////////////////////////
22
23class TGauss : public TSinglePeak {
24public:
25 // ctors and dtors
26 TGauss() = default;
27 explicit TGauss(Double_t centroid, Double_t relativeLimit = -1.);
28 TGauss(const TGauss&) = default;
29 TGauss(TGauss&&) noexcept = default;
30 TGauss& operator=(const TGauss&) = default;
31 TGauss& operator=(TGauss&&) noexcept = default;
32 ~TGauss() = default;
33
34 void InitParNames() override;
35 void InitializeParameters(TH1* hist, const double& rangeLow, const double& rangeHigh) override;
36
37 void Centroid(const Double_t& centroid) override;
38
39 Double_t Centroid() const override;
40 Double_t CentroidErr() const override;
41 Double_t Width() const override { return Sigma(); }
42 Double_t Sigma() const override { return GetFitFunction()->GetParameter("sigma"); }
43 Double_t SigmaErr() const override { return GetFitFunction()->GetParError(GetFitFunction()->GetParNumber("sigma")); }
44
45protected:
46 Double_t PeakFunction(Double_t* dim, Double_t* par) override;
47
48public:
49 /// \cond CLASSIMP
50 ClassDefOverride(TGauss, 2) // NOLINT(readability-else-after-return)
51 /// \endcond
52};
53/*! @} */
54#endif
TH1D * hist
Definition UserFillObj.h:3
Double_t SigmaErr() const override
Definition TGauss.h:43
Double_t Width() const override
Definition TGauss.h:41
TGauss()=default
TGauss(const TGauss &)=default
Double_t PeakFunction(Double_t *dim, Double_t *par) override
Definition TGauss.cxx:70
void InitParNames() override
Definition TGauss.cxx:27
TGauss(TGauss &&) noexcept=default
Double_t Sigma() const override
Definition TGauss.h:42
void InitializeParameters(TH1 *hist, const double &rangeLow, const double &rangeHigh) override
Definition TGauss.cxx:36
Double_t CentroidErr() const override
Definition TGauss.cxx:65
Double_t Centroid() const override
Definition TGauss.cxx:60
TF1 * GetFitFunction() const
Definition TSinglePeak.h:72