Logo ROOT  
Reference Guide
 
Loading...
Searching...
No Matches
Smoothing.C
Go to the documentation of this file.
1/// \file
2/// \ingroup tutorial_spectrum
3/// \notebook
4/// Example to illustrate smoothing using Markov algorithm (class TSpectrum).
5///
6/// \macro_image
7/// \macro_code
8///
9/// \author Miroslav Morhac
10
11void Smoothing() {
12 Int_t i;
13 const Int_t nbins = 1024;
14 Double_t xmin = 0;
15 Double_t xmax = nbins;
16 Double_t source[nbins];
17 gROOT->ForceStyle();
18
19 TString dir = gROOT->GetTutorialDir();
20 TString file = dir+"/spectrum/TSpectrum.root";
21 TFile *f = new TFile(file.Data());
22 TH1F *h = (TH1F*) f->Get("back1");
23 h->SetTitle("Smoothed spectrum for m=3");
24
25 for (i = 0; i < nbins; i++) source[i]=h->GetBinContent(i + 1);
26 h->SetAxisRange(1,1024);
27 h->Draw("L");
28
29 TSpectrum *s = new TSpectrum();
30
31 TH1F *smooth = new TH1F("smooth","smooth",nbins,0.,nbins);
32 smooth->SetLineColor(kRed);
33
34 s->SmoothMarkov(source,1024,3); //3, 7, 10
35 for (i = 0; i < nbins; i++) smooth->SetBinContent(i + 1,source[i]);
36 smooth->Draw("L SAME");
37}
#define f(i)
Definition RSha256.hxx:104
#define h(i)
Definition RSha256.hxx:106
int Int_t
Definition RtypesCore.h:45
double Double_t
Definition RtypesCore.h:59
@ kRed
Definition Rtypes.h:66
float xmin
float xmax
#define gROOT
Definition TROOT.h:407
virtual void SetLineColor(Color_t lcolor)
Set the line color.
Definition TAttLine.h:40
A ROOT file is an on-disk file, usually with extension .root, that stores objects in a file-system-li...
Definition TFile.h:53
1-D histogram with a float per channel (see TH1 documentation)
Definition TH1.h:621
void SetTitle(const char *title) override
Change/set the title.
Definition TH1.cxx:6686
void Draw(Option_t *option="") override
Draw this histogram with options.
Definition TH1.cxx:3066
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:9190
Advanced Spectra Processing.
Definition TSpectrum.h:18
const char * SmoothMarkov(Double_t *source, Int_t ssize, Int_t averWindow)
One-dimensional markov spectrum smoothing function.
Basic string class.
Definition TString.h:139
const char * Data() const
Definition TString.h:376