GRSISort "v4.0.0.5"
An extension of the ROOT analysis Framework
Loading...
Searching...
No Matches
TMultiPeak Class Reference

Detailed Description

This Class is used to represent fitted data that is Gaussian like in nature (ie centroid and area).

Definition at line 32 of file TMultiPeak.h.

Public Member Functions

 TMultiPeak ()
 
 TMultiPeak (const TMultiPeak &copy)
 
 TMultiPeak (Double_t xlow, Double_t xhigh, const std::vector< Double_t > &centroids, Option_t *type="gsc")
 
 TMultiPeak (TMultiPeak &&) noexcept=default
 
 ~TMultiPeak ()
 
Bool_t AddToGlobalList (Bool_t yes=kTRUE) override
 
TF1 * Background () const
 
void Clear (Option_t *opt="") override
 
virtual void ClearParameters (Option_t *opt="")
 
void Copy (TObject &obj) const override
 
virtual void CopyParameters (TF1 *copy) const
 
void DrawPeaks ()
 
Bool_t Fit (TH1 *fithist, Option_t *opt="")
 
virtual TH1 * GetHist () const
 
TPeakGetPeak (UInt_t idx)
 
TPeakGetPeakClosestTo (Double_t energy)
 
bool InitParams (TH1 *fithist) override
 
Bool_t IsGoodFit () const
 
TMultiPeakoperator= (const TMultiPeak &)=default
 
TMultiPeakoperator= (TMultiPeak &&) noexcept=default
 
void Print (Option_t *opt="") const override
 
virtual void SetHist (TH1 *hist)
 
void SortPeaks (Bool_t(*SortFunction)(const TPeak *, const TPeak *)=TPeak::CompareEnergy)
 

Static Public Member Functions

static Bool_t AddToGlobalList (TF1 *func, Bool_t yes=kTRUE)
 
static const char * GetDefaultFitType ()
 
static bool GetLogLikelihoodFlag ()
 
static void SetDefaultFitType (const char *fitType)
 
static void SetLogLikelihoodFlag (bool flag)
 

Protected Member Functions

void GoodFit (Bool_t flag=true)
 
void InitNames ()
 
Bool_t IsInitialized () const
 
void SetInitialized (Bool_t flag=true)
 

Private Member Functions

Double_t MultiPhotoPeakBG (Double_t *dim, Double_t *par)
 
Double_t MultiStepBG (Double_t *dim, Double_t *par)
 
Double_t SinglePeakBG (Double_t *dim, Double_t *par)
 

Private Attributes

TF1 * fBackground {nullptr}
 
Bool_t fGoodFitFlag {false}
 
TRef fHist
 
Bool_t fInitFlag {false}
 
std::vector< TPeak * > fPeakVec
 

Static Private Attributes

static TString fDefaultFitType
 
static bool fLogLikelihoodFlag = false
 
+ Inheritance diagram for TMultiPeak:
+ Collaboration diagram for TMultiPeak:

Constructor & Destructor Documentation

◆ ~TMultiPeak()

TMultiPeak::~TMultiPeak ( )

Definition at line 60 of file TMultiPeak.cxx.

References fBackground, and fPeakVec.

◆ TMultiPeak() [1/4]

TMultiPeak::TMultiPeak ( Double_t xlow,
Double_t xhigh,
const std::vector< Double_t > & centroids,
Option_t * type = "gsc" )

◆ TMultiPeak() [2/4]

TMultiPeak::TMultiPeak ( const TMultiPeak & copy)

Definition at line 93 of file TMultiPeak.cxx.

References Copy().

◆ TMultiPeak() [3/4]

TMultiPeak::TMultiPeak ( TMultiPeak && )
defaultnoexcept

◆ TMultiPeak() [4/4]

TMultiPeak::TMultiPeak ( )

Definition at line 48 of file TMultiPeak.cxx.

References TGRSIFit::AddToGlobalList(), fBackground, InitNames(), and MultiStepBG().

Referenced by Fit().

Member Function Documentation

◆ AddToGlobalList() [1/2]

Bool_t TGRSIFit::AddToGlobalList ( Bool_t yes = kTRUE)
overrideinherited

◆ AddToGlobalList() [2/2]

Bool_t TGRSIFit::AddToGlobalList ( TF1 * func,
Bool_t yes = kTRUE )
staticinherited

Definition at line 90 of file TGRSIFit.cxx.

◆ Background()

TF1 * TMultiPeak::Background ( ) const
inline

Definition at line 51 of file TMultiPeak.h.

References fBackground.

◆ Clear()

void TMultiPeak::Clear ( Option_t * opt = "")
override

Definition at line 330 of file TMultiPeak.cxx.

References TGRSIFit::Clear(), and fPeakVec.

Referenced by TMultiPeak().

◆ ClearParameters()

void TGRSIFit::ClearParameters ( Option_t * opt = "")
virtualinherited

Definition at line 43 of file TGRSIFit.cxx.

◆ Copy()

void TMultiPeak::Copy ( TObject & obj) const
override

Definition at line 98 of file TMultiPeak.cxx.

References TGRSIFit::AddToGlobalList(), TGRSIFit::Copy(), fBackground, and fPeakVec.

Referenced by TMultiPeak().

◆ CopyParameters()

void TGRSIFit::CopyParameters ( TF1 * copy) const
virtualinherited

Definition at line 50 of file TGRSIFit.cxx.

Referenced by Fit().

◆ DrawPeaks()

void TMultiPeak::DrawPeaks ( )

Definition at line 439 of file TMultiPeak.cxx.

References fPeakVec, and SinglePeakBG().

◆ Fit()

◆ GetDefaultFitType()

static const char * TGRSIFit::GetDefaultFitType ( )
inlinestaticinherited

