4 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
5 * See cxx source for full Copyright notice */
7 // invariant differential yields and cross sections
8 // author: Eulogio Serradilla <eulogio.serradilla@cern.ch>
15 class AliLnSpectra: public TObject
19 AliLnSpectra(const TString& particle, const TString& ptFilename, const TString& tag, const TString& outputFilename, const TString& otag, const Double_t xsec[3]);
21 virtual ~AliLnSpectra();
23 TGraphErrors* GetDiffYieldPt(const TH1D* hPt, Int_t nEvent, const TString& name) const;
24 TGraphErrors* GetInvDiffYieldPt(const TH1D* hPt, Int_t nEvent, const TString& name) const;
25 TGraphErrors* GetInvDiffYieldPt(const TGraphErrors* grDYieldPt, const TString& name) const;
26 TGraphErrors* GetInvDiffXsectionPt(const TGraphErrors* grInvDYieldPt, const Double_t* sigma, const TString& name) const;
28 TGraphErrors* AddSystError(const TGraphErrors* gr, Double_t percent, const TString& name) const;
32 void SetRapidityInterval(Double_t ymin, Double_t ymax) { fYMin = ymin; fYMax = ymax; }
33 void SetNormalizeToINEL(Bool_t flag=1) { fNormToInel = flag; }
35 void SetOnlyGeneration(Bool_t flag=1) { fIsOnlyGen = flag; }
37 void SetScalingFactor(Double_t syserr=1) { fSysErr = syserr; }
39 void SetInelXSection(Double_t xsec, Double_t statErr, Double_t systErr) { fInelXsec[0] = xsec; fInelXsec[1] = statErr; fInelXsec[2] = systErr; }
41 TF1* Tsallis(Double_t m0, const TString& name, Double_t xmin=0., Double_t xmax=10.) const;
42 TF1* Tsallis(Double_t m0, Double_t xsect, const TString& name, Double_t xmin=0., Double_t xmax=10.) const;
43 TF1* TsallisDiffYield(Double_t m0, const TString& name, Double_t xmin=0., Double_t xmax=10.) const;
47 AliLnSpectra(const AliLnSpectra& other);
48 AliLnSpectra& operator=(const AliLnSpectra& other);
52 TString fParticle; // particle name
54 TString fPtFilename; // pt filename
55 TString fTag; // tag for pt file
57 TString fOutputFilename; // output filename
58 TString fOutputTag; // tag for output file
60 Double_t fYMin; // rapidity low limit
61 Double_t fYMax; // rapidity high limit
63 Bool_t fNormToInel; // normalize to inelastic events
64 Bool_t fIsOnlyGen; // if no need for correction
66 Double_t fSysErr; // variation for systematics
67 Double_t fInelXsec[3]; // total inelastic cross section, syst. and stat. errors (mb)
69 ClassDef(AliLnSpectra,1)
72 #endif // ALILNSPECTRA_H