Both sides previous revision
Previous revision
Next revision
|
Previous revision
|
hepsim:usage_truth [2017/09/21 14:03] hepsim17 [Converting to LCIO] |
hepsim:usage_truth [2020/05/22 02:48] hepsim17 |
====== 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 |
| |
<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> |
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 |
</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]]. |
| |
| |
| |
<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]]. |
| |
====== Running in a GUI mode ====== | ====== Running in a GUI mode ====== |
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> |
| |
| |
<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> |
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: |
<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 |
</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. |
| |
| |
| |
<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 |
| |
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}}. |
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 |
| |
| |
| |
<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 |
<hidden> | <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 |
| |
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> |