Logo ROOT  
Reference Guide
Background_order.C
Go to the documentation of this file.
1/// \file
2/// \ingroup tutorial_spectrum
3/// \notebook
4/// Example to illustrate the influence of the clipping filter difference order
5/// on the estimated background.
6///
7/// \macro_image
8/// \macro_code
9///
10/// \authors Miroslav Morhac, Olivier Couet
11
12void Background_order() {
13 Int_t i;
14 const Int_t nbins = 4096;
15 Double_t xmin = 0;
16 Double_t xmax = 4096;
17 Double_t source[nbins];
18 gROOT->ForceStyle();
19
20 TH1F *d1 = new TH1F("d1","",nbins,xmin,xmax);
21 TH1F *d2 = new TH1F("d2","",nbins,xmin,xmax);
22 TH1F *d3 = new TH1F("d3","",nbins,xmin,xmax);
23 TH1F *d4 = new TH1F("d4","",nbins,xmin,xmax);
24
25 TString dir = gROOT->GetTutorialDir();
26 TString file = dir+"/spectrum/TSpectrum.root";
27 TFile *f = new TFile(file.Data());
28 TH1F *back = (TH1F*) f->Get("back2");
29 back->SetTitle("Influence of clipping filter difference order on the estimated background");
30 back->SetAxisRange(1220,1460);
31 back->SetMaximum(3000);
32 back->Draw("L");
33
34 TSpectrum *s = new TSpectrum();
35
36 for (i = 0; i < nbins; i++) source[i]=back->GetBinContent(i + 1);
37 s->Background(source,nbins,40,TSpectrum::kBackDecreasingWindow,
40 for (i = 0; i < nbins; i++) d1->SetBinContent(i + 1,source[i]);
41 d1->SetLineColor(kRed);
42 d1->Draw("SAME L");
43
44 for (i = 0; i < nbins; i++) source[i]=back->GetBinContent(i + 1);
45 s->Background(source,nbins,40,TSpectrum::kBackDecreasingWindow,
48 for (i = 0; i < nbins; i++) d2->SetBinContent(i + 1,source[i]);
50 d2->Draw("SAME L");
51
52 for (i = 0; i < nbins; i++) source[i]=back->GetBinContent(i + 1);
53 s->Background(source,nbins,40,TSpectrum::kBackDecreasingWindow,
56 for (i = 0; i < nbins; i++) d3->SetBinContent(i + 1,source[i]);
58 d3->Draw("SAME L");
59
60 for (i = 0; i < nbins; i++) source[i]=back->GetBinContent(i + 1);
61 s->Background(source,nbins,40,TSpectrum::kBackDecreasingWindow,
64 for (i = 0; i < nbins; i++) d4->SetBinContent(i + 1,source[i]);
66 d4->Draw("SAME L");
67}
#define f(i)
Definition: RSha256.hxx:104
int Int_t
Definition: RtypesCore.h:41
const Bool_t kFALSE
Definition: RtypesCore.h:88
double Double_t
Definition: RtypesCore.h:55
@ kRed
Definition: Rtypes.h:64
@ kGreen
Definition: Rtypes.h:64
@ kMagenta
Definition: Rtypes.h:64
@ kBlue
Definition: Rtypes.h:64
float xmin
Definition: THbookFile.cxx:93
float xmax
Definition: THbookFile.cxx:93
#define gROOT
Definition: TROOT.h:415
virtual void SetLineColor(Color_t lcolor)
Set the line color.
Definition: TAttLine.h:40
A ROOT file is a suite of consecutive data records (TKey instances) with a well defined format.
Definition: TFile.h:48
1-D histogram with a float per channel (see TH1 documentation)}
Definition: TH1.h:571
virtual void SetTitle(const char *title)
See GetStatOverflows for more information.
Definition: TH1.cxx:6333
virtual void SetMaximum(Double_t maximum=-1111)
Definition: TH1.h:394
virtual void SetBinContent(Int_t bin, Double_t content)
Set bin content see convention for numbering bins in TH1::GetBin In case the bin number is greater th...
Definition: TH1.cxx:8666
virtual void Draw(Option_t *option="")
Draw this histogram with options.
Definition: TH1.cxx:2998
virtual Double_t GetBinContent(Int_t bin) const
Return content of bin number bin.
Definition: TH1.cxx:4899
virtual void SetAxisRange(Double_t xmin, Double_t xmax, Option_t *axis="X")
Set the "axis" range.
Definition: Haxis.cxx:201
Advanced Spectra Processing.
Definition: TSpectrum.h:18
@ kBackOrder8
Definition: TSpectrum.h:40
@ kBackOrder2
Definition: TSpectrum.h:37
@ kBackOrder6
Definition: TSpectrum.h:39
@ kBackDecreasingWindow
Definition: TSpectrum.h:42
@ kBackOrder4
Definition: TSpectrum.h:38
@ kBackSmoothing3
Definition: TSpectrum.h:43
Basic string class.
Definition: TString.h:131
static constexpr double s
Definition: file.py:1