27 #include "CLHEP/Random/RandGaussQ.h"
28 #include "CLHEP/Units/GlobalSystemOfUnits.h"
29 #include "CLHEP/Units/GlobalPhysicalConstants.h"
31 #include "HepMC/SimpleVector.h"
60 <<
"Error in BetafuncEvtVtxGenerator: "
61 <<
"Illegal resolution in Z (SigmaZ is negative)";
90 phi_=beamhandle->fPhi;
113 tmp_sigx /=
sqrt(2.0);
118 tmp_sigy /=
sqrt(2.0);
144 <<
"Error in BetafuncEvtVtxGenerator::sigmaZ: "
145 <<
"Illegal resolution in Z (negative)";
158 TMatrixD tmpboost(4,4);
184 boost_ =
new TMatrixD(tmpboost);
const double Z[kNumberCalorimeter]
T getParameter(std::string const &) const
void sigmaZ(double s=1.0)
set resolution in Z in cm
CLHEP::HepRandomEngine & getEngine()
virtual HepMC::FourVector * newVertex()
return a new event vertex
HepMC::FourVector * fVertex
BetafuncEvtVtxGenerator(const edm::ParameterSet &p)
Sin< T >::type sin(const T &t)
double BetaFunction(double z, double z0)
beta function
virtual void beginRun(const edm::Run &, const edm::EventSetup &) override
virtual TMatrixD * GetInvLorentzBoost()
Cos< T >::type cos(const T &t)
Tan< T >::type tan(const T &t)
void update(const edm::EventSetup &iEventSetup)
CLHEP::RandGaussQ * fRandom
edm::ESWatcher< SimBeamSpotObjectsRcd > parameterWatcher_
bool check(const edm::EventSetup &iSetup)
virtual void beginLuminosityBlock(edm::LuminosityBlock const &, edm::EventSetup const &) override
virtual ~BetafuncEvtVtxGenerator()