LHCb Starterkit Lessons
Contents:
First Analysis Steps
Pre-workshop checklist
Goals of the course
Physics at LHCb
The reconstruction
Building decay candidates
Building more complex decays
The LHCb data flow
Changes to the data flow in Run 2
The analysis flow and analysis preservation
Getting data files
Useful high energy physics analysis tools
Analysis Preservation
An introduction to LHCb Software
Finding data in the Bookkeeping
Downloading a file from the grid
Interactively exploring a DST
Running a minimal DaVinci job locally
Fun with LoKi Functors
TupleTools and branches
How do I use DecayTreeFitter?
Analysis Productions
Monitoring productions
Creating your own production
Testing your production locally
Creating a merge request
Checks
Running DaVinci on the grid
Splitting a job into subjobs
More Ganga
Storing large files on EOS
Developing LHCb Software
LHCb data flow in Run 3
LHCb upgrade
Upgrade of the LHCb trigger system
The HLT architecture
Selective persistency
Offline data processing
Changes to DaVinci
Asking good questions
Early career, gender and diversity
Contribute to this lesson
Second Analysis Steps
Using git to develop LHCb software
Building your own decay
The Selection Framework
A Historical Approach
Modern Selection Framework
What to do when something fails
Run a different stripping line on simulated data
Replace a mass hypothesis
Reuse particles from a decay tree
The simulation framework
What is Gauss?
Choosing your Gauss Version
Which option files to use and how to run Gauss
Running Gauss and create a generator-only sample
Make an nTuple
Controlling the decay: DecFiles
Modifying the decay
Adding a decay channel
Generator level cuts
Removing the generator cuts
Modifying the cut tool
Advanced: Modifying the decay
3+ multi-body decays
Cocktail decays
Final state radiation
Changing particle masses / lifetimes/ widths
Finding Constants Used in an Existing MC Sample (Masses/Lifetimes/etc)
Why fast simulation is crucial
Speeding up the detector simulation
Speeding up the generation
HLT intro
Add trigger information to your ntuple
Exploring a TCK: List of trigger lines
Add trigger information to your ntuple, continued
Add TISTOS information to your ntuple
Exploring a TCK: Properties of trigger lines
TisTos DIY
Scripting Ganga
Defining jobs with scripts
Adding helpers functions
Managing files in Ganga
Advanced Dirac
GangaTasks
Alternative Backends - DIRAC (Python bugged)
Alternative Backends - DIRAC (DaVinci)
Alternative Backends - Condor
Self guided lessons
Batch submission using HTCondor
Submitting a simple job
Tracking your jobs
More submit file options
Input files
Output files
Arguments
Resources and Requirements
Notifications
Using the queue command
More on variables
Other ways to queue
Mixing options and variables
System architecture
Other useful resources
Creating a grid proxy without LbScripts
Installation
macOS with homebrew
Ubuntu
CentOS
Arch Linux
Getting the required files and certificates
Creating a proxy
Managing the proxy
Contributing
Getting Started
Dependencies
Contributor Code of Conduct
Instructional Material
Software
External links:
Analysis essentials
LHCb Core documentation
LHCb glossary
LHCb Starterkit Lessons
Index
Edit on GitHub
Index