CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
List of all members | Public Member Functions | Private Attributes
PVFitter Class Reference

#include <PVFitter.h>

Public Member Functions

void compressStore ()
 reduce size of primary vertex cache by increasing quality limit More...
 
void dumpTxtFile ()
 
void FitPerBunchCrossing ()
 
reco::BeamSpot getBeamSpot ()
 
std::map< int, reco::BeamSpotgetBeamSpotMap ()
 
int * getFitLSRange ()
 
int getNPVs ()
 
const std::map< int, int > & getNPVsperBX ()
 
std::vector< BeamSpotFitPVDatagetpvStore ()
 
time_t * getRefTime ()
 
double getWidthX ()
 
double getWidthXerr ()
 
double getWidthY ()
 
double getWidthYerr ()
 
double getWidthZ ()
 
double getWidthZerr ()
 
void initialize (const edm::ParameterSet &iConfig, edm::ConsumesCollector &iColl)
 
bool IsFitPerBunchCrossing ()
 
 PVFitter ()
 
 PVFitter (const edm::ParameterSet &iConfig, edm::ConsumesCollector &&iColl)
 
 PVFitter (const edm::ParameterSet &iConfig, edm::ConsumesCollector &iColl)
 
double pvQuality (const reco::Vertex &pv) const
 vertex quality measure More...
 
double pvQuality (const BeamSpotFitPVData &pv) const
 vertex quality measure More...
 
void readEvent (const edm::Event &iEvent)
 
void resetAll ()
 
void resetLSRange ()
 
void resetRefTime ()
 
void resizepvStore (unsigned int rmSize)
 
bool runBXFitter ()
 
bool runFitter ()
 
void setFitLSRange (int ls0, int ls1)
 
void setRefTime (std::time_t t0, std::time_t t1)
 
void setTree (TTree *tree)
 
virtual ~PVFitter ()
 

Private Attributes

std::map< int, std::vector
< BeamSpotFitPVData > > 
bxMap_
 
bool debug_
 
bool do3DFit_
 
double dynamicQualityCut_
 
double errorScale_
 
std::ofstream fasciiFile
 
reco::BeamSpot fbeamspot
 
int fbeginLumiOfFit
 
std::map< int, reco::BeamSpotfbspotMap
 
int fendLumiOfFit
 
bool fFitPerBunchCrossing
 
std::time_t freftime [2]
 
TTree * ftree_
 
double fwidthX
 
double fwidthXerr
 
double fwidthY
 
double fwidthYerr
 
double fwidthZ
 
double fwidthZerr
 
TH2F * hPVx
 
TH2F * hPVy
 
unsigned int maxNrVertices_
 
double maxVtxNormChi2_
 
double maxVtxR_
 
double maxVtxZ_
 
unsigned int minNrVertices_
 
double minVtxNdf_
 
unsigned int minVtxTracks_
 
double minVtxWgt_
 
std::map< int, int > npvsmap_
 
std::string outputTxt_
 
std::vector< double > pvQualities_
 
std::vector< BeamSpotFitPVDatapvStore_
 
double sigmaCut_
 
BeamSpotTreeData theBeamSpotTreeData_
 
edm::EDGetTokenT
< reco::VertexCollection
vertexToken_
 

Detailed Description

Definition at line 43 of file PVFitter.h.

Constructor & Destructor Documentation

PVFitter::PVFitter ( )
inline

Definition at line 45 of file PVFitter.h.

45 {}
PVFitter::PVFitter ( const edm::ParameterSet iConfig,
edm::ConsumesCollector &&  iColl 
)

Definition at line 53 of file PVFitter.cc.

PVFitter::PVFitter ( const edm::ParameterSet iConfig,
edm::ConsumesCollector iColl 
)

Definition at line 60 of file PVFitter.cc.

PVFitter::~PVFitter ( )
virtual

Definition at line 98 of file PVFitter.cc.

Member Function Documentation

void PVFitter::compressStore ( )

reduce size of primary vertex cache by increasing quality limit

Definition at line 543 of file PVFitter.cc.

void PVFitter::dumpTxtFile ( )

Definition at line 500 of file PVFitter.cc.

void PVFitter::FitPerBunchCrossing ( )
inline

Definition at line 63 of file PVFitter.h.

References fFitPerBunchCrossing.

