Base algorithm for digitizers of the Monte Carlo hits of the Silicon Charge Detector, based on a purely geometric criterion.
More...
#include <algorithms/digitization/ScdGeometricDigitizerAlgo.h>
Base algorithm for digitizers of the Monte Carlo hits of the Silicon Charge Detector, based on a purely geometric criterion.
This algorithm assigns the energy released by single particles traversing a wafer of the SCD to the strip nearest to the entrance point in the silicon. The criterion is purely geometric and does not take into account important effects such as charge drift in the silicon, charge sharing between adjacent strips, electronic noise, GeV->ADC conversion etc.
Needed event objects:
name | type | store | optional | description |
scdWaferHitsCollGGS | ScdHitsColl | evStore | no | The MC hits in the SCD wafers. |
scdWaferParticleHitsCollMC | ScdParticleHitsColl | evStore | no | The MC particle hits in the SCD wafers. |
Needed global objects:
name | type | store | optional | description |
scdGeoParamsColl | ScdGeoParamsColl | globStore | yes | Geometric parameters of the SCD. |
Produced event objects:
name | type | alias | store | description |
scdGeomDigHitsCollMC | ScdHitsColl | scdHitsCollMC | evStore | The hits in the strips of the SCD. |
Produced global objects:
name | type | alias | store | description |
scdGeoParamsCollWaferStrip | ScdHitsColl | scdGeoParamsColl | evStore | The geometry parameters of the digitized SCD. |
Parameters:
name | type | default value | description |
pitch | float | 0.0100 | The pitch used for the digitization of the top SCD hits [cm]. |
◆ ScdGeometricDigitizerAlgo()
Herd::ScdGeometricDigitizerAlgo::ScdGeometricDigitizerAlgo |
( |
const std::string & |
name | ) |
|
Constructor.
- Parameters
-
name | The name of the algorithm. |
◆ _CreateGeoParams()
Creates the geometry parameter objects for the digitized detector.
Starting from the original geometry parameters this method computes the digitized parameters using the digitization parameters stored in private members.
- Parameters
-
origGeoParams | the original geometry parameters. |
- Returns
- The geometry parameters of the digitized detectors.
- Exceptions
-
std::runtime_error | if the relative position of the first strip on the wafer is less than 0 (i.e. strip outside the wafer). |
◆ _Digitize()
Digitizes the silicon hits.
This function digitizes the hits of the SCD. It fills the collection passed as the digHitsColl
argument with the digitized hits.
- Parameters
-
particleHitsColl | The collection of particle hits. |
hitsColl | The collection of hits. |
digHitsColl | The collection of digitized hits. |
◆ FreeObjects()
std::vector< std::string > Herd::ScdGeometricDigitizerAlgo::FreeObjects |
( |
const std::vector< std::string > & |
objs, |
|
|
EA::Memory::Status |
memStatus |
|
) |
| |
|
override |
Free the memory of unneeded objects.
Currently this method frees the memory of the digitized hits if memStatus
is EXHAUSTED.
- Parameters
-
objs | The list of objects to be freed. |
memStatus | The current memory occupation status. |
- Returns
- a list of freed objects.
◆ Initialize()
bool Herd::ScdGeometricDigitizerAlgo::Initialize |
( |
| ) |
|
|
override |
Initialization of the algorithm.
- Returns
- true if the initialization procedure is successful.
◆ Process()
bool Herd::ScdGeometricDigitizerAlgo::Process |
( |
| ) |
|
|
override |
Process a single event.
- Returns
- If event processing is successful.
◆ m_digScdGeoParamsColl
std::shared_ptr<ScdGeoParamsColl> Herd::ScdGeometricDigitizerAlgo::m_digScdGeoParamsColl |
|
private |
◆ m_evStore
EA::StorePtr Herd::ScdGeometricDigitizerAlgo::m_evStore |
|
private |
◆ m_globStore
EA::StorePtr Herd::ScdGeometricDigitizerAlgo::m_globStore |
|
private |
◆ m_origScdGeoParamsColl
EA::observer_ptr<ScdGeoParamsColl> Herd::ScdGeometricDigitizerAlgo::m_origScdGeoParamsColl |
|
private |
◆ m_pitch
float Herd::ScdGeometricDigitizerAlgo::m_pitch |
|
private |
◆ m_siliconDetectorDigHitsColl
ScdHitsColl Herd::ScdGeometricDigitizerAlgo::m_siliconDetectorDigHitsColl |
|
private |
The documentation for this class was generated from the following files: