CMS 3D CMS Logo

List of all members | Classes | Public Member Functions | Private Member Functions | Private Attributes | Static Private Attributes
PlotAlignmentValidation Class Reference

#include <PlotAlignmentValidation.h>

Classes

struct  DMRPlotInfo
 

Public Member Functions

THStack * addHists (const TString &selection, const TString &residType="xPrime", TLegend **myLegend=0, bool printModuleIds=false, bool validforphase0=false)
 
void legendOptions (TString options)
 
void loadFileList (const char *inputFile, std::string fileName="", int lineColor=2, int lineStyle=1)
 
int maxNumberOfLayers (int subdetector)
 
int numberOfLayers (int phase, int subdetector)
 
 PlotAlignmentValidation (bool bigtext=false)
 
 PlotAlignmentValidation (const char *inputFile, std::string fileName="", int lineColor=1, int lineStyle=1, bool bigtext=false)
 
void plotChi2 (const char *inputFile)
 
void plotDMR (const std::string &plotVar="medianX", Int_t minHits=50, const std::string &options="plain")
 
void plotHitMaps ()
 
void plotOutlierModules (const char *outputFileName="OutlierModules.ps", std::string plotVariable="chi2PerDofX", float chi2_cut=10, unsigned int minHits=50)
 
void plotSubDetResiduals (bool plotNormHisto=false, unsigned int subDetId=7)
 
void plotSurfaceShapes (const std::string &options="layers", const std::string &variable="")
 
void setOutputDir (std::string dir)
 
void setTreeBaseDir (std::string dir="TrackerOfflineValidationStandalone")
 
void useFitForDMRplots (bool usefit=false)
 
 ~PlotAlignmentValidation ()
 

Private Member Functions

TObject * findObjectFromCanvas (TCanvas *canv, const char *className, Int_t n=1)
 
TF1 * fitGauss (TH1 *hist, int color)
 
std::string getSelectionForDMRPlot (int minHits, int subDetId, int direction=0, int layer=0)
 
TList * getTreeList ()
 
std::string getVariableForDMRPlot (const std::string &histoname, const std::string &variable, int nbins, double min, double max)
 
void modifySSHistAndLegend (THStack *hs, TLegend *legend)
 
void openSummaryFile ()
 
void plotDMRHistogram (DMRPlotInfo &plotinfo, int direction=0, int layer=0)
 
void plotSS (const std::string &options="layers", const std::string &variable="")
 
double resampleTestOfEqualMeans (TH1F *h1, TH1F *h2, int numSamples)
 
double resampleTestOfEqualRMS (TH1F *h1, TH1F *h2, int numSamples)
 
void scaleXaxis (TH1 *hist, Int_t scale)
 
void setCanvasStyle (TCanvas &canv)
 
void setDMRHistStyleAndLegend (TH1F *h, DMRPlotInfo &plotinfo, int direction=0, int layer=0)
 
void setHistStyle (TH1 &hist, const char *titleX, const char *titleY, int color)
 
void setLegendStyle (TLegend &leg)
 
void setNiceStyle ()
 
void setTitleStyle (TNamed &h, const char *titleX, const char *titleY, int subDetId, bool isSurfaceDeformation=false, TString secondline="")
 

Private Attributes

bool bigtext_
 
int fileCounter
 
std::string fileNames [10]
 
bool moreThanOneSource
 
bool openedsummaryfile = false
 
std::string outputDir
 
TString outputFile
 
bool showMean_
 
bool showMeanError_
 
bool showModules_
 
bool showRMS_
 
bool showRMSError_
 
bool showUnderOverFlow_
 
TList * sourcelist
 
std::vector< TkOfflineVariables * > sourceList
 
ofstream summaryfile
 
std::string treeBaseDir
 
bool twolines_
 
bool useFit_
 
std::vector< double > vAlignmentUncertainty
 
std::vector< double > vdeltamean
 
std::vector< double > vmean
 
std::vector< double > vmeanerror
 
std::vector< double > vPValueEqualSplitMeans
 
std::vector< double > vPValueMeanEqualIdeal
 
std::vector< double > vPValueRMSEqualIdeal
 
