CMS 3D CMS Logo

List of all members | Public Member Functions | Private Member Functions | Private Attributes
BetaBoostEvtVtxGenerator Class Reference
Inheritance diagram for BetaBoostEvtVtxGenerator:
edm::EDProducer edm::ProducerBase edm::EDConsumerBase edm::ProductRegistryHelper

Public Member Functions

void Alpha (double m=0)
 angle between crossing plane and horizontal plane More...
 
void Beta (double m=0)
 
 BetaBoostEvtVtxGenerator (const edm::ParameterSet &p)
 
double BetaFunction (double z, double z0)
 beta function More...
 
void betastar (double m=0)
 set beta_star More...
 
void emittance (double m=0)
 emittance (no the normalized) More...
 
virtual TMatrixD * GetInvLorentzBoost ()
 
virtual HepMC::FourVector * newVertex (CLHEP::HepRandomEngine *)
 return a new event vertex More...
 
void Phi (double m=0)
 set half crossing angle More...
 
void produce (edm::Event &, const edm::EventSetup &) override
 
void sigmaZ (double s=1.0)
 set resolution in Z in cm More...
 
void X0 (double m=0)
 set mean in X in cm More...
 
void Y0 (double m=0)
 set mean in Y in cm More...
 
void Z0 (double m=0)
 set mean in Z in cm More...
 
 ~BetaBoostEvtVtxGenerator () override
 
- Public Member Functions inherited from edm::EDProducer
 EDProducer ()
 
SerialTaskQueueglobalLuminosityBlocksQueue ()
 
SerialTaskQueueglobalRunsQueue ()
 
ModuleDescription const & moduleDescription () const
 
 ~EDProducer () override
 
- Public Member Functions inherited from edm::ProducerBase
void callWhenNewProductsRegistered (std::function< void(BranchDescription const &)> const &func)
 
std::vector< edm::ProductResolverIndex > const & indiciesForPutProducts (BranchType iBranchType) const
 
 ProducerBase ()
 
std::vector< edm::ProductResolverIndex > const & putTokenIndexToProductResolverIndex () const
 
std::vector< bool > const & recordProvenanceList () const
 
void registerProducts (ProducerBase *, ProductRegistry *, ModuleDescription const &)
 
std::function< void(BranchDescription const &)> registrationCallback () const
 used by the fwk to register list of products More...
 
void resolvePutIndicies (BranchType iBranchType, ModuleToResolverIndicies const &iIndicies, std::string const &moduleLabel)
 
TypeLabelList const & typeLabelList () const
 used by the fwk to register the list of products of this module More...
 
 ~ProducerBase () noexcept(false) override
 
- Public Member Functions inherited from edm::EDConsumerBase
std::vector< ConsumesInfoconsumesInfo () const
 
void convertCurrentProcessAlias (std::string const &processName)
 Convert "@currentProcess" in InputTag process names to the actual current process name. More...
 
 EDConsumerBase ()
 
 EDConsumerBase (EDConsumerBase &&)=default
 
 EDConsumerBase (EDConsumerBase const &)=delete
 
ESProxyIndex const * esGetTokenIndices (edm::Transition iTrans) const
 
std::vector< ESProxyIndex > const & esGetTokenIndicesVector (edm::Transition iTrans) const
 
std::vector< ESRecordIndex > const & esGetTokenRecordIndicesVector (edm::Transition iTrans) const
 
ProductResolverIndexAndSkipBit indexFrom (EDGetToken, BranchType, TypeID const &) const
 
void itemsMayGet (BranchType, std::vector< ProductResolverIndexAndSkipBit > &) const
 
void itemsToGet (BranchType, std::vector< ProductResolverIndexAndSkipBit > &) const
 
std::vector< ProductResolverIndexAndSkipBit > const & itemsToGetFrom (BranchType iType) const
 
void labelsForToken (EDGetToken iToken, Labels &oLabels) const
 
