ARA ROOT v3.10 Software

calibration/ATRI/voltageCalib/getCalibNumbersFit2.cxx

00001 #include "TFile.h"
00002 #include "TChain.h"
00003 #include "TMath.h"
00004 
00005 #include "araSoft.h"
00006 
00007 #include <iostream>
00008 #include <fstream>
00009 
00010 TChain *chain = new TChain("fitTree");
00011 
00012 void getCalibNumbers(char *baseDir, char *outFileName, bool debug=false){
00013 
00014   char fileName[FILENAME_MAX];
00015   for(int block=0;block<BLOCKS_PER_DDA; block++){
00016     sprintf(fileName, "%s/fitBlock%i.root", baseDir, block);
00017     chain->Add(fileName);
00018   }
00019   
00020   Int_t numEntries = chain->GetEntries();
00021 
00022 
00023   Int_t dda=0, chan=0, sample=0, block=0;
00024   Double_t p0=0, p1=0, p2=0, p3=0, p4=0;
00025 
00026   chain->SetBranchAddress("dda", &dda);
00027   chain->SetBranchAddress("chan", &chan);
00028   chain->SetBranchAddress("sample", &sample);
00029   chain->SetBranchAddress("block", &block);
00030 
00031   chain->SetBranchAddress("p0", &p0);
00032   chain->SetBranchAddress("p1", &p1);
00033   chain->SetBranchAddress("p2", &p2);
00034   chain->SetBranchAddress("p3", &p3);
00035   chain->SetBranchAddress("p4", &p4);
00036 
00037   Double_t ****P0= new Double_t***[DDA_PER_ATRI];
00038   Double_t ****P1= new Double_t***[DDA_PER_ATRI];
00039   Double_t ****P2= new Double_t***[DDA_PER_ATRI];
00040   Double_t ****P3= new Double_t***[DDA_PER_ATRI];
00041   Double_t ****P4= new Double_t***[DDA_PER_ATRI];
00042 
00043   Int_t firstBadSample=0;
00044 
00045   printf("Initialise Arrays\n");
00046 
00047    for(dda=0;dda<DDA_PER_ATRI;dda++){
00048      P0[dda] = new Double_t**[RFCHAN_PER_DDA];
00049      P1[dda] = new Double_t**[RFCHAN_PER_DDA];
00050      P2[dda] = new Double_t**[RFCHAN_PER_DDA];
00051      P3[dda] = new Double_t**[RFCHAN_PER_DDA];
00052      P4[dda] = new Double_t**[RFCHAN_PER_DDA];
00053 
00054 
00055      for(chan=0;chan<RFCHAN_PER_DDA;chan++){
00056        P0[dda][chan] = new Double_t*[BLOCKS_PER_DDA];
00057        P1[dda][chan] = new Double_t*[BLOCKS_PER_DDA];
00058        P2[dda][chan] = new Double_t*[BLOCKS_PER_DDA];
00059        P3[dda][chan] = new Double_t*[BLOCKS_PER_DDA];
00060        P4[dda][chan] = new Double_t*[BLOCKS_PER_DDA];
00061 
00062 
00063        for(block=0;block<BLOCKS_PER_DDA;block++){
00064          P0[dda][chan][block] = new Double_t[SAMPLES_PER_BLOCK];
00065          P1[dda][chan][block] = new Double_t[SAMPLES_PER_BLOCK];
00066          P2[dda][chan][block] = new Double_t[SAMPLES_PER_BLOCK];
00067          P3[dda][chan][block] = new Double_t[SAMPLES_PER_BLOCK];
00068          P4[dda][chan][block] = new Double_t[SAMPLES_PER_BLOCK];
00069 
00070 
00071          for(sample=0;sample<SAMPLES_PER_BLOCK;sample++){
00072            P0[dda][chan][block][sample]=0;
00073            P1[dda][chan][block][sample]=1;
00074            P2[dda][chan][block][sample]=0;
00075            P3[dda][chan][block][sample]=0;
00076            P4[dda][chan][block][sample]=0;
00077          }
00078        }
00079      }
00080    }
00081   
00082 
00083 
00084   Int_t starEvery = numEntries/80;
00085   for(int entry=0;entry<numEntries;entry++){
00086     if(entry%starEvery==0) std::cerr << "*";
00087     chain->GetEntry(entry);
00088   }
00089   std::cerr << "\n";
00090    
00091 
00092 }

Generated on Tue Jul 16 16:58:02 2013 for ARA ROOT v3.10 Software by doxygen 1.4.7