#include <BaseProtonTransport.h>
Public Member Functions | |
void | addPartToHepMC (const HepMC::GenEvent *, HepMC::GenEvent *) |
void | ApplyBeamCorrection (HepMC::GenParticle *p) |
void | ApplyBeamCorrection (TLorentzVector &p) |
BaseProtonTransport (const edm::ParameterSet &iConfig) | |
double | beamEnergy () |
double | beamMomentum () |
void | clear () |
std::vector< LHCTransportLink > & | getCorrespondenceMap () |
virtual void | process (const HepMC::GenEvent *ev, const edm::EventSetup &es, CLHEP::HepRandomEngine *engine)=0 |
virtual | ~BaseProtonTransport () |
Protected Types | |
enum | TransportMode { TransportMode::HECTOR, TransportMode::TOTEM, TransportMode::OPTICALFUNCTIONS } |
Protected Member Functions | |
void | setBeamFileNames (const std::string &nam1, const std::string &nam2) |
void | setBeamParameters (double stx, double sty, double sx, double sy, double se) |
void | setCrossingAngles (double cx45, double cx56, double cy45, double cy56) |
Protected Attributes | |
bool | bApplyZShift_ |
std::string | beam1Filename_ {""} |
std::string | beam2Filename_ {""} |
CLHEP::HepRandomEngine * | engine_ {nullptr} |
double | etaCut_ |
double | fCrossingAngleX_45_ {0.0} |
double | fCrossingAngleX_56_ {0.0} |
double | fCrossingAngleY_45_ {0.0} |
double | fCrossingAngleY_56_ {0.0} |
double | fPPSRegionStart_45_ |
double | fPPSRegionStart_56_ |
std::map< unsigned int, TLorentzVector > | m_beamPart |
std::vector< LHCTransportLink > | m_CorrespondenceMap |
std::map< unsigned int, double > | m_xAtTrPoint |
std::map< unsigned int, double > | m_yAtTrPoint |
TransportMode | MODE |
double | momentumCut_ |
bool | produceHitsRelativeToBeam_ |
bool | useBeamPositionFromLHCInfo_ |
bool | verbosity_ |
Private Attributes | |
double | beamEnergy_ |
double | beamMomentum_ |
double | m_sig_E {0.0} |
double | m_sigmaSTX {0.0} |
double | m_sigmaSTY {0.0} |
double | m_sigmaSX {0.0} |
double | m_sigmaSY {0.0} |
Definition at line 17 of file BaseProtonTransport.h.
|
strongprotected |
Enumerator | |
---|---|
HECTOR | |
TOTEM | |
OPTICALFUNCTIONS |
Definition at line 56 of file BaseProtonTransport.h.
BaseProtonTransport::BaseProtonTransport | ( | const edm::ParameterSet & | iConfig | ) |
Definition at line 7 of file BaseProtonTransport.cc.
References beamEnergy_, beamMomentum_, ProtonMassSQ, and mathSSE::sqrt().
|
virtual |
void BaseProtonTransport::addPartToHepMC | ( | const HepMC::GenEvent * | in_evt, |
HepMC::GenEvent * | evt | ||
) |
Definition at line 59 of file BaseProtonTransport.cc.
References first, fPPSRegionStart_45_, fPPSRegionStart_56_, GenParticle::GenParticle, mps_splice::line, LogDebug, m_beamPart, m_CorrespondenceMap, m_to_mm, m_xAtTrPoint, m_yAtTrPoint, edm::second(), protons_cff::time, and verbosity_.
void BaseProtonTransport::ApplyBeamCorrection | ( | HepMC::GenParticle * | p | ) |
Definition at line 22 of file BaseProtonTransport.cc.
References AlCaHLTBitMon_ParallelJobs::p.
Referenced by TotemTransport::transportProton().
void BaseProtonTransport::ApplyBeamCorrection | ( | TLorentzVector & | p | ) |
Definition at line 32 of file BaseProtonTransport.cc.
References funct::cos(), MillePedeFileConverter_cfg::e, HCALHighEnergyHPDFilter_cfi::energy, engine_, fCrossingAngleX_45_, fCrossingAngleX_56_, m_sig_E, m_sigmaSTX, m_sigmaSTY, MODE, AlCaHLTBitMon_ParallelJobs::p, funct::pow(), ProtonMassSQ, funct::sin(), mathSSE::sqrt(), TOTEM, and urad.
|
inline |
Definition at line 32 of file BaseProtonTransport.h.
References beamEnergy_.
Referenced by HectorTransport::transportProton().
|
inline |
Definition at line 33 of file BaseProtonTransport.h.
References beamMomentum_.
Referenced by OpticalFunctionsTransport::transportProton(), and HectorTransport::transportProton().
void BaseProtonTransport::clear | ( | void | ) |
Definition at line 112 of file BaseProtonTransport.cc.
References m_beamPart, m_CorrespondenceMap, m_xAtTrPoint, and m_yAtTrPoint.
Referenced by OpticalFunctionsTransport::process(), TotemTransport::process(), HectorTransport::process(), and ~BaseProtonTransport().
|
inline |
Definition at line 22 of file BaseProtonTransport.h.
References m_CorrespondenceMap.
|
pure virtual |
Implemented in HectorTransport, OpticalFunctionsTransport, and TotemTransport.
|
inlineprotected |
Definition at line 36 of file BaseProtonTransport.h.
References beam1Filename_, and beam2Filename_.
Referenced by HectorTransport::HectorTransport(), and TotemTransport::TotemTransport().
|
inlineprotected |
Definition at line 41 of file BaseProtonTransport.h.
References m_sig_E, m_sigmaSTX, m_sigmaSTY, m_sigmaSX, m_sigmaSY, fftjetcommon_cfi::sx, and fftjetcommon_cfi::sy.
Referenced by HectorTransport::HectorTransport(), and TotemTransport::TotemTransport().
|
inlineprotected |
Definition at line 49 of file BaseProtonTransport.h.
References fCrossingAngleX_45_, fCrossingAngleX_56_, fCrossingAngleY_45_, and fCrossingAngleY_56_.
Referenced by HectorTransport::HectorTransport(), and TotemTransport::TotemTransport().
|
protected |
Definition at line 66 of file BaseProtonTransport.h.
|
protected |
Definition at line 70 of file BaseProtonTransport.h.
Referenced by setBeamFileNames(), HectorTransport::setBeamLine(), and TotemTransport::TotemTransport().
|
protected |
Definition at line 71 of file BaseProtonTransport.h.
Referenced by setBeamFileNames(), HectorTransport::setBeamLine(), and TotemTransport::TotemTransport().
|
private |
Definition at line 85 of file BaseProtonTransport.h.
Referenced by BaseProtonTransport(), and beamEnergy().
|
private |
Definition at line 84 of file BaseProtonTransport.h.
Referenced by BaseProtonTransport(), and beamMomentum().
|
protected |
Definition at line 59 of file BaseProtonTransport.h.
Referenced by ApplyBeamCorrection(), TotemTransport::process(), OpticalFunctionsTransport::process(), and HectorTransport::process().
|
protected |
Definition at line 80 of file BaseProtonTransport.h.
Referenced by OpticalFunctionsTransport::process(), TotemTransport::process(), and HectorTransport::process().
|
protected |
Definition at line 75 of file BaseProtonTransport.h.
Referenced by ApplyBeamCorrection(), setCrossingAngles(), TotemTransport::transportProton(), and HectorTransport::transportProton().
|
protected |
Definition at line 76 of file BaseProtonTransport.h.
Referenced by ApplyBeamCorrection(), setCrossingAngles(), TotemTransport::transportProton(), and HectorTransport::transportProton().
|
protected |
Definition at line 77 of file BaseProtonTransport.h.
Referenced by setCrossingAngles(), and HectorTransport::transportProton().
|
protected |
Definition at line 78 of file BaseProtonTransport.h.
Referenced by setCrossingAngles(), and HectorTransport::transportProton().
|
protected |
Definition at line 73 of file BaseProtonTransport.h.
Referenced by addPartToHepMC(), HectorTransport::setBeamLine(), OpticalFunctionsTransport::transportProton(), TotemTransport::transportProton(), and HectorTransport::transportProton().
|
protected |
Definition at line 74 of file BaseProtonTransport.h.
Referenced by addPartToHepMC(), HectorTransport::setBeamLine(), TotemTransport::TotemTransport(), OpticalFunctionsTransport::transportProton(), TotemTransport::transportProton(), and HectorTransport::transportProton().
|
protected |
Definition at line 61 of file BaseProtonTransport.h.
Referenced by addPartToHepMC(), clear(), OpticalFunctionsTransport::process(), TotemTransport::process(), HectorTransport::process(), TotemTransport::transportProton(), OpticalFunctionsTransport::transportProton(), and HectorTransport::transportProton().
|
protected |
Definition at line 60 of file BaseProtonTransport.h.
Referenced by addPartToHepMC(), clear(), and getCorrespondenceMap().
|
private |
Definition at line 91 of file BaseProtonTransport.h.
Referenced by ApplyBeamCorrection(), and setBeamParameters().
|
private |
Definition at line 87 of file BaseProtonTransport.h.
Referenced by ApplyBeamCorrection(), and setBeamParameters().
|
private |
Definition at line 88 of file BaseProtonTransport.h.
Referenced by ApplyBeamCorrection(), and setBeamParameters().
|
private |
Definition at line 89 of file BaseProtonTransport.h.
Referenced by setBeamParameters().
|
private |
Definition at line 90 of file BaseProtonTransport.h.
Referenced by setBeamParameters().
|
protected |
Definition at line 62 of file BaseProtonTransport.h.
Referenced by addPartToHepMC(), clear(), OpticalFunctionsTransport::transportProton(), TotemTransport::transportProton(), and HectorTransport::transportProton().
|
protected |
Definition at line 63 of file BaseProtonTransport.h.
Referenced by addPartToHepMC(), clear(), OpticalFunctionsTransport::transportProton(), TotemTransport::transportProton(), and HectorTransport::transportProton().
|
protected |
Definition at line 57 of file BaseProtonTransport.h.
Referenced by ApplyBeamCorrection(), HectorTransport::HectorTransport(), OpticalFunctionsTransport::OpticalFunctionsTransport(), and TotemTransport::TotemTransport().
|
protected |
Definition at line 81 of file BaseProtonTransport.h.
Referenced by OpticalFunctionsTransport::process(), TotemTransport::process(), and HectorTransport::process().
|
protected |
Definition at line 68 of file BaseProtonTransport.h.
Referenced by OpticalFunctionsTransport::transportProton(), and HectorTransport::transportProton().
|
protected |
Definition at line 67 of file BaseProtonTransport.h.
Referenced by OpticalFunctionsTransport::transportProton(), and HectorTransport::transportProton().
|
protected |
Definition at line 65 of file BaseProtonTransport.h.
Referenced by addPartToHepMC(), HectorTransport::setBeamLine(), OpticalFunctionsTransport::transportProton(), TotemTransport::transportProton(), and HectorTransport::transportProton().