#include <ProtonTransport.h>
Public Member Functions | |
void | addPartToHepMC (HepMC::GenEvent *) |
void | ApplyBeamCorrection (HepMC::GenParticle *p) |
void | ApplyBeamCorrection (TLorentzVector &p) |
void | clear () |
std::vector< LHCTransportLink > & | getCorrespondenceMap () |
virtual void | process (const HepMC::GenEvent *ev, const edm::EventSetup &es, CLHEP::HepRandomEngine *engine)=0 |
ProtonTransport () | |
virtual | ~ProtonTransport () |
Protected Types | |
enum | TransportMode { TransportMode::HECTOR, TransportMode::TOTEM } |
Protected Attributes | |
bool | bApplyZShift |
CLHEP::HepRandomEngine * | engine |
double | fBeamEnergy |
double | fBeamMomentum |
double | fBeamXatIP |
double | fBeamYatIP |
double | fCrossingAngle_45 |
double | fCrossingAngle_56 |
double | fPPSRegionStart_45 |
double | fPPSRegionStart_56 |
double | fVtxMeanX |
double | fVtxMeanY |
double | fVtxMeanZ |
std::map< unsigned int, TLorentzVector > | m_beamPart |
std::vector< LHCTransportLink > | m_CorrespondenceMap |
double | m_sig_E |
double | m_sigmaSTX |
double | m_sigmaSTY |
double | m_sigmaSX |
double | m_sigmaSY |
bool | m_verbosity |
std::map< unsigned int, double > | m_xAtTrPoint |
std::map< unsigned int, double > | m_yAtTrPoint |
TransportMode | MODE |
int | NEvent |
Definition at line 16 of file ProtonTransport.h.
|
strongprotected |
ProtonTransport::ProtonTransport | ( | ) |
Definition at line 7 of file ProtonTransport.cc.
|
virtual |
Definition at line 8 of file ProtonTransport.cc.
void ProtonTransport::addPartToHepMC | ( | HepMC::GenEvent * | evt | ) |
Definition at line 14 of file ProtonTransport.cc.
References plotBeamSpotDB::first, fPPSRegionStart_45, fPPSRegionStart_56, GenParticle::GenParticle, mps_splice::line, LogDebug, m_beamPart, m_CorrespondenceMap, m_to_mm, m_verbosity, m_xAtTrPoint, m_yAtTrPoint, NEvent, edm::second(), and ntuplemaker::time.
Referenced by TotemTransport::process(), and HectorTransport::process().
void ProtonTransport::ApplyBeamCorrection | ( | HepMC::GenParticle * | p | ) |
Definition at line 64 of file ProtonTransport.cc.
Referenced by TotemTransport::transportProton(), and HectorTransport::transportProton().
void ProtonTransport::ApplyBeamCorrection | ( | TLorentzVector & | p | ) |
Definition at line 74 of file ProtonTransport.cc.
References funct::cos(), MillePedeFileConverter_cfg::e, randomXiThetaGunProducer_cfi::energy, engine, fCrossingAngle_45, fCrossingAngle_56, m_sig_E, m_sigmaSTX, m_sigmaSTY, MODE, AlCaHLTBitMon_ParallelJobs::p, Pi, funct::pow(), ProtonMassSQ, funct::sin(), mathSSE::sqrt(), theta(), TOTEM, and urad.
void ProtonTransport::clear | ( | void | ) |
Definition at line 9 of file ProtonTransport.cc.
References m_beamPart, m_xAtTrPoint, and m_yAtTrPoint.
Referenced by PPSSimTrackProducer::produce(), HectorTransport::~HectorTransport(), and TotemTransport::~TotemTransport().
|
inline |
Definition at line 20 of file ProtonTransport.h.
References hitfit::clear(), ev, GenParticle::GenParticle, AlCaHLTBitMon_ParallelJobs::p, and LaserDQM_cfg::process.
Referenced by PPSSimTrackProducer::produce().
|
pure virtual |
Implemented in HectorTransport, and TotemTransport.
Referenced by PPSSimTrackProducer::produce().
|
protected |
Definition at line 34 of file ProtonTransport.h.
Referenced by HectorTransport::HectorTransport(), TotemTransport::TotemTransport(), and HectorTransport::transportProton().
|
protected |
Definition at line 32 of file ProtonTransport.h.
Referenced by ApplyBeamCorrection(), TotemTransport::process(), and HectorTransport::process().
|
protected |
Definition at line 56 of file ProtonTransport.h.
Referenced by HectorTransport::HectorTransport(), TotemTransport::TotemTransport(), and HectorTransport::transportProton().
|
protected |
Definition at line 55 of file ProtonTransport.h.
Referenced by HectorTransport::HectorTransport(), TotemTransport::TotemTransport(), and HectorTransport::transportProton().
|
protected |
Definition at line 53 of file ProtonTransport.h.
Referenced by HectorTransport::HectorTransport(), TotemTransport::TotemTransport(), TotemTransport::transportProton(), and HectorTransport::transportProton().
|
protected |
Definition at line 54 of file ProtonTransport.h.
Referenced by HectorTransport::HectorTransport(), TotemTransport::TotemTransport(), TotemTransport::transportProton(), and HectorTransport::transportProton().
|
protected |
Definition at line 37 of file ProtonTransport.h.
Referenced by ApplyBeamCorrection(), HectorTransport::HectorTransport(), TotemTransport::TotemTransport(), TotemTransport::transportProton(), and HectorTransport::transportProton().
|
protected |
Definition at line 38 of file ProtonTransport.h.
Referenced by ApplyBeamCorrection(), HectorTransport::HectorTransport(), TotemTransport::TotemTransport(), TotemTransport::transportProton(), and HectorTransport::transportProton().
|
protected |
Definition at line 36 of file ProtonTransport.h.
Referenced by addPartToHepMC(), HectorTransport::HectorTransport(), and TotemTransport::TotemTransport().
|
protected |
Definition at line 35 of file ProtonTransport.h.
Referenced by addPartToHepMC(), HectorTransport::HectorTransport(), and TotemTransport::TotemTransport().
|
protected |
Definition at line 50 of file ProtonTransport.h.
Referenced by HectorTransport::HectorTransport(), TotemTransport::TotemTransport(), TotemTransport::transportProton(), and HectorTransport::transportProton().
|
protected |
Definition at line 51 of file ProtonTransport.h.
Referenced by HectorTransport::HectorTransport(), TotemTransport::TotemTransport(), TotemTransport::transportProton(), and HectorTransport::transportProton().
|
protected |
Definition at line 52 of file ProtonTransport.h.
Referenced by HectorTransport::HectorTransport(), TotemTransport::TotemTransport(), and TotemTransport::transportProton().
|
protected |
Definition at line 41 of file ProtonTransport.h.
Referenced by addPartToHepMC(), clear(), HectorTransport::genProtonsLoop(), TotemTransport::process(), TotemTransport::transportProton(), and HectorTransport::transportProton().
|
protected |
Definition at line 40 of file ProtonTransport.h.
Referenced by addPartToHepMC().
|
protected |
Definition at line 49 of file ProtonTransport.h.
Referenced by ApplyBeamCorrection(), HectorTransport::HectorTransport(), and TotemTransport::TotemTransport().
|
protected |
Definition at line 47 of file ProtonTransport.h.
Referenced by ApplyBeamCorrection(), HectorTransport::HectorTransport(), and TotemTransport::TotemTransport().
|
protected |
Definition at line 48 of file ProtonTransport.h.
Referenced by ApplyBeamCorrection(), HectorTransport::HectorTransport(), and TotemTransport::TotemTransport().
|
protected |
Definition at line 45 of file ProtonTransport.h.
Referenced by HectorTransport::HectorTransport().
|
protected |
Definition at line 46 of file ProtonTransport.h.
Referenced by HectorTransport::HectorTransport().
|
protected |
Definition at line 31 of file ProtonTransport.h.
Referenced by addPartToHepMC(), HectorTransport::HectorTransport(), HectorTransport::setBeamLine(), and HectorTransport::transportProton().
|
protected |
Definition at line 42 of file ProtonTransport.h.
Referenced by addPartToHepMC(), clear(), TotemTransport::transportProton(), and HectorTransport::transportProton().
|
protected |
Definition at line 43 of file ProtonTransport.h.
Referenced by addPartToHepMC(), clear(), TotemTransport::transportProton(), and HectorTransport::transportProton().
|
protected |
Definition at line 29 of file ProtonTransport.h.
Referenced by ApplyBeamCorrection(), HectorTransport::HectorTransport(), and TotemTransport::TotemTransport().
|
protected |
Definition at line 30 of file ProtonTransport.h.
Referenced by addPartToHepMC().