ATLAS Offline Software
Classes
FPGATrackSimGenScanBinning.h File Reference

Binning Classes for GenScanTool. More...

#include "AthenaBaseComps/AthAlgTool.h"
#include "FPGATrackSimObjects/FPGATrackSimTrackPars.h"
#include "FPGATrackSimObjects/FPGATrackSimHit.h"
#include "FPGATrackSimObjects/FPGATrackSimConstants.h"
#include "FourMomUtils/xAODP4Helpers.h"
#include "GaudiKernel/StatusCode.h"
#include <initializer_list>
#include <string>
#include <vector>
Include dependency graph for FPGATrackSimGenScanBinning.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  FPGATrackSimGenScanBinningBase
 
struct  FPGATrackSimGenScanBinningBase::ParSet
 
struct  FPGATrackSimGenScanBinningBase::IdxSet
 
class  FPGATrackSimGenScanGeomHelpers
 
class  FPGATrackSimGenScanStdTrkBinning
 
class  FPGATrackSimGenScanKeyLyrHelper
 
struct  FPGATrackSimGenScanKeyLyrHelper::KeyLyrPars
 
struct  FPGATrackSimGenScanKeyLyrHelper::rotatedConfig
 
class  FPGATrackSimGenScanKeyLyrBinning
 
class  FPGATrackSimGenScanPhiSlicedKeyLyrBinning
 

Detailed Description

Binning Classes for GenScanTool.

Author
Elliot Lipeles
Date
Sept 10th, 2024 Declarations in this file (there are a series of small classes): class FPGATrackSimGenScanBinningBase base class that defines interface to FPGATrackSimGenScanTool

class FPGATrackSimGenScanGeomHelpers very small class to implement common track parameter calculations that are shared by clases

class GenScanStdBinning : FPGATrackSimGenScanBinningBase implements standard pT, eta, phi, d0, z0 binning

class GenScanKeyLyrTool implements key layer math for binning using where in phi and z a track crosses two "keylayers" plus the distance the track has bent from a straight line midway between the layers (called xm in the code, but is also known as sagitta). This common helper tool avoid code duplication.

class GenScanKeyLyrBinning : FPGATrackSimGenScanBinningBase implements keylyr binning with slice=z values at two radii, scan=phi values at two radii, and row=xm (sagitta)

class GenScanKeyLyrPhiSlicedBinning : FPGATrackSimGenScanBinningBase implements keylyr binning with slice=phi values at two radii and xm, scan =z values at two radii, and row=xm. The track rates will be the same as GenScanKeyLyrBinning, but the internal throughput rates are different and are needed to understand firmware requirements

Overview of stucture: – This is to be used by the FPGATrackSimGenScanTool to define the binning (read that header first) – A binning is defined by inheriting from FPGATrackSimGenScanBinningBase – There are 3 implementations currently in this file, see descriptions in "Declarations" section above – In addition, there are two helper tools for the math for standard track parameters and keylayer track parameters

References:

Definition in file FPGATrackSimGenScanBinning.h.