Digitize EKLMSim2Hits to get EKLM StripHits.
More...
#include <ScintillatorSimulator.h>
|
| ScintillatorSimulator (const KLMScintillatorDigitizationParameters *digPar, ScintillatorFirmware *fitter, double digitizationInitialTime, bool debug) |
| Constructor. More...
|
|
| ScintillatorSimulator (const ScintillatorSimulator &)=delete |
| Copy constructor (disabled).
|
|
ScintillatorSimulator & | operator= (const ScintillatorSimulator &)=delete |
| Operator = (disabled).
|
|
| ~ScintillatorSimulator () |
| Destructor.
|
|
void | simulate (const std::multimap< uint16_t, const BKLMSimHit * >::iterator &firstHit, const std::multimap< uint16_t, const BKLMSimHit * >::iterator &end) |
| Simulate BKLM strip. More...
|
|
void | simulate (const std::multimap< uint16_t, const EKLMSimHit * >::iterator &firstHit, const std::multimap< uint16_t, const EKLMSimHit * >::iterator &end) |
| Simulate EKLM strip. More...
|
|
KLMScintillatorFirmwareFitResult * | getFPGAFit () |
| Get fit data.
|
|
enum ScintillatorFirmwareFitStatus | getFitStatus () const |
| Get fit status. More...
|
|
double | getNPhotoelectrons () |
| Get number of photoelectrons (fit result).
|
|
int | getNGeneratedPhotoelectrons () |
| Get generated number of photoelectrons.
|
|
double | getEnergy () |
| Get total energy deposited in the strip (sum over ssimulation hits).
|
|
void | setChannelData (const EKLMChannelData *channelData) |
| Set channel data.
|
|
void | generatePhotoelectrons (double stripLen, double distSiPM, int nPhotons, double timeShift, bool isReflected) |
| Generate photoelectrons. More...
|
|
void | fillSiPMOutput (float *hist, bool useDirect, bool useReflected) |
| Fill SiPM output. More...
|
|
float | getMCTime () const |
| Get MC time. More...
|
|
float | getSiPMMCTime () const |
| Get SiPM MC time. More...
|
|
Digitize EKLMSim2Hits to get EKLM StripHits.
Definition at line 39 of file ScintillatorSimulator.h.
◆ ScintillatorSimulator()
Constructor.
- Parameters
-
[in] | digPar | Digitization parameters. |
[in] | digitizationInitialTime | Initial digitization time. |
[in] | fitter | Fitter. |
[in] | debug | Use debug mode. |
Definition at line 71 of file ScintillatorSimulator.cc.
87 double time, attenuationTime;
117 time = digPar->getADCSamplingTime() * i;
119 exp(-digPar->getPEAttenuationFrequency() * time) * attenuationTime /
120 digPar->getADCSamplingTime();
◆ fillSiPMOutput()
void fillSiPMOutput |
( |
float * |
hist, |
|
|
bool |
useDirect, |
|
|
bool |
useReflected |
|
) |
| |
Fill SiPM output.
- Parameters
-
[in,out] | hist | Output histogram (signal is added to it). |
[in] | useDirect | Use direct photons. |
[in] | useReflected | Use reflected photons. |
Definition at line 446 of file ScintillatorSimulator.cc.
◆ generatePhotoelectrons()
void generatePhotoelectrons |
( |
double |
stripLen, |
|
|
double |
distSiPM, |
|
|
int |
nPhotons, |
|
|
double |
timeShift, |
|
|
bool |
isReflected |
|
) |
| |
Generate photoelectrons.
- Parameters
-
[in] | stripLen | Strip length. |
[in] | distSiPM | Distance from hit to SiPM. |
[in] | nPhotons | Number of photons to be simulated. |
[in] | timeShift | Time of hit. |
[in] | isReflected | Whether the hits are reflected or not. |
Definition at line 337 of file ScintillatorSimulator.cc.
◆ getFitStatus()
enum KLM::ScintillatorFirmwareFitStatus getFitStatus |
( |
| ) |
const |
◆ getMCTime()
float getMCTime |
( |
| ) |
const |
|
inline |
◆ getSiPMMCTime()
float getSiPMMCTime |
( |
| ) |
const |
|
inline |
◆ reallocPhotoElectronBuffers()
void reallocPhotoElectronBuffers |
( |
int |
size | ) |
|
|
private |
◆ simulate() [1/2]
void simulate |
( |
const std::multimap< uint16_t, const BKLMSimHit * >::iterator & |
firstHit, |
|
|
const std::multimap< uint16_t, const BKLMSimHit * >::iterator & |
end |
|
) |
| |
Simulate BKLM strip.
- Parameters
-
[in] | firstHit | First hit in this strip. |
[in] | end | End of hit range. |
Definition at line 169 of file ScintillatorSimulator.cc.
◆ simulate() [2/2]
void simulate |
( |
const std::multimap< uint16_t, const EKLMSimHit * >::iterator & |
firstHit, |
|
|
const std::multimap< uint16_t, const EKLMSimHit * >::iterator & |
end |
|
) |
| |
Simulate EKLM strip.
- Parameters
-
[in] | firstHit | First hit in this strip. |
[in] | end | End of hit range. |
Definition at line 219 of file ScintillatorSimulator.cc.
◆ sortPhotoelectrons()
int * sortPhotoelectrons |
( |
int |
nPhotoelectrons | ) |
|
|
private |
Sort photoelectrons.
- Parameters
-
[in] | nPhotoelectrons | Number of photoelectrons. |
- Returns
- Pointer to index array.
Definition at line 289 of file ScintillatorSimulator.cc.
The documentation for this class was generated from the following files: