Back to home page

EIC code displayed by LXR

 
 

    


Warning, /snippets/Inclusive/README.md is written in an unsupported language. File is not indexed.

0001 # snippets/Inclusive
0002 
0003 Snippets related to inclusive processes at the EIC.
0004 
0005 ## `ePIC_IncKinUtils.h`
0006 
0007 This is a header file which contains functions for calculating inclusive kinematic quantities by hand. In order to use these functions within any ePIC analysis, the following line should be added to the relevant scripts:
0008 
0009 ```
0010 #include "snippets/Inclusive/ePIC_IncKinUtils.h"
0011 ```
0012 
0013 The header file here duplicates the effects of the `InclusiveKinematics` branches within the output trees created by `EICrecon`, for those who wish to calculate Q2, x and y by hand. Functions are included for the following:
0014 - Caclulating Q2, x and y separately.
0015 - Calculating all three quantities simultaneously, and storing them in holding variables passed to the function.
0016 - All of the above for all methods used for the calculation of the `InclusiveKinematics` branches (Electron, Jaquet-Blondel, Double Angle, Sigma and e-Sigma).
0017 
0018 The functions take as input the 4 vectors for particles identified within an ePIC event. These 4-vectors can take the form of any type which includes the relevant operators: `.X()`, `.Y()`, `.Z()`, `.E()`, `.Pt()`, `.M2()` and `.Dot()`. ROOT's legacy `TLorentzVector` class, and its more recent replacement, `ROOT::Math::LorentzVector`, both contain all of the operators required.