Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

updates for STARLIGHT r313 #504

Merged
merged 1 commit into from
Feb 15, 2022
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
27 changes: 21 additions & 6 deletions MC/GeneratorConfig.C
Original file line number Diff line number Diff line change
Expand Up @@ -1198,11 +1198,15 @@ GeneratorStarlight(){
// kTwoGammaToRhoRho
// kTwoGammaToF2
// kCohRhoToPi
// kCohRhoToElEl
// kCohRhoToMuMu
// kCohRhoToPiWithCont
// kCohRhoToPiFlat
// kCohPhiToKa
// kDirectPhiToKaKa
// kCohOmegaTo2Pi
// kCohOmegaTo3Pi
// kCohOmegaToPiPiPi
// kCohJpsiToMu
// kCohJpsiToEl
// kCohJpsiToElRad
Expand All @@ -1214,11 +1218,14 @@ GeneratorStarlight(){
// kCohUpsilonToMu
// kCohUpsilonToEl
// kIncohRhoToPi
// kIncohRhoToElEl
// kIncohRhoToMuMu
// kIncohRhoToPiWithCont
// kIncohRhoToPiFlat
// kIncohPhiToKa
// kIncohOmegaTo2Pi
// kIncohOmegaTo3Pi
// kIncohOmegaToPiPiPi
// kIncohJpsiToMu
// kIncohJpsiToEl
// kIncohJpsiToElRad
Expand All @@ -1242,7 +1249,7 @@ GeneratorStarlight(){
// there is a floating point exception in starlight
yminConfig = TMath::Max(yminConfig, -8.0f);
ymaxConfig = TMath::Min(ymaxConfig, +8.0f);

Int_t projA=1,targA=1,projZ=1,targZ=1;
// pp
if (systemConfig.EqualTo("p-p")) {
Expand Down Expand Up @@ -1275,7 +1282,7 @@ GeneratorStarlight(){
Float_t gamma1 = beam1energy/0.938272;
Float_t gamma2 = beam2energy/0.938272;
Float_t rapBoost = 0.5*(TMath::ACosH(gamma2)-TMath::ACosH(gamma1));

// maximum absolute rapidity in CMS used in genuine starlight parameters
// rapidity bins are calculated wrt (-rapMax,rapMax) interval
Float_t rapMax = TMath::Max(TMath::Abs(yminConfig+rapBoost),TMath::Abs(ymaxConfig+rapBoost));
Expand All @@ -1286,7 +1293,7 @@ GeneratorStarlight(){
cocktail |= processConfig.Contains("RhoPrime");
cocktail |= processConfig.Contains("OmegaTo3Pi");
cocktail |= processConfig.Contains("JpsiToElRad");

AliGenCocktail *genCocktail = NULL;
if (cocktail) genCocktail = new AliGenCocktail(); // constructor must be called before other generators

Expand All @@ -1308,11 +1315,15 @@ GeneratorStarlight(){
{"kTwoGammaToRhoRho", 1, 33, 20, -1.0, -1.0, 0.01 }, //
{"kTwoGammaToF2", 1, 225, 20, -1.0, -1.0, 0.01 }, //
{"kCohRhoToPi", 3, 113, 1200, -1.0, -1.0, 0.02 }, //
{"kCohRhoToElEl", 3, 113011, 1200, -1.0, -1.0, 0.02 }, //
{"kCohRhoToMuMu", 3, 113013, 1200, -1.0, -1.0, 0.02 }, //
{"kCohRhoToPiWithCont", 3, 913, 1200, -1.0, -1.0, 0.02 }, //
{"kCohRhoToPiFlat", 3, 113, 1, -1.0, 2.5, 0.02 }, //
{"kCohPhiToKa", 2, 333, 20, -1.0, -1.0, 0.01 }, //
{"kDirectPhiToKaKa", 3, 933, 20, -1.0, -1.0, 0.01 }, // new
{"kCohOmegaTo2Pi", 2, 223, 20, -1.0, -1.0, 0.01 }, //
{"kCohOmegaTo3Pi", 2, 223, 20, -1.0, -1.0, 0.01 }, //
{"kCohOmegaToPiPiPi", 2, 223211111, 20, -1.0, -1.0, 0.01 }, // not using the PYTHIA decayer
{"kCohJpsiToMu", 2, 443013, 20, -1.0, -1.0, 0.01 }, //
{"kCohJpsiToEl", 2, 443011, 20, -1.0, -1.0, 0.01 }, //
{"kCohJpsiToElRad", 2, 443011, 20, -1.0, -1.0, 0.01 }, //
Expand All @@ -1324,16 +1335,19 @@ GeneratorStarlight(){
{"kCohUpsilonToMu", 2, 553013, 20, -1.0, -1.0, 0.01 }, //
{"kCohUpsilonToEl", 2, 553011, 20, -1.0, -1.0, 0.01 }, //
{"kIncohRhoToPi", 4, 113, 1200, -1.0, -1.0, 0.02 }, //
{"kIncohRhoToElEl", 4, 113011, 1200, -1.0, -1.0, 0.02 }, //
{"kIncohRhoToMuMu", 4, 113013, 1200, -1.0, -1.0, 0.02 }, //
{"kIncohRhoToPiWithCont",4, 913, 1200, -1.0, -1.0, 0.02 }, //
{"kIncohRhoToPiFlat", 4, 113, 1, -1.0, 2.5, 0.02 }, //
{"kIncohPhiToKa", 4, 333, 20, -1.0, -1.0, 0.01 }, //
{"kIncohOmegaTo2Pi", 4, 223, 20, -1.0, -1.0, 0.01 }, //
{"kIncohOmegaTo3Pi", 4, 223, 20, -1.0, -1.0, 0.01 }, //
{"kIncohOmegaToPiPiPi", 4, 223211111, 20, -1.0, -1.0, 0.01 }, // not using the PYTHIA decayer
{"kIncohJpsiToMu", 4, 443013, 20, -1.0, -1.0, 0.01 }, //
{"kIncohJpsiToEl", 4, 443011, 20, -1.0, -1.0, 0.01 }, //
{"kIncohJpsiToElRad", 4, 443011, 20, -1.0, -1.0, 0.01 }, //
{"kIncohJpsiToProton", 4, 4432212, 20, -1.0, -1.0, 0.01 }, //
{"kIncohJpsiToLLbar", 4, 4433122, 20, -1.0, -1.0, 0.01 }, //
{"kIncohJpsiToLLbar", 4, 4433122, 20, -1.0, -1.0, 0.01 }, //
{"kIncohPsi2sToMu", 4, 444013, 20, -1.0, -1.0, 0.01 }, //
{"kIncohPsi2sToEl", 4, 444011, 20, -1.0, -1.0, 0.01 }, //
{"kIncohPsi2sToMuPi", 4, 444013, 20, -1.0, -1.0, 0.01 }, //
Expand All @@ -1343,6 +1357,7 @@ GeneratorStarlight(){
// {"kCohRhoPrime", 3, 0, 20, -1.0, -1.0, 0.01 }, //
// {"kIncohRhoPrime", 4, 0, 20, -1.0, -1.0, 0.01 }, //
};

const Int_t nProcess = sizeof(slConfig)/sizeof(SLConfig);
Int_t idx = -1;
for (Int_t i=0; i<nProcess; ++i) {
Expand All @@ -1356,7 +1371,7 @@ GeneratorStarlight(){
printf("STARLIGHT process '%s' is not supported\n", processConfig.Data());
abort();
}

AliGenStarLight* genStarLight = new AliGenStarLight(1000*1000);
genStarLight->SetParameter(Form("BEAM_1_Z = %3i #Z of target",targZ));
genStarLight->SetParameter(Form("BEAM_1_A = %3i #A of target",targA));
Expand Down Expand Up @@ -1388,7 +1403,7 @@ GeneratorStarlight(){
genStarLight->SetParameter("BSLOPE_VALUE = 4.0"); // default slope value
if(genStarLight->Class_Version() > 3) // this option is only in later versions
genStarLight->SetParameter("PRINT_VM = 2"); // print cross sections and fluxes vs rapidity in stdout for VM photoproduction processes

genStarLight->SetRapidityMotherRange(yminConfig,ymaxConfig);
if (!genCocktail) return genStarLight;

Expand Down