LCOV - code coverage report
Current view: top level - EVGEN - AliGenThermalPhotons.h (source / functions) Hit Total Coverage
Test: coverage.info Lines: 1 10 10.0 %
Date: 2016-06-14 17:26:59 Functions: 1 17 5.9 %

          Line data    Source code
       1             : #ifndef ALIGENTHERMALPHOTONS_H
       2             : #define ALIGENTHERMALPHOTONS_H
       3             : /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
       4             :  * See cxx source for full Copyright notice                               */
       5             : 
       6             : //-------------------------------------------------------------------------
       7             : // author: Sergey Kiselev, ITEP, Moscow
       8             : // e-mail: Sergey.Kiselev@cern.ch
       9             : // tel.: 007 495 129 95 45
      10             : //-------------------------------------------------------------------------
      11             : // Generator of direct thermal photons for the reaction A+B, sqrt(S)
      12             : // main assumptions:
      13             : // 1+1 Bjorken scaling hydrodinamics.
      14             : // 1st order phase transition
      15             : // QGP + Mixed (QGP+HHG) + HHG (Hot Hadron Gas) phases, 
      16             : // an ideal massless parton gas and ideal massless HHG 
      17             : // see 
      18             : // F.D.Steffen, nucl-th/9909035
      19             : // F.D.Steffen and M.H.Thoma, Phys.Lett. B510, 98 (2001)
      20             : // T.Peitzmann and M.H.Thoma, Phys.Rep., 364, 175 (2002) 
      21             : //
      22             : // photon rates for QGP: Phys.Rep., 364, 175 (2002), section 2.1.1
      23             : //
      24             : // photon rates for HHG
      25             : // prates for i rho --> pi gamma, pi pi --> rho gamma and rho --> pi pi gamma:
      26             : // Song and Fai, Phys.Rev. C58, 1689 (1998)
      27             : // rates for omega --> pi gamma: Phys.Rev. D44, 2774 (1991)
      28             : //
      29             : // input parameters:
      30             : //       fAProjectile, fATarget - number of nucleons in a nucleus A and B
      31             : //       fMinImpactParam - minimal impct parameter, fm
      32             : //       fMaxImpactParam - maximal impct parameter, fm
      33             : //       fEnergyCMS - sqrt(S) per nucleon pair, AGeV
      34             : //       fTau0 - initial proper time, fm/c
      35             : //       fT0 - initial temperature, GeV
      36             : //       fTc - critical temperature, GeV
      37             : //       fTf - freeze-out temperature, GeV
      38             : //       fGhhg - effective number of degrees of freedom in HHG
      39             : //
      40             : //       fYMin - minimal rapidity of photons 
      41             : //       fYMax - maximal rapidity of photons
      42             : //              in [fYMin,fYMax] uniform distribution of gamma is assumed
      43             : //       fPtMin - minimal p_t value of gamma, GeV/c
      44             : //       fPtMax - maximal p_t value of gamma, GeV/c
      45             : //-------------------------------------------------------------------------
      46             : // comparison with SPS and RHIC data, prediction for LHC can be found in
      47             : // arXiv:0811.2634 [nucl-th]
      48             : //-------------------------------------------------------------------------
      49             : 
      50             : class TH1F;
      51             : 
      52             : #include "AliGenerator.h"
      53             : 
      54             : class AliGenThermalPhotons : public AliGenerator
      55             : {
      56             :  public:
      57             : 
      58             :   AliGenThermalPhotons();
      59             :   AliGenThermalPhotons(Int_t npart);
      60             :   virtual ~AliGenThermalPhotons();
      61             :   virtual void Generate();
      62             :   virtual void Init();
      63             :   virtual void SetPtRange(Float_t ptmin = 0.1, Float_t ptmax=10.);
      64             :   virtual void SetYRange(Float_t ymin = -1., Float_t ymax=1.);
      65             : 
      66             : // Setters
      67           0 :     virtual void SetAProjectile(Int_t a = 208.) {fAProjectile = a;}
      68           0 :     virtual void SetATarget(Int_t a = 208.)         {fATarget     = a;}
      69           0 :     virtual void SetEnergyCMS(Float_t energy = 5500.) {fEnergyCMS = energy;}
      70             :     virtual void    SetImpactParameterRange(Float_t bmin = 0., Float_t bmax = 0.)
      71           0 :         {fMinImpactParam=bmin; fMaxImpactParam=bmax;}
      72           0 :     virtual void    SetTau0(Float_t tau0 = 0.1)             {fTau0   = tau0;}
      73           0 :     virtual void    SetT0(Float_t   T0   = 0.650)           {fT0     = T0;}
      74           0 :     virtual void    SetTc(Float_t   Tc   = 0.170)           {fTc     = Tc;}
      75           0 :     virtual void    SetTf(Float_t   Tf   = 0.100)           {fTf     = Tf;}
      76           0 :     virtual void    SetGhhg(Int_t   Ghhg = 8)               {fGhhg   = Ghhg;}
      77             : 
      78             :  protected:
      79             :   Float_t fMinImpactParam;  // minimum impact parameter
      80             :   Float_t fMaxImpactParam;  // maximum impact parameter 
      81             :   Float_t fTau0;            // initial proper time, fm  
      82             :   Float_t fT0;              // initial temperature, GeV 
      83             :   Float_t fTc;              // critical temperature, GeV        
      84             :   Float_t fTf;              // freeze-out temperature, GeV      
      85             :   Int_t   fGhhg;            // number of degrees of freedom in HHG      
      86             : 
      87             :   TH1F *fSumPt;             // histo with pt from all origins
      88             : 
      89             :  private:
      90             : 
      91             :   AliGenThermalPhotons(const AliGenThermalPhotons & ThermalPhotons);
      92             :   AliGenThermalPhotons& operator = (const AliGenThermalPhotons & ThermalPhotons) ;
      93             : 
      94             : 
      95           6 :   ClassDef(AliGenThermalPhotons, 1) // Direct thermal photon generator
      96             : };
      97             : #endif

Generated by: LCOV version 1.11