void modulesWhoseProductsAreConsumed (std::vector< ModuleDescription const * > &modules, ProductRegistry const &preg, std::map< std::string, ModuleDescription const * > const &labelsToDesc, std::string const &processName) const
 
EDConsumerBaseoperator= (EDConsumerBase &&)=default
 
EDConsumerBase const & operator= (EDConsumerBase const &)=delete
 
bool registeredToConsume (ProductResolverIndex, bool, BranchType) const
 
bool registeredToConsumeMany (TypeID const &, BranchType) const
 
ProductResolverIndexAndSkipBit uncheckedIndexFrom (EDGetToken) const
 
void updateLookup (BranchType iBranchType, ProductResolverIndexHelper const &, bool iPrefetchMayGet)
 
void updateLookup (eventsetup::ESRecordsToProxyIndices const &)
 
virtual ~EDConsumerBase () noexcept(false)
 

Private Member Functions

 BetaBoostEvtVtxGenerator (const BetaBoostEvtVtxGenerator &p)=delete
 
BetaBoostEvtVtxGeneratoroperator= (const BetaBoostEvtVtxGenerator &rhs)=delete
 

Private Attributes

double alpha_
 
double beta_
 
TMatrixD * boost_
 
double falpha
 
double fbetastar
 
double femittance
 
double fSigmaZ
 
double fTimeOffset
 
HepMC::FourVector * fVertex
 
double fX0
 
double fY0
 
double fZ0
 
double phi_
 
edm::EDGetTokenT< HepMCProductsourceLabel
 
bool verbosity_
 

Additional Inherited Members

- Public Types inherited from edm::EDProducer
typedef EDProducer ModuleType
 
- Public Types inherited from edm::ProducerBase
using ModuleToResolverIndicies = std::unordered_multimap< std::string, std::tuple< edm::TypeID const *, const char *, edm::ProductResolverIndex > >
 
typedef ProductRegistryHelper::TypeLabelList TypeLabelList
 
- Public Types inherited from edm::EDConsumerBase
typedef ProductLabels Labels
 
- Static Public Member Functions inherited from edm::EDProducer
static const std::string & baseType ()
 
static void fillDescriptions (ConfigurationDescriptions &descriptions)
 
static void prevalidate (ConfigurationDescriptions &descriptions)
 
static bool wantsGlobalLuminosityBlocks ()
 
static bool wantsGlobalRuns ()
 
static bool wantsInputProcessBlocks ()
 
static bool wantsProcessBlocks ()
 
static bool wantsStreamLuminosityBlocks ()
 
static bool wantsStreamRuns ()
 
- Protected Member Functions inherited from edm::ProducerBase
template<class ProductType >
BranchAliasSetterT< ProductType > produces ()
 declare what type of product will make and with which optional label More...
 
template<typename ProductType , BranchType B>
BranchAliasSetterT< ProductType > produces ()
 
template<typename ProductType , Transition B>
BranchAliasSetterT< ProductType > produces ()
 
BranchAliasSetter produces (const TypeID &id, std::string instanceName=std::string(), bool recordProvenance=true)
 
template<BranchType B>
BranchAliasSetter produces (const TypeID &id, std::string instanceName=std::string(), bool recordProvenance=true)
 
template<Transition B>
BranchAliasSetter produces (const TypeID &id, std::string instanceName=std::string(), bool recordProvenance=true)
 
template<typename ProductType , Transition B>
BranchAliasSetterT< ProductType > produces (std::string instanceName)
 
template<class ProductType >
BranchAliasSetterT< ProductType > produces (std::string instanceName)
 
template<typename ProductType , BranchType B>
BranchAliasSetterT< ProductType > produces (std::string instanceName)
 
ProducesCollector producesCollector ()
 
- Protected Member Functions inherited from edm::EDConsumerBase
EDGetToken consumes (const TypeToGet &id, edm::InputTag const &tag)
 