Definition at line 58 of file TGRSIFit.h.

References TGRSIFit::fDefaultFitType.

◆ GetHist()

virtual TH1 * TGRSIFit::GetHist ( ) const
inlinevirtualinherited

◆ GetLogLikelihoodFlag()

static bool TMultiPeak::GetLogLikelihoodFlag ( )
inlinestatic

Definition at line 54 of file TMultiPeak.h.

References fLogLikelihoodFlag.

Referenced by Fit().

◆ GetPeak()

TPeak * TMultiPeak::GetPeak ( UInt_t idx)

Definition at line 415 of file TMultiPeak.cxx.

References fPeakVec.

Referenced by GetPeakClosestTo().

◆ GetPeakClosestTo()

TPeak * TMultiPeak::GetPeakClosestTo ( Double_t energy)

Definition at line 425 of file TMultiPeak.cxx.

References fPeakVec, and GetPeak().

◆ GoodFit()

void TGRSIFit::GoodFit ( Bool_t flag = true)
inlineprotectedinherited

Definition at line 69 of file TGRSIFit.h.

References TGRSIFit::fGoodFitFlag.

◆ InitNames()

void TMultiPeak::InitNames ( )
protected

Definition at line 74 of file TMultiPeak.cxx.

References fPeakVec.

Referenced by TMultiPeak(), and TMultiPeak().

◆ InitParams()

Bool_t TMultiPeak::InitParams ( TH1 * fithist)
overridevirtual

Implements TGRSIFit.

Definition at line 118 of file TMultiPeak.cxx.

References fPeakVec, TGRSIFit::GetHist(), and TGRSIFit::SetInitialized().

Referenced by Fit().

◆ IsGoodFit()

Bool_t TGRSIFit::IsGoodFit ( ) const
inlineinherited

Definition at line 52 of file TGRSIFit.h.

References TGRSIFit::fGoodFitFlag.

◆ IsInitialized()

Bool_t TGRSIFit::IsInitialized ( ) const
inlineprotectedinherited

Definition at line 67 of file TGRSIFit.h.

References TGRSIFit::fInitFlag.

Referenced by Fit(), and TPeak::Fit().

◆ MultiPhotoPeakBG()

Double_t TMultiPeak::MultiPhotoPeakBG ( Double_t * dim,
Double_t * par )
private

◆ MultiStepBG()

Double_t TMultiPeak::MultiStepBG ( Double_t * dim,
Double_t * par )
private

Definition at line 373 of file TMultiPeak.cxx.

References TGRSIFunctions::PolyBg(), and TGRSIFunctions::StepFunction().

Referenced by TMultiPeak(), and TMultiPeak().

◆ operator=() [1/2]

TMultiPeak & TMultiPeak::operator= ( const TMultiPeak & )
default

◆ operator=() [2/2]

TMultiPeak & TMultiPeak::operator= ( TMultiPeak && )
defaultnoexcept

◆ Print()

void TMultiPeak::Print ( Option_t * opt = "") const
override

Prints TMultiPeak properties. To see More properties use the option "+"

Definition at line 340 of file TMultiPeak.cxx.

References fPeakVec.

◆ SetDefaultFitType()

static void TGRSIFit::SetDefaultFitType ( const char * fitType)
inlinestaticinherited

Definition at line 59 of file TGRSIFit.h.

References TGRSIFit::fDefaultFitType.

◆ SetHist()

virtual void TGRSIFit::SetHist ( TH1 * hist)
inlinevirtualinherited

Definition at line 53 of file TGRSIFit.h.

References TGRSIFit::fHist, and hist.

Referenced by TPeak::Copy(), Fit(), and TPeak::Fit().

◆ SetInitialized()

void TGRSIFit::SetInitialized ( Bool_t flag = true)
inlineprotectedinherited

Definition at line 68 of file TGRSIFit.h.

References TGRSIFit::fInitFlag.

Referenced by InitParams(), and TPeak::InitParams().

◆ SetLogLikelihoodFlag()

static void TMultiPeak::SetLogLikelihoodFlag ( bool flag)
inlinestatic

Definition at line 53 of file TMultiPeak.h.

References fLogLikelihoodFlag.

◆ SinglePeakBG()

Double_t TMultiPeak::SinglePeakBG ( Double_t * dim,
Double_t * par )
private

◆ SortPeaks()

void TMultiPeak::SortPeaks ( Bool_t(* SortFunction )(const TPeak *, const TPeak *) = TPeak::CompareEnergy)

Definition at line 69 of file TMultiPeak.cxx.

References fPeakVec.

Referenced by TMultiPeak().

Member Data Documentation

◆ fBackground

TF1* TMultiPeak::fBackground {nullptr}
private

Definition at line 66 of file TMultiPeak.h.

Referenced by TMultiPeak(), TMultiPeak(), ~TMultiPeak(), Background(), Copy(), and Fit().

◆ fDefaultFitType

TString TGRSIFit::fDefaultFitType
staticprivateinherited

◆ fGoodFitFlag

Bool_t TGRSIFit::fGoodFitFlag {false}
privateinherited

◆ fHist

TRef TGRSIFit::fHist
privateinherited

Definition at line 74 of file TGRSIFit.h.

Referenced by TGRSIFit::GetHist(), and TGRSIFit::SetHist().

◆ fInitFlag

Bool_t TGRSIFit::fInitFlag {false}
privateinherited

◆ fLogLikelihoodFlag

Bool_t TMultiPeak::fLogLikelihoodFlag = false
staticprivate

!

Definition at line 64 of file TMultiPeak.h.

Referenced by GetLogLikelihoodFlag(), and SetLogLikelihoodFlag().

◆ fPeakVec

std::vector<TPeak*> TMultiPeak::fPeakVec
private