65 |
|
//======================================================================= |
66 |
|
// Get configuration for TrackTupleMaker |
67 |
|
//======================================================================= |
68 |
< |
simG4_ = iConfig.getParameter<edm::InputTag>( "simG4" ); |
69 |
< |
trackCollectionTag_ = iConfig.getUntrackedParameter<edm::InputTag>("trackCollection"); |
70 |
< |
splitTrackCollection1Tag_ = iConfig.getUntrackedParameter<edm::InputTag>("splitTrackCollection1"); |
71 |
< |
splitTrackCollection2Tag_ = iConfig.getUntrackedParameter<edm::InputTag>("splitTrackCollection2"); |
68 |
> |
simG4_ = iConfig.getParameter<edm::InputTag>( "simG4" ); |
69 |
> |
trackCollectionTag_ = iConfig.getUntrackedParameter<edm::InputTag>("trackCollection"); |
70 |
> |
splitTrackCollection1Tag_ = iConfig.getUntrackedParameter<edm::InputTag>("splitTrackCollection1"); |
71 |
> |
splitTrackCollection2Tag_ = iConfig.getUntrackedParameter<edm::InputTag>("splitTrackCollection2"); |
72 |
|
vertexCollectionTag_ = iConfig.getUntrackedParameter<edm::InputTag>("vertexCollection"); |
73 |
< |
splitVertexCollection1Tag_ = iConfig.getUntrackedParameter<edm::InputTag>("splitVertexCollection1"); |
74 |
< |
splitVertexCollection2Tag_ = iConfig.getUntrackedParameter<edm::InputTag>("splitVertexCollection2"); |
75 |
< |
verbose_ = iConfig.getUntrackedParameter<bool>("verbose",false); |
76 |
< |
realData_ = iConfig.getUntrackedParameter<bool>("realData",false); |
77 |
< |
analyze_ = iConfig.getUntrackedParameter<bool>("analyzeOnTheFly",false); |
78 |
< |
saventuple_ = iConfig.getUntrackedParameter<bool>("saventuple",false); |
79 |
< |
outputfilename_ = iConfig.getUntrackedParameter<string>("OutputFileName"); |
80 |
< |
ntrkdiffcut_ = iConfig.getUntrackedParameter<double>("ntrkdiffcut"); |
81 |
< |
nTrkMin_ = iConfig.getUntrackedParameter<int>("nTrkMin"); |
82 |
< |
nTrkMax_ = iConfig.getUntrackedParameter<int>("nTrkMax"); |
73 |
> |
splitVertexCollection1Tag_ = iConfig.getUntrackedParameter<edm::InputTag>("splitVertexCollection1"); |
74 |
> |
splitVertexCollection2Tag_ = iConfig.getUntrackedParameter<edm::InputTag>("splitVertexCollection2"); |
75 |
> |
verbose_ = iConfig.getUntrackedParameter<bool>("verbose",false); |
76 |
> |
realData_ = iConfig.getUntrackedParameter<bool>("realData",false); |
77 |
> |
analyze_ = iConfig.getUntrackedParameter<bool>("analyzeOnTheFly",false); |
78 |
> |
saventuple_ = iConfig.getUntrackedParameter<bool>("saventuple",false); |
79 |
> |
outputfilename_ = iConfig.getUntrackedParameter<string>("OutputFileName"); |
80 |
> |
ntrkdiffcut_ = iConfig.getUntrackedParameter<double>("ntrkdiffcut"); |
81 |
> |
nTrkMin_ = iConfig.getUntrackedParameter<int>("nTrkMin"); |
82 |
> |
nTrkMax_ = iConfig.getUntrackedParameter<int>("nTrkMax"); |
83 |
|
|
84 |
|
//now do what ever initialization is needed |
85 |
|
pvinfo.clear(); |
472 |
|
//======================================================= |
473 |
|
// Initialize Root-tuple variables if needed |
474 |
|
//======================================================= |
475 |
< |
if(saventuple_) |
475 |
> |
//if(saventuple_) |
476 |
|
SetVarToZero(); |
477 |
|
|
478 |
|
//======================================================= |
619 |
|
printRecVtxs(splitVertexCollection2Handle); |
620 |
|
} |
621 |
|
|
622 |
– |
h["nrecPV"]->Fill(vertexColl->size()); |
623 |
– |
h["nrecPV1_spl"]->Fill(splitVertexColl1->size()); |
624 |
– |
h["nrecPV2_spl"]->Fill(splitVertexColl2->size()); |
625 |
– |
h["nrecPVDiff"]->Fill(double(splitVertexColl1->size())-double(splitVertexColl2->size())); |
622 |
|
//Fill the tree variables |
623 |
|
nrecPV_ = vertexColl->size(); |
624 |
|
nrecPV1_spl_ = splitVertexColl1->size(); |
625 |
|
nrecPV2_spl_ = splitVertexColl2->size(); |
626 |
+ |
|
627 |
+ |
h["nrecPV"]->Fill(nrecPV_); |
628 |
+ |
h["nrecPV1_spl"]->Fill(nrecPV1_spl_); |
629 |
+ |
h["nrecPV2_spl"]->Fill(nrecPV2_spl_); |
630 |
+ |
h["nrecPVDiff"]->Fill(double(nrecPV1_spl_)-double(nrecPV2_spl_)); |
631 |
|
|
632 |
|
// Fill the track paramters for the vertexColl |
633 |
|
for(reco::VertexCollection::const_iterator v=vertexColl->begin(); |
634 |
< |
v!=vertexColl->end(); ++v){ |
634 |
> |
v!=vertexColl->end(); ++v){ |
635 |
> |
h["nTrkPV"]->Fill(v->tracksSize()); |
636 |
|
try { |
637 |
|
for(reco::Vertex::trackRef_iterator t = v->tracks_begin(); |
638 |
|
t!=v->tracks_end(); t++) { |
743 |
|
error(ferror_[0], ferror_[1], ferror_[2]), |
744 |
|
fntrk_,0); |
745 |
|
|
746 |
< |
ftree_->Fill(); |
746 |
> |
if (saventuple_) ftree_->Fill(); |
747 |
|
} // End of if(fabs(ntrkreldiff)<ntrkdiffcut_) { |
748 |
|
} // End of if (matchVertex(recvtx1, recvtx2)) { |
749 |
|
else { |
871 |
|
fillHisto(res(fres_mct[0], fres_mct[1], fres_mct[2]), |
872 |
|
error(ferror_mct[0], ferror_mct[1], ferror_mct[2]), |
873 |
|
fntrk_mct, i); |
874 |
< |
ftree_->Fill(); |
874 |
> |
if (saventuple_) ftree_->Fill(); |
875 |
|
suffix.clear(); |
876 |
|
} |
877 |
|
else { // no rec vertex found for this simvertex |
909 |
|
case 3: suffix = "_mct"; |
910 |
|
break; |
911 |
|
} |
912 |
< |
for (int ntrk=nTrkMin_;ntrk<=nTrkMax_;++ntrk) { |
913 |
< |
if (verbose_) cout << "Fill point of ntrk = " << ntrk << endl; |
914 |
< |
PVStudy::PVAnaInfo ipv = GetPVAnaInfo(ntrk,*it); |
915 |
< |
if (analyze_) { |
912 |
> |
if (analyze_) { |
913 |
> |
for (int ntrk=nTrkMin_;ntrk<=nTrkMax_;++ntrk) { |
914 |
> |
PVStudy::PVAnaInfo ipv = GetPVAnaInfo(ntrk,*it); |
915 |
> |
if (verbose_) cout << "Fill point of ntrk = " << ntrk << endl; |
916 |
|
if ( ipv.res_.x() > 0 ) h2["resx"+suffix+"_nTrk"]->Fill(ntrk,ipv.res_.x(), 1.); |
917 |
|
if ( ipv.res_.y() > 0 ) h2["resy"+suffix+"_nTrk"]->Fill(ntrk,ipv.res_.y(), 1.); |
918 |
|
if ( ipv.res_.z() > 0 ) h2["resz"+suffix+"_nTrk"]->Fill(ntrk,ipv.res_.z(), 1.); |
920 |
|
if ( ipv.pull_.y() > 0 ) h2["pully"+suffix+"_nTrk"]->Fill(ntrk,ipv.pull_.y(), 1.); |
921 |
|
if ( ipv.pull_.z() > 0 ) h2["pullz"+suffix+"_nTrk"]->Fill(ntrk,ipv.pull_.z(), 1.); |
922 |
|
} |
923 |
< |
} // End of for (int ntrk=nTrkMin_;ntrk<=nTrkMax_;++ntrk) { |
923 |
> |
} |
924 |
|
suffix.clear(); |
925 |
|
} |
926 |
< |
file_->cd(); |
927 |
< |
ftree_->Write(); |
928 |
< |
file_->Close(); |
926 |
> |
if(saventuple_) { |
927 |
> |
file_->cd(); |
928 |
> |
ftree_->Write(); |
929 |
> |
file_->Close(); |
930 |
> |
} |
931 |
|
} |
932 |
|
|
933 |
|
|