1 #ifndef RecoLocalTracker_SiPixelClusterizer_plugins_gpuCalibPixel_h
2 #define RecoLocalTracker_SiPixelClusterizer_plugins_gpuCalibPixel_h
11 namespace gpuCalibPixel {
21 template <
bool isRun2>
23 uint16_t
const* __restrict__ x,
24 uint16_t
const* __restrict__ y,
30 uint32_t* __restrict__ clusModuleStart
36 clusModuleStart[0] = moduleStart[0] = 0;
38 nClustersInModule[
i] = 0;
45 bool isDeadColumn =
false, isNoisyColumn =
false;
49 auto ret = ped->getPedAndGain(
id[i], col, row, isDeadColumn, isNoisyColumn);
51 float gain =
ret.second;
53 if (isDeadColumn | isNoisyColumn) {
54 printf(
"bad pixel at %d in %d\n", i,
id[i]);
58 float vcal = float(adc[i]) * gain - pedestal * gain;
62 vcal = vcal * conversionFactor +
offset;
70 #endif // RecoLocalTracker_SiPixelClusterizer_plugins_gpuCalibPixel_h
constexpr float VCaltoElectronOffset_L1
tuple ret
prodAgent to be discontinued
constexpr float VCaltoElectronGain_L1
constexpr float VCaltoElectronOffset
__global__ void calibDigis(uint16_t *id, uint16_t const *__restrict__ x, uint16_t const *__restrict__ y, uint16_t *adc, SiPixelGainForHLTonGPU const *__restrict__ ped, int numElements, uint32_t *__restrict__ moduleStart, uint32_t *__restrict__ nClustersInModule, uint32_t *__restrict__ clusModuleStart)
uint16_t *__restrict__ uint16_t const *__restrict__ uint32_t const *__restrict__ uint32_t *__restrict__ nClustersInModule
printf("params %d %f %f %f\n", minT, eps, errmax, chi2max)
uint16_t *__restrict__ uint16_t const *__restrict__ uint32_t const *__restrict__ moduleStart
constexpr uint16_t maxNumModules
uint16_t *__restrict__ uint16_t const *__restrict__ uint32_t const *__restrict__ uint32_t *__restrict__ uint32_t const *__restrict__ int32_t *__restrict__ uint32_t numElements
constexpr uint16_t invalidModuleId
constexpr float VCaltoElectronGain
uint16_t *__restrict__ uint16_t const *__restrict__ adc