SimTransport
PPSProtonTransport
interface
TotemTransport.h
Go to the documentation of this file.
1
#ifndef TOTEM_TRANSPORT
2
#define TOTEM_TRANSPORT
3
#include "
SimTransport/PPSProtonTransport/interface/BaseProtonTransport.h
"
4
#include "
SimTransport/TotemRPProtonTransportParametrization/interface/LHCOpticsApproximator.h
"
5
#include "
FWCore/Framework/interface/Event.h
"
6
#include "
FWCore/Framework/interface/EventSetup.h
"
7
#include "
FWCore/Framework/interface/ESHandle.h
"
8
#include "
FWCore/MessageLogger/interface/MessageLogger.h
"
9
10
#include "
FWCore/ParameterSet/interface/ParameterSet.h
"
11
#include "
FWCore/ParameterSet/interface/ConfigurationDescriptions.h
"
12
#include "
FWCore/ParameterSet/interface/ParameterSetDescription.h
"
13
#include "
SimDataFormats/GeneratorProducts/interface/HepMCProduct.h
"
14
#include "
SimGeneral/HepPDTRecord/interface/ParticleDataTable.h
"
15
16
#include <unordered_map>
17
#include <array>
18
19
namespace
CLHEP
{
20
class
HepRandomEngine;
21
}
22
23
class
TotemTransport
:
public
BaseProtonTransport
{
24
public
:
25
TotemTransport
(
const
edm::ParameterSet
& ps);
26
~TotemTransport
()
override
{};
27
// look for scattered protons, propagates them, add them to the event
28
void
process
(
const
HepMC::GenEvent
*
ev
,
const
edm::EventSetup
& es, CLHEP::HepRandomEngine* engine)
override
;
29
30
private
:
31
bool
transportProton
(
const
HepMC::GenParticle
*);
32
LHCOpticsApproximator
*
ReadParameterization
(
const
std::string
&,
const
std::string
&);
33
34
LHCOpticsApproximator
*
m_aprox_ip_150_r
=
nullptr
;
35
LHCOpticsApproximator
*
m_aprox_ip_150_l
=
nullptr
;
36
37
std::string
m_model_ip_150_r_name
;
38
std::string
m_model_ip_150_l_name
;
39
40
double
m_beampipe_aperture_radius
;
41
double
m_fEtacut
;
42
double
m_fMomentumMin
;
43
};
44
#endif
ConfigurationDescriptions.h
MessageLogger.h
ESHandle.h
LHCOpticsApproximator.h
TotemTransport::m_model_ip_150_r_name
std::string m_model_ip_150_r_name
Definition:
TotemTransport.h:37
TotemTransport::m_aprox_ip_150_l
LHCOpticsApproximator * m_aprox_ip_150_l
Definition:
TotemTransport.h:35
TotemTransport::m_fMomentumMin
double m_fMomentumMin
Definition:
TotemTransport.h:42
TotemTransport::~TotemTransport
~TotemTransport() override
Definition:
TotemTransport.h:26
HepMC::GenEvent
Definition:
hepmc_rootio.cc:9
ParameterSetDescription.h
CLHEP
Definition:
CocoaGlobals.h:27
edm::ParameterSet
Definition:
ParameterSet.h:47
Event.h
TotemTransport::m_model_ip_150_l_name
std::string m_model_ip_150_l_name
Definition:
TotemTransport.h:38
ParticleDataTable.h
TotemTransport::TotemTransport
TotemTransport(const edm::ParameterSet &ps)
Definition:
TotemTransport.cc:10
BaseProtonTransport.h
TotemTransport::transportProton
bool transportProton(const HepMC::GenParticle *)
Definition:
TotemTransport.cc:84
BaseProtonTransport
Definition:
BaseProtonTransport.h:17
edm::EventSetup
Definition:
EventSetup.h:58
AlCaHLTBitMon_QueryRunRegistry.string
string string
Definition:
AlCaHLTBitMon_QueryRunRegistry.py:256
LHCOpticsApproximator
Class finds the parametrisation of MADX proton transport and transports the protons according to it 5...
Definition:
LHCOpticsApproximator.h:29
TotemTransport::m_aprox_ip_150_r
LHCOpticsApproximator * m_aprox_ip_150_r
Definition:
TotemTransport.h:34
GenParticle.GenParticle
GenParticle
Definition:
GenParticle.py:18
ev
bool ev
Definition:
Hydjet2Hadronizer.cc:97
EventSetup.h
TotemTransport::process
void process(const HepMC::GenEvent *ev, const edm::EventSetup &es, CLHEP::HepRandomEngine *engine) override
Definition:
TotemTransport.cc:51
TotemTransport::m_beampipe_aperture_radius
double m_beampipe_aperture_radius
Definition:
TotemTransport.h:40
TotemTransport
Definition:
TotemTransport.h:23
ParameterSet.h
HepMCProduct.h
TotemTransport::ReadParameterization
LHCOpticsApproximator * ReadParameterization(const std::string &, const std::string &)
Definition:
TotemTransport.cc:178
TotemTransport::m_fEtacut
double m_fEtacut
Definition:
TotemTransport.h:41
Generated for CMSSW Reference Manual by
1.8.16