/*
<img src="picts/AliGeneratorClass.gif">
</pre>
<br clear=left>
<font size=+2 color=red>
<p>The responsible person for this module is
<a href="mailto:andreas.morsch@cern.ch">Andreas Morsch</a>.
</font>
<pre>
*/
//End_Html
#include <TArrayF.h>
#include <TF1.h>
#include "AliConst.h"
#include "AliGenEventHeader.h"
#include "AliGenPromptPhotons.h"
#include "AliLog.h"
#include "AliRun.h"
ClassImp(AliGenPromptPhotons)
TF1* AliGenPromptPhotons::fgDataPt = NULL;
TF1* AliGenPromptPhotons::fgWSzA = NULL;
TF1* AliGenPromptPhotons::fgWSzB = NULL;
TF1* AliGenPromptPhotons::fgTA = NULL;
TF1* AliGenPromptPhotons::fgTB = NULL;
TF1* AliGenPromptPhotons::fgTAxTB = NULL;
TF1* AliGenPromptPhotons::fgTAB = NULL;
AliGenPromptPhotons::AliGenPromptPhotons()
:AliGenerator(-1),
fAProjectile(0.),
fATarget(0.),
fEnergyCMS(0.),
fMinImpactParam(0.),
fMaxImpactParam(0.)
{
SetCutVertexZ();
SetPtRange();
SetYRange();
}
AliGenPromptPhotons::AliGenPromptPhotons(Int_t npart)
:AliGenerator(npart),
fAProjectile(208),
fATarget(208),
fEnergyCMS(5500.),
fMinImpactParam(0.),
fMaxImpactParam(0.)
{
fName="PromptPhotons";
fTitle="Prompt photons from pp data fit + T_AB";
SetCutVertexZ();
SetPtRange();
SetYRange();
}
AliGenPromptPhotons::~AliGenPromptPhotons()
{
delete fgDataPt;
delete fgWSzA;
delete fgWSzB;
delete fgTA;
delete fgTB;
delete fgTAxTB;
delete fgTAB;
}
void AliGenPromptPhotons::Init()
{
fgDataPt = new TF1("fgDataPt",FitData,fPtMin,fPtMax,1);
fgDataPt->SetParameter(0,fEnergyCMS);
const Double_t d=0.54;
const Double_t ra = 1.19*TMath::Power(fAProjectile,1./3.)-1.61/TMath::Power(fAProjectile,1./3.);
const Double_t eps=0.01;
const Double_t ramax=ra+d*TMath::Log((1.-eps+TMath::Exp(-ra/d))/eps);
TF1 fWSforNormA("fWSforNormA",&WSforNorm,0,ramax,2);
fWSforNormA.SetParameters(ra,d);
fWSforNormA.SetParNames("RA","d");
const Double_t ca=1./fWSforNormA.Integral(0.,ramax);
const Double_t rb=1.19*TMath::Power(fATarget,1./3.)-1.61/TMath::Power(fATarget,1./3.);
const Double_t rbmax=rb+d*TMath::Log((1.-eps+TMath::Exp(-rb/d))/eps);
TF1 fWSforNormB("fWSforNormB",&WSforNorm,0,rbmax,2);
fWSforNormB.SetParameters(rb,d);
fWSforNormB.SetParNames("RB","d");
const Double_t cb=1./fWSforNormB.Integral(0.,rbmax);
fgWSzA = new TF1("fgWSzA",WSz,0.,ramax,4);
fgWSzA->SetParameter(0,ra);
fgWSzA->SetParameter(1,d);
fgWSzA->SetParameter(2,ca);
fgTA = new TF1("fgTA",TA,0.,ramax,1);
fgTA->SetParameter(0,ramax);
fgWSzB = new TF1("fgWSzB",WSz,0.,rbmax,4);
fgWSzB->SetParameter(0,rb);
fgWSzB->SetParameter(1,d);
fgWSzB->SetParameter(2,cb);
fgTB = new TF1("fgTB",TB,0.,TMath::Pi(),3);
fgTB->SetParameter(0,rbmax);
fgTAxTB = new TF1("fgTAxTB",TAxTB,0,ramax,2);
fgTAxTB->SetParameter(0,rbmax);
fgTAB = new TF1("fgTAB",TAB,0.,ramax+rbmax,2);
fgTAB->SetParameter(0,ramax);
fgTAB->SetParameter(1,rbmax);
}
void AliGenPromptPhotons::Generate()
{
Float_t polar[3]= {0,0,0};
Float_t origin[3];
Float_t time;
Float_t p[3];
Float_t random[6];
Int_t nt;
for (Int_t j=0;j<3;j++) origin[j]=fOrigin[j];
time = fTimeOrigin;
TArrayF eventVertex;
eventVertex.Set(3);
eventVertex[0] = origin[0];
eventVertex[1] = origin[1];
eventVertex[2] = origin[2];
Float_t eventTime = time;
Int_t nGam;
Float_t b,pt,rapidity,phi,ww;
b=TMath::Sqrt(fMinImpactParam*fMinImpactParam+(fMaxImpactParam*fMaxImpactParam-fMinImpactParam*fMinImpactParam)*gRandom->Rndm());
Double_t dsdyPP=fgDataPt->Integral(fPtMin,fPtMax);
ww=dsdyPP*1.0e-10*(fYMax-fYMin)*fAProjectile*fATarget*fgTAB->Eval(b);
nGam=Int_t(ww);
if(gRandom->Rndm() < (ww-(Float_t)nGam)) nGam++;
if(nGam) {
for(Int_t i=0; i<nGam; i++) {
pt=fgDataPt->GetRandom();
Rndm(random,2);
rapidity=(fYMax-fYMin)*random[0]+fYMin;
phi=2.*TMath::Pi()*random[1];
p[0]=pt*TMath::Cos(phi);
p[1]=pt*TMath::Sin(phi);
p[2]=pt*TMath::SinH(rapidity);
if(fVertexSmear==kPerTrack) {
Rndm(random,6);
for (Int_t j=0;j<3;j++) {
origin[j]=fOrigin[j]+fOsigma[j]*TMath::Cos(2*random[2*j]*TMath::Pi())*
TMath::Sqrt(-2*TMath::Log(random[2*j+1]));
}
Rndm(random,2);
time = fTimeOrigin + fOsigma[2]/TMath::Ccgs()*
TMath::Cos(2*random[0]*TMath::Pi())*
TMath::Sqrt(-2*TMath::Log(random[1]));
}
PushTrack(fTrackIt,-1,22,p,origin,polar,time,kPPrimary,nt,1.);
}
}
AliGenEventHeader* header = new AliGenEventHeader("PromptPhotons");
header->SetPrimaryVertex(eventVertex);
header->SetInteractionTime(eventTime);
header->SetNProduced(fNpart);
gAlice->SetGenEventHeader(header);
}
void AliGenPromptPhotons::SetPtRange(Float_t ptmin, Float_t ptmax) {
AliGenerator::SetPtRange(ptmin, ptmax);
}
void AliGenPromptPhotons::SetYRange(Float_t ymin, Float_t ymax) {
AliGenerator::SetYRange(ymin, ymax);
}
Double_t AliGenPromptPhotons::FitData(const Double_t* x, const Double_t* par) {
const Int_t nMax=4;
const Double_t log10x[nMax]={ -2., -1., -0.6, -0.3};
const Double_t log10F[nMax]={ 19., 13., 9.8, 7.};
const Double_t xT=2.*x[0]/par[0];
const Double_t log10xT=TMath::Log10(xT);
Int_t i=0;
while(log10xT>log10x[i] && i<nMax) i++;
if(i==0) i=1;
if(i==nMax) i=nMax-1;
const Double_t alpha=(log10F[i]-log10F[i-1])/(log10x[i]-log10x[i-1]);
const Double_t beta=log10F[i-1]-alpha*log10x[i-1];
return (TMath::TwoPi()*x[0])*TMath::Power(10.,alpha*log10xT+beta)/TMath::Power(par[0],5.);
}
Double_t AliGenPromptPhotons::WSforNorm(const Double_t* x, const Double_t* par) {
const Double_t r=x[0];
const Double_t bigR=par[0],d=par[1];
return 4.*TMath::Pi()*r*r/(1.+TMath::Exp((r-bigR)/d));
}
Double_t AliGenPromptPhotons::WSz(const Double_t* x, const Double_t* par) {
const Double_t z=x[0];
const Double_t bigR=par[0],d=par[1],C=par[2],b=par[3];
return C/(1.+TMath::Exp((TMath::Sqrt(b*b+z*z)-bigR)/d));
}
Double_t AliGenPromptPhotons::TA(const Double_t* x, const Double_t* par) {
const Double_t b=x[0];
const Double_t ramax=par[0];
fgWSzA->SetParameter(3,b);
return 2.*fgWSzA->Integral(0.,TMath::Sqrt(ramax*ramax-b*b));
}
Double_t AliGenPromptPhotons::TB(const Double_t* x, const Double_t* par) {
const Double_t phi=x[0];
const Double_t rbmax=par[0],b=par[1],s=par[2];
const Double_t w=TMath::Sqrt(s*s+b*b-2.*s*b*TMath::Cos(phi));
fgWSzB->SetParameter(3,w);
return 2.*fgWSzB->Integral(0.,TMath::Sqrt(rbmax*rbmax-w*w));;
}
Double_t AliGenPromptPhotons::TAxTB(const Double_t* x, const Double_t* par) {
const Double_t s = x[0];
const Double_t rbmax=par[0],b=par[1];
if(s==0.) return 0.;
fgTB->SetParameter(1,b);
fgTB->SetParameter(2,s);
Double_t phiMax;
if(b<rbmax && s<(rbmax-b)) {
phiMax=TMath::Pi();
} else {
phiMax=TMath::ACos((s*s+b*b-rbmax*rbmax)/(2.*s*b));
}
return s*fgTA->Eval(s)*2.*fgTB->Integral(0.,phiMax);
}
Double_t AliGenPromptPhotons::TAB(const Double_t* x, const Double_t* par) {
const Double_t b=x[0];
const Double_t ramax=par[0],rbmax=par[1];
Double_t sMin=0.,sMax=ramax;
if(b>rbmax) sMin=b-rbmax;
if(b<(ramax-rbmax)) sMax=b+rbmax;
fgTAxTB->SetParameter(1,b);
return fgTAxTB->Integral(sMin,sMax);
}
AliGenPromptPhotons.cxx:1 AliGenPromptPhotons.cxx:2 AliGenPromptPhotons.cxx:3 AliGenPromptPhotons.cxx:4 AliGenPromptPhotons.cxx:5 AliGenPromptPhotons.cxx:6 AliGenPromptPhotons.cxx:7 AliGenPromptPhotons.cxx:8 AliGenPromptPhotons.cxx:9 AliGenPromptPhotons.cxx:10 AliGenPromptPhotons.cxx:11 AliGenPromptPhotons.cxx:12 AliGenPromptPhotons.cxx:13 AliGenPromptPhotons.cxx:14 AliGenPromptPhotons.cxx:15 AliGenPromptPhotons.cxx:16 AliGenPromptPhotons.cxx:17 AliGenPromptPhotons.cxx:18 AliGenPromptPhotons.cxx:19 AliGenPromptPhotons.cxx:20 AliGenPromptPhotons.cxx:21 AliGenPromptPhotons.cxx:22 AliGenPromptPhotons.cxx:23 AliGenPromptPhotons.cxx:24 AliGenPromptPhotons.cxx:25 AliGenPromptPhotons.cxx:26 AliGenPromptPhotons.cxx:27 AliGenPromptPhotons.cxx:28 AliGenPromptPhotons.cxx:29 AliGenPromptPhotons.cxx:30 AliGenPromptPhotons.cxx:31 AliGenPromptPhotons.cxx:32 AliGenPromptPhotons.cxx:33 AliGenPromptPhotons.cxx:34 AliGenPromptPhotons.cxx:35 AliGenPromptPhotons.cxx:36 AliGenPromptPhotons.cxx:37 AliGenPromptPhotons.cxx:38 AliGenPromptPhotons.cxx:39 AliGenPromptPhotons.cxx:40 AliGenPromptPhotons.cxx:41 AliGenPromptPhotons.cxx:42 AliGenPromptPhotons.cxx:43 AliGenPromptPhotons.cxx:44 AliGenPromptPhotons.cxx:45 AliGenPromptPhotons.cxx:46 AliGenPromptPhotons.cxx:47 AliGenPromptPhotons.cxx:48 AliGenPromptPhotons.cxx:49 AliGenPromptPhotons.cxx:50 AliGenPromptPhotons.cxx:51 AliGenPromptPhotons.cxx:52 AliGenPromptPhotons.cxx:53 AliGenPromptPhotons.cxx:54 AliGenPromptPhotons.cxx:55 AliGenPromptPhotons.cxx:56 AliGenPromptPhotons.cxx:57 AliGenPromptPhotons.cxx:58 AliGenPromptPhotons.cxx:59 AliGenPromptPhotons.cxx:60 AliGenPromptPhotons.cxx:61 AliGenPromptPhotons.cxx:62 AliGenPromptPhotons.cxx:63 AliGenPromptPhotons.cxx:64 AliGenPromptPhotons.cxx:65 AliGenPromptPhotons.cxx:66 AliGenPromptPhotons.cxx:67 AliGenPromptPhotons.cxx:68 AliGenPromptPhotons.cxx:69 AliGenPromptPhotons.cxx:70 AliGenPromptPhotons.cxx:71 AliGenPromptPhotons.cxx:72 AliGenPromptPhotons.cxx:73 AliGenPromptPhotons.cxx:74 AliGenPromptPhotons.cxx:75 AliGenPromptPhotons.cxx:76 AliGenPromptPhotons.cxx:77 AliGenPromptPhotons.cxx:78 AliGenPromptPhotons.cxx:79 AliGenPromptPhotons.cxx:80 AliGenPromptPhotons.cxx:81 AliGenPromptPhotons.cxx:82 AliGenPromptPhotons.cxx:83 AliGenPromptPhotons.cxx:84 AliGenPromptPhotons.cxx:85 AliGenPromptPhotons.cxx:86 AliGenPromptPhotons.cxx:87 AliGenPromptPhotons.cxx:88 AliGenPromptPhotons.cxx:89 AliGenPromptPhotons.cxx:90 AliGenPromptPhotons.cxx:91 AliGenPromptPhotons.cxx:92 AliGenPromptPhotons.cxx:93 AliGenPromptPhotons.cxx:94 AliGenPromptPhotons.cxx:95 AliGenPromptPhotons.cxx:96 AliGenPromptPhotons.cxx:97 AliGenPromptPhotons.cxx:98 AliGenPromptPhotons.cxx:99 AliGenPromptPhotons.cxx:100 AliGenPromptPhotons.cxx:101 AliGenPromptPhotons.cxx:102 AliGenPromptPhotons.cxx:103 AliGenPromptPhotons.cxx:104 AliGenPromptPhotons.cxx:105 AliGenPromptPhotons.cxx:106 AliGenPromptPhotons.cxx:107 AliGenPromptPhotons.cxx:108 AliGenPromptPhotons.cxx:109 AliGenPromptPhotons.cxx:110 AliGenPromptPhotons.cxx:111 AliGenPromptPhotons.cxx:112 AliGenPromptPhotons.cxx:113 AliGenPromptPhotons.cxx:114 AliGenPromptPhotons.cxx:115 AliGenPromptPhotons.cxx:116 AliGenPromptPhotons.cxx:117 AliGenPromptPhotons.cxx:118 AliGenPromptPhotons.cxx:119 AliGenPromptPhotons.cxx:120 AliGenPromptPhotons.cxx:121 AliGenPromptPhotons.cxx:122 AliGenPromptPhotons.cxx:123 AliGenPromptPhotons.cxx:124 AliGenPromptPhotons.cxx:125 AliGenPromptPhotons.cxx:126 AliGenPromptPhotons.cxx:127 AliGenPromptPhotons.cxx:128 AliGenPromptPhotons.cxx:129 AliGenPromptPhotons.cxx:130 AliGenPromptPhotons.cxx:131 AliGenPromptPhotons.cxx:132 AliGenPromptPhotons.cxx:133 AliGenPromptPhotons.cxx:134 AliGenPromptPhotons.cxx:135 AliGenPromptPhotons.cxx:136 AliGenPromptPhotons.cxx:137 AliGenPromptPhotons.cxx:138 AliGenPromptPhotons.cxx:139 AliGenPromptPhotons.cxx:140 AliGenPromptPhotons.cxx:141 AliGenPromptPhotons.cxx:142 AliGenPromptPhotons.cxx:143 AliGenPromptPhotons.cxx:144 AliGenPromptPhotons.cxx:145 AliGenPromptPhotons.cxx:146 AliGenPromptPhotons.cxx:147 AliGenPromptPhotons.cxx:148 AliGenPromptPhotons.cxx:149 AliGenPromptPhotons.cxx:150 AliGenPromptPhotons.cxx:151 AliGenPromptPhotons.cxx:152 AliGenPromptPhotons.cxx:153 AliGenPromptPhotons.cxx:154 AliGenPromptPhotons.cxx:155 AliGenPromptPhotons.cxx:156 AliGenPromptPhotons.cxx:157 AliGenPromptPhotons.cxx:158 AliGenPromptPhotons.cxx:159 AliGenPromptPhotons.cxx:160 AliGenPromptPhotons.cxx:161 AliGenPromptPhotons.cxx:162 AliGenPromptPhotons.cxx:163 AliGenPromptPhotons.cxx:164 AliGenPromptPhotons.cxx:165 AliGenPromptPhotons.cxx:166 AliGenPromptPhotons.cxx:167 AliGenPromptPhotons.cxx:168 AliGenPromptPhotons.cxx:169 AliGenPromptPhotons.cxx:170 AliGenPromptPhotons.cxx:171 AliGenPromptPhotons.cxx:172 AliGenPromptPhotons.cxx:173 AliGenPromptPhotons.cxx:174 AliGenPromptPhotons.cxx:175 AliGenPromptPhotons.cxx:176 AliGenPromptPhotons.cxx:177 AliGenPromptPhotons.cxx:178 AliGenPromptPhotons.cxx:179 AliGenPromptPhotons.cxx:180 AliGenPromptPhotons.cxx:181 AliGenPromptPhotons.cxx:182 AliGenPromptPhotons.cxx:183 AliGenPromptPhotons.cxx:184 AliGenPromptPhotons.cxx:185 AliGenPromptPhotons.cxx:186 AliGenPromptPhotons.cxx:187 AliGenPromptPhotons.cxx:188 AliGenPromptPhotons.cxx:189 AliGenPromptPhotons.cxx:190 AliGenPromptPhotons.cxx:191 AliGenPromptPhotons.cxx:192 AliGenPromptPhotons.cxx:193 AliGenPromptPhotons.cxx:194 AliGenPromptPhotons.cxx:195 AliGenPromptPhotons.cxx:196 AliGenPromptPhotons.cxx:197 AliGenPromptPhotons.cxx:198 AliGenPromptPhotons.cxx:199 AliGenPromptPhotons.cxx:200 AliGenPromptPhotons.cxx:201 AliGenPromptPhotons.cxx:202 AliGenPromptPhotons.cxx:203 AliGenPromptPhotons.cxx:204 AliGenPromptPhotons.cxx:205 AliGenPromptPhotons.cxx:206 AliGenPromptPhotons.cxx:207 AliGenPromptPhotons.cxx:208 AliGenPromptPhotons.cxx:209 AliGenPromptPhotons.cxx:210 AliGenPromptPhotons.cxx:211 AliGenPromptPhotons.cxx:212 AliGenPromptPhotons.cxx:213 AliGenPromptPhotons.cxx:214 AliGenPromptPhotons.cxx:215 AliGenPromptPhotons.cxx:216 AliGenPromptPhotons.cxx:217 AliGenPromptPhotons.cxx:218 AliGenPromptPhotons.cxx:219 AliGenPromptPhotons.cxx:220 AliGenPromptPhotons.cxx:221 AliGenPromptPhotons.cxx:222 AliGenPromptPhotons.cxx:223 AliGenPromptPhotons.cxx:224 AliGenPromptPhotons.cxx:225 AliGenPromptPhotons.cxx:226 AliGenPromptPhotons.cxx:227 AliGenPromptPhotons.cxx:228 AliGenPromptPhotons.cxx:229 AliGenPromptPhotons.cxx:230 AliGenPromptPhotons.cxx:231 AliGenPromptPhotons.cxx:232 AliGenPromptPhotons.cxx:233 AliGenPromptPhotons.cxx:234 AliGenPromptPhotons.cxx:235 AliGenPromptPhotons.cxx:236 AliGenPromptPhotons.cxx:237 AliGenPromptPhotons.cxx:238 AliGenPromptPhotons.cxx:239 AliGenPromptPhotons.cxx:240 AliGenPromptPhotons.cxx:241 AliGenPromptPhotons.cxx:242 AliGenPromptPhotons.cxx:243 AliGenPromptPhotons.cxx:244 AliGenPromptPhotons.cxx:245 AliGenPromptPhotons.cxx:246 AliGenPromptPhotons.cxx:247 AliGenPromptPhotons.cxx:248 AliGenPromptPhotons.cxx:249 AliGenPromptPhotons.cxx:250 AliGenPromptPhotons.cxx:251 AliGenPromptPhotons.cxx:252 AliGenPromptPhotons.cxx:253 AliGenPromptPhotons.cxx:254 AliGenPromptPhotons.cxx:255 AliGenPromptPhotons.cxx:256 AliGenPromptPhotons.cxx:257 AliGenPromptPhotons.cxx:258 AliGenPromptPhotons.cxx:259 AliGenPromptPhotons.cxx:260 AliGenPromptPhotons.cxx:261 AliGenPromptPhotons.cxx:262 AliGenPromptPhotons.cxx:263 AliGenPromptPhotons.cxx:264 AliGenPromptPhotons.cxx:265 AliGenPromptPhotons.cxx:266 AliGenPromptPhotons.cxx:267 AliGenPromptPhotons.cxx:268 AliGenPromptPhotons.cxx:269 AliGenPromptPhotons.cxx:270 AliGenPromptPhotons.cxx:271 AliGenPromptPhotons.cxx:272 AliGenPromptPhotons.cxx:273 AliGenPromptPhotons.cxx:274 AliGenPromptPhotons.cxx:275 AliGenPromptPhotons.cxx:276 AliGenPromptPhotons.cxx:277 AliGenPromptPhotons.cxx:278 AliGenPromptPhotons.cxx:279 AliGenPromptPhotons.cxx:280 AliGenPromptPhotons.cxx:281 AliGenPromptPhotons.cxx:282 AliGenPromptPhotons.cxx:283 AliGenPromptPhotons.cxx:284 AliGenPromptPhotons.cxx:285 AliGenPromptPhotons.cxx:286 AliGenPromptPhotons.cxx:287 AliGenPromptPhotons.cxx:288 AliGenPromptPhotons.cxx:289 AliGenPromptPhotons.cxx:290 AliGenPromptPhotons.cxx:291 AliGenPromptPhotons.cxx:292 AliGenPromptPhotons.cxx:293 AliGenPromptPhotons.cxx:294 AliGenPromptPhotons.cxx:295 AliGenPromptPhotons.cxx:296 AliGenPromptPhotons.cxx:297 AliGenPromptPhotons.cxx:298 AliGenPromptPhotons.cxx:299 AliGenPromptPhotons.cxx:300 AliGenPromptPhotons.cxx:301 AliGenPromptPhotons.cxx:302 AliGenPromptPhotons.cxx:303 AliGenPromptPhotons.cxx:304 AliGenPromptPhotons.cxx:305 AliGenPromptPhotons.cxx:306 AliGenPromptPhotons.cxx:307 AliGenPromptPhotons.cxx:308 AliGenPromptPhotons.cxx:309 AliGenPromptPhotons.cxx:310 AliGenPromptPhotons.cxx:311 AliGenPromptPhotons.cxx:312 AliGenPromptPhotons.cxx:313 AliGenPromptPhotons.cxx:314 AliGenPromptPhotons.cxx:315 AliGenPromptPhotons.cxx:316 AliGenPromptPhotons.cxx:317 AliGenPromptPhotons.cxx:318 AliGenPromptPhotons.cxx:319 AliGenPromptPhotons.cxx:320 AliGenPromptPhotons.cxx:321 AliGenPromptPhotons.cxx:322 AliGenPromptPhotons.cxx:323 AliGenPromptPhotons.cxx:324 AliGenPromptPhotons.cxx:325 AliGenPromptPhotons.cxx:326 AliGenPromptPhotons.cxx:327 AliGenPromptPhotons.cxx:328 AliGenPromptPhotons.cxx:329 AliGenPromptPhotons.cxx:330 AliGenPromptPhotons.cxx:331 AliGenPromptPhotons.cxx:332 AliGenPromptPhotons.cxx:333 AliGenPromptPhotons.cxx:334 AliGenPromptPhotons.cxx:335 AliGenPromptPhotons.cxx:336 AliGenPromptPhotons.cxx:337 AliGenPromptPhotons.cxx:338 AliGenPromptPhotons.cxx:339 AliGenPromptPhotons.cxx:340 AliGenPromptPhotons.cxx:341 AliGenPromptPhotons.cxx:342 AliGenPromptPhotons.cxx:343 AliGenPromptPhotons.cxx:344 AliGenPromptPhotons.cxx:345 AliGenPromptPhotons.cxx:346 AliGenPromptPhotons.cxx:347 AliGenPromptPhotons.cxx:348 AliGenPromptPhotons.cxx:349 AliGenPromptPhotons.cxx:350 AliGenPromptPhotons.cxx:351 AliGenPromptPhotons.cxx:352 AliGenPromptPhotons.cxx:353 AliGenPromptPhotons.cxx:354 AliGenPromptPhotons.cxx:355 AliGenPromptPhotons.cxx:356 AliGenPromptPhotons.cxx:357 AliGenPromptPhotons.cxx:358 AliGenPromptPhotons.cxx:359 AliGenPromptPhotons.cxx:360 AliGenPromptPhotons.cxx:361 AliGenPromptPhotons.cxx:362 AliGenPromptPhotons.cxx:363 AliGenPromptPhotons.cxx:364 AliGenPromptPhotons.cxx:365 AliGenPromptPhotons.cxx:366 AliGenPromptPhotons.cxx:367 AliGenPromptPhotons.cxx:368 AliGenPromptPhotons.cxx:369 AliGenPromptPhotons.cxx:370 AliGenPromptPhotons.cxx:371 AliGenPromptPhotons.cxx:372 AliGenPromptPhotons.cxx:373 AliGenPromptPhotons.cxx:374 AliGenPromptPhotons.cxx:375 AliGenPromptPhotons.cxx:376 AliGenPromptPhotons.cxx:377 AliGenPromptPhotons.cxx:378 AliGenPromptPhotons.cxx:379 AliGenPromptPhotons.cxx:380 AliGenPromptPhotons.cxx:381 AliGenPromptPhotons.cxx:382 AliGenPromptPhotons.cxx:383 AliGenPromptPhotons.cxx:384 AliGenPromptPhotons.cxx:385 AliGenPromptPhotons.cxx:386 AliGenPromptPhotons.cxx:387 AliGenPromptPhotons.cxx:388 AliGenPromptPhotons.cxx:389 AliGenPromptPhotons.cxx:390 AliGenPromptPhotons.cxx:391 AliGenPromptPhotons.cxx:392 AliGenPromptPhotons.cxx:393 AliGenPromptPhotons.cxx:394 AliGenPromptPhotons.cxx:395 AliGenPromptPhotons.cxx:396 AliGenPromptPhotons.cxx:397 AliGenPromptPhotons.cxx:398 AliGenPromptPhotons.cxx:399 AliGenPromptPhotons.cxx:400 AliGenPromptPhotons.cxx:401 AliGenPromptPhotons.cxx:402 AliGenPromptPhotons.cxx:403 AliGenPromptPhotons.cxx:404 AliGenPromptPhotons.cxx:405 AliGenPromptPhotons.cxx:406 AliGenPromptPhotons.cxx:407 AliGenPromptPhotons.cxx:408 AliGenPromptPhotons.cxx:409 AliGenPromptPhotons.cxx:410 AliGenPromptPhotons.cxx:411 AliGenPromptPhotons.cxx:412 AliGenPromptPhotons.cxx:413 AliGenPromptPhotons.cxx:414 AliGenPromptPhotons.cxx:415 AliGenPromptPhotons.cxx:416 AliGenPromptPhotons.cxx:417 AliGenPromptPhotons.cxx:418 AliGenPromptPhotons.cxx:419 AliGenPromptPhotons.cxx:420 AliGenPromptPhotons.cxx:421 AliGenPromptPhotons.cxx:422 AliGenPromptPhotons.cxx:423 AliGenPromptPhotons.cxx:424 AliGenPromptPhotons.cxx:425 AliGenPromptPhotons.cxx:426 AliGenPromptPhotons.cxx:427 AliGenPromptPhotons.cxx:428 AliGenPromptPhotons.cxx:429 AliGenPromptPhotons.cxx:430 AliGenPromptPhotons.cxx:431 AliGenPromptPhotons.cxx:432 AliGenPromptPhotons.cxx:433 AliGenPromptPhotons.cxx:434 AliGenPromptPhotons.cxx:435 AliGenPromptPhotons.cxx:436 AliGenPromptPhotons.cxx:437