ATLAS Offline Software
|
#include <CrabKissingVertexPositioner.h>
Public Member Functions | |
CrabKissingVertexPositioner (const std::string &t, const std::string &n, const IInterface *p) | |
Constructor with parameters. More... | |
virtual | ~CrabKissingVertexPositioner ()=default |
Destructor. More... | |
StatusCode | initialize () override final |
Athena algtool's Hooks. More... | |
StatusCode | finalize () override final |
Athena algtool's Hooks. More... | |
CLHEP::HepLorentzVector * | generate (const EventContext &ctx) const override final |
computes the vertex displacement More... | |
Private Types | |
enum | BunchShape { GAUSS, FLAT, NSHAPES } |
Private Member Functions | |
double | heaviside (double val) const |
double | getDisplacement (double bunchSize, double angle1, double angle2, CLHEP::HepRandomEngine *rng) const |
double | beamspotFunction (double displacement, double angle1, double angle2) const |
void | BunchShapeHandler (Gaudi::Details::PropertyBase &) |
Private Attributes | |
SG::ReadCondHandleKey< InDet::BeamSpotData > | m_beamSpotKey { this, "BeamSpotKey", "BeamSpotData", "SG key for beam spot" } |
ServiceHandle< IAthRNGSvc > | m_rndGenSvc {this, "RandomSvc", "AthRNGSvc"} |
ATHRNG::RNGWrapper *m_randomEngine | ATLAS_THREAD_SAFE {} |
Slot-local RNG. More... | |
Gaudi::Property< std::string > | m_randomEngineName {this, "RandomStream", "VERTEX", "Name of the random number stream"} |
Gaudi::Property< std::string > | m_bunchShapeProp {this, "BunchShape", "GAUSS", "GAUSS or FLAT"} |
BunchShape | m_bunchShape {BunchShape::GAUSS} |
Gaudi::Property< double > | m_bunchLength {this, "BunchLength", 75., "75.0 mm"} |
Parameter in the Z distribution of the beamspot. More... | |
Gaudi::Property< double > | m_betaStar {this, "BetaStar", 150., "beta* in the parallel (kissing) plane, we assume betax=betay, units: mm"} |
parameters according to S.Fartoukh Phys.Rev.ST Accel.Beams 17 (2014) no.11, 111001 -------------------------— More... | |
Gaudi::Property< double > | m_epsilon {this, "Epsilon", 2.5e-3, "Normalized emittance, unit: mm"} |
Gaudi::Property< double > | m_alphaPar {this, "AlfasParallel", 0., "Kissing angle (Radians)"} |
Gaudi::Property< double > | m_alphaX {this, "AlfaX", 295e-6} |
Gaudi::Property< double > | m_thetaX {this, "ThetaX", 295e-6} |
This AthenaTool computes geometrical shifts for the initial GenEvent vertices.
based on function from S.Fartoukh Phys.Rev.ST Accel.Beams 17 (2014) no.11, 111001
Definition at line 43 of file CrabKissingVertexPositioner.h.
|
private |
Enumerator | |
---|---|
GAUSS | |
FLAT | |
NSHAPES |
Definition at line 73 of file CrabKissingVertexPositioner.h.
Simulation::CrabKissingVertexPositioner::CrabKissingVertexPositioner | ( | const std::string & | t, |
const std::string & | n, | ||
const IInterface * | p | ||
) |
Constructor with parameters.
Constructor.
Definition at line 25 of file CrabKissingVertexPositioner.cxx.
|
virtualdefault |
Destructor.
|
private |
Definition at line 78 of file CrabKissingVertexPositioner.cxx.
|
private |
Definition at line 33 of file CrabKissingVertexPositioner.cxx.
|
finaloverride |
Athena algtool's Hooks.
Definition at line 69 of file CrabKissingVertexPositioner.cxx.
|
finaloverride |
computes the vertex displacement
Definition at line 103 of file CrabKissingVertexPositioner.cxx.
|
private |
Definition at line 87 of file CrabKissingVertexPositioner.cxx.
|
inlineprivate |
Definition at line 62 of file CrabKissingVertexPositioner.h.
|
finaloverride |
|
private |
Slot-local RNG.
Definition at line 69 of file CrabKissingVertexPositioner.h.
|
private |
Definition at line 79 of file CrabKissingVertexPositioner.h.
|
private |
Definition at line 80 of file CrabKissingVertexPositioner.h.
|
private |
Definition at line 67 of file CrabKissingVertexPositioner.h.
|
private |
parameters according to S.Fartoukh Phys.Rev.ST Accel.Beams 17 (2014) no.11, 111001 -------------------------—
Definition at line 77 of file CrabKissingVertexPositioner.h.
|
private |
Parameter in the Z distribution of the beamspot.
Definition at line 75 of file CrabKissingVertexPositioner.h.
|
private |
Definition at line 74 of file CrabKissingVertexPositioner.h.
|
private |
Definition at line 71 of file CrabKissingVertexPositioner.h.
|
private |
Definition at line 78 of file CrabKissingVertexPositioner.h.
|
private |
Definition at line 70 of file CrabKissingVertexPositioner.h.
|
private |
Definition at line 68 of file CrabKissingVertexPositioner.h.
|
private |
Definition at line 81 of file CrabKissingVertexPositioner.h.