Studying Particle Flow with Fireworks

Overview

This page explains how to set up an experimental version of Fireworks, to study the particle flow reconstruction. This version of Fireworks can be used to create a display of the particles created by the particle flow algorithm:

  • PFCandidates
  • PFJets

In addition to this, you can also use a modified version of Fireworks which is designed to help you understand how the particle flow algorithm identifies and reconstructs particles, using the following inputs:

  • ECAL and HCAL rechits
  • PFClusters
  • Tracks, with their extrapolated position in the calorimeters
  • PFBlocks

Installation recipes

Depending upon what you wish to do with the software there are two installation recipes:

  • The first shows how to acquire the binary files needed if you only wish to run the event display. This is the easiest and quickest method to start displaying events.
  • The second installation recipe truly allows you to get the most up-to-date source code, make your own modifications and re-compile (see here for more information on FWLite).
    • The second recipe also allows you to fix some of the known bugs by updating and re-compiling with the latest source code

NB: If you only wish to display events and don't need access to source code and/or you are working on your own machine then it is highly recommended that you follow the first set of installation instructions.

Prerequisite: Setting up CVS

In order to grab the particle flow configuration file, as well as any source code, you need to have access to the cvs repositories.

NB: It is assumed that you have installed the cvs software on your machine!

So that your machine knows where and how to access the repositories, two environment variables must be set.

   export CVSROOT=:ext:YOURUSERNAME@cmssw.cvs.cern.ch:/cvs/CMSSW
   export CVS_RSH=ssh

That's it!

Installation Recipe 1 - cmsShow 4.2-2

Linux 64-bit:

1. Use the download link here or in a terminal run

 wget http://cmsshow.web.cern.ch/cmsshow/cmsShow-4.2-2.linux.tar.gz 

2. Run the following commands in the directory to which you just downloaded the tarball:

   tar xzf cmsShow-4.2-2.linux.tar.gz
   cd cmsShow-4.2-2/src
   find ../ -name 'pflow.fwc' -exec rm {} \;
   find ../ -name 'pflow_algo.fwc' -exec rm {} \;
   cvs co Fireworks/Core/macros/pflow.fwc
   cvs co Fireworks/Core/macros/pflow_algo.fwc
   ln -s src/Fireworks/Core/macros/pflow.fwc ../pflow.fwc
   ln -s src/Fireworks/Core/macros/pflow_algo.fwc ../pflow_algo.fwc
   cd ..

Mac:

1. Use the download link here or in a terminal run

 curl -OL http://cmsshow.web.cern.ch/cmsshow/cmsShow-4.2-2.mac.tar.gz 

2. Run the following commands in the directory to which you just downloaded the tarball:

   tar xzf cmsShow-4.2-2.mac.tar.gz
   cd cmsShow-4.2-2/src
   find ../ -name 'pflow.fwc' -exec rm {} \;
   find ../ -name 'pflow_algo.fwc' -exec rm {} \;
   cvs co Fireworks/Core/macros/pflow.fwc
   cvs co Fireworks/Core/macros/pflow_algo.fwc
   ln -s src/Fireworks/Core/macros/pflow.fwc ../pflow.fwc
   ln -s src/Fireworks/Core/macros/pflow_algo.fwc ../pflow_algo.fwc
   cd ..

Instructions on how to run cmsShow can be found in the 'How-to' section.

Installation Recipe 2 - Current release with FWlite: 4_2_3

In order to use this installation recipe there are a few prerequisites that need to be met.

  • You are either:
    • working on a mac with xcode installed,
    • using an slc5 terminal or have access to an slc5 terminal (e.g. ssh username@lxplus.cern.ch)
    • using the chroot method explained here.

The Installation

To install simply follow the instructions below. More information on the installation can be found at the standard Fireworks page.

NB: Step 1 is different on Linux and Mac but steps 2 and 3 should be followed for both!

Linux:

1.

  wget http://cmsrep.cern.ch/cms/cpt/Software/download/cms/TARS/slc5_amd64_gcc434/CMSSW_4_2_3_FWLITE-slc5_amd64_gcc434.tar.gz
  tar xzf CMSSW_4_2_3_FWLITE-slc5_amd64_gcc434.tar.gz
  cd CMSSW_4_2_3_FWLITE
  ./install.sh

Mac:

1.

  curl -OL http://cmsrep.cern.ch/cms/cpt/Software/download/cms/TARS/osx106_amd64_gcc421/CMSSW_4_2_3_FWLITE-osx106_amd64_gcc421.tar.gz
  tar xzf CMSSW_4_2_3_FWLITE-osx106_amd64_gcc421.tar.gz
  cd CMSSW_4_2_3_FWLITE
  ./install.sh


2. Assuming that you have followed the cvs prerequisites for this recipe, you now need to grab the code (Note: For the program to use this code you need to follow the compilation instructions).
   cd work/CMSSW_4_2_3_FWLITE/src/
   cvs co Fireworks/ParticleFlow
   cvs co Fireworks/Candidates

3. In order to get a display of either the particle flow based physics objects, or the particle flow inputs, you need to acquire the particle flow configuration files.

   cvs co Fireworks/Core/macros/pflow.fwc
   cvs co Fireworks/Core/macros/pflow_algo.fwc
   ln -s src/Fireworks/Core/macros/pflow.fwc ../pflow.fwc
   ln -s src/Fireworks/Core/macros/pflow_algo.fwc ../pflow_algo.fwc

Instructions on how to run FWLite can be found in the 'How-to' section.

User Code - Alternative Candidate Display

This section is optional but recommended. The following instructions show you how to acquire some additional code that allows you to display Candidates in an alternative way to the standard display. These alternative Candidates will be displayed as straight line objects which have lengths proportional to either pt or energy, depending upon the scaling options set in the Fireworks views.

   cvs co UserCode/sharris
   mv UserCode/sharris/Fireworks/AltCandidates Fireworks/
   rm -rf UserCode

Information on setting up an alternative Candidate display can be found in the 'How-To' section.

Compilation

In order for the newly acquired source code to actually be used, it is necessary to re-compile the program.

NB: The compilation is done using the scram tool and hence, you should at least have some knowledge of it's basic usage.

In the 'src' directory (e.g. ~/Documents/CMSSW_4_2_3_FWLITE/work/CMSW_4_2_3_FWLITE/src) run the following commands:

   . ../../../fwlite_setup.sh
   scram b

How-to

How to get a display of PFCandidates and particle-flow based physics objects

You can take a look at the attached screenshots (pflow.fwc & pflow_algo.fwc) so that you know what to expect when loading Fireworks with the particle flow config files.

cmsShow 4.2-2

In the main cmsShow directory (e.g. ~/Documents/cmsShow-4.2-2/) run the following command:

   ./cmsShow -c pflow.fwc http://cern.ch/fireworks/data-4.2.root

FWLite 4_2_3

In the main FWLite directory (e.g. ~/Documents/CMSSW_4_2_3_FWLITE/work/CMSSW_4_2_3_FWLITE) run the following commands:

   source ../../fwlite_setup.sh
   cmsenv
   cmsShow -c pflow.fwc http://cern.ch/fireworks/data-4.2.root

NB: These instructions already assume that you have acquired the necessary particle flow configuration files (i.e. pflow.fwc & pflow_algo.fwc) by following the installation instructions.

How to get a display of the particle flow inputs

cmsShow 4.2-2

In the main cmsShow directory (e.g. ~/Documents/cmsShow-4.2-2/) run the following command:

   ./cmsShow -c pflow_algo.fwc http://cern.ch/fireworks/data-4.2.root

FWLite 4_2_3

