Logo ROOT  
Reference Guide
DeconvolutionRL_wide_boost.C
Go to the documentation of this file.
1/// \file
2/// \ingroup tutorial_spectrum
3/// \notebook
4/// Example to illustrate deconvolution function (class TSpectrum).
5///
6/// \macro_image
7/// \macro_code
8///
9/// \authors Miroslav Morhac, Olivier Couet
10
11void DeconvolutionRL_wide_boost() {
12 Int_t i;
13 const Int_t nbins = 256;
14 Double_t xmin = 0;
15 Double_t xmax = nbins;
16 Double_t source[nbins];
17 Double_t response[nbins];
18 gROOT->ForceStyle();
19
20 TString dir = gROOT->GetTutorialDir();
21 TString file = dir+"/spectrum/TSpectrum.root";
22 TFile *f = new TFile(file.Data());
23 TH1F* h = (TH1F*) f->Get("decon3");
24 h->SetTitle("Deconvolution of closely positioned overlapping peaks using boosted Richardson-Lucy deconvolution method");
25 TH1F* d = (TH1F*) f->Get("decon_response_wide");
26
27 for (i = 0; i < nbins; i++) source[i]=h->GetBinContent(i + 1);
28 for (i = 0; i < nbins; i++) response[i]=d->GetBinContent(i + 1);
29
30 h->Draw("L");
31 TSpectrum *s = new TSpectrum();
32 s->DeconvolutionRL(source,response,256,200,50,1.2);
33
34 for (i = 0; i < nbins; i++) d->SetBinContent(i + 1,source[i]);
35 d->SetLineColor(kRed);
36 d->Draw("SAME L");
37}
#define d(i)
Definition: RSha256.hxx:102
#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
Definition: THbookFile.cxx:95
float xmax
Definition: THbookFile.cxx:95
#define gROOT
Definition: TROOT.h:404
A ROOT file is a suite of consecutive data records (TKey instances) with a well defined format.
Definition: TFile.h:54
1-D histogram with a float per channel (see TH1 documentation)}
Definition: TH1.h:577
Advanced Spectra Processing.
Definition: TSpectrum.h:18
Basic string class.
Definition: TString.h:136
static constexpr double s
Definition: file.py:1