From 9aa9fc882d7b7fa7019565a076c426a366013000 Mon Sep 17 00:00:00 2001 From: Sylvester Joosten <sylvester.joosten@gmail.com> Date: Wed, 6 Apr 2016 14:47:36 -0400 Subject: [PATCH] streamlined generator settings --- pythia6m/gmc/gen_set.h | 40 +++++++++++++++++++--------------------- pythia6m/gmc/gen_set.inc | 8 -------- pythia6m/gmc/gmc_init.F | 27 ++++----------------------- 3 files changed, 23 insertions(+), 52 deletions(-) diff --git a/pythia6m/gmc/gen_set.h b/pythia6m/gmc/gen_set.h index d88f024..ad38d0c 100644 --- a/pythia6m/gmc/gen_set.h +++ b/pythia6m/gmc/gen_set.h @@ -4,31 +4,29 @@ #ifdef __cplusplus extern "C" { #endif - - struct GeneratorSettings { - int photoStruc; // photon structure parameter (MSTP(14)) - int photoType; // user control switch (MSEL, 9.2) - int cosNPhiModel; // disable with 0, 1 for HERMES hadron parameterization - int pyMaxFlavor; // PYTHIA max flavor - int PDFSet; // PDF set for PYTHIA/JETSET - int decayPiK; // Have LUND decay pi+-, K+- and K0_L - int decayLamKs; // Have LUND decay Lambda, Sigma, Xi, Omega, K0_S - int radgenGenLUT; // generate LUT for pol. rad. corr. - int radgenUseLUT; // use LUT for pol. rad. corr. - int enableFM; // activate or not the FM - int FMNBins; // Number of bin for FM discretization - float FMCutOff; // Max FM (in GeV) - char pyModel[4]; // l/N (DIS) or gamma/l pN (GVMD,REAL,DIS,RAD) - char genRad[4]; // radiative effects (NO,POL) - char paramF[4]; // structure function parameterization - char paramR[4]; // param. of R=sL/sT (1990, 1998; or 0 for R=0) - }; - extern struct GeneratorSettings common_gen_set_; + +struct GeneratorSettings { + int PhotoStruc; // photon structure parameter (MSTP(14)) + int PhotoType; // user control switch (MSEL, 9.2) + int PyMaxFl; // PYTHIA max flavor + int PartonSet; // PDF set for PYTHIA/JETSET + int DecayPiK; // Have LUND decay pi+-, K+- and K0_L + int DecayLamKs; // Have LUND decay Lambda, Sigma, Xi, Omega, K0_S + int radgenGenLUT; // generate LUT for pol. rad. corr. + int radgenUseLUT; // use LUT for pol. rad. corr. + int enableFM; // activate or not the FM + int FMNBins; // Number of bin for FM discretization + float FMCutOff; // Max FM (in GeV) + char PyModel[4]; // l/N (DIS) or gamma/l pN (GVMD,REAL,DIS,RAD) + char GenRad[4]; // radiative effects (NO,POL) + char FStruct[4]; // structure function parameterization + char R[4]; // param. of R=sL/sT (1990, 1998; or 0 for R=0) +}; +extern struct GeneratorSettings common_gen_set_; #define glb_gen common_gen_set_ #ifdef __cplusplus } #endif - #endif diff --git a/pythia6m/gmc/gen_set.inc b/pythia6m/gmc/gen_set.inc index 059ddb5..a6d9bc3 100644 --- a/pythia6m/gmc/gen_set.inc +++ b/pythia6m/gmc/gen_set.inc @@ -1,9 +1,5 @@ common /common_gen_set/ - + genSet_PhotoStruc, + genSet_PhotoType, - + genSet_CosNPhiParam, - + genSet_PyMaxFl, - + genSet_PartonSet, + genSet_DecayPiK, + genSet_DecayLamKs, + genSet_GenLUT, @@ -18,11 +14,7 @@ save /common_gen_set/ integer - + genSet_PhotoStruc, + genSet_PhotoType, - + genSet_CosNPhiParam, - + genSet_PyMaxFl, - + genSet_PartonSet, + genSet_fastMC, + genSet_enableFM, + genSet_FMNBins diff --git a/pythia6m/gmc/gmc_init.F b/pythia6m/gmc/gmc_init.F index 093000c..189ff00 100644 --- a/pythia6m/gmc/gmc_init.F +++ b/pythia6m/gmc/gmc_init.F @@ -43,31 +43,12 @@ ! Other parameters -! ... structue of incoming photon (resolved, VMD) (sec 9.3) - mstp(14) = genSet_PhotoStruc - -! ... select nucleon parton distribution set -! ... GNOME? mstp(56) is photo PDF -! TODO move to after gmc_loadtune - mstp(51) = genSet_PartonSet - if (genSet_PartonSet.lt.1000) then - mstp(52) = 1 - else - mstp(52) = 2 - endif - -! ... number of allowed flavours (sec 6.3.3 ... e+e- only?) - mstp(58) = genSet_PyMaxFl ! ......... (e+e- only?) - mstj(104) = genSet_PyMaxFl +C mstj(104) = genSet_PyMaxFl + mstj(104) = 4 ! ... number of quark generations - mstp(1) = genSet_PyMaxFl - -! ... QCD and QED radiative corrections (sec 10.4; 1=on=default, 0=off) -! .... according to me (E.C.A) we should run with mstp(61) = 0 as that turns -! .... of parton showering - mstp(61) = 0 - mstp(71) = 0 +C mstp(1) = genSet_PyMaxFl + mstp(1) = 4 ! ... parameters describing fragmentation functions call gmc_setfrag (0) -- GitLab