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