31 mROFrameLayerLength[
layer] = lNS;
32 assert(mROFrameLayerLength[
layer] > 1.);
33 mROFrameLayerLengthInv[
layer] = 1. / mROFrameLayerLength[
layer];
39 mNSimSteps =
v > 0 ?
v : 1;
40 mNSimStepsInv = 1.f / mNSimSteps;
48 mMinChargeToAccount =
v * frac2Account;
49 if (mMinChargeToAccount < 0 || mMinChargeToAccount > mChargeThreshold) {
50 mMinChargeToAccount = mChargeThreshold;
52 LOG(info) <<
"Set charge threshold to " << mChargeThreshold
53 <<
", single hit will be accounted from " << mMinChargeToAccount
61 printf(
"TRK digitization params:\n");
62 printf(
"Threshold (N electrons) : %d\n", mChargeThreshold);
63 printf(
"Min N electrons to account : %d\n", mMinChargeToAccount);
64 printf(
"Number of charge sharing steps : %d\n", mNSimSteps);
65 printf(
"ELoss to N electrons factor : %e\n", mEnergyToNElectrons);
66 printf(
"Noise level per pixel : %e\n", mNoisePerPixel);
67 printf(
"Charge time-response:\n");
74 LOG(
debug) <<
"Response function info: ";
77 LOGP(fatal,
"cannot set response function from null");
79 mResponse = std::make_unique<o2::trk::ChipSimResponse>(resp);
Simulation parameters for the TRK digitizer. Based on the ITS2 and ITS3 digitizer parameters.
const std::string & getDataPath() const
virtual void print() const
void setChargeThreshold(int v, float frac2Account=0.1)
void setResponse(const o2::itsmft::AlpideSimResponse *)
void setROFrameLength(float ns, int layer)
GLenum GLuint GLint GLint layer
LOG(info)<< "Compressed in "<< sw.CpuTime()<< " s"