63 { fFitPerBunchCrossing = true; }
bool fFitPerBunchCrossing
Definition: PVFitter.h:141
reco::BeamSpot PVFitter::getBeamSpot ( )
inline

Definition at line 91 of file PVFitter.h.

References fbeamspot.

91 { return fbeamspot; }
reco::BeamSpot fbeamspot
Definition: PVFitter.h:139
std::map<int, reco::BeamSpot> PVFitter::getBeamSpotMap ( )
inline

Definition at line 92 of file PVFitter.h.

References fbspotMap.

92 { return fbspotMap; }
std::map< int, reco::BeamSpot > fbspotMap
Definition: PVFitter.h:140
int* PVFitter::getFitLSRange ( )
inline

Definition at line 94 of file PVFitter.h.

References fbeginLumiOfFit, fendLumiOfFit, and tmp.

94  {
95  int *tmp=new int[2];
96  tmp[0] = fbeginLumiOfFit;
97  tmp[1] = fendLumiOfFit;
98  return tmp;
99  }
int fbeginLumiOfFit
Definition: PVFitter.h:178
int fendLumiOfFit
Definition: PVFitter.h:179
std::vector< std::vector< double > > tmp
Definition: MVATrainer.cc:100
int PVFitter::getNPVs ( )
inline

Definition at line 120 of file PVFitter.h.

References pvStore_.

120 { return pvStore_.size(); }
std::vector< BeamSpotFitPVData > pvStore_
Definition: PVFitter.h:202
const std::map<int, int>& PVFitter::getNPVsperBX ( )
inline

Definition at line 122 of file PVFitter.h.

References bxMap_, npvsmap_, and findQualityFiles::size.

122  {
123 
124  npvsmap_.clear();
125 
126  for ( std::map<int,std::vector<BeamSpotFitPVData> >::const_iterator pvStore = bxMap_.begin();
127  pvStore!=bxMap_.end(); ++pvStore) {
128 
129  //std::cout << "bx " << pvStore->first << " NPVs = " << (pvStore->second).size() << std::endl;
130  npvsmap_[ pvStore->first ] = (pvStore->second).size();
131 
132  }
133  return npvsmap_;
134  }
std::map< int, std::vector< BeamSpotFitPVData > > bxMap_
Definition: PVFitter.h:203
std::map< int, int > npvsmap_
Definition: PVFitter.h:138
tuple size
Write out results.
std::vector<BeamSpotFitPVData> PVFitter::getpvStore ( )
inline

Definition at line 61 of file PVFitter.h.

References pvStore_.

61 { return pvStore_; }
std::vector< BeamSpotFitPVData > pvStore_
Definition: PVFitter.h:202
time_t* PVFitter::getRefTime ( )
inline

Definition at line 101 of file PVFitter.h.

References freftime.

101  {
102  time_t *tmptime=new time_t[2];
103  tmptime[0]=freftime[0];
104  tmptime[1]=freftime[1];
105  return tmptime;
106  }
std::time_t freftime[2]
Definition: PVFitter.h:164
double PVFitter::getWidthX ( )
inline

Definition at line 54 of file PVFitter.h.

References fwidthX.

54 { return fwidthX; }
double fwidthX
Definition: PVFitter.h:182
double PVFitter::getWidthXerr ( )
inline

Definition at line 57 of file PVFitter.h.

References fwidthXerr.

57 { return fwidthXerr; }
double fwidthXerr
Definition: PVFitter.h:185
double PVFitter::getWidthY ( )
inline

Definition at line 55 of file PVFitter.h.

References fwidthY.

55 { return fwidthY; }
double fwidthY
Definition: PVFitter.h:183
double PVFitter::getWidthYerr ( )
inline

Definition at line 58 of file PVFitter.h.

References fwidthYerr.

58 { return fwidthYerr; }
double fwidthYerr
Definition: PVFitter.h:186
double PVFitter::getWidthZ ( )
inline

Definition at line 56 of file PVFitter.h.

References fwidthZ.

56 { return fwidthZ; }
double fwidthZ
Definition: PVFitter.h:184
double PVFitter::getWidthZerr ( )
inline

Definition at line 59 of file PVFitter.h.

References fwidthZerr.

59 { return fwidthZerr; }
double fwidthZerr
Definition: PVFitter.h:187
void PVFitter::initialize ( const edm::ParameterSet iConfig,
edm::ConsumesCollector iColl 
)

