Logo ROOT  
Reference Guide
 
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Modules Pages
Loading...
Searching...
No Matches
Smoothing.C
Go to the documentation of this file.
1/// \file
2/// \ingroup tutorial_spectrum
3/// Example to illustrate smoothing using Markov algorithm (class TSpectrum).
4///
5/// \macro_image
6/// \macro_code
7///
8/// \author Miroslav Morhac
9
10void Smoothing()
11{
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 + "/legacy/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++)
26 source[i] = h->GetBinContent(i + 1);
27 h->SetAxisRange(1, 1024);
28 h->Draw("L");
29
30 TSpectrum *s = new TSpectrum();
31
32 TH1F *smooth = new TH1F("smooth", "smooth", nbins, 0., nbins);
33 smooth->SetLineColor(kRed);
34
35 s->SmoothMarkov(source, 1024, 3); // 3, 7, 10
36 for (i = 0; i < nbins; i++)
37 smooth->SetBinContent(i + 1, source[i]);
38 smooth->Draw("L SAME");
39}
#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
ROOT::Detail::TRangeCast< T, true > TRangeDynCast
TRangeDynCast is an adapter class that allows the typed iteration through a TCollection.
float xmin
float xmax
#define gROOT
Definition TROOT.h:406
A ROOT file is an on-disk file, usually with extension .root, that stores objects in a file-system-li...
Definition TFile.h:131
1-D histogram with a float per channel (see TH1 documentation)
Definition TH1.h:650
void SetTitle(const char *title) override
Change/set the title.
Definition TH1.cxx:6721
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