std::vector< double > vrms
 

Static Private Attributes

static const TString summaryfilename
 

Detailed Description

Definition at line 84 of file PlotAlignmentValidation.h.

Constructor & Destructor Documentation

PlotAlignmentValidation::PlotAlignmentValidation ( bool  bigtext = false)
PlotAlignmentValidation::PlotAlignmentValidation ( const char *  inputFile,
std::string  fileName = "",
int  lineColor = 1,
int  lineStyle = 1,
bool  bigtext = false 
)
PlotAlignmentValidation::~PlotAlignmentValidation ( )

Member Function Documentation

THStack* PlotAlignmentValidation::addHists ( const TString &  selection,
const TString &  residType = "xPrime",
TLegend **  myLegend = 0,
bool  printModuleIds = false,
bool  validforphase0 = false 
)
TObject* PlotAlignmentValidation::findObjectFromCanvas ( TCanvas *  canv,
const char *  className,
Int_t  n = 1 
)
private
TF1* PlotAlignmentValidation::fitGauss ( TH1 *  hist,
int  color 
)
private
std::string PlotAlignmentValidation::getSelectionForDMRPlot ( int  minHits,
int  subDetId,
int  direction = 0,
int  layer = 0 
)
private
TList* PlotAlignmentValidation::getTreeList ( )
private
std::string PlotAlignmentValidation::getVariableForDMRPlot ( const std::string &  histoname,
const std::string &  variable,
int  nbins,
double  min,
double  max 
)
private
void PlotAlignmentValidation::legendOptions ( TString  options)
void PlotAlignmentValidation::loadFileList ( const char *  inputFile,
std::string  fileName = "",
int  lineColor = 2,
int  lineStyle = 1 
)
int PlotAlignmentValidation::maxNumberOfLayers ( int  subdetector)
void PlotAlignmentValidation::modifySSHistAndLegend ( THStack *  hs,
TLegend *  legend 
)
private
int PlotAlignmentValidation::numberOfLayers ( int  phase,
int  subdetector 
)
void PlotAlignmentValidation::openSummaryFile ( )
private
void PlotAlignmentValidation::plotChi2 ( const char *  inputFile)
void PlotAlignmentValidation::plotDMR ( const std::string &  plotVar = "medianX",
Int_t  minHits = 50,
const std::string &  options = "plain" 
)
void PlotAlignmentValidation::plotDMRHistogram ( DMRPlotInfo plotinfo,
int  direction = 0,
int  layer = 0 
)
private
void PlotAlignmentValidation::plotHitMaps ( )
void PlotAlignmentValidation::plotOutlierModules ( const char *  outputFileName = "OutlierModules.ps",
std::string  plotVariable = "chi2PerDofX",
float  chi2_cut = 10,
unsigned int  minHits = 50 
)
void PlotAlignmentValidation::plotSS ( const std::string &  options = "layers",
const std::string &  variable = "" 
)
private
void PlotAlignmentValidation::plotSubDetResiduals ( bool  plotNormHisto = false,
unsigned int  subDetId = 7 
)
void PlotAlignmentValidation::plotSurfaceShapes ( const std::string &  options = "layers",
const std::string &  variable = "" 
)
double PlotAlignmentValidation::resampleTestOfEqualMeans ( TH1F *  h1,
TH1F *  h2,
int  numSamples 
)
private
double PlotAlignmentValidation::resampleTestOfEqualRMS ( TH1F *  h1,
TH1F *  h2,
int  numSamples 
)
private
void PlotAlignmentValidation::scaleXaxis ( TH1 *  hist,
Int_t  scale 
)
private
void PlotAlignmentValidation::setCanvasStyle ( TCanvas &  canv)
private
void PlotAlignmentValidation::setDMRHistStyleAndLegend ( TH1F *  h,
DMRPlotInfo plotinfo,
int  direction = 0,
int  layer = 0 
)
private
void PlotAlignmentValidation::setHistStyle ( TH1 &  hist,
const char *  titleX,
const char *  titleY,
int  color 
)
private
void PlotAlignmentValidation::setLegendStyle ( TLegend &  leg)
private
void PlotAlignmentValidation::setNiceStyle ( )
private
void PlotAlignmentValidation::setOutputDir ( std::string  dir)
void PlotAlignmentValidation::setTitleStyle ( TNamed &  h,
const char *  titleX,
const char *  titleY,
int  subDetId,
bool  isSurfaceDeformation = false,
TString  secondline = "" 
)
private
void PlotAlignmentValidation::setTreeBaseDir ( std::string  dir = "TrackerOfflineValidationStandalone")
void PlotAlignmentValidation::useFitForDMRplots ( bool  usefit = false)

