Main Page
Namespaces
Classes
Package Documentation
IOMC
EventVertexGenerators
interface
BetafuncEvtVtxGenerator.h
Go to the documentation of this file.
1
#ifndef IOMC_BetafuncEvtVtxGenerator_H
2
#define IOMC_BetafuncEvtVtxGenerator_H
3
4
/*
5
________________________________________________________________________
6
7
BetafuncEvtVtxGenerator
8
9
Smear vertex according to the Beta function on the transverse plane
10
and a Gaussian on the z axis. It allows the beam to have a crossing
11
angle (dx/dz and dy/dz).
12
13
Based on GaussEvtVtxGenerator.h
14
implemented by Francisco Yumiceva (yumiceva@fnal.gov)
15
16
FERMILAB
17
2006
18
________________________________________________________________________
19
*/
20
21
#include "
IOMC/EventVertexGenerators/interface/BaseEvtVtxGenerator.h
"
22
#include "
FWCore/Framework/interface/ESWatcher.h
"
23
#include "
CondFormats/DataRecord/interface/SimBeamSpotObjectsRcd.h
"
24
25
namespace
CLHEP
{
26
class
HepRandomEngine;
27
}
28
29
class
BetafuncEvtVtxGenerator
:
public
BaseEvtVtxGenerator
{
30
public
:
31
BetafuncEvtVtxGenerator
(
const
edm::ParameterSet
&
p
);
32
~
BetafuncEvtVtxGenerator
()
override
;
33
34
void
beginRun(
const
edm::Run
&,
const
edm::EventSetup
&)
override
;
35
void
beginLuminosityBlock(
edm::LuminosityBlock
const
&,
edm::EventSetup
const
&)
override
;
36
38
//virtual CLHEP::Hep3Vector * newVertex();
39
HepMC::FourVector newVertex(CLHEP::HepRandomEngine*)
const override
;
40
41
TMatrixD
const
* GetInvLorentzBoost()
const override
;
42
44
void
sigmaZ
(
double
s
= 1.0);
45
47
void
X0
(
double
m
= 0) { fX0 =
m
; }
49
void
Y0
(
double
m
= 0) { fY0 =
m
; }
51
void
Z0
(
double
m
= 0) { fZ0 =
m
; }
52
54
void
betastar
(
double
m
= 0) { fbetastar =
m
; }
56
void
emittance
(
double
m
= 0) { femittance =
m
; }
57
59
double
BetaFunction(
double
z,
double
z0
)
const
;
60
61
private
:
63
BetafuncEvtVtxGenerator
(
const
BetafuncEvtVtxGenerator
& p) =
delete
;
65
BetafuncEvtVtxGenerator
& operator=(
const
BetafuncEvtVtxGenerator
& rhs) =
delete
;
66
67
void
setBoost(
double
alpha
,
double
phi);
68
69
private
:
70
bool
readDB_
;
71
72
double
fX0, fY0,
fZ0
;
73
double
fSigmaZ
;
74
//double fdxdz, fdydz;
75
double
fbetastar,
femittance
;
76
// double falpha;
77
double
fTimeOffset
;
78
79
TMatrixD
boost_
;
80
81
void
update
(
const
edm::EventSetup
& iEventSetup);
82
edm::ESWatcher<SimBeamSpotObjectsRcd>
parameterWatcher_
;
83
};
84
85
#endif
BetafuncEvtVtxGenerator::X0
void X0(double m=0)
set mean in X in cm
Definition:
BetafuncEvtVtxGenerator.h:47
ESWatcher.h
AlCaHLTBitMon_ParallelJobs.p
p
Definition:
AlCaHLTBitMon_ParallelJobs.py:153
edm::LuminosityBlock
Definition:
LuminosityBlock.h:49
alignCSCRings.s
s
Definition:
alignCSCRings.py:92
SimBeamSpotObjectsRcd.h
BetafuncEvtVtxGenerator::fZ0
double fZ0
Definition:
BetafuncEvtVtxGenerator.h:72
BaseEvtVtxGenerator.h
fftjetvertexadder_cfi.sigmaZ
sigmaZ
Definition:
fftjetvertexadder_cfi.py:32
BetafuncEvtVtxGenerator::fTimeOffset
double fTimeOffset
Definition:
BetafuncEvtVtxGenerator.h:77
BetafuncEvtVtxGenerator::femittance
double femittance
Definition:
BetafuncEvtVtxGenerator.h:75
CLHEP
Definition:
CocoaGlobals.h:27
BetafuncEvtVtxGenerator
Definition:
BetafuncEvtVtxGenerator.h:29
BetafuncEvtVtxGenerator::fSigmaZ
double fSigmaZ
Definition:
BetafuncEvtVtxGenerator.h:73
BetafuncEvtVtxGenerator::betastar
void betastar(double m=0)
set beta_star
Definition:
BetafuncEvtVtxGenerator.h:54
BetafuncEvtVtxGenerator::Y0
void Y0(double m=0)
set mean in Y in cm
Definition:
BetafuncEvtVtxGenerator.h:49
visualization-live-secondInstance_cfg.m
m
Definition:
visualization-live-secondInstance_cfg.py:60
edm::EventSetup
Definition:
EventSetup.h:57
edm::ESWatcher< SimBeamSpotObjectsRcd >
BetafuncEvtVtxGenerator::readDB_
bool readDB_
Definition:
BetafuncEvtVtxGenerator.h:70
BetafuncEvtVtxGenerator::parameterWatcher_
edm::ESWatcher< SimBeamSpotObjectsRcd > parameterWatcher_
Definition:
BetafuncEvtVtxGenerator.h:82
BaseEvtVtxGenerator
Definition:
BaseEvtVtxGenerator.h:23
BetafuncEvtVtxGenerator::Z0
void Z0(double m=0)
set mean in Z in cm
Definition:
BetafuncEvtVtxGenerator.h:51
update
#define update(a, b)
Definition:
TrackClassifier.cc:10
edm::ParameterSet
Definition:
ParameterSet.h:36
HLTMuonOfflineAnalyzer_cfi.z0
z0
Definition:
HLTMuonOfflineAnalyzer_cfi.py:98
zMuMuMuonUserData.alpha
alpha
zGenParticlesMatch = cms.InputTag(""),
Definition:
zMuMuMuonUserData.py:9
BetafuncEvtVtxGenerator::boost_
TMatrixD boost_
Definition:
BetafuncEvtVtxGenerator.h:79
BetafuncEvtVtxGenerator::emittance
void emittance(double m=0)
emittance (no the normalized)
Definition:
BetafuncEvtVtxGenerator.h:56
edm::Run
Definition:
Run.h:45
Generated for CMSSW Reference Manual by
1.8.11