CMS 3D CMS Logo

BeamSpotWrite2Txt.h
Go to the documentation of this file.
1 #ifndef RecoVertex_BeamSpotProducer_BeamSpotWrite2Txt_h
2 #define RecoVertex_BeamSpotProducer_BeamSpotWrite2Txt_h
3 
4 #include <fstream>
5 
7 
8 namespace beamspot {
9 
12  int run ;
13  char beginTimeOfFit[32];
14  char endTimeOfFit [32];
17  std::time_t reftime[2] ;
18  };
19 
20  void dumpBeamSpotTxt(std::ofstream & outFile, BeamSpotContainer const& bsContainer){
21 
22  outFile << "Runnumber " << bsContainer.run << std::endl;
23  outFile << "BeginTimeOfFit " << bsContainer.beginTimeOfFit << " " << bsContainer.reftime[0] << std::endl;
24  outFile << "EndTimeOfFit " << bsContainer.endTimeOfFit << " " << bsContainer.reftime[1] << std::endl;
25  outFile << "LumiRange " << bsContainer.beginLumiOfFit << " - " << bsContainer.endLumiOfFit << std::endl;
26  outFile << "Type " << bsContainer.beamspot.type() << std::endl;
27  outFile << "X0 " << bsContainer.beamspot.x0() << std::endl;
28  outFile << "Y0 " << bsContainer.beamspot.y0() << std::endl;
29  outFile << "Z0 " << bsContainer.beamspot.z0() << std::endl;
30  outFile << "sigmaZ0 " << bsContainer.beamspot.sigmaZ() << std::endl;
31  outFile << "dxdz " << bsContainer.beamspot.dxdz() << std::endl;
32  outFile << "dydz " << bsContainer.beamspot.dydz() << std::endl;
33  outFile << "BeamWidthX " << bsContainer.beamspot.BeamWidthX() << std::endl;
34  outFile << "BeamWidthY " << bsContainer.beamspot.BeamWidthY() << std::endl;
35  for (int i = 0; i<6; ++i) {
36  outFile << "Cov("<<i<<",j) ";
37  for (int j=0; j<7; ++j) {
38  outFile << bsContainer.beamspot.covariance(i,j) << " ";
39  }
40  outFile << std::endl;
41  }
42  // Uncertainties on sigmaX and sigmaY are set to be equal. Legacy from a distant past
43  outFile << "Cov(6,j) 0 0 0 0 0 0 " << bsContainer.beamspot.covariance(6,6) << std::endl;
44  outFile << "EmittanceX " << bsContainer.beamspot.emittanceX() << std::endl;
45  outFile << "EmittanceY " << bsContainer.beamspot.emittanceY() << std::endl;
46  outFile << "BetaStar " << bsContainer.beamspot.betaStar() << std::endl;
47 
48  }
49 
50 } // end namespace beamspot
51 
52 
53 #endif
double z0() const
z coordinate
Definition: BeamSpot.h:68
double emittanceX() const
additional information
Definition: BeamSpot.h:136
double betaStar() const
Definition: BeamSpot.h:138
double dydz() const
dydz slope
Definition: BeamSpot.h:84
double emittanceY() const
Definition: BeamSpot.h:137
double BeamWidthX() const
beam width X
Definition: BeamSpot.h:86
double dxdz() const
dxdz slope
Definition: BeamSpot.h:82
double sigmaZ() const
sigma z
Definition: BeamSpot.h:80
double BeamWidthY() const
beam width Y
Definition: BeamSpot.h:88
double covariance(int i, int j) const
(i,j)-th element of error matrix
Definition: BeamSpot.h:112
double y0() const
y coordinate
Definition: BeamSpot.h:66
void dumpBeamSpotTxt(std::ofstream &outFile, BeamSpotContainer const &bsContainer)
BeamType type() const
return beam type
Definition: BeamSpot.h:129
double x0() const
x coordinate
Definition: BeamSpot.h:64