GRSISort "v4.0.0.5"
An extension of the ROOT analysis Framework
|
TDecay is a class for fitting halflives during nuclear decay A TDecay consists of multiple TDecayChains, where a TDecayChain is starts at a specific nucleus which has a population before the decay fit takes place. This could be a nucleus with a daughter. One TDecayChain would consist of just the daughter while the the other decay chain would be the parent and daughter. TDecayChains are made up of multiple TSingleDecays which holds the nucleus specific information such as name, id, halflife and intensity. When any of the above classes are fit to a histogram, they use a TDecayFit. The TDecayFit is a a TF1 with extra information such as the class that was used to create the TDecayFit. Furthermore, the function DrawComponents() can be used to draw the activites of the individual nuclei involved in the TDecayFit.
Public Member Functions | |
TDecay ()=default | |
TDecay (const TDecay &)=default | |
TDecay (std::vector< TDecayChain * > chainList) | |
TDecay (TDecay &&) noexcept=default | |
~TDecay ()=default | |
void | AddChain (TDecayChain *chain) |
Double_t | DecayFit (Double_t *dim, Double_t *par) |
void | Draw (Option_t *opt="") override |
void | DrawBackground (Option_t *opt="") |
void | DrawComponents (Option_t *opt="", Bool_t color_flag=true) override |
TFitResultPtr | Fit (TH1 *fithist, Option_t *opt="") |
void | FixBackground () |
void | FixBackground (const Double_t &background) |
void | FixHalfLife (Int_t Id, Double_t halflife) |
Double_t | GetBackground () const |
Double_t | GetBackgroundError () const |
TDecayChain * | GetChain (UInt_t idx) |
TDecayFit * | GetFitFunc () |
TGraph * | GetResiduals () |
TDecay & | operator= (const TDecay &)=default |
TDecay & | operator= (TDecay &&) noexcept=default |
void | Print (Option_t *opt="") const override |
void | PrintMap () const |
void | ReleaseBackground () |
void | SetBackground (Double_t background) |
void | SetBackgroundLimits (const Double_t &low, const Double_t &high) |
void | SetDecayRateLimits (Int_t Id, Double_t low, Double_t high) |
void | SetHalfLife (Int_t Id, Double_t halflife) |
void | SetHalfLifeLimits (Int_t Id, Double_t low, Double_t high) |
void | SetRange (Double_t xlow, Double_t xhigh) |
Private Member Functions | |
Double_t | ComponentFunc (Double_t *dim, Double_t *par) |
const TDecayFit * | GetFitFunction () override |
void | RemakeMap () |
void | SetParameters () |
Private Attributes | |
std::vector< TDecayChain * > | fChainList |
std::map< Int_t, std::vector< TSingleDecay * > > | fDecayMap |
TDecayFit * | fFitFunc {nullptr} |
|
default |
|
explicit |
Definition at line 624 of file TDecay.cxx.
References DecayFit(), fFitFunc, RemakeMap(), TDecayFit::SetDecay(), and SetParameters().
|
default |
|
defaultnoexcept |
|
default |
|
inline |
|
private |
Function for drawing summed components.
This function takes 1 parameter, the decay Id.
Definition at line 759 of file TDecay.cxx.
References fDecayMap.
Referenced by DrawComponents().
Double_t TDecay::DecayFit | ( | Double_t * | dim, |
Double_t * | par ) |
This fits the total activity caused by the entire chain.
Definition at line 644 of file TDecay.cxx.
References fChainList, and fFitFunc.
Referenced by TDecay(), and SetParameters().
|
override |
Definition at line 711 of file TDecay.cxx.
References fFitFunc, and SetParameters().
void TDecay::DrawBackground | ( | Option_t * | opt = "" | ) |
Definition at line 795 of file TDecay.cxx.
References fFitFunc, and GetBackground().
Referenced by DrawComponents().
|
overridevirtual |
Loop over all of the ids and draw them seperately on the pad
Reimplemented from TVirtualDecay.
Definition at line 773 of file TDecay.cxx.
References ComponentFunc(), DrawBackground(), fDecayMap, and fFitFunc.
TFitResultPtr TDecay::Fit | ( | TH1 * | fithist, |
Option_t * | opt = "" ) |
Definition at line 666 of file TDecay.cxx.
References fChainList, fFitFunc, TDecayFit::Fit(), TLMFitter::Fit(), TDecayFit::GetDecay(), and SetParameters().
|
inline |
|
inline |
|
inline |
Definition at line 366 of file TDecay.h.
Referenced by DrawBackground(), and Print().
|
inline |
TDecayChain * TDecay::GetChain | ( | UInt_t | idx | ) |
Definition at line 633 of file TDecay.cxx.
References fChainList, and SetParameters().
|
inlineoverrideprivatevirtual |
Implements TVirtualDecay.
|
overridevirtual |
Implements TVirtualDecay.
Definition at line 846 of file TDecay.cxx.
References fDecayMap, GetBackground(), and GetBackgroundError().
void TDecay::PrintMap | ( | ) | const |
Definition at line 857 of file TDecay.cxx.
References fDecayMap.
|
private |
Definition at line 876 of file TDecay.cxx.
References fChainList, and fDecayMap.
Referenced by TDecay(), and SetParameters().
|
inline |
void TDecay::SetDecayRateLimits | ( | Int_t | Id, |
Double_t | low, | ||
Double_t | high ) |
Definition at line 833 of file TDecay.cxx.
References fDecayMap.
void TDecay::SetHalfLife | ( | Int_t | Id, |
Double_t | halflife ) |
Definition at line 807 of file TDecay.cxx.
References fDecayMap.
void TDecay::SetHalfLifeLimits | ( | Int_t | Id, |
Double_t | low, | ||
Double_t | high ) |
Definition at line 820 of file TDecay.cxx.
References fDecayMap.
|
private |
Definition at line 717 of file TDecay.cxx.
References DecayFit(), fChainList, fDecayMap, fFitFunc, TDecayFit::GetDecay(), RemakeMap(), and TDecayFit::SetDecay().
Referenced by TDecay(), Draw(), Fit(), and GetChain().
void TDecay::SetRange | ( | Double_t | xlow, |
Double_t | xhigh ) |
Definition at line 868 of file TDecay.cxx.
References fChainList, and fFitFunc.
|
private |
Definition at line 385 of file TDecay.h.
Referenced by DecayFit(), Fit(), GetChain(), RemakeMap(), SetParameters(), and SetRange().
|
private |
Definition at line 387 of file TDecay.h.
Referenced by ComponentFunc(), DrawComponents(), Print(), PrintMap(), RemakeMap(), SetDecayRateLimits(), SetHalfLife(), SetHalfLifeLimits(), and SetParameters().
|
private |
Definition at line 386 of file TDecay.h.
Referenced by TDecay(), DecayFit(), Draw(), DrawBackground(), DrawComponents(), Fit(), SetParameters(), and SetRange().