17 #ifndef SiPixelGenError_h 18 #define SiPixelGenError_h 1 23 #include "boost/multi_array.hpp" 25 #ifndef SI_PIXEL_TEMPLATE_STANDALONE 85 #ifndef SI_PIXEL_TEMPLATE_USE_BOOST 95 boost::multi_array<SiPixelGenErrorEntry,1> enty;
96 boost::multi_array<SiPixelGenErrorEntry,2> entx;
118 SiPixelGenError(
const std::vector< SiPixelGenErrorStore > & thePixelTemp) : thePixelTemp_(thePixelTemp) { id_current_ = -1; index_id_ = -1;}
122 static bool pushfile(
int filenum, std::vector< SiPixelGenErrorStore > & pixelTemp ,
std::string dir =
"");
124 #ifndef SI_PIXEL_TEMPLATE_STANDALONE 125 static bool pushfile(
const SiPixelGenErrorDBObject& dbobject, std::vector< SiPixelGenErrorStore > & pixelTemp);
129 static void postInit(std::vector< SiPixelGenErrorStore > & thePixelTemp_);
133 int qbin(
int id,
float cotalpha,
float cotbeta,
float locBz,
float locBx,
float qclus,
bool irradiationCorrections,
134 int& pixmx,
float& sigmay,
float& deltay,
float& sigmax,
float& deltax,
135 float& sy1,
float& dy1,
float& sy2,
float& dy2,
float& sx1,
float& dx1,
float& sx2,
float& dx2);
139 int qbin(
int id,
float cotalpha,
float cotbeta,
float locBz,
float locBx,
float qclus,
float& pixmx,
float& sigmay,
float& deltay,
float& sigmax,
float& deltax,
140 float& sy1,
float& dy1,
float& sy2,
float& dy2,
float& sx1,
float& dx1,
float& sx2,
float& dx2);
150 #ifndef SI_PIXEL_TEMPLATE_STANDALONE 151 if(i < 0 || i > 2) {
throw cms::Exception(
"DataCorrupt") <<
"SiPixelTemplate::chi2xminc2m called with illegal index = " << i << std::endl;}
float xsize_
Pixel x-size.
float qavg
average cluster charge for this set of track angles (now includes threshold effects) ...
float qmin
minimum cluster charge for valid hit (keeps 99.9% of simulated hits)
float lorxbias_
Lorentz x-width.
float lorywidth_
Lorentz y-width (sign corrected for fpix frame)
int runnum
< Basic template entry corresponding to a single set of track angles
float yrmsgen[4]
generic algorithm: average y-rms of reconstruction binned in 4 charge bins
float dxone
mean offset/correction for one pixel x-clusters
float xrmsgen[4]
generic algorithm: average x-rms of reconstruction binned in 4 charge bins
float syone
rms for one pixel y-clusters
float ysize_
Pixel y-size.
float cotalpha
cot(alpha) is proportional to cluster length in x and is basis of interpolation
float ysize()
pixel y-size (microns)
float fbin(int i)
Return lower bound of Qbin definition.
float cotbeta
cot(beta) is proportional to cluster length in y and is basis of interpolation
float sxone
rms for one pixel x-clusters
float dytwo
mean offset/correction for one double-pixel y-clusters
float zsize_
Pixel z-size (thickness)
float lorxwidth()
signed lorentz x-width (microns)
float xsize()
pixel x-size (microns)
float dxtwo
mean offset/correction for one double-pixel x-clusters
SiPixelGenErrorHeader head
< template storage structure
float lorxwidth_
Lorentz x-width.
float sytwo
rms for one double-pixel y-clusters
float yavggen[4]
generic algorithm: average y-bias of reconstruction binned in 4 charge bins
float dyone
mean offset/correction for one pixel y-clusters
int id_current_
current id
const std::vector< SiPixelGenErrorStore > & thePixelTemp_
float lorywidth()
signed lorentz y-width (microns)
SiPixelGenError(const std::vector< SiPixelGenErrorStore > &thePixelTemp)
Constructor for cases in which template store already exists.
float lorxbias()
signed lorentz x-bias (microns)
float zsize()
pixel z-size or thickness (microns)
float lorybias_
Lorentz y-width (sign corrected for fpix frame)
float xavggen[4]
generic algorithm: average x-bias of reconstruction binned in 4 charge bins
float pixmax
maximum charge for individual pixels in cluster
float sxtwo
rms for one double-pixel x-clusters
int index_id_
current index
float lorybias()
signed lorentz y-bias (microns)