FrameworkLimitedtoIfaePhysicsAnalysis

logo.png

Introduction

FLIPA = Framework Limited to IFAE's Physics Analysis

The aim is to create a common framework flexible enough to accommodate all physics analysis at IFAE.

The idea is to have all tools available in a modular way so that all analyzers at IFAE can share their code!

What are the advantages of using such a modular framework at IFAE:

  • no double coding (when happened your last copy-and-paste error?!)
  • thus, more consistency of the code ("two different cross-section values?!")
  • cross-checking between the different analyzers (at a certain point it's hard to debug your on code)
  • for your background you can cash in on the others signal (see: no double coding)
  • easy changing of your analysis strategy by switching on/off different modules in your jobOption file (without recompiling)

Overview

What FLIPA does...

  • Input: by now we run on AOD

  • Output: slim ntuple and DPD

  • Steps: each step is written in a module. Each module retrieves input data from Store Gate (SG) and writes out output in SG as well. We have different kind of moldules:
    • "Base" Particle Handler: such as electron, muon, jet, ... These modules perform the pre-selection of your objects:
      • eta / pT cuts
      • self-overlap removal
      • overlap removal with other objects
    • Composite Particle Builder: such as W, Z, top, ... These modules reconstruct a composite particle using the reconstruction method specified
    • Global Event Info: Event Variables. other modules are:
    • Trigger Handler: select events passing a given trigger/set of triggers.
    • Truth Handler: get truth information
    • Ntupleizer: dump interesting info in a flat ROOT ntuple for fast analysis. For each module that wants to dump something in the ntuple, there is a tool "XXXDumper" in this module.
  • Common functions: all functions and constants used in more than one place are put in a common space so that all modules can share them. By now we have:
    • PDG_Values: constants (masses, cross sections, colors(?))
    • Colar: for overlap removal
    • AnaCutCollection: eta/pT cuts
    • ToolKit: delta R
    • RecoMethods: reconstruction methods generalized
    • ...

sketch.png

How to run

How to merge ntuples

  • Use hadd command (you need to have ROOT set up):
     hadd outputfile.root inputfile1.root inputfile2.root 
  • To merge many files, first get the list of input files: go to the directory where your files are located and do:
     for a in *; do list="$a $list"; done 
    . Then use:
    hadd outputfile.root $list 

Tags History

Full ChangeLog

  • FLIPA-01-00-03: preliminary implementation of reco to hlt matching

  • FLIPA-01-00-02: first version of a HLT jet object dumper

  • FLIPA-00-03-00: Adapt TruthDumper to Z truth structure

  • FLIPA-00-02-06: variable number of ntuple array entries

  • FLIPA-00-02-00: First commit of Truth Dumper: not yet usable in Analysis

  • FLIPA-00-01-00: Implementation of the leptonic top reconstruction

  • FLIPA-00-00-27: Implementation of the hadronic top reconstruction

  • FLIPA-00-00-24: Running on rel >14.2.10

  • FLIPA-00-00-20: Reconstruction Methods made common

  • FLIPA-00-00-14: add hadronic W builder

  • FLIPA-00-00-02: migrated FLIPA to 14.1.0

Talks

Flowchart

Illustrative example of how FLIPA works :

flowchart1.png flowchart2.png flowchart3.png

Trigger

Illustrative example of how trigger information is dumped in FLIPA ntuples :

trigger.png

  • trig_X_Y: has event fired level X trigger Y
  • trig_X_Y_ps: has event fired level X trigger Y (prescaled)
  • trig_X_Y_ps_pt: has event fired level X trigger Y (prescaled, pass-through)

  • trig_PART_is_from_TRIGGER: trigger particle fired trigger TRIGGER

  • trig_recoPART_matched_to_TRIGGER[i]: trigger particle number to which i-th reco particle PART was matched to
    • e.g. : trig_recoEle_matched_to_EF_e15_medium[0] = 1 means that the first reco electron was matched to the second trigger electron (which fired the trigger e15_medium)

  • trig_is_recoPART_matched_to_TRIGGER[i]: reco particle PART was matched to a trigger electron
    • e.g. : trig_recoEle_matched_to_EF_e15_medium[2] = 1 means that the third reco electron was matched to a trigger electron (which fired the trigger e15_medium)
    • e.g. : trig_recoEle_matched_to_EF_e15_medium[1] = 0 means that the second reco electron wasn't matched to any trigger electron (which fired...)

Code

FLIPA code is kept in IFAE's CVS

There is the possibility to subscribe to notification on cvs commit. (ask Estel) WARNING the amount of resulting emails is not negligible...

Present developers of FLIPA are:

  • Volker Vorwerk
  • Estel Perez
  • Luca Fiorini
  • Lluïsa Mir
  • Jordi Nadal


Major updates:
-- EstelPerez - 21 Sep 2008

Edit | Attach | Watch | Print version | History: r1 | Backlinks | Raw View | WYSIWYG | More topic actions
Topic revision: r1 - 2011-03-23 - EstelPerez
 
    • Cern Search Icon Cern Search
    • TWiki Search Icon TWiki Search
    • Google Search Icon Google Search

    Main All webs login

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