Definition at line 67 of file PVFitter.cc.

bool PVFitter::IsFitPerBunchCrossing ( )
inline

Definition at line 93 of file PVFitter.h.

References fFitPerBunchCrossing.

93 { return fFitPerBunchCrossing; }
bool fFitPerBunchCrossing
Definition: PVFitter.h:141
double PVFitter::pvQuality ( const reco::Vertex pv) const

vertex quality measure

Definition at line 575 of file PVFitter.cc.

double PVFitter::pvQuality ( const BeamSpotFitPVData pv) const

vertex quality measure

Definition at line 586 of file PVFitter.cc.

void PVFitter::readEvent ( const edm::Event iEvent)

Definition at line 103 of file PVFitter.cc.

void PVFitter::resetAll ( )
inline

Definition at line 80 of file PVFitter.h.

References align::BeamSpot, bxMap_, dynamicQualityCut_, fbeamspot, fbspotMap, hPVx, hPVy, pvStore_, resetLSRange(), and resetRefTime().

80  {
81  resetLSRange();
82  resetRefTime();
83  pvStore_.clear();
84  bxMap_.clear();
85  dynamicQualityCut_ = 1.e30;
86  hPVx->Reset();
87  hPVy->Reset();
89  fbspotMap.clear();
90  };
std::map< int, std::vector< BeamSpotFitPVData > > bxMap_
Definition: PVFitter.h:203
double dynamicQualityCut_
Definition: PVFitter.h:204
reco::BeamSpot fbeamspot
Definition: PVFitter.h:139
std::vector< BeamSpotFitPVData > pvStore_
Definition: PVFitter.h:202
void resetLSRange()
Definition: PVFitter.h:66
TH2F * hPVy
Definition: PVFitter.h:166
std::map< int, reco::BeamSpot > fbspotMap
Definition: PVFitter.h:140
void resetRefTime()
Definition: PVFitter.h:67
TH2F * hPVx
Definition: PVFitter.h:166
void PVFitter::resetLSRange ( )
inline

Definition at line 66 of file PVFitter.h.

References fbeginLumiOfFit, and fendLumiOfFit.

Referenced by resetAll().

int fbeginLumiOfFit
Definition: PVFitter.h:178
int fendLumiOfFit
Definition: PVFitter.h:179
void PVFitter::resetRefTime ( )
inline

Definition at line 67 of file PVFitter.h.

References freftime.

Referenced by resetAll().

67 { freftime[0] = freftime[1] = 0; }
std::time_t freftime[2]
Definition: PVFitter.h:164
void PVFitter::resizepvStore ( unsigned int  rmSize)
inline

Definition at line 109 of file PVFitter.h.

References pvStore_.

109  {
110  pvStore_.erase(pvStore_.begin(), pvStore_.begin()+rmSize);
111  }
std::vector< BeamSpotFitPVData > pvStore_
Definition: PVFitter.h:202
bool PVFitter::runBXFitter ( )

Definition at line 205 of file PVFitter.cc.

bool PVFitter::runFitter ( )

Definition at line 335 of file PVFitter.cc.

void PVFitter::setFitLSRange ( int  ls0,
int  ls1 
)
inline

Definition at line 73 of file PVFitter.h.

References fbeginLumiOfFit, and fendLumiOfFit.

73  {
74  fbeginLumiOfFit = ls0;
75  fendLumiOfFit = ls1;
76  }
int fbeginLumiOfFit
Definition: PVFitter.h:178
int fendLumiOfFit
Definition: PVFitter.h:179
void PVFitter::setRefTime ( std::time_t  t0,
std::time_t  t1 
)
inline

Definition at line 69 of file PVFitter.h.

References freftime, and FrontierCondition_GT_autoExpress_cfi::t0.

69  {
70  freftime[0] = t0;
71  freftime[1] = t1;
72  }
std::time_t freftime[2]
Definition: PVFitter.h:164
void PVFitter::setTree ( TTree *  tree)

Definition at line 200 of file PVFitter.cc.

Member Data Documentation

std::map< int, std::vector<BeamSpotFitPVData> > PVFitter::bxMap_
private

Definition at line 203 of file PVFitter.h.

Referenced by getNPVsperBX(), and resetAll().

