]> jspc29.x-matter.uni-frankfurt.de Git - radhard.git/commitdiff
Cleaned reorderFSBB
authorDennis Doering <doering@physik.uni-frankfurt.de>
Mon, 7 Sep 2015 14:13:04 +0000 (16:13 +0200)
committerDennis Doering <doering@physik.uni-frankfurt.de>
Mon, 7 Sep 2015 14:13:04 +0000 (16:13 +0200)
MABS_run_analyzer/MAPS.c

index 03373ae7fa0460747ede94d42bec23efa09e092f..d0e949630bccf8d35f770142385b9dc149bf06a0 100644 (file)
@@ -2420,7 +2420,6 @@ void MAPS::reorderMi29a() {
 //####################################################################
 void MAPS::reorderFSBB() {
                        
-        Float_t CDSMATRIX2     [4*208*2];
                Float_t CDSMATRIX       [fPixels];
         Int_t F0MATRIX [fPixels];
         Int_t F1MATRIX [fPixels];
@@ -2433,7 +2432,6 @@ void MAPS::reorderFSBB() {
                fRows           = 4;
         fColumns       = 416;
         fPixels                = fRows*fColumns;
-       //      cout<<"Changed parameters for FSBB, fRows is now: "<<fRows<<" and fColumns is now: "<<fColumns<<endl;
        //      debugStream(CDSMATRIX, fPixels, 208, 0, 39);
        
                Int_t subRows = 4;
@@ -2441,8 +2439,7 @@ void MAPS::reorderFSBB() {
                Int_t a0[subRows][subColumns];
                Int_t a1[subRows][subColumns];
                Int_t aMerge[fRows][fColumns];
-               Int_t subMatrix0[subRows][subColumns];
-               Int_t subMatrix1[subRows][subColumns];
+
                //Divide CDSMATRIX in the channels. First 208 pixels are from A0-0, then A0-1, then A0-2, then A0-3, then A1-0, then A1-1, then A1-2, then A1-3
                 for(Int_t iOutChannel=0; iOutChannel<subRows; iOutChannel++)
         {
@@ -2472,123 +2469,14 @@ void MAPS::reorderFSBB() {
                                aMerge[iOutChannel][iMerge2channels*2+1]=a1[iOutChannel][iMerge2channels];//A1-iOutChannel[iMerge2channels]
                        }
                }
-               // for(Int_t ichannel=0; ichannel<4; ichannel++)
-        // {
-                       // Int_t precision=0;
-                       // Float_t highlightabove=30;
-                                // for(Int_t i=0; i<2*208; i++)
-                               // {
-                                       // if (abs(aMerge[ichannel][i]) > highlightabove)
-                                       // std::cout << colorred;
-                                       // std::cout.width(precision+5);
-                                       // std::cout << std::fixed;
-                                       // std::cout << std::left << std::setprecision(precision);          
-                                       // std::cout << aMerge[ichannel][i] << colorreset;
-                                        
-                               // }
-                       // cout<<endl;
-                       // cout<<endl;
-               // }
-               for(Int_t iOutChannel=0; iOutChannel<subRows; iOutChannel++)
-        {
-                       for(Int_t iDivideMatrix=0; iDivideMatrix<subColumns;iDivideMatrix++)
-                       { 
-                               //Divide in 2 submatrices
-                               subMatrix0[iOutChannel][iDivideMatrix]=aMerge[iOutChannel][iDivideMatrix];
-                               subMatrix1[iOutChannel][iDivideMatrix]=aMerge[iOutChannel][subColumns+iDivideMatrix];
-                       }
-               }
-                // for(Int_t i=0; i<208; i++)
-        // {
-          // cout<< subMatrix1[2][i]<<",";
-        // }
-               // cout<<endl;
-               // cout<<endl;
-                        // for(Int_t i=0; i<208; i++)
-        // {
-          // cout<< subMatrix1[3][i]<<",";
-        // }
-               // cout<<endl;
-               // cout<<endl;
-               Int_t choiceSubMatrix=2;
-               if(choiceSubMatrix==0)//Choose a submatrix and combine its value in an array
+               for(Int_t iOutChannel=0; iOutChannel<fRows; iOutChannel++)
                {
-                       for(Int_t iOutChannel=0; iOutChannel<subRows; iOutChannel++)
-                       {
-                               for(Int_t iPixel=0; iPixel<subColumns;iPixel++)
-                               { 
-                               CDSMATRIX2[iOutChannel*subColumns+iPixel]=subMatrix0[iOutChannel][iPixel];
-                               }
-                       }
-                       for(Int_t i=0; i<subRows*subColumns; i++)
-                       {
-                         fCdsmatrix[i]=  CDSMATRIX2    [i];
-                       }               
-               }
-               else if(choiceSubMatrix==1)
-               {
-                       for(Int_t iOutChannel=0; iOutChannel<subRows; iOutChannel++)
-                       {
-                               for(Int_t iPixel=0; iPixel<subColumns;iPixel++)
-                               { 
-                               CDSMATRIX2[iOutChannel*subColumns+iPixel]=subMatrix1[iOutChannel][iPixel];
-                               }
-                       }
-                       for(Int_t i=0; i<subRows*subColumns; i++)
-                       {
-                         fCdsmatrix[i]=  CDSMATRIX2    [i];
-                       }
-               }
-               else if(choiceSubMatrix==2)//For FSBB, do not divide the matrix
-               {
-                       for(Int_t iOutChannel=0; iOutChannel<subRows; iOutChannel++)
-                       {
-                               for(Int_t iPixel=0; iPixel<fColumns;iPixel++)
-                               { 
-                               CDSMATRIX2[iOutChannel*fColumns+iPixel]=aMerge[iOutChannel][iPixel];
-                               }
-                       }
-                       for(Int_t i=0; i<fRows*fColumns; i++)
-                       {
-                               fCdsmatrix[i]=  CDSMATRIX2      [i];
+                       for(Int_t iPixel=0; iPixel<fColumns;iPixel++)
+                       { 
+                               fCdsmatrix[iOutChannel*fColumns+iPixel]=aMerge[iOutChannel][iPixel];//Write the merged data in fCdsmatrix, which is 1dim array (standard) 
                        }
                }
-       //      debugStream(CDSMATRIX2, 4*208, 208,0,30);
 
-               // for(Int_t i=0; i<4*208; i++)
-        // {
-          // fCdsmatrix[i]=  CDSMATRIX2        [i];
-               // }
-       
-               // for(Int_t i=0; i<4*208*2; i++)
-        // {
-                   // fCdsmatrix[i]=  aMerge   [i];
-        // }
-               
-               
-               /*
-               Int_t pixel=4*416;
-               Int_t array[pixel];
-               for(int i=0;i<pixel;i++)
-               array[i]=CDSMATRIX      [i];
-               
-               //Divide array in two submatrices
-               Int_t submatrix=0;
-               Int_t nMatrix=2;
-               Int_t pixelInSubMatrix=pixel/nMatrix;
-               Int_t arrayDiv[pixelInSubMatrix];
-               for(int i=0;i<pixelInSubMatrix;i++)
-               arrayDiv[i]=array[i+submatrix*pixelInSubMatrix];
-               debugStream(arrayDiv, pixelInSubMatrix, 208, 0, 39);
-               for(Int_t i=0; i<pixelInSubMatrix; i++)
-        {
-            fCdsmatrix[i]= arrayDiv[i];
-               }
-               for(Int_t i=pixelInSubMatrix; i<fPixels; i++)
-        {
-            fCdsmatrix[i]= 0;
-               }       
-  //  exit(1);*/
 }
 
 //####################################################################