Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
hepsim:usage_truth [2017/02/07 22:03]
hepsim17 [Reading NLO predictions]
hepsim:usage_truth [2020/05/22 02:48] (current)
hepsim17
Line 5: Line 5:
 ======  Plotting distributions ====== ======  Plotting distributions ======
  
-[[http://atlaswww.hep.anl.gov/hepsim/| HepSim repository]] can be used+[[https://atlaswww.hep.anl.gov/hepsim/| HepSim repository]] can be used
 for plotting any distribution or differential cross section using truth-level (EVGEN) files. for plotting any distribution or differential cross section using truth-level (EVGEN) files.
 Many HepSim MC samples include *.py scripts to calculate differential cross sections. You can run Many HepSim MC samples include *.py scripts to calculate differential cross sections. You can run
Line 18: Line 18:
 As before, make sure that [[http://java.com/en/download/index.jsp|Java 7]] and above is installed (check it as "java -version"). As before, make sure that [[http://java.com/en/download/index.jsp|Java 7]] and above is installed (check it as "java -version").
  
-===== Method I. Running in a batch mode without downloaded ProMC files =====+======  Streaming over the network  ====== 
  
 You can run validation scripts in a batch mode as: You can run validation scripts in a batch mode as:
  
 <code bash> <code bash>
-wget http://mc.hep.anl.gov/asc/hepsim/events/pp/100tev/ttbar_mg5/macros/ttbar_mg5.py+wget https://mc.hep.anl.gov/asc/hepsim/events/pp/100tev/ttbar_mg5/macros/ttbar_mg5.py
 hs-run ttbar_mg5.py hs-run ttbar_mg5.py
 </code> </code>
  
-Another approach is to use [[http://atlaswww.hep.anl.gov/asc/jas4pp |Jas4pp]] or  [[http://jwork.org/dmelt/|DataMelt]]. Such programs +Another approach is to use [[https://atlaswww.hep.anl.gov/asc/jas4pp |Jas4pp]] or  [[http://datamelt.org/|DataMelt]]. Such programs 
 give more flexibility and more libraries for analysis. give more flexibility and more libraries for analysis.
-In this example, we will run a Python script that downloads data from URL into the computer memory  and runs it in a batch mode. First, you will need an analysis code from HepSim. Look at ttbar sample from Madgraph: [[http://atlaswww.hep.anl.gov/hepsim/info.php?item=15|ttbar_mg5]].  Find the URL location of the analysis script ("ttbar_mg5.py") located at the bottom of this page. Then copy the URL link of the file *.py using the right mouse button ("Copy URL Location"). Let us make a calculation of differential ttbar cross section. +In this example, we will run a Python script that downloads data from URL into the computer memory  and runs it in a batch mode. First, you will need an analysis code from HepSim. Look at ttbar sample from Madgraph: [[https://atlaswww.hep.anl.gov/hepsim/info.php?item=15|ttbar_mg5]].  Find the URL location of the analysis script ("ttbar_mg5.py") located at the bottom of this page. Then copy the URL link of the file *.py using the right mouse button ("Copy URL Location"). Let us make a calculation of differential ttbar cross section. 
  
-Here is how to process the analysis using  [[http://atlaswww.hep.anl.gov/asc/jas4pp | Jas4pp]]:+Here is how to process the analysis using  [[https://atlaswww.hep.anl.gov/asc/jas4pp | Jas4pp]]:
  
 <code bash> <code bash>
-wget http://atlaswww.hep.anl.gov/asc/jas4pp/download/current.php -O jas4pp.tgz+wget https://atlaswww.hep.anl.gov/asc/jas4pp/download/current.php -O jas4pp.tgz
 tar -zvxf jas4pp.tgz tar -zvxf jas4pp.tgz
 cd jas4pp cd jas4pp
 source ./setup.sh # takes 5 sec for first-time optimization source ./setup.sh # takes 5 sec for first-time optimization
-wget http://mc.hep.anl.gov/asc/hepsim/events/pp/100tev/ttbar_mg5/macros/ttbar_mg5.py # get the HepSim script+wget https://mc.hep.anl.gov/asc/hepsim/events/pp/100tev/ttbar_mg5/macros/ttbar_mg5.py # get the HepSim script
 fpad ttbar_mg5.py # process it in a batch mode. fpad ttbar_mg5.py # process it in a batch mode.
 </code> </code>
Line 44: Line 44:
 Look at the "example" directory of the Jas4pp installation. It has a several examples of how to process the ProMC files. Look at the "example" directory of the Jas4pp installation. It has a several examples of how to process the ProMC files.
  
-Similarly, you can use a more complex [[http://jwork.org/dmelt/|DataMelt]]:+Similarly, you can use a more complex [[https://datamelt.org|DataMelt]]:
 <code bash> <code bash>
-wget -O dmelt.zip http://jwork.org/dmelt/download/current.php                        # get DMelt +wget -O dmelt.zip http://jwork.org/dmelt/download/current.php                        # get DataMelt 
-wget http://mc.hep.anl.gov/asc/hepsim/events/pp/100tev/ttbar_mg5/macros/ttbar_mg5.py #  analysis script+wget https://mc.hep.anl.gov/asc/hepsim/events/pp/100tev/ttbar_mg5/macros/ttbar_mg5.py #  analysis script
 unzip dmelt.zip unzip dmelt.zip
 ./dmelt/dmelt_batch.sh ttbar_mg5.py ./dmelt/dmelt_batch.sh ttbar_mg5.py
Line 58: Line 58:
 </code> </code>
  
-If you want to see a pop-up canvas with the output histogram on your screen, change the line "c1.visible(False)" to "c1.visible()" and comment out  "sys.exit(0)" at the very end of the "ttbar_mg5.py" macro. You can change the output format from "SVG" to "PDF", "EPS" or "PNG". Look at the [[http://jwork.org/dmelt/api/doc.php/jhplot/package-summary | Java API]].+If you want to see a pop-up canvas with the output histogram on your screen, change the line "c1.visible(False)" to "c1.visible()" and comment out  "sys.exit(0)" at the very end of the "ttbar_mg5.py" macro. You can change the output format from "SVG" to "PDF", "EPS" or "PNG". Look at the [[http://datamelt.org/api/doc.php/jhplot/package-summary | Java API]].
  
-===== Method IIRunning in batch mode after downloading ProMC files ====+ 
 +====== Using Java WebStart ====== 
 + 
 + 
 +Many "Info" pages of HepSim have Jython (Python) scripts for validation and analysisOne can run such scripts from the web browsers using the Java Web Start technology. Click the "Launch" button. You will see an editor. Then click the "Run" button to process events. 
 + 
 +To use Java Web Start, you should configure Java permissions: For Linux/Mac, run "ControlPanel", go to the "Security" tab and add "http://atlaswww.hep.anl.gov" to the exception list. For Windows, find "Java Control Panel" and do the same. Read [[https://www.java.com/en/download/help/java_blocked.xml|Why are Java applications blocked by your security settings]]. In addition, if you are Mac user, you should allow execution of programs outside Mac App Store.  
 + 
 + 
 +======  Downloaded ProMC files ====== 
  
 The above approach depends on network availability at the time when you do the analysis. The above approach depends on network availability at the time when you do the analysis.
Line 76: Line 85:
  
 <code bash> <code bash>
-wget http://mc.hep.anl.gov/asc/hepsim/events/pp/100tev/ttbar_mg5/macros/ttbar_mg5.py # get analysis scrip                             +wget https://mc.hep.anl.gov/asc/hepsim/events/pp/100tev/ttbar_mg5/macros/ttbar_mg5.py # get analysis scrip                             
-hs-get http://mc.hep.anl.gov/asc/hepsim/events/pp/100tev/ttbar_mg5 ttbar_mg5 +hs-get https://mc.hep.anl.gov/asc/hepsim/events/pp/100tev/ttbar_mg5 ttbar_mg5 
 ./dmelt/dmelt_batch.sh ttbar_mg5.py ttbar_mg5 10000 ./dmelt/dmelt_batch.sh ttbar_mg5.py ttbar_mg5 10000
 </code> </code>
  
-Similarly,  you can use  [[http://atlaswww.hep.anl.gov/asc/jas4pp | Jas4pp]]. +Similarly,  you can use  [[https://atlaswww.hep.anl.gov/asc/jas4pp | Jas4pp]]. 
-===== Method III. Running in a GUI mode  ====+ 
 +======  Running in a GUI mode ====== 
  
 You can perform short validation analysis using an editor as: You can perform short validation analysis using an editor as:
Line 107: Line 117:
 It will open the Python script for editing. Next, run this  script by clicking the image of green running man on the status bar (or press [F8]). It will open the Python script for editing. Next, run this  script by clicking the image of green running man on the status bar (or press [F8]).
  
-===== Method IV. Running in a GUI mode using URL dialog  ====+====== Using GUI URL dialogue ====== 
  
- +If you use DMelt, you can run this code using a more conventional editor:
- +
-If you use DMelt, you can run this code using +
-a more conventional editor:+
  
 <code bash> <code bash>
Line 135: Line 142:
 First, download any ProMC file, i.e. First, download any ProMC file, i.e.
 <code bash> <code bash>
-wget http://mc.hep.anl.gov/asc/hepsim/events/pp/100tev/qcd_pythia8/pythia100qcd_001.promc+wget https://mc.hep.anl.gov/asc/hepsim/events/pp/100tev/qcd_pythia8/pythia100qcd_001.promc
 </code> </code>
  
Line 208: Line 215:
  
 <code bash> <code bash>
-hs-view http://mc.hep.anl.gov/asc/hepsim/events/pp/100tev/gamma_mcfm/gamma100tev_0000000.promc+hs-view https://mc.hep.anl.gov/asc/hepsim/events/pp/100tev/gamma_mcfm/gamma100tev_0000000.promc
 </code> </code>
  
 or: or:
 <code bash> <code bash>
-wget http://mc.hep.anl.gov/asc/hepsim/events/pp/100tev/gamma_mcfm/gamma100tev_0000000.promc+wget https://mc.hep.anl.gov/asc/hepsim/events/pp/100tev/gamma_mcfm/gamma100tev_0000000.promc
 hs-view gamma100tev_0000000.promc hs-view gamma100tev_0000000.promc
 </code> </code>
Line 229: Line 236:
 You can also open a script as: You can also open a script as:
 <code bash> <code bash>
-wget http://mc.hep.anl.gov/asc/hepsim/events/pp/8tev/gamma_jetphox.py+wget https://mc.hep.anl.gov/asc/hepsim/events/pp/8tev/gamma_jetphox.py
 ./dmelt.sh gamma_jetphox.py ./dmelt.sh gamma_jetphox.py
 </code> </code>
  
-Alternatively, open this script in the DMelt editor and press run (or [F8]).+Alternatively, open this script in the DataMelt editor and press run (or [F8]).
  
 NLO event record includes 4-momenta of particles and event weights (double values). In addition, deviations form central weights are included as an array of integer values as: NLO event record includes 4-momenta of particles and event weights (double values). In addition, deviations form central weights are included as an array of integer values as:
Line 243: Line 250:
 <code bash> <code bash>
 mkdir Higgs; cd Higgs; mkdir Higgs; cd Higgs;
-wget http://mc.hep.anl.gov/asc/hepsim/events/pp/100tev/higgsjet_gamgam_mcfm/macros/higgsjet_gamgam_mcfm.py+wget https://mc.hep.anl.gov/asc/hepsim/events/pp/100tev/higgsjet_gamgam_mcfm/macros/higgsjet_gamgam_mcfm.py
 wget -O dmelt.zip http://sourceforge.net/projects/dmelt/files/latest/download wget -O dmelt.zip http://sourceforge.net/projects/dmelt/files/latest/download
 unzip dmelt.zip unzip dmelt.zip
Line 249: Line 256:
 </code> </code>
  
-This example runs "higgsjet_gamgam_mcfm.py" code using online files and creates  a Higgs differential cross section with PDF uncertainties. We use DMelt to do the calculations (after updating one jar file). You can also use ROOT/C++ to do the same.+This example runs "higgsjet_gamgam_mcfm.py" code using online files and creates  a Higgs differential cross section with PDF uncertainties. We use DataMelt to do the calculations (after updating one jar file). You can also use ROOT/C++ to do the same.
  
  
Line 282: Line 289:
  
 <code bash> <code bash>
-wget http://mc.hep.anl.gov/asc/hepsim/events/pp/8tev/gamma_jetphox/ggd_mu1_45_2000_run0_atlas50.promc+wget https://mc.hep.anl.gov/asc/hepsim/events/pp/8tev/gamma_jetphox/ggd_mu1_45_2000_run0_atlas50.promc
 promc_proto ggd_mu1_45_2000_run0_atlas50.promc promc_proto ggd_mu1_45_2000_run0_atlas50.promc
 promc_code promc_code
Line 289: Line 296:
  
 This creates directories with the C++/CPython/Java analysis codes.  This creates directories with the C++/CPython/Java analysis codes. 
-For a longer description, read the [[http://atlaswww.hep.anl.gov/asc/promc/ | ProMC manual]].+For a longer description, read the [[https://atlaswww.hep.anl.gov/asc/promc/ | ProMC manual]].
  
 For C++/ROOT, you can use {{:hepsim:promc_root_example.tgz| this C++/ROOT example package}}. For C++/ROOT, you can use {{:hepsim:promc_root_example.tgz| this C++/ROOT example package}}.
Line 297: Line 304:
 Use this Doxygen description to work with C++: Use this Doxygen description to work with C++:
  
-      * [[http://atlaswww.hep.anl.gov/asc/promc/doc/cpp_promc/html/annotated.html | annotated classes]] - for complete MC event records +      * [[https://atlaswww.hep.anl.gov/asc/promc/doc/cpp_promc/html/annotated.html | annotated classes]] - for complete MC event records 
-      * [[http://atlaswww.hep.anl.gov/asc/promc/doc/cpp_pronlo/html/annotated.html | annotated classes]] - for NLO event records+      * [[https://atlaswww.hep.anl.gov/asc/promc/doc/cpp_pronlo/html/annotated.html | annotated classes]] - for NLO event records
      
  
Line 308: Line 315:
  
 <code bash> <code bash>
-    wget http://atlaswww.hep.anl.gov/asc/hepsim/soft/hepsim-cpp.tgz -O - | tar -xz;+    wget https://atlaswww.hep.anl.gov/asc/hepsim/soft/hepsim-cpp.tgz -O - | tar -xz;
     cd hepsim-cpp/;     cd hepsim-cpp/;
     make     make
Line 331: Line 338:
 ====== Converting to LCIO ====== ====== Converting to LCIO ======
  
-ProMC files can be converted to LCIO files for full detector simulations.  This is an example of such conversion (it requires Java installed):+ProMC files can be converted to LCIO or STDHEP  
 +files for full detector simulations.  See [[hepsim:dev_full|LCIO/STDHEP section]] for detail. 
  
 +Note that the converters are included inside the ProMC package (see the directory "examples"). Here is an example:
 +
 +<hidden>
 <code bash> <code bash>
-wget http://atlaswww.hep.anl.gov/asc/promc/download/current.php -O ProMC.tgz+wget https://atlaswww.hep.anl.gov/asc/promc/download/current.php -O ProMC.tgz
 tar -zvxf ProMC.tgz tar -zvxf ProMC.tgz
 cd examples/promc2lcio cd examples/promc2lcio
Line 341: Line 352:
 java promc2lcio file.promc file.slcio java promc2lcio file.promc file.slcio
 </code> </code>
-The last commends creates  file.slcio with "MCparticle" container. +</hidden> 
 + 
 +The last command creates  file.slcio with the "MCParticle" container. 
  
  
Line 370: Line 383:
  
 Many scripts of HepSim create SVG images and a cross platform  Many scripts of HepSim create SVG images and a cross platform 
-[[http://jwork.org/dmelt/wikidoc/doku.php?id=man:io:crossplatform | JDAT data format based on HBook]]. In order to convert JDAT files into CPython or ROOT object, read the data using xml.dom. This is a conversion to the CPython:+[[https://handwiki.org/wiki/DMelt:IO/8_Cross_Paltform_IO | JDAT data format based on HBook]]. In order to convert JDAT files into CPython or ROOT object, read the data using xml.dom. This is a conversion to the CPython:
  
 <hidden> <hidden>
 <code python> <code python>
-!/usr/local/bin/python+#!/usr/local/bin/python
 # Convert jdat to the standard Python # Convert jdat to the standard Python
 # This can be used for converting data to pyROOT  # This can be used for converting data to pyROOT