#-------------------------------------------------------------- # Number of events to be processed (default is 10) theApp.EvtMax = 5 #-------------------------------------------------------------- # Algorithms Private Options #-------------------------------------------------------------- from AthenaServices.AthenaServicesConf import AtRndmGenSvc ServiceMgr += AtRndmGenSvc() ServiceMgr.AtRndmGenSvc.Seeds = [ "HERWIG 390020611 821000366", "HERWIG_INIT 820021 2347532" ] from AthenaCommon.AlgSequence import AlgSequence job = AlgSequence() from Herwig_i.Herwig_iConf import Herwig job += Herwig() job.Herwig.HerwigCommand = [ "iproc 11500", "modpdf 10042", "autpdf HWLHAPDF", "msflag 1", "jmbug 0", "ptmin 10." ] job.Herwig.UpdateHadronStatCode = True from TruthExamples.TruthExamplesConf import DumpMC job += DumpMC() #============================================================== # # End of job options file # ###############################################################
evgenConfig.description = "FHerwig e+e-" evgenConfig.keywords = ["QCD", "jets", "EvtGen"] from AthenaServices.AthenaServicesConf import AtRndmGenSvc ServiceMgr += AtRndmGenSvc() #ServiceMgr.AtRndmGenSvc.Seeds = ["JIMMY 390020611 821000366", "JIMMY_INIT 820021 2347532"] from Herwig_i.Herwig_iConf import Herwig topAlg += Herwig() evgenConfig.generators += ["Herwig"] evgenConfig.minevents = 5000 include("MC12JobOptions/Jimmy_AUET2_CT10_Common.py") topAlg.Herwig.HerwigCommand += [ "iproc 104", "beam1type E+", "beam2type E-", "beam1energy "+str(runArgs.ecmEnergy/2.), "beam2energy "+str(runArgs.ecmEnergy/2.), "pltcut 0.0000000000333", "msflag 0", "nflav 5"] from TruthExamples.TruthExamplesConf import TestHepMC TestHepMC.DumpEvent = True TestHepMC.EnergyDifference = 10000000*GeV # To disable this test
"pypars mstp 61 1", # ISR "pypars mstp 71 1", # FSR "pypars mstp 81 1", # MultInt "pypars mstp 111 1", # Hadronization ] # Pythia listing documentation level (0-1-2) genAlg.PythiaCommand += ["pypars mstp 125 2"] elif genName.lower() == "herwig": try: from Herwig_i.Herwig_iConf import Herwig except ImportError, err: msg.warning("Could not load module Herwig_iConf") raise err genAlg = Herwig(cfgGenName) if genProcess == "Z+j": genAlg.HerwigCommand = [ "iproc 2150", "modpdf 10042", "autpdf HWLHAPDF" ] elif genProcess == "ttbar": genAlg.HerwigCommand = [ "iproc 1706", "modpdf 10042", "autpdf HWLHAPDF" ] else: raise RuntimeError, "Unknown PROCESS [%s]" % str(genProcess) pass else: raise RuntimeError, "Unknown GENERATOR [%s]" % str(genName)
def makeGenEvents( genName = "Pythia", genProcess = "ttbar", cfgGenName = "EvGen" ): """ Little helper method to provide a quick way to produce Mc-events """ msg = logging.getLogger( "McParticleTests" ) if genName.lower() not in [ "pythia", "herwig" ]: raise RuntimeError ("Unknown GENERATOR [%s]" % str(genName)) if genProcess not in ["ttbar", "HiggsTo4Leptons", "Z+j"]: raise RuntimeError ("Unknown PROCESS [%s]" % str(genProcess)) if genName.lower() == "pythia": try: from Pythia_i.Pythia_iConf import Pythia except ImportError as err: msg.warning( "Could not load module Pythia_iConf" ) raise err genAlg = Pythia(cfgGenName) genAlg.Tune_Name='ATLAS_20110103' if genProcess == "Z+j": genAlg.PythiaCommand = [ "pysubs msel 13", "pysubs ckin 3 18.", "pypars mstp 43 2" ] elif genProcess == "ttbar": # semi-leptonic decay of a ttbar pair (lepton=e,mu) genAlg.PythiaCommand = [ "pysubs msel 6", "pysubs ckin 3 18.", "pypars mstp 43 2", # Customisation of subprocess generation "pysubs msub 81 1", # qqbar -> QQbar "pysubs msub 82 1", # gq -> QQbar "pysubs msub 96 1", # SemiHard QCD 2 -> 2 # top "pydat3 mdme 41 1 0", # gt "pydat3 mdme 42 1 0", # gamma t "pydat3 mdme 43 1 0", # Z0 t "pydat3 mdme 44 1 0", # W+ d "pydat3 mdme 45 1 0", # W+ s "pydat3 mdme 46 1 1", # W+ b "pydat3 mdme 47 1 0", # W+ b' "pydat3 mdme 48 1 0", # h0 t "pydat3 mdme 49 1 0", # H+ b "pydat3 mdme 50 1 0", # ~chi_10 ~t_1 "pydat3 mdme 51 1 0", # ~chi_20 ~t_1 "pydat3 mdme 52 1 0", # ~chi_30 ~t_1 "pydat3 mdme 53 1 0", # ~chi_40 ~t_1 "pydat3 mdme 54 1 0", # ~g ~t_1 "pydat3 mdme 55 1 0", # ~gravitino ~t_1 # W "pydat3 mdme 190 1 2", # dbar u "pydat3 mdme 191 1 2", # dbar c "pydat3 mdme 192 1 2", # dbar t "pydat3 mdme 193 1 0", # dbar t' "pydat3 mdme 194 1 2", # sbar u "pydat3 mdme 195 1 2", # sbar c "pydat3 mdme 196 1 2", # sbar t "pydat3 mdme 197 1 0", # sbar t' "pydat3 mdme 198 1 2", # bbar u "pydat3 mdme 199 1 2", # bbar c "pydat3 mdme 200 1 2", # bbar t "pydat3 mdme 201 1 0", # bbar t' "pydat3 mdme 202 1 0", # b'bar u "pydat3 mdme 203 1 0", # b'bar c "pydat3 mdme 204 1 0", # b'bar t "pydat3 mdme 205 1 0", # b'bar t' "pydat3 mdme 206 1 0", # e+ nu_e "pydat3 mdme 207 1 3", # mu+ nu_mu "pydat3 mdme 208 1 0", # tau+ nu_tau "pydat3 mdme 209 1 0" # tau'+ nu'_tau ] elif genProcess == "HiggsTo4Leptons": genAlg.PythiaCommand = [ # Higgs mass set: "pydat2 pmas 25 1 150.", # Select Higgs production "pysubs msel 16", # Higgs Decays "pydat3 mdme 210 1 0", "pydat3 mdme 211 1 0", "pydat3 mdme 212 1 0", "pydat3 mdme 213 1 0", "pydat3 mdme 214 1 0", "pydat3 mdme 215 1 0", "pydat3 mdme 218 1 0", "pydat3 mdme 219 1 0", "pydat3 mdme 220 1 0", "pydat3 mdme 222 1 0", "pydat3 mdme 223 1 0", "pydat3 mdme 224 1 0", "pydat3 mdme 225 1 1", "pydat3 mdme 226 1 0", # Z Decays "pydat3 mdme 174 1 0", "pydat3 mdme 175 1 0", "pydat3 mdme 176 1 0", "pydat3 mdme 177 1 0", "pydat3 mdme 178 1 0", "pydat3 mdme 179 1 0", "pydat3 mdme 180 1 0", "pydat3 mdme 181 1 0", "pydat3 mdme 182 1 1", "pydat3 mdme 183 1 0", "pydat3 mdme 184 1 1", "pydat3 mdme 185 1 0", "pydat3 mdme 186 1 0", "pydat3 mdme 187 1 0", "pydat3 mdme 188 1 0", "pydat3 mdme 189 1 0" ] else: raise RuntimeError ("Unknown PROCESS [%s]" % str(genProcess)) # Some ISR,FSR,MultipleInteractions and Hadronization parameters genAlg.PythiaCommand += [ "pypars mstp 61 1", # ISR "pypars mstp 71 1", # FSR "pypars mstp 81 1", # MultInt "pypars mstp 111 1", # Hadronization ] # Pythia listing documentation level (0-1-2) genAlg.PythiaCommand += [ "pypars mstp 125 2" ] elif genName.lower() == "herwig": try: from Herwig_i.Herwig_iConf import Herwig except ImportError as err: msg.warning( "Could not load module Herwig_iConf" ) raise err genAlg = Herwig(cfgGenName) if genProcess == "Z+j": genAlg.HerwigCommand = [ "iproc 2150", "modpdf 10042", "autpdf HWLHAPDF" ] elif genProcess == "ttbar": genAlg.HerwigCommand = ["iproc 1706","modpdf 10042", "autpdf HWLHAPDF" ] else: raise RuntimeError ("Unknown PROCESS [%s]" % str(genProcess)) pass else: raise RuntimeError ("Unknown GENERATOR [%s]" % str(genName)) return genAlg
## Base configuration for HERWIG from Herwig_i.Herwig_iConf import Herwig genSeq += Herwig() evgenConfig.generators += ["Herwig"] ## HERWIG common config/EW parameters genSeq.Herwig.HerwigCommand = [ # Weak mixing angle "swein 0.23113", # Masses and widths "rmass 6 172.5", # TOP mass "rmass 198 80.399", # PDG2010 W mass "rmass 199 80.399", # PDG2010 W mass "rmass 200 91.1876", # PDG2010 Z0 mass "gamw 2.085", # PDG2010 W width "gamz 2.4952", # PDG2010 Z0 width # Main JIMMY MPI switches "jmueo 1", # Underlying event option (2->2 QCD) "msflag 1", # Turn on multiple interactions "jmbug 0", # Fragmentation "clpow 1.20", # Fix the ratio of mesons to baryons in B decays # Others "pltcut 0.0000000000333", # Make Ks and Lambda stable "ptmin 10.", # (D=10.) Min pT in hadronic jet production "mixing 1", # (D=1) Include neutral B meson mixing "maxpr 5" # Print out event record for first 5 events ]