minor fixes (#708)

This commit is contained in:
Erik Fröjdh 2023-03-31 11:56:09 +02:00 committed by GitHub
parent 3b8c612103
commit 37e7471dc4
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
5 changed files with 40 additions and 40 deletions

View File

@ -298,8 +298,8 @@ template <class dataType> class analogDetector {
if (gmap)
delete[] gmap;
gmap = new double[nnx * nny];
for (iy = 0; iy < nny; ++iy) {
for (ix = 0; ix < nnx; ++ix) {
for (iy = 0; iy < static_cast<int>(nny); ++iy) {
for (ix = 0; ix < static_cast<int>(nnx); ++ix) {
gmap[iy * nnx + ix] = gm[iy * nnx + ix];
// cout << gmap[iy*nnx+ix] << " " ;
}

View File

@ -198,19 +198,18 @@ template <typename dataType> slsDetectorData<dataType>::~slsDetectorData() {
template <typename dataType>
void slsDetectorData<dataType>::setDataMap(int **dMap) {
int ip = 0;
int ix, iy;
// int ip = 0;
if (dMap == NULL) {
for (iy = 0; iy < ny; iy++) {
for (ix = 0; ix < nx; ix++) {
for (int iy = 0; iy < ny; iy++) {
for (int ix = 0; ix < nx; ix++) {
dataMap[iy][ix] = (iy * nx + ix) * sizeof(dataType);
}
}
} else {
// cout << "set dmap "<< dataMap << " " << dMap << endl;
for (iy = 0; iy < ny; iy++) {
for (int iy = 0; iy < ny; iy++) {
// cout << iy << endl;
for (ix = 0; ix < nx; ix++) {
for (int ix = 0; ix < nx; ix++) {
dataMap[iy][ix] = dMap[iy][ix];
// cout << ix << " " << iy << endl;
/*ip=dataMap[ix][iy]/sizeof(dataType);
@ -220,8 +219,8 @@ void slsDetectorData<dataType>::setDataMap(int **dMap) {
}
}
/* //commented this part because it causes out-of-bound issues if nx or ny are larger than dataMap bounds (single-chip readout of strixel with groups of different pitches) VH 2023-02-24
for (iy = 0; iy < ny; iy++) {
for (ix = 0; ix < nx; ix++) {
for (int iy = 0; iy < ny; iy++) {
for (int ix = 0; ix < nx; ix++) {
ip = dataMap[iy][ix] / sizeof(dataType);
xmap[ip] = ix;
ymap[ip] = iy;
@ -293,7 +292,6 @@ template <typename dataType>
dataType **slsDetectorData<dataType>::getData(char *ptr, int dsize) {
int el = dsize / sizeof(dataType);
// dataType **data;
int ix, iy;
// data=new dataType*[ny];
// for(int i = 0; i < ny; i++) {
// data[i]=new dataType[nx];
@ -303,6 +301,7 @@ dataType **slsDetectorData<dataType>::getData(char *ptr, int dsize) {
dsize = dataSize;
for (int ip = 0; ip < (el); ip++) {
int ix, iy;
getPixel(ip, ix, iy);
if (ix >= 0 && ix < nx && iy >= 0 && iy < ny) {
// data[iy][ix]=getChannel(ptr,ix,iy);

View File

@ -30,13 +30,14 @@ int main(int argc, char *argv[]) {
int runmax = atoi(argv[5]);
int nsubpix = atoi(argv[6]);
int etabins = 1000; // nsubpix*2*100;
double etamin = -1, etamax = 2;
// int etabins = 1000; // nsubpix*2*100;
// double etamin = -1, etamax = 2;
int quad;
double sum, totquad;
double sDum[2][2];
double etax, etay, int_x, int_y;
int ok;
// double etax, etay;
double int_x, int_y;
// int ok;
int ix, iy, isx, isy;

View File

@ -86,17 +86,10 @@ int main(int argc, char *argv[]) {
#endif
int nx = 400, ny = 400;
//Read detector size from decoder
int nx , ny;
decoder->getDetectorSize(nx, ny);
#ifdef CORR
int ncol_cm = CM_ROWS;
double xt_ghost = C_GHOST;
#endif
moench03CommonMode *cm = NULL;
moench03GhostSummation *gs;
double *gainmap = NULL;
//float *gm;
int ff, np;
@ -171,8 +164,15 @@ int main(int argc, char *argv[]) {
uint32_t nnx, nny;
moench03CommonMode *cm = nullptr;
moench03GhostSummation *gs = nullptr;
double *gainmap = nullptr;
#ifdef CORR
cout << "Applying common mode " << ncol_cm << endl;
int ncol_cm = CM_ROWS;
double xt_ghost = C_GHOST;
std::cout << "Applying common mode " << ncol_cm << endl;
cm = new moench03CommonMode(ncol_cm);
// cout << "Applying ghost corrections " << xt_ghost << endl;