TWiki> Main Web>TWikiUsers>DeepakKar>PythiaProf (revision 3)EditAttachPDF

Notes on PYTHIA8 tuning using PROFESSOR in ATLAS

PYTHIA 8

PYTHIA8 in ATLAS

Pythia8 most writes output in the HepMC GenEvent output format, which can be read into Atlas using ReadEventFromFile in GenAnalysisTools:

 
 from AthenaCommon.AlgSequence import AlgSequence
 topSequence = AlgSequence()

 from ReadEventFromFile.ReadEventFromFileConf import ReadHepMc
 read = ReadHepMc()
 read.File = "filename.hepmc2g"
 topSequence += read

 theApp.EvtMax = 500

PROFESSOR

RIVET

Tuning Workflow

  1. Decide which parameters to tune. (Start off by MPI tune). By prof-scanparams -> prepares used_params files, which are input to generators. (one generator run corresponding to each used_param set. How many?).
  2. Decide which analysis/datasets to tune to. (/afs/cern.ch/atlas/groups/Generators/Tuning/firstdata/allref) . Should be stored (in AIDA format) in directory ref. (How to combine multiple?)
  3. Weights file with weights assigned to different analysis. (check for existing examples)
  4. Run the generator using used_param as input and with appropriate processes turned on. (No of runs set by no of used_param files? Running standalone is fine or must be though ATLAS interface? How to handle different CM energy?)
  5. Run the generator output (in HepMC format, use instruction from manual. Linking external HepMC needed?) through Rivet analysis and store in mc directory. (each run times no of analysis tuning to? structure of the directory?)
  6. Create a runcombs-file which contains combination of MC runs to be used. By prof--runcombs.
  7. Parameterise the generator response. By prof-interpolate, results in folder ipols that contains a generator parameterisation file.
  8. Finally tune. Using prof-tune, stored in results/.

  • Other useful stuff:
Show the sensitivity of observables to the parameters varied: savesensitivities.py --datadir . --oudir splots --observables weights1
Show how well the generator runs "enclose" data: prof-envelopes --mcdir mc --refdir ref -o envelopes --weights weights

Tuning Settings

  • MPI Tune parameters: (/afs/cern.ch/atlas/groups/Generators/Tuning/firstdata/more tune_11_mpi/parameter.ranges)

MultipleInteractions:pT0Ref (0.5 -10, 2.15)
MultipleInteractions:ecmPow (0-5, 0.24)
MultipleInteractions:pTmin (0.1 -10, 0.2)

For :bProfile = 2
MultipleInteractions::coreRadius (0.1-1-, 0.4)
MultipleInteractions:coreFraction (0 -1, 0.5)

For bProfile=3
MultipleInteractions:expPow (0.1 -10, 1)

  • PYTHIA8 Run settings:

The main32 example is very useful for running Rivet. It reads a runcard and writes HepMC events.

#fixed_params
PDF:pSet = 8
MultipleInteractions:bProfile = 3 _(double gaussian=2)_
MultipleInteractions:alphaSvalue = SigmaProcess:alphaSvalue
SpaceShower:rapidityOrder = on

#UE200.params
! 1) Settings that will be used in a main program.
Main:numberOfEvents = 3000000 ! number of events to generate
Main:timesToShow = 1000 ! show how far along run is this many times
Main:timesAllowErrors = 30 ! abort run after this many flawed events
Main:showChangedSettings = on ! print changed flags/modes/parameters
#Main:showAllSettings = on ! print all flags/modes/parameters
Main:showChangedParticleData = on ! print changed particle and decay data
#Main:showAllParticleData = on ! print all particle and decay data

! 2) Beam parameter settings. Values below agree with default ones.
Beams:idA = 2212 ! first beam, p = 2212, pbar = -2212
Beams:idB = 2212 ! second beam, p = 2212, pbar = -2212
Beams:eCM = 200 ! CM energy of collision

! 3) Pick processes and kinematics cuts
SoftQCD:minBias on

Tune Parameters:
tune4c.gif

Scripts/Commands

> source profenv.sh
> source /afs/cern.ch/sw/lcg/external/MCGenerators/professor/1.2.0/x86_64-slc5-gcc43-opt/setup.sh
> source /afs/cern.ch/sw/lcg/external/MCGenerators/rivet/1.4.0/x86_64-slc5-gcc43-opt/rivetenv.sh

HS:

> prof-runcombs -c 0:1 --mcdir /afs/cern.ch/atlas/groups/Generators/Tuning/firstdata/tune_10_shower/mc3-min -o runcombs_0_1.dat

>prof-interpolate --mcdir /afs/cern.ch/atlas/groups/Generators/Tuning/firstdata/tune_10_shower/mc3-min --runs runcombs_0_1.dat -o test --ipol cubic --weights /afs/cern.ch/atlas/groups/Generators/Tuning/firstdata/tune_10_shower/weights04

>prof-tune --runs runcombs_0_1.dat --ipoldir test/ipol --ipol cubic --weights /afs/cern.ch/atlas/groups/Generators/Tuning/firstdata/tune_10_shower/weights04 -o test --refdir /afs/cern.ch/atlas/groups/Generators/Tuning/firstdata/allref/

AGILe

Use v1.2.1. how to pass parameters?

> source /afs/.cern.ch/sw/lcg/external/MCGenerators/agile/1.2.0/x86_64-slc5-gcc43-opt/agileenv.sh

-- DeepakKar - 25-Feb-2011

Edit | Attach | Watch | Print version | History: r30 | r5 < r4 < r3 < r2 | Backlinks | Raw View | Raw edit | More topic actions...
Topic revision: r3 - 2011-02-28 - DeepakKar
 
    • Cern Search Icon Cern Search
    • TWiki Search Icon TWiki Search
    • Google Search Icon Google Search

    Main All webs login

This site is powered by the TWiki collaboration platform Powered by PerlCopyright & 2008-2019 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki? Send feedback