Implementation of a forward detector layer (disk). More...
#include <ForwardSimplifiedGeometry.h>
Public Member Functions | |
ForwardSimplifiedGeometry (double z) | |
Constructor. More... | |
ForwardSimplifiedGeometry (ForwardSimplifiedGeometry &&)=default | |
Move constructor. More... | |
const double | getMagneticFieldZ (const math::XYZTLorentzVector &position) const override |
Return magnetic field (field only has Z component!) on the forward layer. More... | |
const double | getThickness (const math::XYZTLorentzVector &position) const override |
Return thickness of the forward layer at a given position. More... | |
const double | getThickness (const math::XYZTLorentzVector &position, const math::XYZTLorentzVector &momentum) const override |
Return thickness of the forward layer at a given position, also considering the incident angle. More... | |
const double | getZ () const |
Return z-position of the forward layer. More... | |
bool | isForward () const override |
Returns true since class for forward layer. More... | |
~ForwardSimplifiedGeometry () | |
Default destructor. More... | |
Public Member Functions inherited from fastsim::SimplifiedGeometry | |
CaloType | getCaloType () const |
Hack to interface "old" Calorimetry with "new" Tracker. More... | |
const DetLayer * | getDetLayer () const |
Return pointer to the assigned active layer (if any). More... | |
const double | getGeomProperty () const |
Return geometric attribute of the layer. More... | |
const std::vector< InteractionModel * > & | getInteractionModels () const |
Return the vector of all interaction models that are assigned with a layer. More... | |
const double | getNuclearInteractionThicknessFactor () const |
Some layers have a different thickness for nuclear interactions. More... | |
int | index () const |
Return index of this layer (layers are numbered according to their position in the detector). More... | |
void | setCaloType (CaloType type) |
Hack to interface "old" Calorimetry with "new" Tracker. More... | |
void | setIndex (int index) |
Set index of this layer (layers are numbered according to their position in the detector). More... | |
SimplifiedGeometry (double geomProperty) | |
Default constructor. More... | |
~SimplifiedGeometry () | |
Default destructor. More... | |
Additional Inherited Members | |
Public Types inherited from fastsim::SimplifiedGeometry | |
enum | CaloType { NONE, TRACKERBOUNDARY, PRESHOWER1, PRESHOWER2, ECAL, HCAL, VFCAL } |
Hack to interface "old" Calorimetry with "new" Tracker. More... | |
Protected Attributes inherited from fastsim::SimplifiedGeometry | |
CaloType | caloType_ |
Hack to interface "old" Calorimetry with "new" Tracker. More... | |
const DetLayer * | detLayer_ |
Return pointer to the assigned active layer (if any). More... | |
double | geomProperty_ |
Geometric property of the layer: radius (barrel layer) / position z (forward layer) More... | |
int | index_ |
Return index of this layer (layers are numbered according to their position in the detector). The (usual) order is increasing 'geomProperty'. More... | |
std::vector< InteractionModel * > | interactionModels_ |
Vector of all interaction models that are assigned with a layer. More... | |
std::unique_ptr< TH1F > | magneticFieldHist_ |
Histogram that stores the size of the magnetic field along the layer. More... | |
double | nuclearInteractionThicknessFactor_ |
Some layers have a different thickness for nuclear interactions. More... | |
std::unique_ptr< TH1F > | thicknessHist_ |
Histogram that stores the tickness (radLengths) along the layer. More... | |
Implementation of a forward detector layer (disk).
A disk with a position in Z and a thickness (in radiation length). The layer is regarded to have an infinite radius, however the thickness can vary (as a function of the radius) and also be 0.
Definition at line 23 of file ForwardSimplifiedGeometry.h.
|
inline |
Constructor.
Create a forward layer with a given position (along z-axis).
radius | The z-position of the layer (in cm). |
Definition at line 31 of file ForwardSimplifiedGeometry.h.
|
default |
Move constructor.
|
inline |
|
inlineoverridevirtual |
Return magnetic field (field only has Z component!) on the forward layer.
Returns the magnetic field along the forward layer at a specified position (radial symmetric).
position | A position which has to be on the forward layer. |
Implements fastsim::SimplifiedGeometry.
Definition at line 77 of file ForwardSimplifiedGeometry.h.
References fastsim::SimplifiedGeometry::magneticFieldHist_.
|
inlineoverridevirtual |
Return thickness of the forward layer at a given position.
Returns the thickness of the forward layer (in radiation length) at a specified position since the thickness can vary as a function of the radius.
position | A position which has to be on the forward layer. |
Implements fastsim::SimplifiedGeometry.
Definition at line 53 of file ForwardSimplifiedGeometry.h.
References fastsim::SimplifiedGeometry::thicknessHist_.
Referenced by getThickness().
|
inlineoverridevirtual |
Return thickness of the forward layer at a given position, also considering the incident angle.
Returns the thickness of the forward layer (in radiation length) at a specified position and a given incident angle since the thickness can vary as a function of the radius.
position | A position which has to be on the forward layer. |
momentum | The momentum of the incident particle. |
Implements fastsim::SimplifiedGeometry.
Definition at line 66 of file ForwardSimplifiedGeometry.h.
References getThickness().
|
inline |
Return z-position of the forward layer.
Definition at line 44 of file ForwardSimplifiedGeometry.h.
References fastsim::SimplifiedGeometry::geomProperty_.
Referenced by fastsim::Trajectory::nextCrossingTimeC().
|
inlineoverridevirtual |
Returns true since class for forward layer.
Function to easily destinguish barrel from forward layers (which both inherit from ForwardSimplifiedGeometry).
Implements fastsim::SimplifiedGeometry.
Definition at line 87 of file ForwardSimplifiedGeometry.h.