Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2023-03-17 10:39:27

0001 {
0002   gROOT->ProcessLine(".L PlotFromMillepedeRes.C+");
0003   gStyle->SetPalette(1);
0004   gStyle->SetCanvasColor(kWhite); 
0005 
0006   //enum {PXB,PXF,TIB,TID,TOB,TEC};
0007   //enum {PULLS, NHITS, PARS, PARSwithERRvsLABEL};
0008 
0009   TString strVars;
0010 
0011   // uncomment two lines you need (check below)
0012     // one starts with strVars
0013     // the other starts with PlotFromMillepedeRes
0014   // pass appropriate unzipped millepede.res file
0015     // as the first argument to PlotFromMillepedeRes()
0016   // don't change strVars
0017   // set strOutdir where you want to save plots
0018     // by default, it's here, where you run this script
0019   // they will be saved in .png and .pdf formats
0020   // there will be also empty root file
0021   // run with
0022   // root -l runPlotMillepedeRes.C
0023 
0024   TString strOutdir="./"; 
0025 
0026   //###########################################################
0027 
0028   // plots par+-err as function of (label%700000) 
0029   // quoted in millepede.res 
0030   // to be used to plot from millepede.res with high level alignables 
0031   // ran in inversion mode (has to have errors, see strVars defined above)
0032 
0033   // uncomment two lines below if this is what you want to plot
0034 
0035 //  strVars="label/I:smth2/F:smth1/F:parVal/F:parErr/F:Nhits/I";
0036 //  PlotFromMillepedeRes("mp1720_millepede.res", strOutdir, strVars, PARSwithERRvsLABEL);
0037 
0038   //###########################################################
0039 
0040   // plots distributions of number of derivatives
0041   // associated with given module (last column in millepede.res)
0042   // for certain modules it's equal to number of tracks passed 
0043   // through the module
0044   // and for the others it's 2(x)tracks
0045   // the script takes this number from "u" coordinate
0046   // it introduces cut label<700000 to reject high level structures 
0047   // if they were allowed for IOV 
0048   // (if they were not then they also will contribute to distributions)
0049   // to be used to plot from millepede.res with module level alignables 
0050   // assumes that you didn't run in inversion mode and millepede.res doesn't have errors
0051   // if it does, please, add appropriate variable to strVars
0052 
0053   // uncomment two lines below if this is what you want to plot
0054 
0055 //  strVars="label/I:smth2/F:smth1/F:parVal/F:Nhits/I";
0056 //  PlotFromMillepedeRes("mp1700_millepede.res", strOutdir, strVars, NHITS);
0057 
0058   //###########################################################
0059 
0060   // plots distributions of pulls 
0061   // defined as parVal/(1.41 x parErr)
0062   // 1.41 factor appears because for pull distributions 
0063   // we run alignment in 2 iterations on independent same-size
0064   // sets of data and the error of the 1st iteration is ignored
0065   // has cut label<700000 to reject large structures if they were allowed for IOV
0066   // needs unzipped millepede.res ran in inversion mode 
0067 
0068   // uncomment two lines below if this is what you want to plot
0069 
0070 //  strVars="label/I:smth2/F:smth1/F:parVal/F:parErr/F:Nhits/I";
0071 //  PlotFromMillepedeRes("mp1587_mpInversion_TPBandTPE_jobData_jobm_millepede.res", strOutdir, strVars, PULLS);
0072 
0073   //###########################################################
0074 
0075   // plots distributions of parVal separately for each subdetector
0076   // it saved 6 different canvases, 9 plots on each (u,v,w,alpha,beta,gamma,def1,def2,def3)
0077   // has cut label<700000 to reject large structures if they were allowed for IOV
0078   // needs unzipped millepede.res
0079   // assumes that you didn't run in inversion mode and millepede.res doesn't have errors
0080   // if it does, please, add appropriate variable to strVars
0081 
0082   // uncomment two lines below if this is what you want to plot
0083 
0084 //  strVars="label/I:smth2/F:smth1/F:parVal/F:Nhits/I";
0085 //  PlotFromMillepedeRes("mp1700_millepede.res", strOutdir, strVars, PARS);
0086 
0087 }