template<typename ProductType , BranchType B = InEvent>
EDGetTokenT< ProductType > consumes (edm::InputTag const &tag)
 
template<BranchType B = InEvent>
EDConsumerBaseAdaptor< B > consumes (edm::InputTag tag) noexcept
 
template<BranchType B>
EDGetToken consumes (TypeToGet const &id, edm::InputTag const &tag)
 
ConsumesCollector consumesCollector ()
 Use a ConsumesCollector to gather consumes information from helper functions. More...
 
template<typename ProductType , BranchType B = InEvent>
void consumesMany ()
 
void consumesMany (const TypeToGet &id)
 
template<BranchType B>
void consumesMany (const TypeToGet &id)
 
template<typename ESProduct , typename ESRecord , Transition Tr = Transition::Event>
auto esConsumes ()
 
template<Transition Tr = Transition::Event>
constexpr auto esConsumes () noexcept
 
template<typename ESProduct , typename ESRecord , Transition Tr = Transition::Event>
auto esConsumes (ESInputTag const &tag)
 
template<Transition Tr = Transition::Event>
auto esConsumes (ESInputTag tag) noexcept
 
template<Transition Tr = Transition::Event>
ESGetTokenGeneric esConsumes (eventsetup::EventSetupRecordKey const &iRecord, eventsetup::DataKey const &iKey)
 Used with EventSetupRecord::doGet. More...
 
EDGetToken mayConsume (const TypeToGet &id, edm::InputTag const &tag)
 
template<BranchType B>
EDGetToken mayConsume (const TypeToGet &id, edm::InputTag const &tag)
 
template<typename ProductType , BranchType B = InEvent>
EDGetTokenT< ProductType > mayConsume (edm::InputTag const &tag)
 

Detailed Description

Definition at line 52 of file BetaBoostEvtVtxGenerator.cc.

Constructor & Destructor Documentation

◆ BetaBoostEvtVtxGenerator() [1/2]

BetaBoostEvtVtxGenerator::BetaBoostEvtVtxGenerator ( const edm::ParameterSet p)

Definition at line 111 of file BetaBoostEvtVtxGenerator.cc.

112  : fVertex(nullptr),
113  boost_(nullptr),
114  fTimeOffset(0),
115  sourceLabel(consumes<HepMCProduct>(p.getParameter<edm::InputTag>("src"))),
116  verbosity_(p.getUntrackedParameter<bool>("verbosity", false)) {
117  fX0 = p.getParameter<double>("X0") * cm;
118  fY0 = p.getParameter<double>("Y0") * cm;
119  fZ0 = p.getParameter<double>("Z0") * cm;
120  fSigmaZ = p.getParameter<double>("SigmaZ") * cm;
121  alpha_ = p.getParameter<double>("Alpha") * radian;
122  phi_ = p.getParameter<double>("Phi") * radian;
123  fbetastar = p.getParameter<double>("BetaStar") * cm;
124  femittance = p.getParameter<double>("Emittance") * cm; // this is not the normalized emittance
125  fTimeOffset = p.getParameter<double>("TimeOffset") * ns * c_light; // HepMC time units are mm
126  beta_ = p.getParameter<double>("Beta");
127  if (fSigmaZ <= 0) {
128  throw cms::Exception("Configuration") << "Error in BetaBoostEvtVtxGenerator: "
129  << "Illegal resolution in Z (SigmaZ is negative)";
130  }
131 
132  produces<edm::HepMCProduct>();
133 }

References alpha_, beta_, Exception, fbetastar, femittance, fSigmaZ, fTimeOffset, fX0, fY0, fZ0, AlCaHLTBitMon_ParallelJobs::p, and phi_.

◆ ~BetaBoostEvtVtxGenerator()

BetaBoostEvtVtxGenerator::~BetaBoostEvtVtxGenerator ( )
override

Definition at line 135 of file BetaBoostEvtVtxGenerator.cc.

