18 : changeFrame_ ( iconf.getParameter<bool> (
"changeToCMSCoordinates") )
19 , theMaxZ ( iconf.getParameter<double>(
"maxZ") )
20 , theSetSigmaZ ( iconf.getParameter<double>(
"setSigmaZ") )
23 , theBeamShoutMode ( iconf.getUntrackedParameter<unsigned int> (
"beamMode",11) )
29 produces<reco::BeamSpot>();
42 if (gtEvmReadoutRecord->gtfeWord().beamMode() ==
theBeamShoutMode) shoutMODE=
true;
60 bool fallBackToDB=
false;
61 if (handleScaler->size()!=0){
63 spotOnline = * ( handleScaler->begin() );
78 double sigmaZ = spotOnline.
sigma_z();
96 if ( spotOnline.
x() == 0 &&
97 spotOnline.
y() == 0 &&
98 spotOnline.
z() == 0 &&
104 <<
"Online Beam Spot producer falls back to DB value because the scaler values are zero ";
108 double r2=spotOnline.
x()*spotOnline.
x() + spotOnline.
y()*spotOnline.
y();
112 <<
"Online Beam Spot producer falls back to DB value because the scaler values are too big to be true :"
113 <<spotOnline.
x()<<
" "<<spotOnline.
y()<<
" "<<spotOnline.
z();
134 for (
int i=0;
i<7; ++
i ) {
135 for (
int j=0;
j<7; ++
j ) {
double Getdydz() const
get dydz slope, crossing angle in YZ
std::vector< BeamSpotOnline > BeamSpotOnlineCollection
math::Error< dimension >::type CovarianceMatrix
T getParameter(std::string const &) const
double GetY() const
get Y beam position
void setbetaStar(double v)
const double theSetSigmaZ
const edm::EDGetTokenT< L1GlobalTriggerEvmReadoutRecord > l1GtEvmReadoutRecordToken_
bool getByToken(EDGetToken token, Handle< PROD > &result) const
#define DEFINE_FWK_MODULE(type)
virtual void produce(edm::Event &iEvent, const edm::EventSetup &iSetup) override
produce a beam spot class
BeamSpotOnlineProducer(const edm::ParameterSet &iConf)
constructor
const edm::EDGetTokenT< BeamSpotOnlineCollection > scalerToken_
double GetSigmaZ() const
get sigma Z, RMS bunch length
double GetBeamWidthX() const
get average transverse beam width
math::XYZPoint Point
point in the space
double GetBeamWidthY() const
get average transverse beam width
double GetEmittanceX() const
get emittance
void setType(BeamType type)
set beam type
void setBeamWidthY(double v)
void setEmittanceY(double v)
OrphanHandle< PROD > put(std::auto_ptr< PROD > product)
Put a new product.
double GetZ() const
get Z beam position
const unsigned int theBeamShoutMode
double Getdxdz() const
get dxdz slope, crossing angle in XZ
double GetX() const
get X beam position
T const * product() const
double GetBetaStar() const
get beta star
double GetCovariance(int i, int j) const
get i,j element of the full covariance matrix 7x7
double GetEmittanceY() const
get emittance
~BeamSpotOnlineProducer()
destructor
float err_sigma_z() const
void setEmittanceX(double v)