bool PVFitter::debug_
private

Definition at line 145 of file PVFitter.h.

bool PVFitter::do3DFit_
private

Definition at line 146 of file PVFitter.h.

double PVFitter::dynamicQualityCut_
private

Definition at line 204 of file PVFitter.h.

Referenced by resetAll().

double PVFitter::errorScale_
private

Definition at line 159 of file PVFitter.h.

std::ofstream PVFitter::fasciiFile
private

Definition at line 143 of file PVFitter.h.

reco::BeamSpot PVFitter::fbeamspot
private

Definition at line 139 of file PVFitter.h.

Referenced by getBeamSpot(), and resetAll().

int PVFitter::fbeginLumiOfFit
private

Definition at line 178 of file PVFitter.h.

Referenced by getFitLSRange(), resetLSRange(), and setFitLSRange().

std::map<int,reco::BeamSpot> PVFitter::fbspotMap
private

Definition at line 140 of file PVFitter.h.

Referenced by getBeamSpotMap(), and resetAll().

int PVFitter::fendLumiOfFit
private

Definition at line 179 of file PVFitter.h.

Referenced by getFitLSRange(), resetLSRange(), and setFitLSRange().

bool PVFitter::fFitPerBunchCrossing
private

Definition at line 141 of file PVFitter.h.

Referenced by FitPerBunchCrossing(), and IsFitPerBunchCrossing().

std::time_t PVFitter::freftime[2]
private

Definition at line 164 of file PVFitter.h.

Referenced by getRefTime(), resetRefTime(), and setRefTime().

TTree* PVFitter::ftree_
private

Definition at line 168 of file PVFitter.h.

double PVFitter::fwidthX
private

Definition at line 182 of file PVFitter.h.

Referenced by getWidthX().

double PVFitter::fwidthXerr
private

Definition at line 185 of file PVFitter.h.

Referenced by getWidthXerr().

double PVFitter::fwidthY
private

Definition at line 183 of file PVFitter.h.

Referenced by getWidthY().

double PVFitter::fwidthYerr
private

Definition at line 186 of file PVFitter.h.

Referenced by getWidthYerr().

double PVFitter::fwidthZ
private

Definition at line 184 of file PVFitter.h.

Referenced by getWidthZ().

double PVFitter::fwidthZerr
private

Definition at line 187 of file PVFitter.h.

Referenced by getWidthZerr().

TH2F* PVFitter::hPVx
private

Definition at line 166 of file PVFitter.h.

Referenced by resetAll().

TH2F* PVFitter::hPVy
private

Definition at line 166 of file PVFitter.h.

Referenced by resetAll().

unsigned int PVFitter::maxNrVertices_
private

Definition at line 151 of file PVFitter.h.

double PVFitter::maxVtxNormChi2_
private

Definition at line 154 of file PVFitter.h.

double PVFitter::maxVtxR_
private

Definition at line 157 of file PVFitter.h.

double PVFitter::maxVtxZ_
private

Definition at line 158 of file PVFitter.h.

unsigned int PVFitter::minNrVertices_
private

Definition at line 152 of file PVFitter.h.

double PVFitter::minVtxNdf_
private

Definition at line 153 of file PVFitter.h.

unsigned int PVFitter::minVtxTracks_
private

Definition at line 155 of file PVFitter.h.

double PVFitter::minVtxWgt_
private

Definition at line 156 of file PVFitter.h.

std::map<int, int> PVFitter::npvsmap_
private

Definition at line 138 of file PVFitter.h.

Referenced by getNPVsperBX().

std::string PVFitter::outputTxt_
private

Definition at line 149 of file PVFitter.h.

std::vector<double> PVFitter::pvQualities_
private

Definition at line 205 of file PVFitter.h.

std::vector<BeamSpotFitPVData> PVFitter::pvStore_
private

Definition at line 202 of file PVFitter.h.

Referenced by getNPVs(), getpvStore(), resetAll(), and resizepvStore().

double PVFitter::sigmaCut_
private

Definition at line 160 of file PVFitter.h.

BeamSpotTreeData PVFitter::theBeamSpotTreeData_
private

Definition at line 207 of file PVFitter.h.

edm::EDGetTokenT<reco::VertexCollection> PVFitter::vertexToken_
private

Definition at line 147 of file PVFitter.h.