![]() |
Belle II Software
release-08-02-05
|
Namespace to encapsulate code needed for simulation and reconstrucion of the PXD. More...
Classes | |
| class | GeoPXDCreator |
| The creator for the PXD geometry of the Belle II detector. More... | |
| class | SensorInfo |
| Specific implementation of SensorInfo for PXD Sensors which provides additional pixel specific information. More... | |
| class | PXDBackgroundModule |
| PXD Background module. More... | |
| class | PXDBeamBackHitFilterModule |
| The PXDBeamBackHitFilter module. More... | |
| class | PXDBgTupleProducerModule |
| PXD Background Tuple Producer. More... | |
| class | PXDMCBgTupleProducerModule |
| PXD MC Background Tuple Producer. More... | |
| class | PXDDAQDQMModule |
| The PXD DAQ DQM module. More... | |
| class | PXDGatedDHCDQMModule |
| The PXD Gatint after Injection DQM module. More... | |
| class | PXDGatedModeDQMModule |
| The PXD for GatedMode DQM module. More... | |
| class | PXDInjectionDQMModule |
| The PXD Occupancy after Injection DQM module. More... | |
| class | PXDRawDQMChipsModule |
| The raw PXD DQM module. More... | |
| class | PXDRawDQMModule |
| The raw PXD DQM module. More... | |
| class | PXDROIDQMModule |
| The raw PXD DQM module. More... | |
| class | PXDBadSensorTagModule |
| The PXD bad sensor tagger module. More... | |
| class | PXDEventPlotModule |
| Plot each event with ROI and Pixels. More... | |
| class | PXDRawDumperModule |
| Dump Raw PXD/ ONSEN event data. More... | |
| class | PXDRawHitMaskingModule |
| The PXDRawHitMasking module. More... | |
| class | PXDROIPlotModule |
| Plot each event with ROI and Pixels. More... | |
| class | ActivatePXDClusterPositionEstimatorModule |
| The ActivatePXDClusterPositionEstimator module. More... | |
| class | ActivatePXDGainCalibratorModule |
| The ActivatePXDGainCalibrator module. More... | |
| class | ActivatePXDPixelMaskerModule |
| The ActivatePXDPixelMasker module. More... | |
| class | PXDClusterCheckModule |
| The PXDClusterCheck module. More... | |
| class | PXDClusterizerModule |
| The PXDClusterizer module. More... | |
| class | PXDDigitSorterModule |
| The PXDDigitSorter module. More... | |
| class | PXDRawHitSorterModule |
| The PXDRawHitSorter module. More... | |
| class | Digit |
| Class to represent the coordinates of one pixel. More... | |
| class | DigitValue |
| Class representing the charge and particle contributions for one pixel. More... | |
| class | PXDDigitizerModule |
| The PXD Digitizer module. More... | |
| class | PXDGatedInfoFillerModule |
| PXD Gates Mode infromation on readout gate basis. More... | |
| class | PXDPackerErrModule |
| The PXDPackerErr module. More... | |
| class | PXDPackerModule |
| The PXDPacker module. More... | |
| class | PXDPostErrorCheckerModule |
| The PXD DAQ Post Unpacking Error Check. More... | |
| class | PXDReadRawBonnDAQModule |
| Module to Load Raw PXD Data from DHH network-dump file and store it as RawPXD in Data Store This is meant for lab use (standalone testing, debugging) without an event builder. More... | |
| class | PXDReadRawBonnDAQMatchedModule |
| Module to Load BonnDAQ file and store it as RawPXD in Data Store This is meant for lab use (standalone testing, debugging) without an event builder. More... | |
| class | PXDReadRawONSENModule |
| A class definition of an input module for Sequential ROOT I/O. More... | |
| class | PXDUnpackerModule |
| The PXDUnpacker module. More... | |
| class | PXDUnpackerOldModule |
| The PXDUnpacker module. More... | |
| class | PXDUnpackerOTModule |
| The PXDUnpackerOT module. More... | |
| class | ClusterCache |
| Class to remember recently assigned clusters This class will remember the current and the last pixel row to allow fast finding of the correct cluster a pixel belongs to. More... | |
| class | ClusterCandidate |
| Class representing a possible cluster during clustering of the PXD It supports merging of different clusters and keeps track of the highest charge inside the cluster. More... | |
| class | ClusterProjection |
| Helper struct to collect information about the 1D projection of a Pixel cluster. More... | |
| class | NoiseMap |
| Base Class to represent pixel dependent Noise Map. More... | |
| class | Pixel |
| Class to represent one pixel, used in clustering for fast access. More... | |
| class | PXDClusterPositionEstimator |
| Singleton class that estimates cluster positions taking into account the estimated track incidence angles into the sensor. More... | |
| class | PXDClusterShape |
| Class to correct estimation of cluster error and position base on its shape. More... | |
| class | PXDGainCalibrator |
| Singleton class for managing gain corrections for the PXD. More... | |
| class | PXDPixelMasker |
| Singleton class for managing pixel masking for the PXD. More... | |
| class | PXDMappingLookup |
| Class to make the mapping between u/v cell ID of pixels back to DCD drain lines, pixel row/col, DCD and Switcher IDs Details: Belle Note: BELLE2-NOTE-TE-2015-01 "The vertex detector numbering scheme" https://docs.belle2.org/record/243/files/Belle%20II%20note%200010.pdf PXD WhiteBook 3.1.3 Sensor Design and Appendix #3 https://confluence.desy.de/display/BI/PXD+WebHome?preview=/34029260/56330158/PXDwb.pdf. More... | |
| struct | dhc_frame_header_word0 |
| DHC frame header word data struct. More... | |
| struct | dhc_start_frame |
| DHC start frame data struct. More... | |
| struct | dhc_dhe_start_frame |
| DHH start frame data struct. More... | |
| struct | dhc_commode_frame |
| DHH common mode frame data struct. More... | |
| struct | dhc_direct_readout_frame |
| DHC direct readout frame data struct. More... | |
| struct | dhc_direct_readout_frame_raw |
| DHC RAW direct readout frame data struct. More... | |
| struct | dhc_direct_readout_frame_zsd |
| DHC Zero supressed direct readout frame data struct. More... | |
| struct | dhc_onsen_trigger_frame |
| ONSEN Trigger frame data struct. More... | |
| struct | dhc_onsen_roi_frame |
| ONSEN (debug) ROI frame data struct. More... | |
| struct | dhc_ghost_frame |
| DHC Ghost frame data struct. More... | |
| struct | dhc_end_frame |
| DHC End frame data struct. More... | |
| struct | dhc_dhe_end_frame |
| DHE End frame data struct. More... | |
| class | dhc_frames |
| DHC frame wrapper class. More... | |
| struct | Cluster_t |
| Struct to hold variables for PXD clusters. More... | |
| struct | TrackPoint_t |
| Struct to hold variables for intersection points. More... | |
| struct | TrackCluster_t |
| Struct to hold variables for track clusters. More... | |
| struct | TrackBase_t |
| Struct to hold variables from a track which contains a vector of data type like TrackCluster. More... | |
Typedefs | |
| typedef std::map< Digit, DigitValue > | Sensor |
| Map of all hits in one Sensor. | |
| typedef std::map< VxdID, Sensor > | Sensors |
| Map of all hits in all Sensors. | |
| typedef std::map< pxdClusterShapeType, std::string > | pxdClusterShapeDescr |
| Type specifies cluster shape type description. | |
| typedef VXD::SensitiveDetector< PXDSimHit, PXDTrueHit > | SensitiveDetector |
| The PXD Sensitive Detector class. | |
| using | ulittle16_t = boost::endian::little_uint16_t |
| define alias ulittle16_t | |
| using | ulittle32_t = boost::endian::little_uint32_t |
| define alias ulittle32_t | |
| using | ubig16_t = boost::endian::big_uint16_t |
| define alias ubig16_t | |
| using | ubig32_t = boost::endian::big_uint32_t |
| define alias ubig32_t | |
| typedef boost::crc_optimal< 32, 0x04C11DB7, 0, 0, false, false > | dhc_crc_32_type |
| define our CRC function | |
| typedef TrackBase_t< TrackCluster_t > | Track_t |
| Typedef TrackBase_t<TrackCluster_t> Track_t. | |
| typedef genfit::MeasuredStateOnPlane | TrackState |
| Typedef TrackState (genfit::MeasuredStateOnPlane) | |
Enumerations | |
| enum class | pxdClusterShapeType { no_shape_set = 0 , shape_1 , shape_2_u , shape_2_v , shape_2_uv_diag , shape_2_uv_antidiag , shape_N1 , shape_1M , shape_N2 , shape_2M , shape_4 , shape_3_L , shape_3_L_mirr_u , shape_3_L_mirr_v , shape_3_L_mirr_uv , shape_large } |
| Type specifies cluster shape type. | |
| enum | EDHPFrameHeaderDataType { c_RAW = 0x0 , c_ZSD = 0x5 } |
| Enums for DHP data modes in the DHP header. More... | |
| enum | EDHCFrameHeaderDataType { c_DHP_RAW = 0x0 , c_DHP_ZSD = 0x5 , c_FCE_RAW = 0x1 , c_COMMODE = 0x6 , c_GHOST = 0x2 , c_DHE_START = 0x3 , c_DHE_END = 0x4 , c_DHC_START = 0xB , c_DHC_END = 0xC , c_ONSEN_DHP = 0xD , c_ONSEN_FCE = 0x9 , c_ONSEN_ROI = 0xF , c_ONSEN_TRG = 0xE , c_UNUSED_7 = 0x7 , c_UNUSED_8 = 0x8 , c_UNUSED_A = 0xA } |
| Enums for DHC data frame types. More... | |
| enum | EDHEStateMachineError { c_DHESM_NO_ERROR = 0x0 , c_DHESM_MISS_DHP_FRM = 0x1 , c_DHESM_TIMEOUT = 0x2 , c_DHESM_DHP_LINKDOWN = 0x3 , c_DHESM_DHP_MASKED = 0x4 , c_DHESM_EVTNR_MM = 0x5 , c_DHESM_DHP_SIZE_OVERFLOW = 0x6 } |
| Enums for DHE DHP StateMachine Error States. More... | |
Functions | |
| void | getNumberOfBins (const std::shared_ptr< TH1I > &histo_ptr, unsigned short &nBinsU, unsigned short &nBinsV) |
| Helper function to extract number of bins along u side and v side from counter histogram labels. | |
| unsigned short | getNumberOfSensors (const std::shared_ptr< TH1I > &histo_ptr) |
| Helper function to extract number of sensors from counter histogram labels. | |
| double | CalculateMedian (std::vector< double > &signals) |
| Helper function to calculate a median from unsorted signal vector. More... | |
| double | CalculateMedian (TH1 *hist) |
| Helper function to calculate a median from 1D histogram. | |
| double | FitLandau (TH1 *hist) |
| Helper function to estimate MPV from 1D histogram. | |
| double | FitLandau (std::vector< double > &signals) |
| Helper function to calculate MPV from a vector. More... | |
| TEST (ClusterCache, FindNeighbours) | |
| Check that we cluster to hits next to each other but not if one is in between. More... | |
| TEST (ClusterCache, Merging) | |
| Test that clusters get merged if they are found to have a common pixel. More... | |
| TEST (ClusterCache, Empty) | |
| Check if the cluster cache is empty. | |
| TEST (ClusterCache, OutOfRange) | |
| Check that out_of_range exceptions are raised if the pixel is out of range. | |
| double | xiBeta2_L (const int Z=Z_Si, const double A=A_Si, const double rho=rho_Si, const int z=1) |
| xi = (K/2)*(Z/A)*z*z*(rho*L)/beta2 in MeV More... | |
| double | hbarWp (const int Z=Z_Si, const double A=A_Si, const double rho=rho_Si) |
| hbarWp = sqrt(rho*Z/A)*28.816 in eV More... | |
| double | getDeltaP (const double mom, const double length, const double mass=Const::electronMass) |
| helper function to estimate the most probable energy loss for a given track length. More... | |
| unsigned short | getPXDModuleID (const VxdID &sensorID) |
| Helper function to get DHE id like module id from VxdID. | |
| VxdID | getVxdIDFromPXDModuleID (const unsigned short &id) |
| Helper function to get VxdID from DHE id like module iid. | |
| std::shared_ptr< TrackState > | getTrackStateOnModule (const VXD::SensorInfoBase &pxdSensorInfo, RecoTrack &recoTrack, double lambda=0.0) |
| Helper function to get a track state on a module. More... | |
| bool | isCloseToBorder (int u, int v, int checkDistance) |
| Helper function to check if a pixel is close to the border. More... | |
| bool | isDefectivePixelClose (int u, int v, int checkDistance, const VxdID &moduleID) |
| Helper function to check if a defective (hot/dead) pixel is close. More... | |
| bool | isClusterAtUEdge (VxdID id, unsigned int umin, unsigned int umax) |
| Helper function to check if one of the end pixels are at the edge of the sensor. More... | |
| bool | isClusterAtVEdge (VxdID id, unsigned int vmin, unsigned int vmax) |
| Helper function to check if one of the end pixels are at the edge of the sensor. More... | |
| bool | isClusterAtLadderJoint (VxdID id, unsigned int vmin, unsigned int vmax) |
| Helper function to check if one of the end pixels are at the ladder joint. More... | |
| unsigned short | getBinU (VxdID id, unsigned int uid, unsigned int vid, unsigned short nBinsU) |
| Function to return a bin number for equal sized binning in U. More... | |
| unsigned short | getBinV (VxdID id, unsigned int vid, unsigned short nBinsV) |
| Function to return a bin number for equal sized binning in V. More... | |
Variables | |
| geometry::CreatorFactory< GeoPXDCreator > | GeoPXDFactory ("PXDCreator") |
| Register the creator. | |
| const int | Z_Si = 14 |
| Const and Const expressions Only valid when g_mol is the default unit. More... | |
| const double | A_Si = 28.085 |
| Atomic mass of silicon in g mol^-1. | |
| const double | rho_Si = 2.3290 * Unit::g_cm3 |
| Silicon density in g cm^-3. | |
Namespace to encapsulate code needed for simulation and reconstrucion of the PXD.
Enums for DHC data frame types.
4 bits value; found in the first header word of each frame. See Data format definitions [BELLE2-NOTE-TE-2016-009] on https://docs.belle2.org/
Definition at line 28 of file PXDRawDataDefinitions.h.
Enums for DHE DHP StateMachine Error States.
4 bits value; Currently the same definitions as the ones encoded in ghost frame (new! but 3 bit only) See Data format definitions [BELLE2-NOTE-TE-2016-009] on https://docs.belle2.org/
Definition at line 56 of file PXDRawDataDefinitions.h.
Enums for DHP data modes in the DHP header.
DHP modes have the same value as for the DHC/DHE frame See Data format definitions [BELLE2-NOTE-TE-2016-009] on https://docs.belle2.org/
Definition at line 22 of file PXDRawDataDefinitions.h.
| double CalculateMedian | ( | std::vector< double > & | signals | ) |
Helper function to calculate a median from unsorted signal vector.
The input vector gets sorted.
Definition at line 88 of file PXDCalibrationUtilities.cc.
| double FitLandau | ( | std::vector< double > & | signals | ) |
Helper function to calculate MPV from a vector.
The input vector gets sorted.
Definition at line 157 of file PXDCalibrationUtilities.cc.
|
inline |
Function to return a bin number for equal sized binning in U.
| id | VxdID of the sensor |
| uid | uID of the pixel |
| vid | vID of the pixel |
| nBinsU | number of bins in U within a sensor |
Definition at line 162 of file PXDUtilities.h.
|
inline |
Function to return a bin number for equal sized binning in V.
| id | VxdID of the sensor |
| vid | vID of the pixel |
| nBinsV | number of bins in V within a sensor |
Definition at line 172 of file PXDUtilities.h.
|
inline |
helper function to estimate the most probable energy loss for a given track length.
| mom | Magnitude of the momentum |
| length | Track path length |
| mass | Mass of the incident particle, using e- as default |
Definition at line 69 of file PXDUtilities.h.
| std::shared_ptr< TrackState > getTrackStateOnModule | ( | const VXD::SensorInfoBase & | pxdSensorInfo, |
| RecoTrack & | recoTrack, | ||
| double | lambda = 0.0 |
||
| ) |
Helper function to get a track state on a module.
| pxdSensorInfo | of the PXD module intersecting with the track. |
| recoTrack | the recoTrack to be extrapolated. |
| lambda | the extrapolation length from track POCA. |
Definition at line 21 of file PXDUtilities.cc.
|
inline |
hbarWp = sqrt(rho*Z/A)*28.816 in eV
| Z | Atomic number of absorber |
| A | Atomic mass of absorber in g*mol^{-1} |
| rho | Density of the absorber in g*cm^{-3} |
Definition at line 56 of file PXDUtilities.h.
| bool isCloseToBorder | ( | int | u, |
| int | v, | ||
| int | checkDistance | ||
| ) |
Helper function to check if a pixel is close to the border.
| u | uID of the pixel of interest |
| v | vID of the pixel of interest |
| checkDistance | the distance along u/v |
Definition at line 51 of file PXDUtilities.cc.
|
inline |
Helper function to check if one of the end pixels are at the ladder joint.
| id | VxdID of the sensor |
| vmin | minimum vID within the cluster |
| vmax | maximum vID within the cluster |
Definition at line 149 of file PXDUtilities.h.
|
inline |
Helper function to check if one of the end pixels are at the edge of the sensor.
| id | VxdID of the sensor |
| umin | minimum uID within the cluster |
| umax | maximum uID within the cluster |
Definition at line 126 of file PXDUtilities.h.
|
inline |
Helper function to check if one of the end pixels are at the edge of the sensor.
| id | VxdID of the sensor |
| vmin | minimum vID within the cluster |
| vmax | maximum vID within the cluster |
Definition at line 137 of file PXDUtilities.h.
| bool isDefectivePixelClose | ( | int | u, |
| int | v, | ||
| int | checkDistance, | ||
| const VxdID & | moduleID | ||
| ) |
Helper function to check if a defective (hot/dead) pixel is close.
| u | uID of the pixel of interest |
| v | vID of the pixel of interest |
| checkDistance | the distance along u/v |
| moduleID | VxdID of the module |
Definition at line 61 of file PXDUtilities.cc.
| Belle2::PXD::TEST | ( | ClusterCache | , |
| FindNeighbours | |||
| ) |
Check that we cluster to hits next to each other but not if one is in between.
So we set a cluster at position (2,0) marked c and the findCluster should return this cluster for all positions marked 1. All other pixels should return NULL. We do not check (0,0) and (1,0) or a row above C since the cluster cache is meant to be used with ordered data so these should already be done once we set (2,0).
* u 0 1 2 3 4 5 6 7 8 9 → * v┌─┬─┬─┬─┬─┬─┬─┬─┬─┬─┬─┐ * 0│ │ │C│1│0│ │ │ │ │ │ │ * ├─┼─┼─┼─┼─┼─┼─┼─┼─┼─┼─┤ * 1│0│1│1│1│0│ │ │ │ │ │ │ * ├─┼─┼─┼─┼─┼─┼─┼─┼─┼─┼─┤ * 3│0│0│0│0│0│ │ │ │ │ │ │ * ├─┼─┼─┼─┼─┼─┼─┼─┼─┼─┼─┤ * 4│ │ │ │ │ │ │ │ │ │ │ │ * ├─┼─┼─┼─┼─┼─┼─┼─┼─┼─┼─┤ * ↓│ │ │ │ │ │ │ │ │ │ │ │ * └─┴─┴─┴─┴─┴─┴─┴─┴─┴─┴─┘ *
Definition at line 45 of file ClusterCache.cc.
| Belle2::PXD::TEST | ( | ClusterCache | , |
| Merging | |||
| ) |
Test that clusters get merged if they are found to have a common pixel.
If we have to clusters called 1 and 2 like shown below and we add a pixel at X than all occurences of 1 and 2 should be merged to one of those two. It does not matter who is merged to whom but after adding X the result must be
* u 0 1 2 3 4 5 6 7 8 9 → * v┌─┬─┬─┬─┬─┬─┬─┬─┬─┬─┬─┐ * 0│ │ │1│ │2│ │3│ │ │ │ │ * ├─┼─┼─┼─┼─┼─┼─┼─┼─┼─┼─┤ * 1│4│ │ │X│ │ │5│ │ │ │ │ * ├─┼─┼─┼─┼─┼─┼─┼─┼─┼─┼─┤ * 2│ │6│Y│ │7│Z│ │ │ │ │ │ * ├─┼─┼─┼─┼─┼─┼─┼─┼─┼─┼─┤ * 3│ │ │ │ │ │ │ │ │ │ │ │ * ├─┼─┼─┼─┼─┼─┼─┼─┼─┼─┼─┤ * ↓│ │ │ │ │ │ │ │ │ │ │ │ * └─┴─┴─┴─┴─┴─┴─┴─┴─┴─┴─┘ *
Definition at line 90 of file ClusterCache.cc.
|
inline |
xi = (K/2)*(Z/A)*z*z*(rho*L)/beta2 in MeV
| Z | Atomic number of absorber |
| A | Atomic mass of absorber in g*mol^{-1} |
| rho | Density of the absorber in g*cm^{-3} |
| z | Charge number of incident particle |
Definition at line 41 of file PXDUtilities.h.
| const int Z_Si = 14 |
Const and Const expressions Only valid when g_mol is the default unit.
Atomic number of silicon
Definition at line 30 of file PXDUtilities.h.