Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 10 Next »

HepMC filter

HepMC filter is a simple application that reads a file in HepMC format and selects only those events that pass certain cuts. The idea is to reduce a number of events we need to process after the selection.

Getting and Compiling the HepMC filter

tau1.hep.utexas.edu:

NOTE: To download the source file you need to have an access to ATLAS Subversion system.

1. Set up SVNROOT global variable that points to the ATLAS user's repository

export SVNROOT=svn+ssh://<username>@svn.cern.ch/reps/atlasusr

where <username> is your username on ATLAS.

2. Check-out the package from SVN

svn co $SVNROOT/yuraic/ttH/Projects/HepMC_Filter/trunk HepMC_Filter

This will create HepMC_Filter directory and check-out a package in it. If you want to check-out a version with certain tag, use the following command

svn co $SVNROOT/yuraic/ttH/Projects/HepMC_Filter/tags/HepMC_Filter-00-00-03 HepMC_Filter

This will check-out version HepMC_Filter-00-00-03 of the HepMC filter.
3. Source the setup.file

cd HepMC_Filter
source setup.sh

4. Compile the filter

gmake
gmake clean

At this stage you must have 'HepMC_Filter.exe' in the 'HepMC_Filter/bin' directory. This is the actual filter application.

Not the tau1 machine

1. You will need to download, compile and install the HepMC package. You can get more information here - https://savannah.cern.ch/projects/hepmc/

2. The global variable 'HepMC_PATH' from 'setup.sh' needs to be pointing to the directory where HepMC is installed.

3. The remaining steps are similar to the case with the tau1 machine.

Running the filter

In the 'share' subdirectory you will find 'dilepton_filter.sh'. You need to modify this file to star processing the data.

1. Open 'dilepton_filter.sh'

vim dilepton_filter.sh

2. Set up the correct paths to the 'input_dir' and 'output_dir' variables

input_dir=<input_files_dir>
output_dir=<output_files_dir>

where <input_files_dir> - path to the directory containing input HepMC files, and <output_files_dir> is the directory where output files will be placed.

NOTE: Input files must have *.hepmc extension. The extension for the output will be also *.hepmc.

3. Run the 'dilepton_filter.sh' script redirecting its output to my_details_output.txt

./dilepton_filter.sh >& my_details_output.txt

4. The filter will stop at some point and you should be able to find skimmed files in the output directory. The running timescale depends on number of events you have in the input. In my case, it was roughly 10 mins for about 100,000 input events.

Tips & Tricks

  • Filter efficiency 

The 'share' subdirectory contains python script that can calculate filter efficiency. This can be achieved by running 'efficiency.py' on 'my_details_output.txt' file

./efficiency.py my_details_output.txt
  • No labels