Member Data Documentation

bool PlotAlignmentValidation::bigtext_
private

Definition at line 138 of file PlotAlignmentValidation.h.

int PlotAlignmentValidation::fileCounter
private

Definition at line 167 of file PlotAlignmentValidation.h.

std::string PlotAlignmentValidation::fileNames[10]
private

Definition at line 166 of file PlotAlignmentValidation.h.

bool PlotAlignmentValidation::moreThanOneSource
private

Definition at line 165 of file PlotAlignmentValidation.h.

bool PlotAlignmentValidation::openedsummaryfile = false
private

Definition at line 141 of file PlotAlignmentValidation.h.

std::string PlotAlignmentValidation::outputDir
private

Definition at line 162 of file PlotAlignmentValidation.h.

TString PlotAlignmentValidation::outputFile
private

Definition at line 161 of file PlotAlignmentValidation.h.

bool PlotAlignmentValidation::showMean_
private

Definition at line 131 of file PlotAlignmentValidation.h.

bool PlotAlignmentValidation::showMeanError_
private

Definition at line 133 of file PlotAlignmentValidation.h.

bool PlotAlignmentValidation::showModules_
private

Definition at line 135 of file PlotAlignmentValidation.h.

bool PlotAlignmentValidation::showRMS_
private

Definition at line 132 of file PlotAlignmentValidation.h.

bool PlotAlignmentValidation::showRMSError_
private

Definition at line 134 of file PlotAlignmentValidation.h.

bool PlotAlignmentValidation::showUnderOverFlow_
private

Definition at line 136 of file PlotAlignmentValidation.h.

TList* PlotAlignmentValidation::sourcelist
private

Definition at line 163 of file PlotAlignmentValidation.h.

std::vector<TkOfflineVariables*> PlotAlignmentValidation::sourceList
private

Definition at line 164 of file PlotAlignmentValidation.h.

ofstream PlotAlignmentValidation::summaryfile
private

Definition at line 140 of file PlotAlignmentValidation.h.

const TString PlotAlignmentValidation::summaryfilename
staticprivate

Definition at line 139 of file PlotAlignmentValidation.h.

std::string PlotAlignmentValidation::treeBaseDir
private

Definition at line 128 of file PlotAlignmentValidation.h.

bool PlotAlignmentValidation::twolines_
private

Definition at line 137 of file PlotAlignmentValidation.h.

bool PlotAlignmentValidation::useFit_
private

Definition at line 130 of file PlotAlignmentValidation.h.

std::vector<double> PlotAlignmentValidation::vAlignmentUncertainty
private

Definition at line 143 of file PlotAlignmentValidation.h.

std::vector<double> PlotAlignmentValidation::vdeltamean
private

Definition at line 143 of file PlotAlignmentValidation.h.

std::vector<double> PlotAlignmentValidation::vmean
private

Definition at line 143 of file PlotAlignmentValidation.h.

std::vector<double> PlotAlignmentValidation::vmeanerror
private

Definition at line 143 of file PlotAlignmentValidation.h.

std::vector<double> PlotAlignmentValidation::vPValueEqualSplitMeans
private

Definition at line 143 of file PlotAlignmentValidation.h.

std::vector<double> PlotAlignmentValidation::vPValueMeanEqualIdeal
private

Definition at line 143 of file PlotAlignmentValidation.h.

std::vector<double> PlotAlignmentValidation::vPValueRMSEqualIdeal
private

Definition at line 143 of file PlotAlignmentValidation.h.

std::vector<double> PlotAlignmentValidation::vrms
private

Definition at line 143 of file PlotAlignmentValidation.h.