135  {
136  delete fVertex;
137  if (boost_ != nullptr)
138  delete boost_;
139 }

References boost_, and fVertex.

◆ BetaBoostEvtVtxGenerator() [2/2]

BetaBoostEvtVtxGenerator::BetaBoostEvtVtxGenerator ( const BetaBoostEvtVtxGenerator p)
privatedelete

Copy constructor

Member Function Documentation

◆ Alpha()

void BetaBoostEvtVtxGenerator::Alpha ( double  m = 0)
inline

angle between crossing plane and horizontal plane

Definition at line 76 of file BetaBoostEvtVtxGenerator.cc.

76 { alpha_ = m; }

References visualization-live-secondInstance_cfg::m.

◆ Beta()

void BetaBoostEvtVtxGenerator::Beta ( double  m = 0)
inline

Definition at line 77 of file BetaBoostEvtVtxGenerator.cc.

77 { beta_ = m; }

References visualization-live-secondInstance_cfg::m.

◆ BetaFunction()

double BetaBoostEvtVtxGenerator::BetaFunction ( double  z,
double  z0 
)

beta function

Definition at line 168 of file BetaBoostEvtVtxGenerator.cc.

168  {
169  return sqrt(femittance * (fbetastar + (((z - z0) * (z - z0)) / fbetastar)));
170 }

References fbetastar, femittance, mathSSE::sqrt(), z, and HLTMuonOfflineAnalyzer_cfi::z0.

Referenced by newVertex().

◆ betastar()

void BetaBoostEvtVtxGenerator::betastar ( double  m = 0)
inline

set beta_star

Definition at line 80 of file BetaBoostEvtVtxGenerator.cc.

80 { fbetastar = m; }

References visualization-live-secondInstance_cfg::m.

◆ emittance()

void BetaBoostEvtVtxGenerator::emittance ( double  m = 0)
inline

emittance (no the normalized)

Definition at line 82 of file BetaBoostEvtVtxGenerator.cc.

82 { femittance = m; }

References visualization-live-secondInstance_cfg::m.

◆ GetInvLorentzBoost()

TMatrixD * BetaBoostEvtVtxGenerator::GetInvLorentzBoost ( )
virtual

Definition at line 181 of file BetaBoostEvtVtxGenerator.cc.

181  {
182  //alpha_ = 0;
183  //phi_ = 142.e-6;
184  // if (boost_ != 0 ) return boost_;
185 
186  //boost_.ResizeTo(4,4);
187  //boost_ = new TMatrixD(4,4);
188  TMatrixD tmpboost(4, 4);
189  TMatrixD tmpboostZ(4, 4);
190  TMatrixD tmpboostXYZ(4, 4);
191 
192  //if ( (alpha_ == 0) && (phi_==0) ) { boost_->Zero(); return boost_; }
193 
194  // Lorentz boost to frame where the collision is head-on
195  // phi is the half crossing angle in the plane ZS
196  // alpha is the angle to the S axis from the X axis in the XY plane
197 
198  tmpboost(0, 0) = 1. / cos(phi_);
199  tmpboost(0, 1) = -cos(alpha_) * sin(phi_);
200  tmpboost(0, 2) = -tan(phi_) * sin(phi_);
201  tmpboost(0, 3) = -sin(alpha_) * sin(phi_);
202  tmpboost(1, 0) = -cos(alpha_) * tan(phi_);
203  tmpboost(1, 1) = 1.;
204  tmpboost(1, 2) = cos(alpha_) * tan(phi_);
205  tmpboost(1, 3) = 0.;
206  tmpboost(2, 0) = 0.;
207  tmpboost(2, 1) = -cos(alpha_) * sin(phi_);
208  tmpboost(2, 2) = cos(phi_);
209  tmpboost(2, 3) = -sin(alpha_) * sin(phi_);
210  tmpboost(3, 0) = -sin(alpha_) * tan(phi_);
211  tmpboost(3, 1) = 0.;
212  tmpboost(3, 2) = sin(alpha_) * tan(phi_);
213  tmpboost(3, 3) = 1.;
214  //cout<<"beta "<<beta_;
215  double gama = 1.0 / sqrt(1 - beta_ * beta_);
216  tmpboostZ(0, 0) = gama;
217  tmpboostZ(0, 1) = 0.;
218  tmpboostZ(0, 2) = -1.0 * beta_ * gama;
219  tmpboostZ(0, 3) = 0.;
220  tmpboostZ(1, 0) = 0.;
221  tmpboostZ(1, 1) = 1.;
222  tmpboostZ(1, 2) = 0.;
223  tmpboostZ(1, 3) = 0.;
224  tmpboostZ(2, 0) = -1.0 * beta_ * gama;
225  tmpboostZ(2, 1) = 0.;
226  tmpboostZ(2, 2) = gama;
227  tmpboostZ(2, 3) = 0.;
228  tmpboostZ(3, 0) = 0.;
229  tmpboostZ(3, 1) = 0.;
230  tmpboostZ(3, 2) = 0.;
231  tmpboostZ(3, 3) = 1.;
232 
233  tmpboostXYZ = tmpboostZ * tmpboost;
234  tmpboostXYZ.Invert();
235 
236  boost_ = new TMatrixD(tmpboostXYZ);
237  if (verbosity_) {
238  boost_->Print();
239  }
240 
241  return boost_;
242 }