In the main FWLite directory (e.g. ~/Documents/CMSSW_4_2_3_FWLITE/work/CMSSW_4_2_3_FWLITE) run the following commands:

   source ../../fwlite_setup.sh
   cmsenv
   cmsShow -c pflow_algo.fwc http://cern.ch/fireworks/data-4.2.root

How to get an alternative Candidate display

This how-to is only for those users that have followed the second installation recipe (FWLite 4_2_3).

  1. The first thing to do is start cmsShow. You may have already done this following the instructions in one of the previous how-to's
  2. Once the application is running you should use the add collection dialog box to (the button to open this is on the left hand side of the main view) search for 'Alt Candidates', as shown here.
  3. You should now have an alternative display of the Candidates in the RhoPhi and RhoZ views (see the screenshot here).

An example set of instructions are shown below (these assume that you are in the main FWLite directory e.g. ~/Documents/CMSSW_4_2_3_FWLITE/work/CMSSW_4_2_3_FWLITE):

   source ../../fwlite_setup.sh
   cmsenv
   cmsShow http://cern.ch/fireworks/data-4.2.root
From this point you can simply add the 'Alt Candidates' collection using the add collection dialog box.

How to load a config file at runtime

In the main interface go to File and select Load Configuration OR, press Ctrl and l simultaneously. In the new window navigate to, and then open the desired config file (e.g. pflow.fwc or pflow_algo.fwc).

How to study PF Blocks

In order to study the PF Block objects clearly it's best if you don't display them at the same time as the PF Clusters and/or PF Tracks. Use the collection controller on the left hand side of the main Fireworks window in order to change a collections visibility. This is done by either ticking or un-ticking the box at the side of the relevant collection. In this case, you should un-tick the boxes by the side of "PF Tracks", "PF Cluster - ECAL" and "PF Cluster - HCAL" when displaying PF Block objects.

The visibility options are changed because drawing conflicts occur if the aforementioned objects are displayed together i.e. objects will overlap and it will become difficult to select/view any one in particular.

Wish-list & bug reports

This section is used to list bugs that are currently known as well as features that we are currently working towards getting implemented.

Known Bugs

  • Some of the track objects aren't extrapolated far enough to reach the endcaps
  • Ecal Rechit display in PF Rho Phi view isn't updated correctly after a filter is applied
  • If PFBlock's are displayed with PFTrack and/or PFCluster objects then object overlap may occur. This will make it difficult to select between these objects. See the How-to for information on studying PFBlocks.

Bug Fixes

This is a list of known bugs that can be fixed if you use the second installation recipe and compile the source code acquired from cvs.

The Wish-list (feature requests)

-- ColinBernet - 08-Feb-2011

Topic attachments
I Attachment History Action Size DateSorted descending Who Comment
PNGpng AddCollection_AltCand.png r1 manage 150.0 K 2011-07-26 - 12:23 UnknownUser Add Collection dialog for Alt Candidates
PNGpng altCandidate_display.png r1 manage 145.6 K 2011-07-26 - 12:23 UnknownUser Alternative Candidate display
PNGpng pflow_algo_fwc.png r1 manage 205.3 K 2011-05-26 - 18:16 UnknownUser A screenshot after loading Fireworks with the pflow_algo.fwc config file
PNGpng pflow_fwc.png r1 manage 218.4 K 2011-05-26 - 17:24 UnknownUser A screenshot after loading Fireworks with the pflow.fwc config file
Edit | Attach | Watch | Print version | History: r34 | r27 < r26 < r25 < r24 | Backlinks | Raw View | Raw edit | More topic actions...
Topic revision: r25 - 2011-07-29 - unknown


ESSENTIALS

ADVANCED TOPICS


 
    • Cern Search Icon Cern Search
    • TWiki Search Icon TWiki Search
    • Google Search Icon Google Search

    CMSPublic All webs login

This site is powered by the TWiki collaboration platform Powered by PerlCopyright & 2008-2019 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki? Send feedback