@@ -23,44 +23,37 @@ o2::eventgen::GeneratorStarlight_class* makeStarlightGenerator(std::string confi
2323 // generator->setupDpmjet(dpmjetconf);
2424 return generator ;
2525}
26- o2 ::eventgen ::GeneratorEvtGen < o2 ::eventgen ::GeneratorStarlight_class > * makeStarlightToEvtGenGenerator (std ::string configuration ,
27- float energyCM ,
28- int beam1Z ,
29- int beam1A ,
30- int beam2Z ,
31- int beam2A ,
32- std ::string extraParams = "" ,
33- std ::string dpmjetconf = "" )
26+ void configureEvtGen (o2 ::eventgen ::GeneratorEvtGen < GeneratorCocktail > * generator , bool midrapidity )
3427{
35- auto generator = new o2 ::eventgen ::GeneratorEvtGen < o2 ::eventgen ::GeneratorStarlight_class > ( );
36- generator -> selectConfiguration (configuration );
37- generator -> setCollisionSystem (energyCM , beam1Z , beam1A , beam2Z , beam2A );
38- generator -> setExtraParams (extraParams );
39- // generator->setupDpmjet(dpmjetconf);
40- generator -> SetPolarization (1 ); //Transversal
41- generator -> SetSizePdg (2 );
42- generator -> AddPdg (443 ,0 );
43- generator -> AddPdg (100443 ,1 );
28+ generator -> SetPolarization (1 ); // Transverse
29+ if (midrapidity ) {
30+ generator -> SetSizePdg (2 );
31+ generator -> AddPdg (443 , 0 );
32+ generator -> AddPdg (100443 , 1 );
33+ TString pathO2 = gSystem -> ExpandPathName ("$O2DPG_MC_CONFIG_ROOT/MC/config/PWGDQ/EvtGen/DecayTablesEvtgen" );
34+ generator -> SetDecayTable (Form ("%s/PSITOJPSIPIPI.DEC" , pathO2 .Data ()));
35+ } else {
36+ generator -> SetSizePdg (1 );
37+ generator -> AddPdg (100443 , 0 );
4438 TString pathO2 = gSystem -> ExpandPathName ("$O2DPG_MC_CONFIG_ROOT/MC/config/PWGUD/external/generator/DecayTablesEvtGen" );
45- if (configuration .find ("Psi2sToMuPi" ) != std ::string ::npos ) generator -> SetDecayTable (Form ("%s/PSI2S.MUMUPIPI.DEC" ,pathO2 .Data ()));
46- else if (configuration .find ("Psi2sToElPi" ) != std ::string ::npos ) generator -> SetDecayTable (Form ("%s/PSI2S.EEPIPI.DEC" ,pathO2 .Data ()));
47- else if (configuration .find ("JpsiToElRad" ) != std ::string ::npos ) generator -> SetDecayTable (Form ("%s/JPSI.EE.DEC" ,pathO2 .Data ()));
48- return generator ;
39+ generator -> SetDecayTable (Form ("%s/PSI2S.MUMUPIPI.DEC" , pathO2 .Data ()));
40+ }
4941}
5042} // namespace
5143
5244FairGenerator * GeneratorCocktailStarlightMidy_PbPb5TeV (float energyCM = 5360 , int beam1Z = 82 , int beam1A = 208 , int beam2Z = 82 , int beam2A = 208 , std ::string extrapars = "" ,std ::string dpmjetconf = "" )
5345{
5446 auto genCocktailEvtGen = new o2 ::eventgen ::GeneratorEvtGen < GeneratorCocktail > ();
55- auto genCohJpsi = makeStarlightToEvtGenGenerator ("kCohJpsiToElRad" , energyCM , beam1Z , beam1A , beam2Z , beam2A , extrapars , dpmjetconf );
47+ configureEvtGen (genCocktailEvtGen , true);
48+ auto genCohJpsi = makeStarlightGenerator ("kCohJpsiToElRad" , energyCM , beam1Z , beam1A , beam2Z , beam2A , extrapars , dpmjetconf );
5649 genCocktailEvtGen -> AddGenerator (genCohJpsi , 1 );
57- auto genIncohJpsi = makeStarlightToEvtGenGenerator ("kIncohJpsiToElRad" , energyCM , beam1Z , beam1A , beam2Z , beam2A , extrapars , dpmjetconf );
50+ auto genIncohJpsi = makeStarlightGenerator ("kIncohJpsiToElRad" , energyCM , beam1Z , beam1A , beam2Z , beam2A , extrapars , dpmjetconf );
5851 genCocktailEvtGen -> AddGenerator (genIncohJpsi , 1 );
5952 auto genTwoGammaToEl = makeStarlightGenerator ("kTwoGammaToElLow" , energyCM , beam1Z , beam1A , beam2Z , beam2A , extrapars , dpmjetconf );
6053 genCocktailEvtGen -> AddGenerator (genTwoGammaToEl , 1 );
61- auto genCohPsi2S = makeStarlightToEvtGenGenerator ("kCohPsi2sToElPi" , energyCM , beam1Z , beam1A , beam2Z , beam2A , extrapars , dpmjetconf );
54+ auto genCohPsi2S = makeStarlightGenerator ("kCohPsi2sToElPi" , energyCM , beam1Z , beam1A , beam2Z , beam2A , extrapars , dpmjetconf );
6255 genCocktailEvtGen -> AddGenerator (genCohPsi2S , 1 );
63- auto genIncohPsi2S = makeStarlightToEvtGenGenerator ("kIncohPsi2sToElPi" , energyCM , beam1Z , beam1A , beam2Z , beam2A , extrapars , dpmjetconf );
56+ auto genIncohPsi2S = makeStarlightGenerator ("kIncohPsi2sToElPi" , energyCM , beam1Z , beam1A , beam2Z , beam2A , extrapars , dpmjetconf );
6457 genCocktailEvtGen -> AddGenerator (genIncohPsi2S , 1 );
6558
6659 return genCocktailEvtGen ;
@@ -69,11 +62,12 @@ FairGenerator* GeneratorCocktailStarlightMidy_PbPb5TeV(float energyCM = 5360, in
6962FairGenerator * GeneratorCocktailStarlightCoherentMidy_PbPb5TeV (float energyCM = 5360 , int beam1Z = 82 , int beam1A = 208 , int beam2Z = 82 , int beam2A = 208 , std ::string extrapars = "" ,std ::string dpmjetconf = "" )
7063{
7164 auto genCocktailEvtGen = new o2 ::eventgen ::GeneratorEvtGen < GeneratorCocktail > ( );
72- auto genCohJpsi = makeStarlightToEvtGenGenerator ("kCohJpsiToElRad" , energyCM , beam1Z , beam1A , beam2Z , beam2A , extrapars , dpmjetconf );
65+ configureEvtGen (genCocktailEvtGen , true);
66+ auto genCohJpsi = makeStarlightGenerator ("kCohJpsiToElRad" , energyCM , beam1Z , beam1A , beam2Z , beam2A , extrapars , dpmjetconf );
7367 genCocktailEvtGen -> AddGenerator (genCohJpsi , 1 );
7468 auto genTwoGammaToEl = makeStarlightGenerator ("kTwoGammaToElLow" , energyCM , beam1Z , beam1A , beam2Z , beam2A , extrapars , dpmjetconf );
7569 genCocktailEvtGen -> AddGenerator (genTwoGammaToEl , 1 );
76- auto genCohPsi2S = makeStarlightToEvtGenGenerator ("kCohPsi2sToElPi" , energyCM , beam1Z , beam1A , beam2Z , beam2A , extrapars , dpmjetconf );
70+ auto genCohPsi2S = makeStarlightGenerator ("kCohPsi2sToElPi" , energyCM , beam1Z , beam1A , beam2Z , beam2A , extrapars , dpmjetconf );
7771 genCocktailEvtGen -> AddGenerator (genCohPsi2S , 1 );
7872
7973 return genCocktailEvtGen ;
@@ -82,9 +76,10 @@ FairGenerator* GeneratorCocktailStarlightCoherentMidy_PbPb5TeV(float energyCM =
8276FairGenerator * GeneratorCocktailStarlightIncoherentMidy_PbPb5TeV (float energyCM = 5360 , int beam1Z = 82 , int beam1A = 208 , int beam2Z = 82 , int beam2A = 208 , std ::string extrapars = "",std ::string dpmjetconf = "")
8377{
8478 auto genCocktailEvtGen = new o2 ::eventgen ::GeneratorEvtGen < GeneratorCocktail > ();
85- auto genIncohJpsi = makeStarlightToEvtGenGenerator ("kIncohJpsiToElRad" , energyCM , beam1Z , beam1A , beam2Z , beam2A , extrapars , dpmjetconf );
79+ configureEvtGen (genCocktailEvtGen , true);
80+ auto genIncohJpsi = makeStarlightGenerator ("kIncohJpsiToElRad" , energyCM , beam1Z , beam1A , beam2Z , beam2A , extrapars , dpmjetconf );
8681 genCocktailEvtGen -> AddGenerator (genIncohJpsi , 1 );
87- auto genIncohPsi2S = makeStarlightToEvtGenGenerator ("kIncohPsi2sToElPi" , energyCM , beam1Z , beam1A , beam2Z , beam2A , extrapars , dpmjetconf );
82+ auto genIncohPsi2S = makeStarlightGenerator ("kIncohPsi2sToElPi" , energyCM , beam1Z , beam1A , beam2Z , beam2A , extrapars , dpmjetconf );
8883 genCocktailEvtGen -> AddGenerator (genIncohPsi2S , 1 );
8984
9085 return genCocktailEvtGen ;
@@ -93,11 +88,12 @@ FairGenerator* GeneratorCocktailStarlightIncoherentMidy_PbPb5TeV(float energyCM
9388FairGenerator * GeneratorCocktailStarlightCoherentFwdy_PbPb5TeV (float energyCM = 5360 , int beam1Z = 82 , int beam1A = 208 , int beam2Z = 82 , int beam2A = 208 , std ::string extrapars = "" ,std ::string dpmjetconf = "" )
9489{
9590 auto genCocktailEvtGen = new o2 ::eventgen ::GeneratorEvtGen < GeneratorCocktail > ();
91+ configureEvtGen (genCocktailEvtGen , false);
9692 auto genCohJpsi = makeStarlightGenerator ("kCohJpsiToMu" , energyCM , beam1Z , beam1A , beam2Z , beam2A , extrapars , dpmjetconf );
9793 genCocktailEvtGen -> AddGenerator (genCohJpsi , 1 );
9894 auto genTwoGammaToEl = makeStarlightGenerator ("kTwoGammaToMuLow" , energyCM , beam1Z , beam1A , beam2Z , beam2A , extrapars , dpmjetconf );
9995 genCocktailEvtGen -> AddGenerator (genTwoGammaToEl , 1 );
100- auto genCohPsi2S = makeStarlightToEvtGenGenerator ("kCohPsi2sToMuPi" , energyCM , beam1Z , beam1A , beam2Z , beam2A , extrapars , dpmjetconf );
96+ auto genCohPsi2S = makeStarlightGenerator ("kCohPsi2sToMuPi" , energyCM , beam1Z , beam1A , beam2Z , beam2A , extrapars , dpmjetconf );
10197 genCocktailEvtGen -> AddGenerator (genCohPsi2S , 1 );
10298
10399 return genCocktailEvtGen ;
@@ -106,10 +102,11 @@ FairGenerator* GeneratorCocktailStarlightCoherentFwdy_PbPb5TeV(float energyCM =
106102FairGenerator * GeneratorCocktailStarlightIncoherentFwdy_PbPb5TeV (float energyCM = 5360 , int beam1Z = 82 , int beam1A = 208 , int beam2Z = 82 , int beam2A = 208 , std ::string extrapars = "" ,std ::string dpmjetconf = "" )
107103{
108104 auto genCocktailEvtGen = new o2 ::eventgen ::GeneratorEvtGen < GeneratorCocktail > ( );
105+ configureEvtGen (genCocktailEvtGen , false);
109106 auto genIncohJpsi = makeStarlightGenerator ("kIncohJpsiToMu" , energyCM , beam1Z , beam1A , beam2Z , beam2A , extrapars , dpmjetconf );
110107 genCocktailEvtGen -> AddGenerator (genIncohJpsi , 1 );
111- auto genIncohPsi2S = makeStarlightToEvtGenGenerator ("kIncohPsi2sToMuPi" , energyCM , beam1Z , beam1A , beam2Z , beam2A , extrapars , dpmjetconf );
108+ auto genIncohPsi2S = makeStarlightGenerator ("kIncohPsi2sToMuPi" , energyCM , beam1Z , beam1A , beam2Z , beam2A , extrapars , dpmjetconf );
112109 genCocktailEvtGen -> AddGenerator (genIncohPsi2S , 1 );
113110
114111 return genCocktailEvtGen ;
115- }
112+ }
0 commit comments