|
[Rivet] agile-runmc AlpgenGavin Hesketh gavin.hesketh at cern.chThu Sep 13 14:44:48 BST 2012
Hi Stefania, ok, bit of a brain dump - this should probably be written up as documentation as some point, but it's not perfect. Apologies if I'm telling you things you already know. This is the working solution I arrived at, it may not be the only (or even the best) solution of course. Even getting this far was a long path, with a few bug fixes in HepMC and agile along the way. Alpgen is run in three steps: 1) generate weighted ME events (output = <filename>.wgt) 2) based on this, generate a sample of unweighted events (output = <filename>.unw and <filename>_unw.par) 3) run these unweighted events through pythia/herwig, apply MLM matching, output full particle level events. *only* step 3 is run using agile. All three steps have to be run for each slice you want, eg Z+0light partons, Z+1LP, Z+2LP, .... then the outputs of step 3 for all slices have to be added together to generate a complete sample. Now, the parameter file you have in your original email is a parameter file for step 1 or 2. This still has to be run outside agile. Once you have run step 1 and 2 and you have the .unw and _unw.par files, you can then run agile. The code to do the MLM matching in the agile step expects some parameters, which you can input by hand at the start of the agile job (not very convenient), or put in a new parameter file. eg make a file with this in: <filename> //matching the <filename>.unw you have 0 //whether the sample is inclusive or exclusive 20 0.4 5 // min pT, min dR, max eta for the MLM matching - remove the comments. If you have a higher xLP slice also generated, the sample is exclusive. If this is your highest xLP slice, it is inclusive. The pT, dR, eta can be tuned, but these values should be quite reasonable. The rivet ticket you found is about putting these parameters internally into agile; some of these are the ALPGENFILE, IEXC, and ETACLMAX already in the agile interface, but really I think it's not so simple, as the code sits at the command line expecting you to type them in; this code internal to alpgen (which is typically installed in the genser repository, not in agile). But it's not necessary to use the agile interface for these parameters: if you make a file called "inputs" containing the above parameters, you can run agile and rivet like this (for example) : agile-runmc AlpGenPythia6:426p12:2.1.4 --beams=LHC:7000 -n 11 -p "MSTP(5)=350" -o hepmc.fifo < inputs & rivet -a ATLAS_XXXX_XXXXXX /tmp/$USER/hepmc.fifo here I'm generating just 11 events as a test. You have no idea how many events can be generated from your unweighted set of ME events (because the MLM matching efficiency is only known at the end of the job). So I usually put here the number of unweighted events (the number of events output from step 2), as you know at least the number of events produced by agile will be less than this. If the rivet analysis you are running performs any kind of normalisation or multiplication / division of distributions, you generally have to hack the rivet code to turn this off - such normalisations are probably not valid per slice, only for the combined sample. There are other ways around this, but so far we didn't arrive at a good general solution. Finally, combining the xLP samples. They all have to be normalised to the same luminosity, then added together. As you don't know the cross section or the number of events that will be produced in the rivet step (due to the unknown MLM matching efficiency), I simply take the luminosity from the output of step 2 of the ME generation - eg you get a printout like: starting scan/unweighting of 1935692. events Crosssection(pb)= 1.23454341+- 0.00074512512 Generated 366203 unweighted events, lum= 296630.315pb-1 and you need this lum= value. I use this to weight the plots in the output aida file, then add the aida files together (or first convert the aida to root files, then do the same operation). I hope that's some help... Probably I missed some details, it's been a while since I ran alpgen. Gavin -------- Original Message -------- Subject: agile-runmc Alpgen Date: Wed, 12 Sep 2012 18:04:25 +0200 From: stefania spagnolo <stefania.spagnolo at le.infn.it> To: rivet at projects.hepforge.org CC: Andy Buckley <andy.buckley at ed.ac.uk> Dear all, I see that the ticket http://agile.hepforge.org/trac/ticket/121 is open with a low priority. I've the impression that the ticket wouldn't exist at all if some minimal documentation of the sintax and conventions of the input parameter file for Alpgen, run via agile, were available. I'm trying to guess the names (as known to agile) of the 5 input starting parameters without success in order to convert an input file like the following (provided in the Alpgen suite) 1 ! imode zbb ! label for files 0 ! start with: 0=new grid, 1=previous warmup grid, 2=previous generation grid 10000 2 ! Nevents/iteration, N(warm-up iterations) 100000 ! Nevents generated after warm-up *** The above 5 lines provide mandatory inputs for all processes *** (Comment lines are introduced by the three asteriscs) *** The lines below modify existing defaults for the hard process under study *** For a complete list of accessible parameters and their values, *** input 'print 1' (to display on the screen) or 'print 2' to write to file njets 3 ihvy 5 mllmin 80 mllmax 100 ptbmin 20 ptjmin 20 into a agile-alpgen parameter file. Could anybody help with that ? Many thanks, Stefania Stefania Spagnolo ------------------------------------------ Dip. di Fisica, Univ. del Salento Sezione INFN di Lecce Phone: +39 0832 297439
More information about the Rivet mailing list |