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