References alpha_, beta_, boost_, funct::cos(), phi_, funct::sin(), mathSSE::sqrt(), funct::tan(), and verbosity_.

Referenced by produce().

◆ newVertex()

HepMC::FourVector * BetaBoostEvtVtxGenerator::newVertex ( CLHEP::HepRandomEngine *  engine)
virtual

return a new event vertex

Definition at line 142 of file BetaBoostEvtVtxGenerator.cc.

142  {
143  double X, Y, Z;
144 
145  double tmp_sigz = CLHEP::RandGaussQ::shoot(engine, 0.0, fSigmaZ);
146  Z = tmp_sigz + fZ0;
147 
148  double tmp_sigx = BetaFunction(Z, fZ0);
149  // need sqrt(2) for beamspot width relative to single beam width
150  tmp_sigx /= sqrt(2.0);
151  X = CLHEP::RandGaussQ::shoot(engine, 0.0, tmp_sigx) + fX0; // + Z*fdxdz ;
152 
153  double tmp_sigy = BetaFunction(Z, fZ0);
154  // need sqrt(2) for beamspot width relative to single beam width
155  tmp_sigy /= sqrt(2.0);
156  Y = CLHEP::RandGaussQ::shoot(engine, 0.0, tmp_sigy) + fY0; // + Z*fdydz;
157 
158  double tmp_sigt = CLHEP::RandGaussQ::shoot(engine, 0.0, fSigmaZ);
159  double T = tmp_sigt + fTimeOffset;
160 
161  if (fVertex == nullptr)
162  fVertex = new HepMC::FourVector();
163  fVertex->set(X, Y, Z, T);
164 
165  return fVertex;
166 }

References BetaFunction(), fSigmaZ, fTimeOffset, fVertex, fX0, fY0, fZ0, mathSSE::sqrt(), X, BeamSpotPI::Y, and BeamSpotPI::Z.

Referenced by produce().

◆ operator=()

BetaBoostEvtVtxGenerator& BetaBoostEvtVtxGenerator::operator= ( const BetaBoostEvtVtxGenerator rhs)
privatedelete

Copy assignment operator

◆ Phi()

void BetaBoostEvtVtxGenerator::Phi ( double  m = 0)
inline

set half crossing angle

Definition at line 74 of file BetaBoostEvtVtxGenerator.cc.

74 { phi_ = m; }

References visualization-live-secondInstance_cfg::m.

◆ produce()

