Recent Changes - Search:

<< Back to ANL ASC

Links

Generate MC

High-ET photon program

Jamborees


Background Filter


PmWiki

edit SideBar

2008May14

ANL Jamboree (May 14-17, 2008). Egamma/Photon subgroup

Task: to run over FDR reprocessed data. The data are described in FDR TriggerMenu.

Run over the data locally and then using pathena.

Participants:

 Robert Blair          (reb@anl.gov)
 Sergei Chekanov       (chakanau@hep.anl.gov)
 XXX ...

How to install and run the analysis program:

  • Create a testarea directory if you still do not have it
   mkdir $HOME/testarea
   mkdir $HOME/testarea/13.0.40
  • Copy the program on ANL atlas16 (or 17,18, 20, 21, 22, 23) .hep.anl.gov
     cp -r /users/chakanau/public/testarea_egamma/13.0.40/*  $HOME/testarea/13.0.40/
  • copy ATLAS setup file:
     cp /users/chakanau/public/set_user.sh   .
  • Set up the ATLAS environment variables: Make sure that you are using "bash" shell (check as: echo $SHELL). If you have tsch etc, use "ypchsh <user>" command.
     source set_user.sh

(put this script in .bash_profile or .bashrc if you want to set up the ATLAS staff every time you login)

  • Go to
      testarea/13.0.40/analysis/PromptGamma/cmt

and type:

       cmt broadcast cmt config; 
       source setup.sh;
       cmt broadcast cmt make

This installs the program on your computer. Note: if you will modify PromptGamma program, next time you can just type (from PromptGamma/cmt):

       make

(You do not need to type "broadcast")

  • Run the program locally on atlas16 (17,18, 20, 21, 22). Please use atlas PC with minimum CPU

load (see info when you set up atlas soft).

   cd testarea/13.0.40/analysis/PromptGamma/run_anl_FDR

and type: ./a_run. It will run over all FDR files. Look at the script a_run where you can specify the data set. Edit Analysis.py if you need (No of events, container types, cuts). The Lumi value is fake (it is given in LUMI.INFO file) at this moment. The output is Analysis.root file. Look at RecoGamma or RecoJets directories inside of this file to plot Eta and Pt etc. histograms for reconstructed photons and jets. Also, check *.log files (athena output, AOD keys and trigger fired slots).

  • To submit the program to the grid use only atlas16-18:
     cd testarea/13.0.40/analysis/PromptGamma/run

Edit the submission script a_run_panda. Put: datasetname="fdr08_run1.0003050.StreamEgamma.merge.AOD.o1_r6_t1" and correct output="user.SergeiChekanov.005808.JF35_pythia_loosejet_filter" (put your user name here). Then type:

     ./a_run_panda

You will see a message similar to this:

 archive sources
 archive InstallArea
 post sources/jobO
 query files in dataset:trig1_misal1_mc12.005808.JF35_pythia_loosejet_filter.recon.AOD.v13003002
 submit
 ===================
 JobID  : 10
 Status : 0
  > build
    PandaID=8408625
  > run
    PandaID=8408626-8408720
  --> Submit to the grid  ---
  • Check the job as:
     pathena_util
     show()
  • Check the job using the panda monitor (See "Useful links" from ASC ANL web page). On Panda monitor, click on "List users" (upper right corner) and find your name. Check on the name - you will get your jobs. The web page looks similar to this:
     Panda monitor web page
  • When the job is done, you will receive an email from PANDA. You can copy the output using:
   dq2_get -rv user.<UserName>.test3.StreamEgamma.merge 

You will see 2 files: log file and the root output file. Open the root file and check histograms inside RecoGamma and RecoJets directories. They should be filled.

Cross section measurement

Assume that FDR Monte Carlo sample is our data. Let's try to correct such data using a Monte Carlo simulation. In this case, we should fill the truth information about jets and gammas. The true information are in histograms in "TrueJet" and "TrueGamma" directories of the ROOT file "Analysis.root".

Try to run over a proper prompt-photon Monte Carlo simulation: For this, go to the directory "run_anl_MC" and run the script "a_run". This is almost identical script, only this time you will run over AOD files located in "/data/nas2/users/chakanau/data/mc/pythia_prph40" (PYTHIA events with MSEL=10 and min PT for hard sub-processes 40 GeV). You should get the output "Analaysis.root" with histograms in the directories "TrueJet" and "TrueGamma" properly filled.

Now make a corrected PT-gamma distribution using ROOT. Go out from the "run_anl_MC" directory (cd ..) and make a simple ROOT script (acceptance.py):

   #!/usr/bin/env python
   # simple pyROOT script to otian acceptance
   from ROOT import gROOT, TFile, TCanvas, TH1F, TH1, TPostScript,  TF1

   gROOT.Reset();

   f1=TFile( "./run_anl_FDR/Analysis.root" ) # data
   f2=TFile( "./run_anl_MC/Analysis.root" )  #  MC (detector and truth levels)

   # build canvas
   c1=TCanvas("c","Gamma",10,10,400,600);
   ps1 = TPostScript("figure.eps",113)

   # get pt histogram (reconstructed object)
   h1r=f1.Get("RecoGamma/reco_gamma_pt")
   h1r.Sumw2()

   # get pt histogram (true object)
   h1t=f2.Get("TrueGamma/true_gamma_pt")
   h1t.Sumw2()

   # divide them
   rat1=h1r.Clone();
   rat1.SetName("Acceptance")
   rat1.Divide(h1r, h1t, 1.0, 1.0, "B");

   # draw acceptance
   rat1.Draw("pe")
   c1.Update()
   ps1.Close()
   myinput="0"

   if (myinput != "batch"):
              if (raw_input("Press any key to exit") != "-9999"): sys.exit(1);
   ################# end ###############################

Take care of indentations when copying the script! Well, now try to modify this script by extracting data histogram from "f1" and by multiplying this histogram by acceptance correction (histogram "rat1"). Also, if you know the lumi, divide this histogram by the lumi number to obtain a toy-like cross section

Cross section measurement

Assume that FDR Monte Carlo sample is our data. Let's try to correct such data using a Monte Carlo simulation. In this case, we should fill the truth information about gammas. The true histograms are in "TrueGamma" directory of the ROOT file "Analysis.root".

Try to run over a proper prompt-photon Monte Carlo simulation: For this, go to the directory "run_anl_MC" and run the script "a_run". This is almost identical script, only this time you will run over AOD files located in "/data/nas2/users/chakanau/data/mc/pythia_prph40" (PYTHIA events with MSEL=10 and min PT for hard sub-processes 40 GeV). You should get the output "Analaysis.root" with histograms in the directory "TrueGamma" properly filled.

Now let us make a corrected PT(gamma) distribution using ROOT. Go out from the "run_anl_MC" directory (cd ..) and make a simple ROOT script (acceptance.py):

   #!/usr/bin/env python
   # simple pyROOT script for acceptance

   gROOT.Reset();

   f1=TFile( "./run_anl_FDR/Analysis.root" ) # data
   f2=TFile( "./run_anl_MC/Analysis.root" )  #  MC (detector and truth levels)

   # build canvas
   c1=TCanvas("c","Gamma",10,10,400,600);
   ps1 = TPostScript("figure.eps",113)

   # get pt histogram (reconstructed object)
   h1r=f2.Get("RecoGamma/reco_gamma_pt")
   h1r.Sumw2()

   # get pt histogram (true object)
   h1t=f2.Get("TrueGamma/true_gamma_pt")
   h1t.Sumw2()

   # divide them
   rat1=h1r.Clone();
   rat1.SetName("Acceptance")
   rat1.Divide(h1r, h1t, 1.0, 1.0, "B");

   # draw acceptance
   rat1.Draw("pe")
   c1.Update()
   ps1.Close()
   if (myinput != "batch"):
              if (raw_input("Press any key to exit") != "-9999"): sys.exit(1);
   ################# end ###############################

Well, now try to modify this script by extracting data histogram from "f1" and by multiplying this histogram by the acceptance correction (the histogram "rat1"). Also, if you know the lumi, divide this histogram by the lumi number to obtain a toy-like cross section

S.Chekanov (ANL). Version: 2008-05-6

Edit - History - Print - Recent Changes - Search
Page last modified on May 15, 2008, at 06:01 PM