ROOT logo
#ifndef ALIGENTHERMALPHOTONS_H
#define ALIGENTHERMALPHOTONS_H
/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
 * See cxx source for full Copyright notice                               */

//-------------------------------------------------------------------------
// author: Sergey Kiselev, ITEP, Moscow
// e-mail: Sergey.Kiselev@cern.ch
// tel.: 007 495 129 95 45
//-------------------------------------------------------------------------
// Generator of direct thermal photons for the reaction A+B, sqrt(S)
// main assumptions:
// 1+1 Bjorken scaling hydrodinamics.
// 1st order phase transition
// QGP + Mixed (QGP+HHG) + HHG (Hot Hadron Gas) phases, 
// an ideal massless parton gas and ideal massless HHG 
// see 
// F.D.Steffen, nucl-th/9909035
// F.D.Steffen and M.H.Thoma, Phys.Lett. B510, 98 (2001)
// T.Peitzmann and M.H.Thoma, Phys.Rep., 364, 175 (2002) 
//
// photon rates for QGP: Phys.Rep., 364, 175 (2002), section 2.1.1
//
// photon rates for HHG
// prates for i rho --> pi gamma, pi pi --> rho gamma and rho --> pi pi gamma:
// Song and Fai, Phys.Rev. C58, 1689 (1998)
// rates for omega --> pi gamma: Phys.Rev. D44, 2774 (1991)
//
// input parameters:
//       fAProjectile, fATarget - number of nucleons in a nucleus A and B
//       fMinImpactParam - minimal impct parameter, fm
//       fMaxImpactParam - maximal impct parameter, fm
//       fEnergyCMS - sqrt(S) per nucleon pair, AGeV
//       fTau0 - initial proper time, fm/c
//       fT0 - initial temperature, GeV
//       fTc - critical temperature, GeV
//       fTf - freeze-out temperature, GeV
//       fGhhg - effective number of degrees of freedom in HHG
//
//       fYMin - minimal rapidity of photons 
//       fYMax - maximal rapidity of photons
//              in [fYMin,fYMax] uniform distribution of gamma is assumed
//       fPtMin - minimal p_t value of gamma, GeV/c
//       fPtMax - maximal p_t value of gamma, GeV/c
//-------------------------------------------------------------------------
// comparison with SPS and RHIC data, prediction for LHC can be found in
// arXiv:0811.2634 [nucl-th]
//-------------------------------------------------------------------------

class TH1F;

#include "AliGenerator.h"

class AliGenThermalPhotons : public AliGenerator
{
 public:

  AliGenThermalPhotons();
  AliGenThermalPhotons(Int_t npart);
  virtual ~AliGenThermalPhotons();
  virtual void Generate();
  virtual void Init();
  virtual void SetPtRange(Float_t ptmin = 0.1, Float_t ptmax=10.);
  virtual void SetYRange(Float_t ymin = -1., Float_t ymax=1.);

// Setters
    virtual void SetAProjectile(Int_t a = 208.) {fAProjectile = a;}
    virtual void SetATarget(Int_t a = 208.)         {fATarget     = a;}
    virtual void SetEnergyCMS(Float_t energy = 5500.) {fEnergyCMS = energy;}
    virtual void    SetImpactParameterRange(Float_t bmin = 0., Float_t bmax = 0.)
	{fMinImpactParam=bmin; fMaxImpactParam=bmax;}
    virtual void    SetTau0(Float_t tau0 = 0.1)             {fTau0   = tau0;}
    virtual void    SetT0(Float_t   T0   = 0.650)           {fT0     = T0;}
    virtual void    SetTc(Float_t   Tc   = 0.170)           {fTc     = Tc;}
    virtual void    SetTf(Float_t   Tf   = 0.100)           {fTf     = Tf;}
    virtual void    SetGhhg(Int_t   Ghhg = 8)               {fGhhg   = Ghhg;}

 protected:
  Float_t fMinImpactParam;  // minimum impact parameter
  Float_t fMaxImpactParam;  // maximum impact parameter	
  Float_t fTau0;            // initial proper time, fm	
  Float_t fT0;              // initial temperature, GeV	
  Float_t fTc;              // critical temperature, GeV	
  Float_t fTf;              // freeze-out temperature, GeV	
  Int_t   fGhhg;            // number of degrees of freedom in HHG	

  TH1F *fSumPt;             // histo with pt from all origins

 private:

  AliGenThermalPhotons(const AliGenThermalPhotons & ThermalPhotons);
  AliGenThermalPhotons& operator = (const AliGenThermalPhotons & ThermalPhotons) ;


  ClassDef(AliGenThermalPhotons, 1) // Direct thermal photon generator
};
#endif
 AliGenThermalPhotons.h:1
 AliGenThermalPhotons.h:2
 AliGenThermalPhotons.h:3
 AliGenThermalPhotons.h:4
 AliGenThermalPhotons.h:5
 AliGenThermalPhotons.h:6
 AliGenThermalPhotons.h:7
 AliGenThermalPhotons.h:8
 AliGenThermalPhotons.h:9
 AliGenThermalPhotons.h:10
 AliGenThermalPhotons.h:11
 AliGenThermalPhotons.h:12
 AliGenThermalPhotons.h:13
 AliGenThermalPhotons.h:14
 AliGenThermalPhotons.h:15
 AliGenThermalPhotons.h:16
 AliGenThermalPhotons.h:17
 AliGenThermalPhotons.h:18
 AliGenThermalPhotons.h:19
 AliGenThermalPhotons.h:20
 AliGenThermalPhotons.h:21
 AliGenThermalPhotons.h:22
 AliGenThermalPhotons.h:23
 AliGenThermalPhotons.h:24
 AliGenThermalPhotons.h:25
 AliGenThermalPhotons.h:26
 AliGenThermalPhotons.h:27
 AliGenThermalPhotons.h:28
 AliGenThermalPhotons.h:29
 AliGenThermalPhotons.h:30
 AliGenThermalPhotons.h:31
 AliGenThermalPhotons.h:32
 AliGenThermalPhotons.h:33
 AliGenThermalPhotons.h:34
 AliGenThermalPhotons.h:35
 AliGenThermalPhotons.h:36
 AliGenThermalPhotons.h:37
 AliGenThermalPhotons.h:38
 AliGenThermalPhotons.h:39
 AliGenThermalPhotons.h:40
 AliGenThermalPhotons.h:41
 AliGenThermalPhotons.h:42
 AliGenThermalPhotons.h:43
 AliGenThermalPhotons.h:44
 AliGenThermalPhotons.h:45
 AliGenThermalPhotons.h:46
 AliGenThermalPhotons.h:47
 AliGenThermalPhotons.h:48
 AliGenThermalPhotons.h:49
 AliGenThermalPhotons.h:50
 AliGenThermalPhotons.h:51
 AliGenThermalPhotons.h:52
 AliGenThermalPhotons.h:53
 AliGenThermalPhotons.h:54
 AliGenThermalPhotons.h:55
 AliGenThermalPhotons.h:56
 AliGenThermalPhotons.h:57
 AliGenThermalPhotons.h:58
 AliGenThermalPhotons.h:59
 AliGenThermalPhotons.h:60
 AliGenThermalPhotons.h:61
 AliGenThermalPhotons.h:62
 AliGenThermalPhotons.h:63
 AliGenThermalPhotons.h:64
 AliGenThermalPhotons.h:65
 AliGenThermalPhotons.h:66
 AliGenThermalPhotons.h:67
 AliGenThermalPhotons.h:68
 AliGenThermalPhotons.h:69
 AliGenThermalPhotons.h:70
 AliGenThermalPhotons.h:71
 AliGenThermalPhotons.h:72
 AliGenThermalPhotons.h:73
 AliGenThermalPhotons.h:74
 AliGenThermalPhotons.h:75
 AliGenThermalPhotons.h:76
 AliGenThermalPhotons.h:77
 AliGenThermalPhotons.h:78
 AliGenThermalPhotons.h:79
 AliGenThermalPhotons.h:80
 AliGenThermalPhotons.h:81
 AliGenThermalPhotons.h:82
 AliGenThermalPhotons.h:83
 AliGenThermalPhotons.h:84
 AliGenThermalPhotons.h:85
 AliGenThermalPhotons.h:86
 AliGenThermalPhotons.h:87
 AliGenThermalPhotons.h:88
 AliGenThermalPhotons.h:89
 AliGenThermalPhotons.h:90
 AliGenThermalPhotons.h:91
 AliGenThermalPhotons.h:92
 AliGenThermalPhotons.h:93
 AliGenThermalPhotons.h:94
 AliGenThermalPhotons.h:95
 AliGenThermalPhotons.h:96
 AliGenThermalPhotons.h:97