void BetaBoostEvtVtxGenerator::produce ( edm::Event evt,
const edm::EventSetup  
)
overridevirtual

Implements edm::EDProducer.

Definition at line 244 of file BetaBoostEvtVtxGenerator.cc.

244  {
246  if (!rng.isAvailable()) {
247  throw cms::Exception("Configuration")
248  << "Attempt to get a random engine when the RandomNumberGeneratorService is not configured.\n"
249  "You must configure the service if you want an engine.\n";
250  }
251  CLHEP::HepRandomEngine* engine = &rng->getEngine(evt.streamID());
252 
253  Handle<HepMCProduct> HepUnsmearedMCEvt;
254  evt.getByToken(sourceLabel, HepUnsmearedMCEvt);
255 
256  // Copy the HepMC::GenEvent
257  HepMC::GenEvent* genevt = new HepMC::GenEvent(*HepUnsmearedMCEvt->GetEvent());
258  std::unique_ptr<edm::HepMCProduct> HepMCEvt(new edm::HepMCProduct(genevt));
259 
260  // generate new vertex & apply the shift
261  //
262  HepMCEvt->applyVtxGen(newVertex(engine));
263 
264  //HepMCEvt->LorentzBoost( 0., 142.e-6 );
265  HepMCEvt->boostToLab(GetInvLorentzBoost(), "vertex");
266  HepMCEvt->boostToLab(GetInvLorentzBoost(), "momentum");
267  evt.put(std::move(HepMCEvt));
268 
269  return;
270 }

References Exception, edm::Event::getByToken(), edm::RandomNumberGenerator::getEngine(), edm::HepMCProduct::GetEvent(), GetInvLorentzBoost(), edm::Service< T >::isAvailable(), eostools::move(), newVertex(), edm::Event::put(), sourceLabel, and edm::Event::streamID().

◆ sigmaZ()

void BetaBoostEvtVtxGenerator::sigmaZ ( double  s = 1.0)

set resolution in Z in cm

Definition at line 172 of file BetaBoostEvtVtxGenerator.cc.

172  {
173  if (s >= 0) {
174  fSigmaZ = s;
175  } else {
176  throw cms::Exception("LogicError") << "Error in BetaBoostEvtVtxGenerator::sigmaZ: "
177  << "Illegal resolution in Z (negative)";
178  }
179 }

References Exception, fSigmaZ, and alignCSCRings::s.

◆ X0()

void BetaBoostEvtVtxGenerator::X0 ( double  m = 0)
inline

set mean in X in cm

Definition at line 67 of file BetaBoostEvtVtxGenerator.cc.

67 { fX0 = m; }

References visualization-live-secondInstance_cfg::m.

◆ Y0()

void BetaBoostEvtVtxGenerator::Y0 ( double  m = 0)
inline

set mean in Y in cm

Definition at line 69 of file BetaBoostEvtVtxGenerator.cc.

69 { fY0 = m; }

References visualization-live-secondInstance_cfg::m.

◆ Z0()

void BetaBoostEvtVtxGenerator::Z0 ( double  m = 0)
inline

set mean in Z in cm

Definition at line 71 of file BetaBoostEvtVtxGenerator.cc.

71 { fZ0 = m; }

References visualization-live-secondInstance_cfg::m.

Member Data Documentation

◆ alpha_

double BetaBoostEvtVtxGenerator::alpha_
private

Definition at line 93 of file BetaBoostEvtVtxGenerator.cc.

Referenced by BetaBoostEvtVtxGenerator(), and GetInvLorentzBoost().

◆ beta_

double BetaBoostEvtVtxGenerator::beta_
private

Definition at line 95 of file BetaBoostEvtVtxGenerator.cc.

Referenced by BetaBoostEvtVtxGenerator(), and GetInvLorentzBoost().

◆ boost_

TMatrixD* BetaBoostEvtVtxGenerator::boost_
private

Definition at line 103 of file BetaBoostEvtVtxGenerator.cc.

