#include <BeamFitter.h>
_________________________________________________________________ class: BeamFitter.h package: RecoVertex/BeamSpotProducer
author: Francisco Yumiceva, Fermilab (yumiceva@fnal.gov) Geng-Yuan Jeng, UC Riverside (Geng-Yuan.Jeng@cern.ch)
version
________________________________________________________________
Definition at line 33 of file BeamFitter.h.
BeamFitter::BeamFitter | ( | ) | [inline] |
Definition at line 35 of file BeamFitter.h.
{}
BeamFitter::BeamFitter | ( | const edm::ParameterSet & | iConfig | ) |
Definition at line 52 of file BeamFitter.cc.
References reco::TrackBase::algoByName(), algorithm_, appendRunTxt_, convergence_, debug_, falgo, fasciiDIP, fbeginLumiOfFit, fbeginTimeOfFit, fBSvector, fcharge, fcov, fd0, fd0bs, fdxdz, fdxdzErr, fdydz, fdydzErr, fendLumiOfFit, fendTimeOfFit, feta, ffilename_changed, file_, fitted_, flumi, fnormchi2, fnPixelLayerMeas, fnPXBLayerMeas, fnPXFLayerMeas, fnStripLayerMeas, fnTECLayerMeas, fnTIBLayerMeas, fnTIDLayerMeas, fnTOBLayerMeas, fnTotLayerMeas, fphi0, fpt, fPVTree_, fpvValid, fpvx, fpvy, fpvz, fquality, frun, frunFit, fsigmad0, fsigmaZ, fsigmaz0, fsigmaZErr, ftheta, ftotal_tracks, ftree_, ftreeFit_, fvx, fvy, fwidthX, fwidthXErr, fwidthY, fwidthYErr, fx, fxErr, fy, fyErr, fz, fz0, fzErr, edm::ParameterSet::getParameter(), edm::ParameterSet::getUntrackedParameter(), h1cutFlow, h1ntrks, h1vz_event, inputBeamWidth_, isMuon_, j, min_Ntrks_, MyPVFitter, outputDIPTxt_, outputfilename_, outputTxt_, quality_, reco::TrackBase::qualityByName(), PVFitter::resetAll(), resetCutFlow(), resetRefTime(), saveBeamFit_, saveNtuple_, savePVVertices_, PVFitter::setTree(), tracksLabel_, trk_Algorithm_, trk_MaxEta_, trk_MaxIP_, trk_MaxNormChi2_, trk_MaxZ_, trk_MinNPixLayers_, trk_MinNTotLayers_, trk_MinpT_, trk_Quality_, vertexLabel_, writeDIPBadFit_, writeDIPTxt_, and writeTxt_.
: fPVTree_(0) { debug_ = iConfig.getParameter<edm::ParameterSet>("BeamFitter").getUntrackedParameter<bool>("Debug"); tracksLabel_ = iConfig.getParameter<edm::ParameterSet>("BeamFitter").getUntrackedParameter<edm::InputTag>("TrackCollection"); vertexLabel_ = iConfig.getUntrackedParameter<edm::InputTag>("primaryVertex", edm::InputTag("offlinePrimaryVertices")); writeTxt_ = iConfig.getParameter<edm::ParameterSet>("BeamFitter").getUntrackedParameter<bool>("WriteAscii"); outputTxt_ = iConfig.getParameter<edm::ParameterSet>("BeamFitter").getUntrackedParameter<std::string>("AsciiFileName"); appendRunTxt_ = iConfig.getParameter<edm::ParameterSet>("BeamFitter").getUntrackedParameter<bool>("AppendRunToFileName"); writeDIPTxt_ = iConfig.getParameter<edm::ParameterSet>("BeamFitter").getUntrackedParameter<bool>("WriteDIPAscii"); // Specify whether we want to write the DIP file even if the fit is failed. writeDIPBadFit_ = iConfig.getParameter<edm::ParameterSet>("BeamFitter").getUntrackedParameter<bool>("WriteDIPOnBadFit", true); outputDIPTxt_ = iConfig.getParameter<edm::ParameterSet>("BeamFitter").getUntrackedParameter<std::string>("DIPFileName"); saveNtuple_ = iConfig.getParameter<edm::ParameterSet>("BeamFitter").getUntrackedParameter<bool>("SaveNtuple"); saveBeamFit_ = iConfig.getParameter<edm::ParameterSet>("BeamFitter").getUntrackedParameter<bool>("SaveFitResults"); savePVVertices_ = iConfig.getParameter<edm::ParameterSet>("BeamFitter").getUntrackedParameter<bool>("SavePVVertices"); isMuon_ = iConfig.getParameter<edm::ParameterSet>("BeamFitter").getUntrackedParameter<bool>("IsMuonCollection"); trk_MinpT_ = iConfig.getParameter<edm::ParameterSet>("BeamFitter").getUntrackedParameter<double>("MinimumPt"); trk_MaxEta_ = iConfig.getParameter<edm::ParameterSet>("BeamFitter").getUntrackedParameter<double>("MaximumEta"); trk_MaxIP_ = iConfig.getParameter<edm::ParameterSet>("BeamFitter").getUntrackedParameter<double>("MaximumImpactParameter"); trk_MaxZ_ = iConfig.getParameter<edm::ParameterSet>("BeamFitter").getUntrackedParameter<double>("MaximumZ"); trk_MinNTotLayers_ = iConfig.getParameter<edm::ParameterSet>("BeamFitter").getUntrackedParameter<int>("MinimumTotalLayers"); trk_MinNPixLayers_ = iConfig.getParameter<edm::ParameterSet>("BeamFitter").getUntrackedParameter<int>("MinimumPixelLayers"); trk_MaxNormChi2_ = iConfig.getParameter<edm::ParameterSet>("BeamFitter").getUntrackedParameter<double>("MaximumNormChi2"); trk_Algorithm_ = iConfig.getParameter<edm::ParameterSet>("BeamFitter").getUntrackedParameter<std::vector<std::string> >("TrackAlgorithm"); trk_Quality_ = iConfig.getParameter<edm::ParameterSet>("BeamFitter").getUntrackedParameter<std::vector<std::string> >("TrackQuality"); min_Ntrks_ = iConfig.getParameter<edm::ParameterSet>("BeamFitter").getUntrackedParameter<int>("MinimumInputTracks"); convergence_ = iConfig.getParameter<edm::ParameterSet>("BeamFitter").getUntrackedParameter<double>("FractionOfFittedTrks"); inputBeamWidth_ = iConfig.getParameter<edm::ParameterSet>("BeamFitter").getUntrackedParameter<double>("InputBeamWidth",-1.); for (unsigned int j=0;j<trk_Algorithm_.size();j++) algorithm_.push_back(reco::TrackBase::algoByName(trk_Algorithm_[j])); for (unsigned int j=0;j<trk_Quality_.size();j++) quality_.push_back(reco::TrackBase::qualityByName(trk_Quality_[j])); if (saveNtuple_ || saveBeamFit_ || savePVVertices_) { outputfilename_ = iConfig.getParameter<edm::ParameterSet>("BeamFitter").getUntrackedParameter<std::string>("OutputFileName"); file_ = TFile::Open(outputfilename_.c_str(),"RECREATE"); } if (saveNtuple_) { ftree_ = new TTree("mytree","mytree"); ftree_->AutoSave(); ftree_->Branch("pt",&fpt,"fpt/D"); ftree_->Branch("d0",&fd0,"fd0/D"); ftree_->Branch("d0bs",&fd0bs,"fd0bs/D"); ftree_->Branch("sigmad0",&fsigmad0,"fsigmad0/D"); ftree_->Branch("phi0",&fphi0,"fphi0/D"); ftree_->Branch("z0",&fz0,"fz0/D"); ftree_->Branch("sigmaz0",&fsigmaz0,"fsigmaz0/D"); ftree_->Branch("theta",&ftheta,"ftheta/D"); ftree_->Branch("eta",&feta,"feta/D"); ftree_->Branch("charge",&fcharge,"fcharge/I"); ftree_->Branch("normchi2",&fnormchi2,"fnormchi2/D"); ftree_->Branch("nTotLayerMeas",&fnTotLayerMeas,"fnTotLayerMeas/i"); ftree_->Branch("nStripLayerMeas",&fnStripLayerMeas,"fnStripLayerMeas/i"); ftree_->Branch("nPixelLayerMeas",&fnPixelLayerMeas,"fnPixelLayerMeas/i"); ftree_->Branch("nTIBLayerMeas",&fnTIBLayerMeas,"fnTIBLayerMeas/i"); ftree_->Branch("nTOBLayerMeas",&fnTOBLayerMeas,"fnTOBLayerMeas/i"); ftree_->Branch("nTIDLayerMeas",&fnTIDLayerMeas,"fnTIDLayerMeas/i"); ftree_->Branch("nTECLayerMeas",&fnTECLayerMeas,"fnTECLayerMeas/i"); ftree_->Branch("nPXBLayerMeas",&fnPXBLayerMeas,"fnPXBLayerMeas/i"); ftree_->Branch("nPXFLayerMeas",&fnPXFLayerMeas,"fnPXFLayerMeas/i"); ftree_->Branch("cov",&fcov,"fcov[7][7]/D"); ftree_->Branch("vx",&fvx,"fvx/D"); ftree_->Branch("vy",&fvy,"fvy/D"); ftree_->Branch("quality",&fquality,"fquality/O"); ftree_->Branch("algo",&falgo,"falgo/O"); ftree_->Branch("run",&frun,"frun/i"); ftree_->Branch("lumi",&flumi,"flumi/i"); ftree_->Branch("pvValid",&fpvValid,"fpvValid/O"); ftree_->Branch("pvx", &fpvx, "fpvx/D"); ftree_->Branch("pvy", &fpvy, "fpvy/D"); ftree_->Branch("pvz", &fpvz, "fpvz/D"); } if (saveBeamFit_){ ftreeFit_ = new TTree("fitResults","fitResults"); ftreeFit_->AutoSave(); ftreeFit_->Branch("run",&frunFit,"frunFit/i"); ftreeFit_->Branch("beginLumi",&fbeginLumiOfFit,"fbeginLumiOfFit/i"); ftreeFit_->Branch("endLumi",&fendLumiOfFit,"fendLumiOfFit/i"); ftreeFit_->Branch("beginTime",fbeginTimeOfFit,"fbeginTimeOfFit/C"); ftreeFit_->Branch("endTime",fendTimeOfFit,"fendTimeOfFit/C"); ftreeFit_->Branch("x",&fx,"fx/D"); ftreeFit_->Branch("y",&fy,"fy/D"); ftreeFit_->Branch("z",&fz,"fz/D"); ftreeFit_->Branch("sigmaZ",&fsigmaZ,"fsigmaZ/D"); ftreeFit_->Branch("dxdz",&fdxdz,"fdxdz/D"); ftreeFit_->Branch("dydz",&fdydz,"fdydz/D"); ftreeFit_->Branch("xErr",&fxErr,"fxErr/D"); ftreeFit_->Branch("yErr",&fyErr,"fyErr/D"); ftreeFit_->Branch("zErr",&fzErr,"fzErr/D"); ftreeFit_->Branch("sigmaZErr",&fsigmaZErr,"fsigmaZErr/D"); ftreeFit_->Branch("dxdzErr",&fdxdzErr,"fdxdzErr/D"); ftreeFit_->Branch("dydzErr",&fdydzErr,"fdydzErr/D"); ftreeFit_->Branch("widthX",&fwidthX,"fwidthX/D"); ftreeFit_->Branch("widthY",&fwidthY,"fwidthY/D"); ftreeFit_->Branch("widthXErr",&fwidthXErr,"fwidthXErr/D"); ftreeFit_->Branch("widthYErr",&fwidthYErr,"fwidthYErr/D"); } fBSvector.clear(); ftotal_tracks = 0; fnTotLayerMeas = fnPixelLayerMeas = fnStripLayerMeas = fnTIBLayerMeas = 0; fnTIDLayerMeas = fnTOBLayerMeas = fnTECLayerMeas = fnPXBLayerMeas = fnPXFLayerMeas = 0; frun = flumi = -1; frunFit = fbeginLumiOfFit = fendLumiOfFit = -1; fquality = falgo = true; fpvValid = true; fpvx = fpvy = fpvz = 0; fitted_ = false; resetRefTime(); //debug histograms h1ntrks = new TH1F("h1ntrks","number of tracks per event",50,0,50); h1vz_event = new TH1F("h1vz_event","track Vz", 50, -30, 30 ); h1cutFlow = new TH1F("h1cutFlow","Cut flow table of track selection", 9, 0, 9); h1cutFlow->GetXaxis()->SetBinLabel(1,"No cut"); h1cutFlow->GetXaxis()->SetBinLabel(2,"Traker hits"); h1cutFlow->GetXaxis()->SetBinLabel(3,"Pixel hits"); h1cutFlow->GetXaxis()->SetBinLabel(4,"norm. #chi^{2}"); h1cutFlow->GetXaxis()->SetBinLabel(5,"algo"); h1cutFlow->GetXaxis()->SetBinLabel(6,"quality"); h1cutFlow->GetXaxis()->SetBinLabel(7,"d_{0}"); h1cutFlow->GetXaxis()->SetBinLabel(8,"z_{0}"); h1cutFlow->GetXaxis()->SetBinLabel(9,"p_{T}"); resetCutFlow(); // Primary vertex fitter MyPVFitter = new PVFitter(iConfig); MyPVFitter->resetAll(); if (savePVVertices_){ fPVTree_ = new TTree("PrimaryVertices","PrimaryVertices"); MyPVFitter->setTree(fPVTree_); } // check filename ffilename_changed = false; if (writeDIPTxt_) fasciiDIP.open(outputDIPTxt_.c_str()); }
BeamFitter::~BeamFitter | ( | ) | [virtual] |
Definition at line 195 of file BeamFitter.cc.
References file_, fitted_, fPVTree_, ftree_, ftreeFit_, h1cutFlow, h1ntrks, h1vz_event, h1z, MyPVFitter, saveBeamFit_, saveNtuple_, and savePVVertices_.
{ if (saveNtuple_) { file_->cd(); if (fitted_ && h1z) h1z->Write(); h1ntrks->Write(); h1vz_event->Write(); if (h1cutFlow) h1cutFlow->Write(); ftree_->Write(); } if (saveBeamFit_){ file_->cd(); ftreeFit_->Write(); } if (savePVVertices_){ file_->cd(); fPVTree_->Write(); } if (saveNtuple_ || saveBeamFit_ || savePVVertices_){ file_->Close(); delete file_; } delete MyPVFitter; }
void BeamFitter::dumpBWTxtFile | ( | std::string & | fileName | ) |
Definition at line 625 of file BeamFitter.cc.
References reco::BeamSpot::BeamWidthX(), reco::BeamSpot::BeamWidthXError(), fbeamWidthFit, and cmsMakeMELists::outFile.
Referenced by runBeamWidthFitter().
{ std::ofstream outFile; outFile.open(fileName.c_str(),std::ios::app); outFile<<"-------------------------------------------------------------------------------------------------------------------------------------------------------------"<<std::endl; outFile<<"Beam width(in cm) from Log-likelihood fit (Here we assume a symmetric beam(SigmaX=SigmaY)!)"<<std::endl; outFile<<" "<<std::endl; outFile << "BeamWidth = " <<fbeamWidthFit.BeamWidthX() <<" +/- "<<fbeamWidthFit.BeamWidthXError() << std::endl; outFile.close(); }
void BeamFitter::dumpTxtFile | ( | std::string & | fileName, |
bool | append | ||
) |
Definition at line 635 of file BeamFitter.cc.
References appendRunTxt_, reco::BeamSpot::BeamWidthX(), reco::BeamSpot::BeamWidthY(), reco::BeamSpot::betaStar(), reco::BeamSpot::covariance(), reco::BeamSpot::dxdz(), reco::BeamSpot::dydz(), reco::BeamSpot::emittanceX(), reco::BeamSpot::emittanceY(), fbeamspot, fbeginLumiOfFit, fbeginTimeOfFit, fbspotPVMap, fendLumiOfFit, fendTimeOfFit, ffilename_changed, ForDIPPV_, freftime, frun, i, getHLTprescales::index, PVFitter::IsFitPerBunchCrossing(), j, MyPVFitter, cmsMakeMELists::outFile, outputTxt_, reco::BeamSpot::sigmaZ(), reco::BeamSpot::type(), reco::BeamSpot::x0(), reco::BeamSpot::y0(), and reco::BeamSpot::z0().
Referenced by runFitter(), and runPVandTrkFitter().
{ std::ofstream outFile; std::string tmpname = outputTxt_; char index[15]; if (appendRunTxt_ && !ffilename_changed ) { sprintf(index,"%s%i","_Run", frun ); tmpname.insert(outputTxt_.length()-4,index); fileName = tmpname; ffilename_changed = true; } if (!append) outFile.open(fileName.c_str()); else outFile.open(fileName.c_str(),std::ios::app); if ( MyPVFitter->IsFitPerBunchCrossing() ) { for (std::map<int,reco::BeamSpot>::const_iterator abspot = fbspotPVMap.begin(); abspot!= fbspotPVMap.end(); ++abspot) { reco::BeamSpot beamspottmp = abspot->second; int bx = abspot->first; outFile << "Runnumber " << frun << " bx " << bx << std::endl; outFile << "BeginTimeOfFit " << fbeginTimeOfFit << " " << freftime[0] << std::endl; outFile << "EndTimeOfFit " << fendTimeOfFit << " " << freftime[1] << std::endl; outFile << "LumiRange " << fbeginLumiOfFit << " - " << fendLumiOfFit << std::endl; outFile << "Type " << beamspottmp.type() << std::endl; outFile << "X0 " << beamspottmp.x0() << std::endl; outFile << "Y0 " << beamspottmp.y0() << std::endl; outFile << "Z0 " << beamspottmp.z0() << std::endl; outFile << "sigmaZ0 " << beamspottmp.sigmaZ() << std::endl; outFile << "dxdz " << beamspottmp.dxdz() << std::endl; outFile << "dydz " << beamspottmp.dydz() << std::endl; outFile << "BeamWidthX " << beamspottmp.BeamWidthX() << std::endl; outFile << "BeamWidthY " << beamspottmp.BeamWidthY() << std::endl; for (int i = 0; i<6; ++i) { outFile << "Cov("<<i<<",j) "; for (int j=0; j<7; ++j) { outFile << beamspottmp.covariance(i,j) << " "; } outFile << std::endl; } outFile << "Cov(6,j) 0 0 0 0 0 0 " << beamspottmp.covariance(6,6) << std::endl; //} outFile << "EmittanceX " << beamspottmp.emittanceX() << std::endl; outFile << "EmittanceY " << beamspottmp.emittanceY() << std::endl; outFile << "BetaStar " << beamspottmp.betaStar() << std::endl; } }//if bx results needed else { outFile << "Runnumber " << frun << std::endl; outFile << "BeginTimeOfFit " << fbeginTimeOfFit << " " << freftime[0] << std::endl; outFile << "EndTimeOfFit " << fendTimeOfFit << " " << freftime[1] << std::endl; outFile << "LumiRange " << fbeginLumiOfFit << " - " << fendLumiOfFit << std::endl; outFile << "Type " << fbeamspot.type() << std::endl; outFile << "X0 " << fbeamspot.x0() << std::endl; outFile << "Y0 " << fbeamspot.y0() << std::endl; outFile << "Z0 " << fbeamspot.z0() << std::endl; outFile << "sigmaZ0 " << fbeamspot.sigmaZ() << std::endl; outFile << "dxdz " << fbeamspot.dxdz() << std::endl; outFile << "dydz " << fbeamspot.dydz() << std::endl; // if (inputBeamWidth_ > 0 ) { // outFile << "BeamWidthX " << inputBeamWidth_ << std::endl; // outFile << "BeamWidthY " << inputBeamWidth_ << std::endl; // } else { outFile << "BeamWidthX " << fbeamspot.BeamWidthX() << std::endl; outFile << "BeamWidthY " << fbeamspot.BeamWidthY() << std::endl; // } for (int i = 0; i<6; ++i) { outFile << "Cov("<<i<<",j) "; for (int j=0; j<7; ++j) { outFile << fbeamspot.covariance(i,j) << " "; } outFile << std::endl; } // beam width error //if (inputBeamWidth_ > 0 ) { // outFile << "Cov(6,j) 0 0 0 0 0 0 " << "1e-4" << std::endl; //} else { outFile << "Cov(6,j) 0 0 0 0 0 0 " << fbeamspot.covariance(6,6) << std::endl; //} outFile << "EmittanceX " << fbeamspot.emittanceX() << std::endl; outFile << "EmittanceY " << fbeamspot.emittanceY() << std::endl; outFile << "BetaStar " << fbeamspot.betaStar() << std::endl; //write here Pv info for DIP only: This added only if append is false, which happen for DIP only :) if(!append){ outFile << "events "<< (int)ForDIPPV_[0] << std::endl; outFile << "meanPV "<< ForDIPPV_[1] << std::endl; outFile << "meanErrPV "<< ForDIPPV_[2] << std::endl; outFile << "rmsPV "<< ForDIPPV_[3] << std::endl; outFile << "rmsErrPV "<< ForDIPPV_[4] << std::endl; outFile << "maxPV "<< (int)ForDIPPV_[5] << std::endl; outFile << "nPV "<< (int)ForDIPPV_[6] << std::endl; }//writeDIPPVInfo_ }//else end here outFile.close(); }
const char * BeamFitter::formatBTime | ( | const std::time_t & | t | ) | [private] |
_________________________________________________________________ class: BeamFitter.cc package: RecoVertex/BeamSpotProducer
author: Francisco Yumiceva, Fermilab (yumiceva@fnal.gov) Geng-Yuan Jeng, UC Riverside (Geng-Yuan.Jeng@cern.ch)
version
________________________________________________________________
Definition at line 34 of file BeamFitter.cc.
References plotBeamSpotDB::ptm.
Referenced by updateBTime().
reco::BeamSpot BeamFitter::getBeamSpot | ( | ) | [inline] |
Definition at line 89 of file BeamFitter.h.
References fbeamspot.
Referenced by BeamSpotAnalyzer::endJob(), BeamSpotAnalyzer::endLuminosityBlock(), AlcaBeamSpotProducer::endLuminosityBlock(), AlcaBeamMonitor::endLuminosityBlock(), and BeamMonitor::FitAndFill().
{ return fbeamspot; }
std::map<int, reco::BeamSpot> BeamFitter::getBeamSpotMap | ( | ) | [inline] |
Definition at line 90 of file BeamFitter.h.
References fbspotPVMap.
Referenced by BeamMonitorBx::FitAndFill().
{ return fbspotPVMap; }
reco::BeamSpot BeamFitter::getBeamWidth | ( | ) | [inline] |
Definition at line 46 of file BeamFitter.h.
References fbeamWidthFit.
Referenced by BeamSpotAnalyzer::endJob().
{ return fbeamWidthFit; }
std::vector<BSTrkParameters> BeamFitter::getBSvector | ( | ) | [inline] |
Definition at line 91 of file BeamFitter.h.
References fBSvector.
Referenced by BeamSpotAnalyzer::endLuminosityBlock(), AlcaBeamSpotProducer::endLuminosityBlock(), and BeamMonitor::FitAndFill().
{ return fBSvector; }
TH1F* BeamFitter::getCutFlow | ( | ) | [inline] |
Definition at line 92 of file BeamFitter.h.
References h1cutFlow.
Referenced by BeamMonitor::analyze(), and BeamMonitor::FitAndFill().
{ return h1cutFlow; }
std::pair<int,int> BeamFitter::getFitLSRange | ( | ) | [inline] |
Definition at line 112 of file BeamFitter.h.
References fbeginLumiOfFit, and fendLumiOfFit.
Referenced by BeamSpotAnalyzer::endJob(), BeamSpotAnalyzer::endLuminosityBlock(), AlcaBeamSpotProducer::endLuminosityBlock(), BeamMonitor::FitAndFill(), and BeamMonitorBx::FitAndFill().
{ return std::make_pair(fbeginLumiOfFit, fendLumiOfFit); }
int BeamFitter::getNPVs | ( | ) | [inline] |
Definition at line 124 of file BeamFitter.h.
References PVFitter::getNPVs(), and MyPVFitter.
Referenced by BeamSpotAnalyzer::endLuminosityBlock().
{ return MyPVFitter->getNPVs(); }
const std::map<int, int>& BeamFitter::getNPVsperBX | ( | ) | [inline] |
Definition at line 127 of file BeamFitter.h.
References PVFitter::getNPVsperBX(), and MyPVFitter.
Referenced by BeamMonitorBx::FitAndFill().
{ return MyPVFitter->getNPVsperBX(); }
int BeamFitter::getNTracks | ( | ) | [inline] |
Definition at line 121 of file BeamFitter.h.
References fBSvector.
Referenced by BeamSpotAnalyzer::endLuminosityBlock().
{ return fBSvector.size(); }
std::size_t BeamFitter::getPVvectorSize | ( | ) | [inline] |
Definition at line 67 of file BeamFitter.h.
References PVFitter::getpvStore(), MyPVFitter, and findQualityFiles::size.
Referenced by BeamMonitor::FitAndFill().
{return (MyPVFitter->getpvStore()).size(); }
std::pair<time_t,time_t> BeamFitter::getRefTime | ( | ) | [inline] |
Definition at line 60 of file BeamFitter.h.
References freftime.
Referenced by BeamMonitor::FitAndFill().
int BeamFitter::getRunNumber | ( | ) | [inline] |
Definition at line 108 of file BeamFitter.h.
References frun.
Referenced by BeamMonitor::FitAndFill().
{ return frun; }
void BeamFitter::readEvent | ( | const edm::Event & | iEvent | ) |
Definition at line 223 of file BeamFitter.cc.
References abs, algorithm_, countPass, debug_, falgo, fbeginLumiOfFit, fBSvector, fcharge, fcov, fd0, fd0bs, fendLumiOfFit, feta, spr::find(), flumi, fnormchi2, fnPixelLayerMeas, fnPXBLayerMeas, fnPXFLayerMeas, fnStripLayerMeas, fnTECLayerMeas, fnTIBLayerMeas, fnTIDLayerMeas, fnTOBLayerMeas, fnTotLayerMeas, fphi0, fpt, fpvValid, fpvx, fpvy, fpvz, fquality, freftime, frun, frunFit, fsigmad0, fsigmaz0, ftheta, ftotal_tracks, ftree_, fvx, fvy, fz0, edm::Event::getByLabel(), h1cutFlow, h1ntrks, h1vz_event, i, edm::EventBase::id(), isMuon_, j, edm::EventBase::luminosityBlock(), MyPVFitter, reco::HitPattern::pixelBarrelLayersWithMeasurement(), reco::HitPattern::pixelEndcapLayersWithMeasurement(), reco::HitPattern::pixelLayersWithMeasurement(), reco::BeamSpot::position(), edm::Handle< T >::product(), quality_, PVFitter::readEvent(), edm::EventID::run(), saveNtuple_, BSTrkParameters::setVx(), BSTrkParameters::setVy(), edm::View< T >::size(), reco::HitPattern::stripLayersWithMeasurement(), reco::HitPattern::stripTECLayersWithMeasurement(), reco::HitPattern::stripTIBLayersWithMeasurement(), reco::HitPattern::stripTIDLayersWithMeasurement(), reco::HitPattern::stripTOBLayersWithMeasurement(), edm::EventBase::time(), reco::HitPattern::trackerLayersWithMeasurement(), testEve_cfg::tracks, tracksLabel_, trk_MaxEta_, trk_MaxIP_, trk_MaxNormChi2_, trk_MaxZ_, trk_MinNPixLayers_, trk_MinNTotLayers_, trk_MinpT_, updateBTime(), edm::Timestamp::value(), and vertexLabel_.
Referenced by BeamMonitorBx::analyze(), BeamSpotAnalyzer::analyze(), AlcaBeamMonitor::analyze(), BeamMonitor::analyze(), and AlcaBeamSpotProducer::produce().
{ frun = iEvent.id().run(); const edm::TimeValue_t ftimestamp = iEvent.time().value(); const std::time_t ftmptime = ftimestamp >> 32; if (fbeginLumiOfFit == -1) freftime[0] = freftime[1] = ftmptime; if (freftime[0] == 0 || ftmptime < freftime[0]) freftime[0] = ftmptime; if (freftime[1] == 0 || ftmptime > freftime[1]) freftime[1] = ftmptime; // Update the human-readable string versions of the time updateBTime(); flumi = iEvent.luminosityBlock(); frunFit = frun; if (fbeginLumiOfFit == -1 || fbeginLumiOfFit > flumi) fbeginLumiOfFit = flumi; if (fendLumiOfFit == -1 || fendLumiOfFit < flumi) fendLumiOfFit = flumi; edm::Handle<reco::TrackCollection> TrackCollection; iEvent.getByLabel(tracksLabel_, TrackCollection); //------ Primary Vertices edm::Handle< edm::View<reco::Vertex> > PVCollection; bool hasPVs = false; edm::View<reco::Vertex> pv; if ( iEvent.getByLabel(vertexLabel_, PVCollection ) ) { pv = *PVCollection; hasPVs = true; } //------ //------ Beam Spot in current event edm::Handle<reco::BeamSpot> recoBeamSpotHandle; const reco::BeamSpot *refBS = 0; if ( iEvent.getByLabel("offlineBeamSpot",recoBeamSpotHandle) ) refBS = recoBeamSpotHandle.product(); //------- const reco::TrackCollection *tracks = TrackCollection.product(); double eventZ = 0; double averageZ = 0; for ( reco::TrackCollection::const_iterator track = tracks->begin(); track != tracks->end(); ++track ) { if ( ! isMuon_) { const reco::HitPattern& trkHP = track->hitPattern(); fnPixelLayerMeas = trkHP.pixelLayersWithMeasurement(); fnStripLayerMeas = trkHP.stripLayersWithMeasurement(); fnTotLayerMeas = trkHP.trackerLayersWithMeasurement(); fnPXBLayerMeas = trkHP.pixelBarrelLayersWithMeasurement(); fnPXFLayerMeas = trkHP.pixelEndcapLayersWithMeasurement(); fnTIBLayerMeas = trkHP.stripTIBLayersWithMeasurement(); fnTIDLayerMeas = trkHP.stripTIDLayersWithMeasurement(); fnTOBLayerMeas = trkHP.stripTOBLayersWithMeasurement(); fnTECLayerMeas = trkHP.stripTECLayersWithMeasurement(); } else { fnTotLayerMeas = track->numberOfValidHits(); } fpt = track->pt(); feta = track->eta(); fphi0 = track->phi(); fcharge = track->charge(); fnormchi2 = track->normalizedChi2(); fd0 = track->d0(); if (refBS) fd0bs = -1*track->dxy(refBS->position()); else fd0bs = 0.; fsigmad0 = track->d0Error(); fz0 = track->dz(); fsigmaz0 = track->dzError(); ftheta = track->theta(); fvx = track->vx(); fvy = track->vy(); for (int i=0; i<5; ++i) { for (int j=0; j<5; ++j) { fcov[i][j] = track->covariance(i,j); } } fquality = true; falgo = true; if (! isMuon_ ) { if (quality_.size()!=0) { fquality = false; for (unsigned int i = 0; i<quality_.size();++i) { if(debug_) edm::LogInfo("BeamFitter") << "quality_[" << i << "] = " << track->qualityName(quality_[i]) << std::endl; if (track->quality(quality_[i])) { fquality = true; break; } } } // Track algorithm if (algorithm_.size()!=0) { if (std::find(algorithm_.begin(),algorithm_.end(),track->algo())==algorithm_.end()) falgo = false; } } // check if we have a valid PV fpvValid = false; if ( hasPVs ) { for ( size_t ipv=0; ipv != pv.size(); ++ipv ) { if (! pv[ipv].isFake() ) fpvValid = true; if ( ipv==0 && !pv[0].isFake() ) { fpvx = pv[0].x(); fpvy = pv[0].y(); fpvz = pv[0].z(); } // fix this later } } if (saveNtuple_) ftree_->Fill(); ftotal_tracks++; countPass[0] = ftotal_tracks; // Track selection if (fnTotLayerMeas >= trk_MinNTotLayers_) { countPass[1] += 1; if (fnPixelLayerMeas >= trk_MinNPixLayers_) { countPass[2] += 1; if (fnormchi2 < trk_MaxNormChi2_) { countPass[3] += 1; if (falgo) {countPass[4] += 1; if (fquality) { countPass[5] += 1; if (std::abs( fd0 ) < trk_MaxIP_) { countPass[6] += 1; if (std::abs( fz0 ) < trk_MaxZ_){ countPass[7] += 1; if (fpt > trk_MinpT_) { countPass[8] += 1; if (std::abs( feta ) < trk_MaxEta_ //&& fpvValid ) { if (debug_) { edm::LogInfo("BeamFitter") << "Selected track quality = " << track->qualityMask() << "; track algorithm = " << track->algoName() << "= TrackAlgorithm: " << track->algo() << std::endl; } BSTrkParameters BSTrk(fz0,fsigmaz0,fd0,fsigmad0,fphi0,fpt,0.,0.); BSTrk.setVx(fvx); BSTrk.setVy(fvy); fBSvector.push_back(BSTrk); averageZ += fz0; } } } } } } } } }// track selection }// tracks averageZ = averageZ/(float)(fBSvector.size()); for( std::vector<BSTrkParameters>::const_iterator iparam = fBSvector.begin(); iparam != fBSvector.end(); ++iparam) { eventZ += fabs( iparam->z0() - averageZ ); } h1ntrks->Fill( fBSvector.size() ); h1vz_event->Fill( eventZ/(float)(fBSvector.size() ) ) ; for (unsigned int i=0; i < sizeof(countPass)/sizeof(countPass[0]); i++) h1cutFlow->SetBinContent(i+1,countPass[i]); MyPVFitter->readEvent(iEvent); }
void BeamFitter::resetCutFlow | ( | ) | [inline] |
Definition at line 100 of file BeamFitter.h.
References countPass, ftotal_tracks, h1cutFlow, and i.
Referenced by AlcaBeamSpotProducer::AlcaBeamSpotProducer(), BeamFitter(), BeamSpotAnalyzer::BeamSpotAnalyzer(), BeamSpotAnalyzer::endLuminosityBlock(), AlcaBeamSpotProducer::endLuminosityBlock(), BeamMonitorBx::FitAndFill(), and BeamMonitor::RestartFitting().
void BeamFitter::resetLSRange | ( | ) | [inline] |
Definition at line 50 of file BeamFitter.h.
References fbeginLumiOfFit, and fendLumiOfFit.
Referenced by AlcaBeamMonitor::AlcaBeamMonitor(), AlcaBeamSpotProducer::AlcaBeamSpotProducer(), BeamMonitor::BeamMonitor(), BeamMonitorBx::BeamMonitorBx(), BeamSpotAnalyzer::BeamSpotAnalyzer(), BeamSpotAnalyzer::endLuminosityBlock(), AlcaBeamSpotProducer::endLuminosityBlock(), AlcaBeamMonitor::endLuminosityBlock(), BeamMonitorBx::FitAndFill(), and BeamMonitor::RestartFitting().
{ fbeginLumiOfFit=fendLumiOfFit=-1; }
void BeamFitter::resetPVFitter | ( | ) | [inline] |
Definition at line 64 of file BeamFitter.h.
References MyPVFitter, and PVFitter::resetAll().
Referenced by AlcaBeamMonitor::AlcaBeamMonitor(), AlcaBeamSpotProducer::AlcaBeamSpotProducer(), BeamMonitor::BeamMonitor(), BeamMonitorBx::BeamMonitorBx(), BeamSpotAnalyzer::BeamSpotAnalyzer(), BeamSpotAnalyzer::endLuminosityBlock(), AlcaBeamSpotProducer::endLuminosityBlock(), AlcaBeamMonitor::endLuminosityBlock(), BeamMonitorBx::FitAndFill(), and BeamMonitor::RestartFitting().
{ MyPVFitter->resetAll(); }
void BeamFitter::resetRefTime | ( | ) | [inline] |
Definition at line 51 of file BeamFitter.h.
References freftime.
Referenced by AlcaBeamMonitor::AlcaBeamMonitor(), AlcaBeamSpotProducer::AlcaBeamSpotProducer(), BeamFitter(), BeamMonitor::BeamMonitor(), BeamMonitorBx::BeamMonitorBx(), BeamSpotAnalyzer::BeamSpotAnalyzer(), BeamSpotAnalyzer::endLuminosityBlock(), AlcaBeamSpotProducer::endLuminosityBlock(), AlcaBeamMonitor::endLuminosityBlock(), BeamMonitorBx::FitAndFill(), and BeamMonitor::RestartFitting().
void BeamFitter::resetTotTrk | ( | ) | [inline] |
void BeamFitter::resetTrkVector | ( | ) | [inline] |
Definition at line 48 of file BeamFitter.h.
References fBSvector.
Referenced by AlcaBeamMonitor::AlcaBeamMonitor(), AlcaBeamSpotProducer::AlcaBeamSpotProducer(), BeamMonitor::BeamMonitor(), BeamMonitorBx::BeamMonitorBx(), BeamSpotAnalyzer::BeamSpotAnalyzer(), BeamSpotAnalyzer::endLuminosityBlock(), AlcaBeamSpotProducer::endLuminosityBlock(), AlcaBeamMonitor::endLuminosityBlock(), BeamMonitorBx::FitAndFill(), and BeamMonitor::RestartFitting().
{ fBSvector.clear(); }
void BeamFitter::resizeBSvector | ( | unsigned int | nsize | ) | [inline] |
Definition at line 69 of file BeamFitter.h.
References fBSvector.
Referenced by BeamMonitor::FitAndFill().
void BeamFitter::resizePVvector | ( | unsigned int | npvsize | ) | [inline] |
Definition at line 74 of file BeamFitter.h.
References MyPVFitter, and PVFitter::resizepvStore().
Referenced by BeamMonitor::FitAndFill().
{ MyPVFitter->resizepvStore(npvsize); }
void BeamFitter::runAllFitter | ( | ) |
Definition at line 779 of file BeamFitter.cc.
References gather_cfg::cout, debug_, fbeamspot, fBSvector, BSFitter::Fit(), BSFitter::Fit_d0phi(), BSFitter::Fit_ited0phi(), BSFitter::Setd0Cut_d0phi(), BSFitter::SetFitType(), and BSFitter::SetFitVariable().
Referenced by BeamSpotAnalyzer::endJob().
{ if(fBSvector.size()!=0){ BSFitter *myalgo = new BSFitter( fBSvector ); fbeamspot = myalgo->Fit_d0phi(); // iterative if(debug_) std::cout << " d0-phi Iterative:" << std::endl; BSFitter *myitealgo = new BSFitter( fBSvector ); myitealgo->Setd0Cut_d0phi(4.0); reco::BeamSpot beam_ite = myitealgo->Fit_ited0phi(); if (debug_){ std::cout << beam_ite << std::endl; std::cout << "\n Now run tests of the different fits\n"; } // from here are just tests std::string fit_type = "chi2"; myalgo->SetFitVariable(std::string("z")); myalgo->SetFitType(std::string("chi2")); reco::BeamSpot beam_fit_z_chi2 = myalgo->Fit(); if (debug_){ std::cout << " z Chi2 Fit ONLY:" << std::endl; std::cout << beam_fit_z_chi2 << std::endl; } fit_type = "combined"; myalgo->SetFitVariable("z"); myalgo->SetFitType("combined"); reco::BeamSpot beam_fit_z_lh = myalgo->Fit(); if (debug_){ std::cout << " z Log-Likelihood Fit ONLY:" << std::endl; std::cout << beam_fit_z_lh << std::endl; } myalgo->SetFitVariable("d"); myalgo->SetFitType("d0phi"); reco::BeamSpot beam_fit_dphi = myalgo->Fit(); if (debug_){ std::cout << " d0-phi0 Fit ONLY:" << std::endl; std::cout << beam_fit_dphi << std::endl; } /* myalgo->SetFitVariable(std::string("d*z")); myalgo->SetFitType(std::string("likelihood")); reco::BeamSpot beam_fit_dz_lh = myalgo->Fit(); if (debug_){ std::cout << " Log-Likelihood Fit:" << std::endl; std::cout << beam_fit_dz_lh << std::endl; } myalgo->SetFitVariable(std::string("d*z")); myalgo->SetFitType(std::string("resolution")); reco::BeamSpot beam_fit_dresz_lh = myalgo->Fit(); if(debug_){ std::cout << " IP Resolution Fit" << std::endl; std::cout << beam_fit_dresz_lh << std::endl; std::cout << "c0 = " << myalgo->GetResPar0() << " +- " << myalgo->GetResPar0Err() << std::endl; std::cout << "c1 = " << myalgo->GetResPar1() << " +- " << myalgo->GetResPar1Err() << std::endl; } */ } else if (debug_) std::cout << "No good track selected! No beam fit!" << std::endl; }
bool BeamFitter::runBeamWidthFitter | ( | ) |
Definition at line 590 of file BeamFitter.cc.
References convergence_, dumpBWTxtFile(), reco::BeamSpot::Fake, fbeamspot, fbeamWidthFit, fBSvector, BSFitter::Fit(), ftotal_tracks, inputBeamWidth_, min_Ntrks_, outputTxt_, BSFitter::SetConvergence(), BSFitter::SetFitType(), BSFitter::SetFitVariable(), BSFitter::SetInputBeamWidth(), BSFitter::SetMaximumZ(), BSFitter::SetMinimumNTrks(), reco::BeamSpot::setType(), trk_MaxZ_, reco::BeamSpot::type(), and writeTxt_.
Referenced by BeamSpotAnalyzer::endJob().
{ bool widthfit_ok = false; // default fit to extract beam spot info if(fBSvector.size() > 1 ){ edm::LogInfo("BeamFitter") << "Calculating beam spot positions('d0-phi0' method) and width using llh Fit"<< std::endl << "We will use " << fBSvector.size() << " good tracks out of " << ftotal_tracks << std::endl; BSFitter *myalgo = new BSFitter( fBSvector ); myalgo->SetMaximumZ( trk_MaxZ_ ); myalgo->SetConvergence( convergence_ ); myalgo->SetMinimumNTrks(min_Ntrks_); if (inputBeamWidth_ > 0 ) myalgo->SetInputBeamWidth( inputBeamWidth_ ); myalgo->SetFitVariable(std::string("d*z")); myalgo->SetFitType(std::string("likelihood")); fbeamWidthFit = myalgo->Fit(); //Add to .txt file if(writeTxt_ ) dumpBWTxtFile(outputTxt_); delete myalgo; // not fake if ( fbeamspot.type() != 0 ) widthfit_ok = true; } else{ fbeamspot.setType(reco::BeamSpot::Fake); edm::LogWarning("BeamFitter") << "Not enough good tracks selected! No beam fit!" << std::endl; } return widthfit_ok; }
bool BeamFitter::runFitter | ( | ) |
Definition at line 579 of file BeamFitter.cc.
References dumpTxtFile(), outputDIPTxt_, outputTxt_, runFitterNoTxt(), writeDIPBadFit_, writeDIPTxt_, and writeTxt_.
{ bool fit_ok = runFitterNoTxt(); if(writeTxt_ ) dumpTxtFile(outputTxt_,true); // all reaults if(writeDIPTxt_ && (fit_ok || writeDIPBadFit_)) { dumpTxtFile(outputDIPTxt_,false); // for DQM/DIP } return fit_ok; }
bool BeamFitter::runFitterNoTxt | ( | ) |
Definition at line 511 of file BeamFitter.cc.
References reco::BeamSpot::BeamWidthX(), reco::BeamSpot::BeamWidthXError(), reco::BeamSpot::BeamWidthY(), reco::BeamSpot::BeamWidthYError(), convergence_, reco::BeamSpot::dxdz(), reco::BeamSpot::dxdzError(), reco::BeamSpot::dydz(), reco::BeamSpot::dydzError(), reco::BeamSpot::Fake, fbeamspot, fbeginLumiOfFit, fbeginTimeOfFit, fBSvector, fdxdz, fdxdzErr, fdydz, fdydzErr, fendLumiOfFit, fendTimeOfFit, BSFitter::Fit(), fitted_, freftime, fsigmaZ, fsigmaZErr, ftotal_tracks, ftreeFit_, fwidthX, fwidthXErr, fwidthY, fwidthYErr, fx, fxErr, fy, fyErr, fz, fzErr, BSFitter::GetVzHisto(), h1z, inputBeamWidth_, min_Ntrks_, saveBeamFit_, BSFitter::SetConvergence(), BSFitter::SetInputBeamWidth(), BSFitter::SetMaximumZ(), BSFitter::SetMinimumNTrks(), reco::BeamSpot::setType(), reco::BeamSpot::sigmaZ(), reco::BeamSpot::sigmaZ0Error(), trk_MaxZ_, reco::BeamSpot::type(), reco::BeamSpot::x0(), reco::BeamSpot::x0Error(), reco::BeamSpot::y0(), reco::BeamSpot::y0Error(), reco::BeamSpot::z0(), and reco::BeamSpot::z0Error().
Referenced by runFitter(), and runPVandTrkFitter().
{ edm::LogInfo("BeamFitter") << " [BeamFitterDebugTime] freftime[0] = " << freftime[0] << "; address = " << &freftime[0] << " = " << fbeginTimeOfFit << std::endl; edm::LogInfo("BeamFitter") << " [BeamFitterDebugTime] freftime[1] = " << freftime[1] << "; address = " << &freftime[1] << " = " << fendTimeOfFit << std::endl; if (fbeginLumiOfFit == -1 || fendLumiOfFit == -1) { edm::LogWarning("BeamFitter") << "No event read! No Fitting!" << std::endl; return false; } bool fit_ok = false; // default fit to extract beam spot info if(fBSvector.size() > 1 ){ edm::LogInfo("BeamFitter") << "Calculating beam spot..." << std::endl << "We will use " << fBSvector.size() << " good tracks out of " << ftotal_tracks << std::endl; BSFitter *myalgo = new BSFitter( fBSvector ); myalgo->SetMaximumZ( trk_MaxZ_ ); myalgo->SetConvergence( convergence_ ); myalgo->SetMinimumNTrks( min_Ntrks_ ); if (inputBeamWidth_ > 0 ) myalgo->SetInputBeamWidth( inputBeamWidth_ ); fbeamspot = myalgo->Fit(); // retrieve histogram for Vz h1z = (TH1F*) myalgo->GetVzHisto(); delete myalgo; if ( fbeamspot.type() != 0 ) {// save all results except for Fake (all 0.) fit_ok = true; if (saveBeamFit_){ fx = fbeamspot.x0(); fy = fbeamspot.y0(); fz = fbeamspot.z0(); fsigmaZ = fbeamspot.sigmaZ(); fdxdz = fbeamspot.dxdz(); fdydz = fbeamspot.dydz(); fwidthX = fbeamspot.BeamWidthX(); fwidthY = fbeamspot.BeamWidthY(); fxErr = fbeamspot.x0Error(); fyErr = fbeamspot.y0Error(); fzErr = fbeamspot.z0Error(); fsigmaZErr = fbeamspot.sigmaZ0Error(); fdxdzErr = fbeamspot.dxdzError(); fdydzErr = fbeamspot.dydzError(); fwidthXErr = fbeamspot.BeamWidthXError(); fwidthYErr = fbeamspot.BeamWidthYError(); ftreeFit_->Fill(); } } } else{ // tracks <= 1 reco::BeamSpot tmpbs; fbeamspot = tmpbs; fbeamspot.setType(reco::BeamSpot::Fake); edm::LogInfo("BeamFitter") << "Not enough good tracks selected! No beam fit!" << std::endl; } fitted_ = true; return fit_ok; }
bool BeamFitter::runPVandTrkFitter | ( | ) |
Definition at line 409 of file BeamFitter.cc.
References reco::BeamSpot::BeamWidthX(), reco::BeamSpot::BeamWidthY(), reco::BeamSpot::covariance(), dumpTxtFile(), reco::BeamSpot::dxdz(), reco::BeamSpot::dydz(), reco::BeamSpot::Fake, fbeamspot, fbeginTimeOfFit, fbspotPVMap, fendTimeOfFit, ForDIPPV_, freftime, PVFitter::getBeamSpot(), PVFitter::getBeamSpotMap(), PVFitter::getWidthXerr(), i, inputBeamWidth_, PVFitter::IsFitPerBunchCrossing(), j, gen::k, makeMuonMisalignmentScenario::matrix, MyPVFitter, outputDIPTxt_, outputTxt_, funct::pow(), PVFitter::runBXFitter(), PVFitter::runFitter(), runFitterNoTxt(), reco::BeamSpot::setBeamWidthY(), reco::BeamSpot::setType(), reco::BeamSpot::sigmaZ(), mathSSE::sqrt(), reco::BeamSpot::type(), reco::BeamSpot::Unknown, writeDIPBadFit_, writeDIPTxt_, writeTxt_, reco::BeamSpot::x0(), reco::BeamSpot::y0(), and reco::BeamSpot::z0().
Referenced by BeamSpotAnalyzer::endJob(), BeamSpotAnalyzer::endLuminosityBlock(), AlcaBeamSpotProducer::endLuminosityBlock(), AlcaBeamMonitor::endLuminosityBlock(), BeamMonitor::FitAndFill(), and BeamMonitorBx::FitAndFill().
{ // run both PV and track fitters bool fit_ok = false; bool pv_fit_ok = false; reco::BeamSpot bspotPV; reco::BeamSpot bspotTrk; // First run PV fitter if ( MyPVFitter->IsFitPerBunchCrossing() ){ edm::LogInfo("BeamFitter") << " [BeamFitterBxDebugTime] freftime[0] = " << freftime[0] << "; address = " << &freftime[0] << " = " << fbeginTimeOfFit << std::endl; edm::LogInfo("BeamFitter") << " [BeamFitterBxDebugTime] freftime[1] = " << freftime[1] << "; address = " << &freftime[1] << " = " << fendTimeOfFit << std::endl; if ( MyPVFitter->runBXFitter() ) { fbspotPVMap = MyPVFitter->getBeamSpotMap(); pv_fit_ok = true; } if(writeTxt_ ) dumpTxtFile(outputTxt_,true); // all reaults if(writeDIPTxt_ && (pv_fit_ok || writeDIPBadFit_)) { dumpTxtFile(outputDIPTxt_,false); // for DQM/DIP } return pv_fit_ok; } if ( MyPVFitter->runFitter() ) { bspotPV = MyPVFitter->getBeamSpot(); // take beam width from PV fit and pass it to track fitter // assume circular transverse beam width inputBeamWidth_ = sqrt( pow(bspotPV.BeamWidthX(),2) + pow(bspotPV.BeamWidthY(),2) )/sqrt(2); pv_fit_ok = true; } else { // problems with PV fit bspotPV.setType(reco::BeamSpot::Unknown); bspotTrk.setType(reco::BeamSpot::Unknown); //propagate error to trk beam spot } if ( runFitterNoTxt() ) { bspotTrk = fbeamspot; fit_ok = true; } else { // beamfit failed, flagged as empty beam spot bspotTrk.setType(reco::BeamSpot::Fake); fit_ok = false; } // combined results into one single beam spot // to pass errors I have to create another beam spot object reco::BeamSpot::CovarianceMatrix matrix; for (int j = 0 ; j < 7 ; ++j) { for(int k = j ; k < 7 ; ++k) { matrix(j,k) = bspotTrk.covariance(j,k); } } // change beam width error to one from PV if (pv_fit_ok && fit_ok ) { matrix(6,6) = MyPVFitter->getWidthXerr() * MyPVFitter->getWidthXerr(); // get Z and sigmaZ from PV fit matrix(2,2) = bspotPV.covariance(2,2); matrix(3,3) = bspotPV.covariance(3,3); reco::BeamSpot tmpbs(reco::BeamSpot::Point(bspotTrk.x0(), bspotTrk.y0(), bspotPV.z0() ), bspotPV.sigmaZ() , bspotTrk.dxdz(), bspotTrk.dydz(), bspotPV.BeamWidthX(), matrix, bspotPV.type() ); tmpbs.setBeamWidthY( bspotPV.BeamWidthY() ); // overwrite beam spot result fbeamspot = tmpbs; } if (pv_fit_ok && fit_ok) { fbeamspot.setType(bspotPV.type()); } else if(!pv_fit_ok && fit_ok){ fbeamspot.setType(reco::BeamSpot::Unknown); } else if(pv_fit_ok && !fit_ok){ fbeamspot.setType(reco::BeamSpot::Unknown); } else if(!pv_fit_ok && !fit_ok){ fbeamspot.setType(reco::BeamSpot::Fake); } if(writeTxt_ ) dumpTxtFile(outputTxt_,true); // all reaults if(writeDIPTxt_ && ((fit_ok && pv_fit_ok) || writeDIPBadFit_)) { dumpTxtFile(outputDIPTxt_,false); // for DQM/DIP for(size_t i= 0; i < 7; i++)ForDIPPV_.push_back(0.0); } return fit_ok && pv_fit_ok; }
void BeamFitter::setFitLSRange | ( | int | ls0, |
int | ls1 | ||
) | [inline] |
Definition at line 115 of file BeamFitter.h.
References fbeginLumiOfFit, and fendLumiOfFit.
Referenced by BeamSpotAnalyzer::endLuminosityBlock(), AlcaBeamSpotProducer::endLuminosityBlock(), and BeamMonitor::FitAndFill().
{ fbeginLumiOfFit = ls0; fendLumiOfFit = ls1; }
void BeamFitter::SetPVInfo | ( | std::vector< float > | v1_ | ) | [inline] |
Definition at line 79 of file BeamFitter.h.
References ForDIPPV_.
Referenced by BeamMonitor::FitAndFill().
void BeamFitter::setRefTime | ( | time_t | t0, |
time_t | t1 | ||
) | [inline] |
Definition at line 52 of file BeamFitter.h.
References freftime, and updateBTime().
Referenced by BeamSpotAnalyzer::endLuminosityBlock(), AlcaBeamSpotProducer::endLuminosityBlock(), and BeamMonitor::FitAndFill().
{ freftime[0] = t0; freftime[1] = t1; // Make sure the string representation of the time // is up-to-date updateBTime(); }
void BeamFitter::setRun | ( | int | run | ) | [inline] |
Definition at line 119 of file BeamFitter.h.
References frun, and DTTTrigCorrFirst::run.
Referenced by BeamSpotAnalyzer::endLuminosityBlock(), AlcaBeamSpotProducer::endLuminosityBlock(), and BeamMonitor::FitAndFill().
void BeamFitter::subtractFromCutFlow | ( | const TH1F * | toSubtract | ) | [inline] |
void BeamFitter::updateBTime | ( | ) | [private] |
Definition at line 44 of file BeamFitter.cc.
References fbeginTimeOfFit, fendTimeOfFit, formatBTime(), and freftime.
Referenced by readEvent(), and setRefTime().
{ const char* fbeginTime = formatBTime(freftime[0]); sprintf(fbeginTimeOfFit,"%s",fbeginTime); const char* fendTime = formatBTime(freftime[1]); sprintf(fendTimeOfFit,"%s",fendTime); }
void BeamFitter::write2DB | ( | ) |
Definition at line 739 of file BeamFitter.cc.
References reco::BeamSpot::BeamWidthX(), reco::BeamSpot::BeamWidthY(), gather_cfg::cout, reco::BeamSpot::covariance(), reco::BeamSpot::dxdz(), reco::BeamSpot::dydz(), fbeamspot, i, edm::Service< T >::isAvailable(), j, reco::BeamSpot::position(), BeamSpotObjects::SetBeamWidthX(), BeamSpotObjects::SetBeamWidthY(), BeamSpotObjects::SetCovariance(), BeamSpotObjects::Setdxdz(), BeamSpotObjects::Setdydz(), BeamSpotObjects::SetPosition(), BeamSpotObjects::SetSigmaZ(), and reco::BeamSpot::sigmaZ().
Referenced by BeamSpotAnalyzer::endJob().
{ BeamSpotObjects *pBSObjects = new BeamSpotObjects(); pBSObjects->SetPosition(fbeamspot.position().X(),fbeamspot.position().Y(),fbeamspot.position().Z()); //std::cout << " wrote: x= " << fbeamspot.position().X() << " y= "<< fbeamspot.position().Y() << " z= " << fbeamspot.position().Z() << std::endl; pBSObjects->SetSigmaZ(fbeamspot.sigmaZ()); pBSObjects->Setdxdz(fbeamspot.dxdz()); pBSObjects->Setdydz(fbeamspot.dydz()); //if (inputBeamWidth_ > 0 ) { // std::cout << " beam width value forced to be " << inputBeamWidth_ << std::endl; // pBSObjects->SetBeamWidthX(inputBeamWidth_); // pBSObjects->SetBeamWidthY(inputBeamWidth_); //} else { // need to fix this //std::cout << " using default value, 15e-4, for beam width!!!"<<std::endl; pBSObjects->SetBeamWidthX(fbeamspot.BeamWidthX() ); pBSObjects->SetBeamWidthY(fbeamspot.BeamWidthY() ); //} for (int i = 0; i<7; ++i) { for (int j=0; j<7; ++j) { pBSObjects->SetCovariance(i,j,fbeamspot.covariance(i,j)); } } edm::Service<cond::service::PoolDBOutputService> poolDbService; if( poolDbService.isAvailable() ) { std::cout << "poolDBService available"<<std::endl; if ( poolDbService->isNewTagRequest( "BeamSpotObjectsRcd" ) ) { std::cout << "new tag requested" << std::endl; poolDbService->createNewIOV<BeamSpotObjects>( pBSObjects, poolDbService->beginOfTime(),poolDbService->endOfTime(), "BeamSpotObjectsRcd" ); } else { std::cout << "no new tag requested" << std::endl; poolDbService->appendSinceTime<BeamSpotObjects>( pBSObjects, poolDbService->currentTime(), "BeamSpotObjectsRcd" ); } } }
std::vector<reco::TrackBase::TrackAlgorithm> BeamFitter::algorithm_ [private] |
Definition at line 162 of file BeamFitter.h.
Referenced by BeamFitter(), and readEvent().
bool BeamFitter::appendRunTxt_ [private] |
Definition at line 144 of file BeamFitter.h.
Referenced by BeamFitter(), and dumpTxtFile().
double BeamFitter::convergence_ [private] |
Definition at line 164 of file BeamFitter.h.
Referenced by BeamFitter(), runBeamWidthFitter(), and runFitterNoTxt().
int BeamFitter::countPass[9] [private] |
Definition at line 243 of file BeamFitter.h.
Referenced by readEvent(), resetCutFlow(), and subtractFromCutFlow().
bool BeamFitter::debug_ [private] |
Definition at line 143 of file BeamFitter.h.
Referenced by BeamFitter(), readEvent(), and runAllFitter().
bool BeamFitter::falgo [private] |
Definition at line 211 of file BeamFitter.h.
Referenced by BeamFitter(), and readEvent().
std::ofstream BeamFitter::fasciiDIP [private] |
Definition at line 141 of file BeamFitter.h.
Referenced by BeamFitter().
std::ofstream BeamFitter::fasciiFile [private] |
Definition at line 140 of file BeamFitter.h.
reco::BeamSpot BeamFitter::fbeamspot [private] |
Definition at line 136 of file BeamFitter.h.
Referenced by dumpTxtFile(), getBeamSpot(), runAllFitter(), runBeamWidthFitter(), runFitterNoTxt(), runPVandTrkFitter(), and write2DB().
reco::BeamSpot BeamFitter::fbeamWidthFit [private] |
Definition at line 137 of file BeamFitter.h.
Referenced by dumpBWTxtFile(), getBeamWidth(), and runBeamWidthFitter().
int BeamFitter::fbeginLumiOfFit [private] |
Definition at line 219 of file BeamFitter.h.
Referenced by BeamFitter(), dumpTxtFile(), getFitLSRange(), readEvent(), resetLSRange(), runFitterNoTxt(), and setFitLSRange().
char BeamFitter::fbeginTimeOfFit[32] [private] |
Definition at line 221 of file BeamFitter.h.
Referenced by BeamFitter(), dumpTxtFile(), runFitterNoTxt(), runPVandTrkFitter(), and updateBTime().
std::map< int, reco::BeamSpot> BeamFitter::fbspotPVMap [private] |
Definition at line 138 of file BeamFitter.h.
Referenced by dumpTxtFile(), getBeamSpotMap(), and runPVandTrkFitter().
std::vector<BSTrkParameters> BeamFitter::fBSvector [private] |
Definition at line 135 of file BeamFitter.h.
Referenced by BeamFitter(), getBSvector(), getNTracks(), readEvent(), resetTrkVector(), resizeBSvector(), runAllFitter(), runBeamWidthFitter(), and runFitterNoTxt().
int BeamFitter::fcharge [private] |
Definition at line 186 of file BeamFitter.h.
Referenced by BeamFitter(), and readEvent().
double BeamFitter::fcov[7][7] [private] |
Definition at line 205 of file BeamFitter.h.
Referenced by BeamFitter(), and readEvent().
double BeamFitter::fd0 [private] |
Definition at line 189 of file BeamFitter.h.
Referenced by BeamFitter(), and readEvent().
double BeamFitter::fd0bs [private] |
Definition at line 190 of file BeamFitter.h.
Referenced by BeamFitter(), and readEvent().
double BeamFitter::fd0phi_chi2 [private] |
Definition at line 203 of file BeamFitter.h.
double BeamFitter::fd0phi_d0 [private] |
Definition at line 204 of file BeamFitter.h.
double BeamFitter::fdxdz [private] |
Definition at line 227 of file BeamFitter.h.
Referenced by BeamFitter(), and runFitterNoTxt().
double BeamFitter::fdxdzErr [private] |
Definition at line 233 of file BeamFitter.h.
Referenced by BeamFitter(), and runFitterNoTxt().
double BeamFitter::fdydz [private] |
Definition at line 228 of file BeamFitter.h.
Referenced by BeamFitter(), and runFitterNoTxt().
double BeamFitter::fdydzErr [private] |
Definition at line 234 of file BeamFitter.h.
Referenced by BeamFitter(), and runFitterNoTxt().
int BeamFitter::fendLumiOfFit [private] |
Definition at line 220 of file BeamFitter.h.
Referenced by BeamFitter(), dumpTxtFile(), getFitLSRange(), readEvent(), resetLSRange(), runFitterNoTxt(), and setFitLSRange().
char BeamFitter::fendTimeOfFit[32] [private] |
Definition at line 222 of file BeamFitter.h.
Referenced by BeamFitter(), dumpTxtFile(), runFitterNoTxt(), runPVandTrkFitter(), and updateBTime().
double BeamFitter::feta [private] |
Definition at line 185 of file BeamFitter.h.
Referenced by BeamFitter(), and readEvent().
bool BeamFitter::ffilename_changed [private] |
Definition at line 169 of file BeamFitter.h.
Referenced by BeamFitter(), and dumpTxtFile().
TFile* BeamFitter::file_ [private] |
Definition at line 181 of file BeamFitter.h.
Referenced by BeamFitter(), and ~BeamFitter().
bool BeamFitter::fitted_ [private] |
Definition at line 168 of file BeamFitter.h.
Referenced by BeamFitter(), runFitterNoTxt(), and ~BeamFitter().
int BeamFitter::flumi [private] |
Definition at line 209 of file BeamFitter.h.
Referenced by BeamFitter(), and readEvent().
BSFitter* BeamFitter::fmyalgo [private] |
Definition at line 139 of file BeamFitter.h.
double BeamFitter::fnormchi2 [private] |
Definition at line 187 of file BeamFitter.h.
Referenced by BeamFitter(), and readEvent().
int BeamFitter::fnPixelLayerMeas [private] |
Definition at line 195 of file BeamFitter.h.
Referenced by BeamFitter(), and readEvent().
int BeamFitter::fnPXBLayerMeas [private] |
Definition at line 201 of file BeamFitter.h.
Referenced by BeamFitter(), and readEvent().
int BeamFitter::fnPXFLayerMeas [private] |
Definition at line 202 of file BeamFitter.h.
Referenced by BeamFitter(), and readEvent().
int BeamFitter::fnStripLayerMeas [private] |
Definition at line 196 of file BeamFitter.h.
Referenced by BeamFitter(), and readEvent().
int BeamFitter::fnTECLayerMeas [private] |
Definition at line 200 of file BeamFitter.h.
Referenced by BeamFitter(), and readEvent().
int BeamFitter::fnTIBLayerMeas [private] |
Definition at line 197 of file BeamFitter.h.
Referenced by BeamFitter(), and readEvent().
int BeamFitter::fnTIDLayerMeas [private] |
Definition at line 198 of file BeamFitter.h.
Referenced by BeamFitter(), and readEvent().
int BeamFitter::fnTOBLayerMeas [private] |
Definition at line 199 of file BeamFitter.h.
Referenced by BeamFitter(), and readEvent().
int BeamFitter::fnTotLayerMeas [private] |
Definition at line 194 of file BeamFitter.h.
Referenced by BeamFitter(), and readEvent().
std::vector<float> BeamFitter::ForDIPPV_ [private] |
Definition at line 172 of file BeamFitter.h.
Referenced by dumpTxtFile(), runPVandTrkFitter(), and SetPVInfo().
double BeamFitter::fphi0 [private] |
Definition at line 188 of file BeamFitter.h.
Referenced by BeamFitter(), and readEvent().
double BeamFitter::fpt [private] |
Definition at line 184 of file BeamFitter.h.
Referenced by BeamFitter(), and readEvent().
TTree* BeamFitter::fPVTree_ [private] |
Definition at line 246 of file BeamFitter.h.
Referenced by BeamFitter(), and ~BeamFitter().
bool BeamFitter::fpvValid [private] |
Definition at line 212 of file BeamFitter.h.
Referenced by BeamFitter(), and readEvent().
double BeamFitter::fpvx [private] |
Definition at line 213 of file BeamFitter.h.
Referenced by BeamFitter(), and readEvent().
double BeamFitter::fpvy [private] |
Definition at line 213 of file BeamFitter.h.
Referenced by BeamFitter(), and readEvent().
double BeamFitter::fpvz [private] |
Definition at line 213 of file BeamFitter.h.
Referenced by BeamFitter(), and readEvent().
bool BeamFitter::fquality [private] |
Definition at line 210 of file BeamFitter.h.
Referenced by BeamFitter(), and readEvent().
std::time_t BeamFitter::freftime[2] [private] |
Definition at line 214 of file BeamFitter.h.
Referenced by dumpTxtFile(), getRefTime(), readEvent(), resetRefTime(), runFitterNoTxt(), runPVandTrkFitter(), setRefTime(), and updateBTime().
int BeamFitter::frun [private] |
Definition at line 208 of file BeamFitter.h.
Referenced by BeamFitter(), dumpTxtFile(), getRunNumber(), readEvent(), and setRun().
int BeamFitter::frunFit [private] |
Definition at line 218 of file BeamFitter.h.
Referenced by BeamFitter(), and readEvent().
double BeamFitter::fsigmad0 [private] |
Definition at line 191 of file BeamFitter.h.
Referenced by BeamFitter(), and readEvent().
double BeamFitter::fsigmaZ [private] |
Definition at line 226 of file BeamFitter.h.
Referenced by BeamFitter(), and runFitterNoTxt().
double BeamFitter::fsigmaz0 [private] |
Definition at line 193 of file BeamFitter.h.
Referenced by BeamFitter(), and readEvent().
double BeamFitter::fsigmaZErr [private] |
Definition at line 232 of file BeamFitter.h.
Referenced by BeamFitter(), and runFitterNoTxt().
double BeamFitter::ftheta [private] |
Definition at line 183 of file BeamFitter.h.
Referenced by BeamFitter(), and readEvent().
int BeamFitter::ftotal_tracks [private] |
Definition at line 165 of file BeamFitter.h.
Referenced by BeamFitter(), readEvent(), resetCutFlow(), resetTotTrk(), runBeamWidthFitter(), and runFitterNoTxt().
TTree* BeamFitter::ftree_ [private] |
Definition at line 182 of file BeamFitter.h.
Referenced by BeamFitter(), readEvent(), and ~BeamFitter().
TTree* BeamFitter::ftreeFit_ [private] |
Definition at line 217 of file BeamFitter.h.
Referenced by BeamFitter(), runFitterNoTxt(), and ~BeamFitter().
double BeamFitter::fvx [private] |
Definition at line 206 of file BeamFitter.h.
Referenced by BeamFitter(), and readEvent().
double BeamFitter::fvy [private] |
Definition at line 207 of file BeamFitter.h.
Referenced by BeamFitter(), and readEvent().
double BeamFitter::fwidthX [private] |
Definition at line 235 of file BeamFitter.h.
Referenced by BeamFitter(), and runFitterNoTxt().
double BeamFitter::fwidthXErr [private] |
Definition at line 237 of file BeamFitter.h.
Referenced by BeamFitter(), and runFitterNoTxt().
double BeamFitter::fwidthY [private] |
Definition at line 236 of file BeamFitter.h.
Referenced by BeamFitter(), and runFitterNoTxt().
double BeamFitter::fwidthYErr [private] |
Definition at line 238 of file BeamFitter.h.
Referenced by BeamFitter(), and runFitterNoTxt().
double BeamFitter::fx [private] |
Definition at line 223 of file BeamFitter.h.
Referenced by BeamFitter(), and runFitterNoTxt().
double BeamFitter::fxErr [private] |
Definition at line 229 of file BeamFitter.h.
Referenced by BeamFitter(), and runFitterNoTxt().
double BeamFitter::fy [private] |
Definition at line 224 of file BeamFitter.h.
Referenced by BeamFitter(), and runFitterNoTxt().
double BeamFitter::fyErr [private] |
Definition at line 230 of file BeamFitter.h.
Referenced by BeamFitter(), and runFitterNoTxt().
double BeamFitter::fz [private] |
Definition at line 225 of file BeamFitter.h.
Referenced by BeamFitter(), and runFitterNoTxt().
double BeamFitter::fz0 [private] |
Definition at line 192 of file BeamFitter.h.
Referenced by BeamFitter(), and readEvent().
double BeamFitter::fzErr [private] |
Definition at line 231 of file BeamFitter.h.
Referenced by BeamFitter(), and runFitterNoTxt().
TH1F* BeamFitter::h1cutFlow [private] |
Definition at line 242 of file BeamFitter.h.
Referenced by BeamFitter(), getCutFlow(), readEvent(), resetCutFlow(), subtractFromCutFlow(), and ~BeamFitter().
TH1F* BeamFitter::h1ntrks [private] |
Definition at line 240 of file BeamFitter.h.
Referenced by BeamFitter(), readEvent(), and ~BeamFitter().
TH1F* BeamFitter::h1vz_event [private] |
Definition at line 241 of file BeamFitter.h.
Referenced by BeamFitter(), readEvent(), and ~BeamFitter().
TH1F* BeamFitter::h1z [private] |
Definition at line 176 of file BeamFitter.h.
Referenced by runFitterNoTxt(), and ~BeamFitter().
double BeamFitter::inputBeamWidth_ [private] |
Definition at line 163 of file BeamFitter.h.
Referenced by BeamFitter(), runBeamWidthFitter(), runFitterNoTxt(), and runPVandTrkFitter().
bool BeamFitter::isMuon_ [private] |
Definition at line 167 of file BeamFitter.h.
Referenced by BeamFitter(), and readEvent().
int BeamFitter::min_Ntrks_ [private] |
Definition at line 166 of file BeamFitter.h.
Referenced by BeamFitter(), runBeamWidthFitter(), and runFitterNoTxt().
PVFitter* BeamFitter::MyPVFitter [private] |
Definition at line 245 of file BeamFitter.h.
Referenced by BeamFitter(), dumpTxtFile(), getNPVs(), getNPVsperBX(), getPVvectorSize(), readEvent(), resetPVFitter(), resizePVvector(), runPVandTrkFitter(), and ~BeamFitter().
std::string BeamFitter::outputDIPTxt_ [private] |
Definition at line 151 of file BeamFitter.h.
Referenced by BeamFitter(), runFitter(), and runPVandTrkFitter().
std::string BeamFitter::outputfilename_ [private] |
Definition at line 180 of file BeamFitter.h.
Referenced by BeamFitter().
std::string BeamFitter::outputTxt_ [private] |
Definition at line 150 of file BeamFitter.h.
Referenced by BeamFitter(), dumpTxtFile(), runBeamWidthFitter(), runFitter(), and runPVandTrkFitter().
std::vector<reco::TrackBase::TrackQuality> BeamFitter::quality_ [private] |
Definition at line 161 of file BeamFitter.h.
Referenced by BeamFitter(), and readEvent().
bool BeamFitter::saveBeamFit_ [private] |
Definition at line 178 of file BeamFitter.h.
Referenced by BeamFitter(), runFitterNoTxt(), and ~BeamFitter().
bool BeamFitter::saveNtuple_ [private] |
Definition at line 177 of file BeamFitter.h.
Referenced by BeamFitter(), readEvent(), and ~BeamFitter().
bool BeamFitter::savePVVertices_ [private] |
Definition at line 179 of file BeamFitter.h.
Referenced by BeamFitter(), and ~BeamFitter().
edm::InputTag BeamFitter::tracksLabel_ [private] |
Definition at line 145 of file BeamFitter.h.
Referenced by BeamFitter(), and readEvent().
std::vector<std::string> BeamFitter::trk_Algorithm_ [private] |
Definition at line 159 of file BeamFitter.h.
Referenced by BeamFitter().
double BeamFitter::trk_MaxEta_ [private] |
Definition at line 154 of file BeamFitter.h.
Referenced by BeamFitter(), and readEvent().
double BeamFitter::trk_MaxIP_ [private] |
Definition at line 155 of file BeamFitter.h.
Referenced by BeamFitter(), and readEvent().
double BeamFitter::trk_MaxNormChi2_ [private] |
Definition at line 158 of file BeamFitter.h.
Referenced by BeamFitter(), and readEvent().
double BeamFitter::trk_MaxZ_ [private] |
Definition at line 153 of file BeamFitter.h.
Referenced by BeamFitter(), readEvent(), runBeamWidthFitter(), and runFitterNoTxt().
int BeamFitter::trk_MinNPixLayers_ [private] |
Definition at line 157 of file BeamFitter.h.
Referenced by BeamFitter(), and readEvent().
int BeamFitter::trk_MinNTotLayers_ [private] |
Definition at line 156 of file BeamFitter.h.
Referenced by BeamFitter(), and readEvent().
double BeamFitter::trk_MinpT_ [private] |
Definition at line 152 of file BeamFitter.h.
Referenced by BeamFitter(), and readEvent().
std::vector<std::string> BeamFitter::trk_Quality_ [private] |
Definition at line 160 of file BeamFitter.h.
Referenced by BeamFitter().
edm::InputTag BeamFitter::vertexLabel_ [private] |
Definition at line 146 of file BeamFitter.h.
Referenced by BeamFitter(), and readEvent().
bool BeamFitter::writeDIPBadFit_ [private] |
Definition at line 149 of file BeamFitter.h.
Referenced by BeamFitter(), runFitter(), and runPVandTrkFitter().
bool BeamFitter::writeDIPTxt_ [private] |
Definition at line 148 of file BeamFitter.h.
Referenced by BeamFitter(), runFitter(), and runPVandTrkFitter().
bool BeamFitter::writeTxt_ [private] |
Definition at line 147 of file BeamFitter.h.
Referenced by BeamFitter(), runBeamWidthFitter(), runFitter(), and runPVandTrkFitter().