mirror of
https://github.com/slsdetectorgroup/slsDetectorPackage.git
synced 2025-04-21 03:10:02 +02:00
moench02 common mode moved to new structure
This commit is contained in:
parent
5c393e6204
commit
cadb4cff93
@ -1,7 +1,7 @@
|
|||||||
#ifndef MOENCHCOMMONMODE_H
|
#ifndef MOENCHCOMMONMODE_H
|
||||||
#define MOENCHCOMMONMODE_H
|
#define MOENCHCOMMONMODE_H
|
||||||
|
|
||||||
#include "commonModeSubtraction.h"
|
#include "commonModeSubtractionNew.h"
|
||||||
|
|
||||||
class moenchCommonMode : public commonModeSubtraction {
|
class moenchCommonMode : public commonModeSubtraction {
|
||||||
/** @short class to calculate the common mode noise for moench02 i.e. on 4 supercolumns separately */
|
/** @short class to calculate the common mode noise for moench02 i.e. on 4 supercolumns separately */
|
||||||
@ -9,35 +9,35 @@ class moenchCommonMode : public commonModeSubtraction {
|
|||||||
/** constructor - initalizes a commonModeSubtraction with 4 different regions of interest
|
/** constructor - initalizes a commonModeSubtraction with 4 different regions of interest
|
||||||
\param nn number of samples for the moving average
|
\param nn number of samples for the moving average
|
||||||
*/
|
*/
|
||||||
moenchCommonMode(int nn=1000) : commonModeSubtraction(nn,4){} ;
|
moenchCommonMode(int nn=1000) : commonModeSubtraction(0){} ;
|
||||||
|
|
||||||
|
|
||||||
/** add value to common mode as a function of the pixel value, subdividing the region of interest in the 4 supercolumns of 40 columns each;
|
/* /\** add value to common mode as a function of the pixel value, subdividing the region of interest in the 4 supercolumns of 40 columns each; */
|
||||||
\param val value to add to the common mode
|
/* \param val value to add to the common mode */
|
||||||
\param ix pixel coordinate in the x direction
|
/* \param ix pixel coordinate in the x direction */
|
||||||
\param iy pixel coordinate in the y direction
|
/* \param iy pixel coordinate in the y direction */
|
||||||
*/
|
/* *\/ */
|
||||||
virtual void addToCommonMode(double val, int ix=0, int iy=0) {
|
/* virtual void addToCommonMode(double val, int ix=0, int iy=0) { */
|
||||||
(void) iy;
|
/* (void) iy; */
|
||||||
int isc=ix/40;
|
/* int isc=ix/40; */
|
||||||
if (isc>=0 && isc<nROI) {
|
/* if (isc>=0 && isc<nROI) { */
|
||||||
cmPed[isc]+=val;
|
/* cmPed[isc]+=val; */
|
||||||
nCm[isc]++;
|
/* nCm[isc]++; */
|
||||||
}
|
/* } */
|
||||||
};
|
/* }; */
|
||||||
/**returns common mode value as a function of the pixel value, subdividing the region of interest in the 4 supercolumns of 40 columns each;
|
/* /\**returns common mode value as a function of the pixel value, subdividing the region of interest in the 4 supercolumns of 40 columns each; */
|
||||||
\param ix pixel coordinate in the x direction
|
/* \param ix pixel coordinate in the x direction */
|
||||||
\param iy pixel coordinate in the y direction
|
/* \param iy pixel coordinate in the y direction */
|
||||||
\returns common mode value
|
/* \returns common mode value */
|
||||||
*/
|
/* *\/ */
|
||||||
virtual double getCommonMode(int ix=0, int iy=0) {
|
/* virtual double getCommonMode(int ix=0, int iy=0) { */
|
||||||
(void) iy;
|
/* (void) iy; */
|
||||||
int isc=ix/40;
|
/* int isc=ix/40; */
|
||||||
if (isc>=0 && isc<nROI) {
|
/* if (isc>=0 && isc<nROI) { */
|
||||||
if (nCm[isc]>0) return cmPed[isc]/nCm[isc]-cmStat[isc].Mean();
|
/* if (nCm[isc]>0) return cmPed[isc]/nCm[isc]-cmStat[isc].Mean(); */
|
||||||
}
|
/* } */
|
||||||
return 0;
|
/* return 0; */
|
||||||
};
|
/* }; */
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -114,7 +114,7 @@ int main(int argc, char *argv[]) {
|
|||||||
char dummybuff[size];
|
char dummybuff[size];
|
||||||
|
|
||||||
int ncol_cm=20;
|
int ncol_cm=20;
|
||||||
double xt_ghost=0.00045;
|
double xt_ghost=0.0004;
|
||||||
moench03CommonMode *cm=new moench03CommonMode(ncol_cm);
|
moench03CommonMode *cm=new moench03CommonMode(ncol_cm);
|
||||||
moench03GhostSummation *gs=new moench03GhostSummation(det, xt_ghost);
|
moench03GhostSummation *gs=new moench03GhostSummation(det, xt_ghost);
|
||||||
double *gainmap=NULL;
|
double *gainmap=NULL;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user