Referenced by GetInvLorentzBoost(), and ~BetaBoostEvtVtxGenerator().

◆ falpha

double BetaBoostEvtVtxGenerator::falpha
private

Definition at line 100 of file BetaBoostEvtVtxGenerator.cc.

◆ fbetastar

double BetaBoostEvtVtxGenerator::fbetastar
private

Definition at line 99 of file BetaBoostEvtVtxGenerator.cc.

Referenced by BetaBoostEvtVtxGenerator(), and BetaFunction().

◆ femittance

double BetaBoostEvtVtxGenerator::femittance
private

Definition at line 99 of file BetaBoostEvtVtxGenerator.cc.

Referenced by BetaBoostEvtVtxGenerator(), and BetaFunction().

◆ fSigmaZ

double BetaBoostEvtVtxGenerator::fSigmaZ
private

Definition at line 97 of file BetaBoostEvtVtxGenerator.cc.

Referenced by BetaBoostEvtVtxGenerator(), newVertex(), and sigmaZ().

◆ fTimeOffset

double BetaBoostEvtVtxGenerator::fTimeOffset
private

Definition at line 104 of file BetaBoostEvtVtxGenerator.cc.

Referenced by BetaBoostEvtVtxGenerator(), and newVertex().

◆ fVertex

HepMC::FourVector* BetaBoostEvtVtxGenerator::fVertex
private

Definition at line 102 of file BetaBoostEvtVtxGenerator.cc.

Referenced by newVertex(), and ~BetaBoostEvtVtxGenerator().

◆ fX0

double BetaBoostEvtVtxGenerator::fX0
private

Definition at line 96 of file BetaBoostEvtVtxGenerator.cc.

Referenced by BetaBoostEvtVtxGenerator(), and newVertex().

◆ fY0

double BetaBoostEvtVtxGenerator::fY0
private

Definition at line 96 of file BetaBoostEvtVtxGenerator.cc.

Referenced by BetaBoostEvtVtxGenerator(), and newVertex().

◆ fZ0

double BetaBoostEvtVtxGenerator::fZ0
private

Definition at line 96 of file BetaBoostEvtVtxGenerator.cc.

Referenced by BetaBoostEvtVtxGenerator(), and newVertex().

◆ phi_

double BetaBoostEvtVtxGenerator::phi_
private

Definition at line 93 of file BetaBoostEvtVtxGenerator.cc.

Referenced by BetaBoostEvtVtxGenerator(), and GetInvLorentzBoost().

◆ sourceLabel

edm::EDGetTokenT<HepMCProduct> BetaBoostEvtVtxGenerator::sourceLabel
private

Definition at line 106 of file BetaBoostEvtVtxGenerator.cc.

Referenced by produce().

◆ verbosity_

bool BetaBoostEvtVtxGenerator::verbosity_
private

Definition at line 108 of file BetaBoostEvtVtxGenerator.cc.

Referenced by GetInvLorentzBoost().

