LHCb Applications and Workflows

This twiki provides information about the LHCb application stack, LHCb applications and workflows used on the grid

LHCb application stack

The LHCb software stack can be divided into three layers (see Fig 1), these are

  • LHCb applications (see below) such as simulation, reconstruction, etc
  • The LCG Applications Area software, these are middleware packages for different kinds of purposes, developed within HEP (such as the ROOT and GAUDI frameworks, GEANT4 detector simulation, COOL Conditions Database access, CORAL relational database abstaction, etc.), Grid middleware clients (LFC, FTS, WMS, ...) and packages developed outside HEP (e.g. Boost, GSL, gcc, ...).
  • The Operating System, at the moment these are Scientific Linux versions and Mac OSX

Figure 1: LHCb Software Stack

The whole stack is made available on different combinations of Operating System, architecture, compiler and optimizations. These are denoted by a "platform string" such as "slc6-gcc47-x86_64-opt".

LHCb applications

LHCb applications are separate projects denoted to a specific task in the different possible workflows of LHCb data processing, these are

Name Purpose Description
GAUSS Simulation event generation and simulation of the detector response via GEANT4
BOOLE Digitization simulation of the detector electronics
MOORE Trigger trigger software and generation of RAW events
BRUNEL Reconstruction reconstruction of RAW events into physics objects
DAVINCI Analysis analysis software used by physicists and also for stripping

in addition there are underlying projects supporting these applications developed also within LHCb, these are

Name Purpose DescriptionSorted ascending
LHCBGRID grid middleware contains CMT interfaces to grid middleware clients (can overwrite LCGCMT)
LCGCMT LCG/AA software contains CMT interfaces to the LCG Applications Area software stack (maintained by CERN PH/SFT)
LHCB Common software contains the event model description and common algorithms
GANGA Analysis submission used by physicists to submit their jobs to computing facilities
LHCBDIRAC Grid Interaction used for all data processing and data management operations on the grid

Runtime environment

A runtime environment for any of the above LHCb projects can be generated (after a LHCb group login) with lb-run

This is the simplest way to generate a runtime environment and will provide you the latest available version. lb-run has many more options, you may consult "lb-run --help" for more details.

LHCb grid workflows

This section contains descriptions of the LHCb workflows used for data processing on the distributed computing facilities.


Stripping will use the reconstructed physics objects as input (file type FULL.DST) and select the events contained within into different physics streams (e.g. DIMUON, BHADRON, etc). The individual output files are merged in a second step into larger files of the same stream if either all events of a given run have been processed of the output of the individual files supersedes N GB of output (usually N=5).

-- StefanRoiser - 18 Feb 2014

Topic attachments
I Attachment History Action Size Date Who Comment
PNGpng softwarestack.png r1 manage 80.6 K 2014-02-18 - 14:58 StefanRoiser LHCb Software Stack
Edit | Attach | Watch | Print version | History: r2 < r1 | Backlinks | Raw View | WYSIWYG | More topic actions
Topic revision: r2 - 2016-08-16 - FedericoStagni
    • Cern Search Icon Cern Search
    • TWiki Search Icon TWiki Search
    • Google Search Icon Google Search

    LHCb All webs login

This site is powered by the TWiki collaboration platform Powered by PerlCopyright & 2008-2021 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