Skip to content
Nicholas Smith edited this page Jun 5, 2015 · 26 revisions

================================== The Final State Analysis Framework

Philosophy

Final State Analysis (FSA) is the software package used by the University of Wisconsin CMS group (and friends) for creating [ntuples](What is an Ntuple) from official CMS AOD or miniAOD EDM files. The ntuples created by FSA are [flat](What is a flat Ntuple) and follow a predictable naming and organizational format for ease of use in analysis code.

Final State Analysis implements the philosophy of [combinatorial analysis](What is Combinatorial Analysis). The implementation is built around the PATFinalState Data Format. This abstract object corresponds to a "final state candidate," like μ+τ, and encapsulates all of the interesting information needed by the analyst. The advantage of the single object is that it is both lightweight and that it holds references to all of the interesting information in the event. You can compose complex observables using only a single object, enabling many tasks to use the [string cut parser](The CMSSW String Cut Parser in FSA). This allows new cuts to be implemented quickly, and without writing any C++ code.

Workflows

Two separate workflows are supported in FSA, depending on whether the user begins with AOD or MiniAOD files. For more information on analysis flows used at UW, see the UW HEP Twiki

  1. Starting with [MiniAOD](The MiniAOD data format)

  2. Ntuples are created directly from centrally produced MiniAOD EDM files (usually accessed through xrootd) using Ntuple Tools package.

  3. ROOT files with histograms, or trees with only events passing analysis selections, are created by user-specific analysis code

  4. Final plots are made from the histograms

  5. Starting with AOD

  6. The PAT Tuple is a central processing of AOD data into PAT tuples (7 and 8 TeV analyses only)

  7. The PAT Tuple is slimmed into flat ROOT Ntuples using the Ntuple Tools package.

  8. ROOT files with histograms are made from the Ntuples using the Plot Tools package. (Typically, users create there own plotting scripts. This package is not maintained.)

  9. Final plots are made from the histograms

Installation

See the main README for installation instructions.

Troubleshooting

If you have troubles, please consult the FAQ first. File an issue on Github if you still can't figure it out.