edm::RandomNumberGenerator::getEngine
virtual CLHEP::HepRandomEngine & getEngine(StreamID const &)=0
Use this engine in event methods.
X
#define X(str)
Definition: MuonsGrabber.cc:38
AlCaHLTBitMon_ParallelJobs.p
p
Definition: AlCaHLTBitMon_ParallelJobs.py:153
BetaBoostEvtVtxGenerator::fVertex
HepMC::FourVector * fVertex
Definition: BetaBoostEvtVtxGenerator.cc:102
BetaBoostEvtVtxGenerator::beta_
double beta_
Definition: BetaBoostEvtVtxGenerator.cc:95
BetaBoostEvtVtxGenerator::alpha_
double alpha_
Definition: BetaBoostEvtVtxGenerator.cc:93
edm::Handle
Definition: AssociativeIterator.h:50
edm::Service::isAvailable
bool isAvailable() const
Definition: Service.h:40
BetaBoostEvtVtxGenerator::fSigmaZ
double fSigmaZ
Definition: BetaBoostEvtVtxGenerator.cc:97
HepMC::GenEvent
Definition: hepmc_rootio.cc:9
funct::sin
Sin< T >::type sin(const T &t)
Definition: Sin.h:22
alignCSCRings.s
s
Definition: alignCSCRings.py:92
funct::cos
Cos< T >::type cos(const T &t)
Definition: Cos.h:22
visualization-live-secondInstance_cfg.m
m
Definition: visualization-live-secondInstance_cfg.py:72
mathSSE::sqrt
T sqrt(T t)
Definition: SSEVec.h:19
BetaBoostEvtVtxGenerator::fX0
double fX0
Definition: BetaBoostEvtVtxGenerator.cc:96
DDAxes::z
edm::Event::getByToken
bool getByToken(EDGetToken token, Handle< PROD > &result) const
Definition: Event.h:531
HLTMuonOfflineAnalyzer_cfi.z0
z0
Definition: HLTMuonOfflineAnalyzer_cfi.py:98
BetaBoostEvtVtxGenerator::boost_
TMatrixD * boost_
Definition: BetaBoostEvtVtxGenerator.cc:103
BetaBoostEvtVtxGenerator::femittance
double femittance
Definition: BetaBoostEvtVtxGenerator.cc:99
funct::tan
Tan< T >::type tan(const T &t)
Definition: Tan.h:22
edm::Service
Definition: Service.h:30
edm::Event::put
OrphanHandle< PROD > put(std::unique_ptr< PROD > product)
Put a new product.
Definition: Event.h:133
edm::HepMCProduct::GetEvent
const HepMC::GenEvent * GetEvent() const
Definition: HepMCProduct.h:34
BetaBoostEvtVtxGenerator::fbetastar
double fbetastar
Definition: BetaBoostEvtVtxGenerator.cc:99
edm::Event::streamID
StreamID streamID() const
Definition: Event.h:98
BetaBoostEvtVtxGenerator::newVertex
virtual HepMC::FourVector * newVertex(CLHEP::HepRandomEngine *)
return a new event vertex
Definition: BetaBoostEvtVtxGenerator.cc:142
eostools.move
def move(src, dest)
Definition: eostools.py:511
BetaBoostEvtVtxGenerator::sourceLabel
edm::EDGetTokenT< HepMCProduct > sourceLabel
Definition: BetaBoostEvtVtxGenerator.cc:106
T
long double T
Definition: Basic3DVectorLD.h:48
BetaBoostEvtVtxGenerator::phi_
double phi_
Definition: BetaBoostEvtVtxGenerator.cc:93
Exception
Definition: hltDiff.cc:246
BetaBoostEvtVtxGenerator::verbosity_
bool verbosity_
Definition: BetaBoostEvtVtxGenerator.cc:108
BetaBoostEvtVtxGenerator::BetaFunction
double BetaFunction(double z, double z0)
beta function
Definition: BetaBoostEvtVtxGenerator.cc:168
BeamSpotPI::Y
Definition: BeamSpotPayloadInspectorHelper.h:31
BetaBoostEvtVtxGenerator::GetInvLorentzBoost
virtual TMatrixD * GetInvLorentzBoost()
Definition: BetaBoostEvtVtxGenerator.cc:181
BetaBoostEvtVtxGenerator::fTimeOffset
double fTimeOffset
Definition: BetaBoostEvtVtxGenerator.cc:104
edm::HepMCProduct
Definition: HepMCProduct.h:18
BeamSpotPI::Z
Definition: BeamSpotPayloadInspectorHelper.h:32
edm::InputTag
Definition: InputTag.h:15
BetaBoostEvtVtxGenerator::fY0
double fY0
Definition: BetaBoostEvtVtxGenerator.cc:96
BetaBoostEvtVtxGenerator::fZ0
double fZ0
Definition: BetaBoostEvtVtxGenerator.cc:96