1 #ifndef PrimaryVertexValidation_h 2 #define PrimaryVertexValidation_h 84 virtual void endJob();
89 std::pair<Double_t,Double_t> getMedian(TH1F *
histo);
90 std::pair<Double_t,Double_t> getMAD(TH1F *histo);
91 std::pair<std::pair<Double_t,Double_t>, std::pair<Double_t,Double_t> > fitResiduals(TH1 *
hist);
92 void fillTrendPlot(TH1F* trendPlot, TH1F *residualsPlot[100],
statmode::estimator fitPar_, TString var_);
98 std::vector<TH1F*> bookResidualsHistogram(
TFileDirectory dir,
unsigned int theNOfBins,TString resType,TString varType);
99 std::map<std::string, TH1*> bookVertexHistograms(
TFileDirectory dir);
101 void add(std::map<std::string, TH1*>& h, TH1* hist);
103 void fill(std::map<std::string, TH1*>& h,
std::string s,
double x,
double y);
104 void fillByIndex(std::vector<TH1F*>& h,
unsigned int index,
double x);
105 void fillMap(TH2F* trendMap, TH1F* residualsMapPlot[100][100],
statmode::estimator fitPar_);
119 static const int nMaxBins_ = 100;
155 static const int nMaxtracks_ = 1000;
156 static const int cmToum = 10000;
157 static const int nPtBins_ = 48;
165 const float mypT_bins_[nPtBins_+1] = {0.5,0.6,0.7,0.8,0.9,1.0,1.1,1.2,1.3,1.4,1.5,1.6,1.7,1.8,1.9,2.0,2.1,2.2,2.3,2.4,2.5,2.6,2.7,2.8,2.9,3.0,3.1,3.2,3.3,3.4,3.5,3.6,3.7,3.8,3.9,4.0,4.1,4.25,4.5,4.75,5.0,5.5,6.0,7.0,8.0,9.0,11.0,14.0,20.};
193 double pt_[nMaxtracks_];
194 double p_[nMaxtracks_];
195 int nhits_[nMaxtracks_];
196 int nhits1D_[nMaxtracks_];
197 int nhits2D_[nMaxtracks_];
198 int nhitsBPIX_[nMaxtracks_];
199 int nhitsFPIX_[nMaxtracks_];
200 int nhitsTIB_[nMaxtracks_];
201 int nhitsTID_[nMaxtracks_];
202 int nhitsTOB_[nMaxtracks_];
203 int nhitsTEC_[nMaxtracks_];
204 int isHighPurity_[nMaxtracks_];
205 double eta_[nMaxtracks_];
206 double theta_[nMaxtracks_];
207 double phi_[nMaxtracks_];
208 double chi2_[nMaxtracks_];
209 double chi2ndof_[nMaxtracks_];
210 int charge_[nMaxtracks_];
211 double qoverp_[nMaxtracks_];
212 double dz_[nMaxtracks_];
213 double dxy_[nMaxtracks_];
214 double dxyBs_[nMaxtracks_];
215 double dzBs_[nMaxtracks_];
216 double xPCA_[nMaxtracks_];
217 double yPCA_[nMaxtracks_];
218 double zPCA_[nMaxtracks_];
219 double xUnbiasedVertex_[nMaxtracks_];
220 double yUnbiasedVertex_[nMaxtracks_];
221 double zUnbiasedVertex_[nMaxtracks_];
222 float chi2normUnbiasedVertex_[nMaxtracks_];
223 float chi2UnbiasedVertex_[nMaxtracks_];
224 float chi2ProbUnbiasedVertex_[nMaxtracks_];
225 float DOFUnbiasedVertex_[nMaxtracks_];
226 float sumOfWeightsUnbiasedVertex_[nMaxtracks_];
227 int tracksUsedForVertexing_[nMaxtracks_];
229 double dxyFromMyVertex_[nMaxtracks_];
230 double dzFromMyVertex_[nMaxtracks_];
231 double d3DFromMyVertex_[nMaxtracks_];
233 double dxyErrorFromMyVertex_[nMaxtracks_];
234 double dzErrorFromMyVertex_[nMaxtracks_];
235 double d3DErrorFromMyVertex_[nMaxtracks_];
237 double IPTsigFromMyVertex_[nMaxtracks_];
238 double IPLsigFromMyVertex_[nMaxtracks_];
239 double IP3DsigFromMyVertex_[nMaxtracks_];
241 int hasRecVertex_[nMaxtracks_];
242 int isGoodTrack_[nMaxtracks_];
252 TH1F* a_dxyPhiResiduals[nMaxBins_];
253 TH1F* a_dxyEtaResiduals[nMaxBins_];
255 TH1F* a_dxPhiResiduals[nMaxBins_];
256 TH1F* a_dxEtaResiduals[nMaxBins_];
258 TH1F* a_dyPhiResiduals[nMaxBins_];
259 TH1F* a_dyEtaResiduals[nMaxBins_];
261 TH1F* a_dzPhiResiduals[nMaxBins_];
262 TH1F* a_dzEtaResiduals[nMaxBins_];
264 TH1F* a_IP2DPhiResiduals[nMaxBins_];
265 TH1F* a_IP2DEtaResiduals[nMaxBins_];
267 TH1F* a_IP3DPhiResiduals[nMaxBins_];
268 TH1F* a_IP3DEtaResiduals[nMaxBins_];
270 TH1F* a_reszPhiResiduals[nMaxBins_];
271 TH1F* a_reszEtaResiduals[nMaxBins_];
273 TH1F* a_d3DPhiResiduals[nMaxBins_];
274 TH1F* a_d3DEtaResiduals[nMaxBins_];
278 TH1F* n_dxyPhiResiduals[nMaxBins_];
279 TH1F* n_dxyEtaResiduals[nMaxBins_];
281 TH1F* n_dzPhiResiduals[nMaxBins_];
282 TH1F* n_dzEtaResiduals[nMaxBins_];
284 TH1F* n_IP2DPhiResiduals[nMaxBins_];
285 TH1F* n_IP2DEtaResiduals[nMaxBins_];
287 TH1F* n_IP3DPhiResiduals[nMaxBins_];
288 TH1F* n_IP3DEtaResiduals[nMaxBins_];
290 TH1F* n_reszPhiResiduals[nMaxBins_];
291 TH1F* n_reszEtaResiduals[nMaxBins_];
293 TH1F* n_d3DPhiResiduals[nMaxBins_];
294 TH1F* n_d3DEtaResiduals[nMaxBins_];
298 TH1F* a_dxyResidualsMap[nMaxBins_][nMaxBins_];
299 TH1F* a_dzResidualsMap[nMaxBins_][nMaxBins_];
300 TH1F* a_d3DResidualsMap[nMaxBins_][nMaxBins_];
302 TH1F* n_dxyResidualsMap[nMaxBins_][nMaxBins_];
303 TH1F* n_dzResidualsMap[nMaxBins_][nMaxBins_];
304 TH1F* n_d3DResidualsMap[nMaxBins_][nMaxBins_];
404 TH1F* a_dxyPhiBiasResiduals[nMaxBins_];
405 TH1F* a_dxyEtaBiasResiduals[nMaxBins_];
407 TH1F* a_dzPhiBiasResiduals[nMaxBins_];
408 TH1F* a_dzEtaBiasResiduals[nMaxBins_];
412 TH1F* n_dxyPhiBiasResiduals[nMaxBins_];
413 TH1F* n_dxyEtaBiasResiduals[nMaxBins_];
415 TH1F* n_dzPhiBiasResiduals[nMaxBins_];
416 TH1F* n_dzEtaBiasResiduals[nMaxBins_];
420 TH1F* a_dxyBiasResidualsMap[nMaxBins_][nMaxBins_];
421 TH1F* a_dzBiasResidualsMap[nMaxBins_][nMaxBins_];
423 TH1F* n_dxyBiasResidualsMap[nMaxBins_][nMaxBins_];
424 TH1F* n_dzBiasResidualsMap[nMaxBins_][nMaxBins_];
565 std::map<std::string, TH1*>
hDA;
TH1F * n_dxyPhiMedianTrend
TH1F * n_dzEtaMedianTrend
TH1F * n_dxyEtaMADBiasTrend
TH1F * a_dxyPhiMedianBiasTrend
TH1F * n_dxyPhiMADBiasTrend
TH1F * a_dzPhiMedianBiasTrend
TH1F * a_dxyEtaWidthBiasTrend
std::vector< unsigned int > runControlNumbers_
TH1F * n_dxyEtaMedianTrend
TH1F * n_dxyEtaMeanBiasTrend
TH1F * a_dzEtaWidthBiasTrend
TH1F * a_dzPhiMADBiasTrend
TH1F * h_probeRefitVSigXY_
TH1F * h_probeRefitVSigZ_
TH1F * n_dxyEtaMedianBiasTrend
TH1F * a_dxyEtaMADBiasTrend
TH1F * h_probesignIP2DRefitV_
TH1F * a_dzpTCentralWidthTrend
def analyze(function, filename, filter=None)
std::vector< TH1F * > h_dxy_pT_
TrackFilterForPVFindingBase * theTrackFilter_
std::map< std::string, TH1 * > hDA
TH1F * a_dzEtaMADBiasTrend
std::vector< TH1F * > h_norm_dz_Central_pT_
TH1F * h_xErrOfflineVertex
void add(const std::vector< const T * > &source, std::vector< const T * > &dest)
TH1F * n_dzPhiWidthBiasTrend
TH1F * a_dxyPhiWidthBiasTrend
TH1F * a_dzPhiWidthBiasTrend
TH1F * h_probeRefitVSig3D_
TH1F * h_probereszRefitV_
TH1F * h_probeRefitVSigResZ_
TH1F * a_dzEtaMedianTrend
TH1F * a_dxyPhiMedianTrend
TH1F * a_dxypTCentralWidthTrend
T x() const
Cartesian x coordinate.
std::vector< TH1F * > h_norm_dxy_pT_
TH1F * a_dzPhiMeanBiasTrend
edm::ParameterSet theConfig
TH1F * h_fitVtxTrackAverageWeight_
TH1F * a_dxyPhiMADBiasTrend
unsigned int LuminosityBlockNumber_
TH1F * a_dxyPhiWidthTrend
double zErrOfflineVertex_
TH1F * h_yErrOfflineVertex
bool useTracksFromRecoVtx_
TH1F * n_dzPhiMADBiasTrend
TH1F * h_probeRecoVSigXY_
TH1F * h_probeRefitVLogSig3D_
TH1F * h_fitVtxTrackWeights_
unsigned int EventNumber_
TH1F * a_dzPhiMedianTrend
edm::EDGetTokenT< reco::VertexCollection > theVertexCollectionToken
TH1F * n_dzEtaWidthBiasTrend
TH1F * n_dzEtaMADBiasTrend
TH1F * a_dxyEtaWidthTrend
TH1F * n_dzPhiMeanBiasTrend
TH1F * h_nOfflineVertices
TH1F * a_dxyEtaMedianBiasTrend
std::vector< TH1F * > h_norm_dz_pT_
TH1F * n_dzPhiMedianBiasTrend
std::vector< TH1F * > h_dz_pT_
std::vector< TH1F * > h_dz_Central_pT_
TH1F * n_dzEtaMeanBiasTrend
TrackClusterizerInZ * theTrackClusterizer_
double yErrOfflineVertex_
std::vector< TH1F * > h_dxy_Central_pT_
TH1F * n_dxypTCentralWidthTrend
TH1F * n_dxyPhiWidthTrend
TH1F * a_dzpTCentralMeanTrend
TH1F * a_dxypTCentralMeanTrend
TH1F * a_dxyEtaMeanBiasTrend
edm::EDGetTokenT< reco::BeamSpot > theBeamspotToken
TH1F * n_dxypTCentralMeanTrend
edm::EDGetTokenT< reco::TrackCollection > theTrackCollectionToken
TH1F * a_dzEtaMedianBiasTrend
TH1F * n_dxyEtaWidthTrend
TH1F * a_dxyPhiMeanBiasTrend
TH1F * h_recoVtxChi2Prob_
TH1F * h_probeHitsInBPIX_
TH1F * h_probeHitsInFPIX_
TH1F * n_dxyEtaWidthBiasTrend
TH1F * h_zErrOfflineVertex
TH1F * n_dzpTCentralMeanTrend
TH1F * n_dzPhiMedianTrend
TH1F * n_dxyPhiWidthBiasTrend
TH1F * n_dzEtaMedianBiasTrend
TH1F * a_dxyEtaMedianTrend
double xErrOfflineVertex_
TH1F * a_dzEtaMeanBiasTrend
TH1F * n_dzpTCentralWidthTrend
std::vector< TH1F * > h_norm_dxy_Central_pT_
TH1F * n_dxyPhiMedianBiasTrend
TH1F * n_dxyPhiMeanBiasTrend