Analysis Software
Documentation for sPHENIX simulation software
|
Particle for testing acts-fatras core functionality. More...
#include <acts-fatras/blob/master/Tests/Common/Particle.hpp>
Public Member Functions | |
Particle ()=default | |
Default. | |
Particle (const Acts::Vector3D &position, const Acts::Vector3D &momentum, double m, double q, pdg_type pdg=0, barcode_type barcode=0, double startTime=0.) | |
Construct a particle consistently. | |
void | setLimits (double x0Limit, double l0Limit, double timeLimit=std::numeric_limits< double >::max()) |
Set the limits. | |
void | scatter (Acts::Vector3D nmomentum) |
Update the particle with applying energy loss. | |
void | energyLoss (double deltaE) |
Update the particle with applying energy loss. | |
bool | update (const Acts::Vector3D &position, const Acts::Vector3D &momentum, double deltaPahtX0=0., double deltaPahtL0=0., double deltaTime=0.) |
Update the particle with a new position and momentum, this corresponds to a step update. | |
const Acts::Vector3D & | position () const |
Access methods: position. | |
const Acts::Vector3D & | momentum () const |
Access methods: momentum. | |
const double | p () const |
Access methods: p. | |
const double | pT () const |
Access methods: pT. | |
const double | E () const |
Access methods: E. | |
const double | m () const |
Access methods: m. | |
const double | beta () const |
Access methods: beta. | |
const double | gamma () const |
Access methods: gamma. | |
const double | q () const |
Access methods: charge. | |
const pdg_type | pdg () const |
Access methods: pdg code. | |
const barcode_type | barcode () const |
Access methods: barcode. | |
const double | pathInX0 () const |
Access methods: path/X0. | |
const double | limitInX0 () const |
Access methods: limit/X0. | |
const double | pathInL0 () const |
Access methods: pdg code. | |
const double | limitInL0 () const |
Access methods: barcode. | |
operator bool () | |
boolean operator indicating the particle to be alive | |
Private Attributes | |
Acts::Vector3D | m_position = Acts::Vector3D(0., 0., 0.) |
kinematic info | |
Acts::Vector3D | m_momentum = Acts::Vector3D(0., 0., 0.) |
kinematic info | |
double | m_m = 0. |
particle mass | |
double | m_E = 0. |
total energy | |
double | m_q = 0. |
the charge | |
double | m_beta = 0. |
relativistic beta factor | |
double | m_gamma = 1. |
relativistic gamma factor | |
double | m_p = 0. |
momentum magnitude | |
double | m_pT = 0. |
transverse momentum magnitude | |
pdg_type | m_pdg = 0 |
pdg code of the particle | |
barcode_type | m_barcode = 0 |
barcode of the particle | |
double | m_pathInX0 = 0. |
passed path in X0 | |
double | m_limitInX0 = std::numeric_limits<double>::max() |
path limit in X0 | |
double | m_pathInL0 = 0. |
passed path in L0 | |
double | m_limitInL0 = std::numeric_limits<double>::max() |
path limit in X0 | |
double | m_timeStamp = 0. |
passed time elapsed | |
double | m_timeLimit = std::numeric_limits<double>::max() |
bool | m_alive = true |
the particle is alive | |
Particle for testing acts-fatras core functionality.
Definition at line 32 of file Particle.hpp.
View newest version in sPHENIX GitHub at line 32 of file Particle.hpp
|
default |
Default.
|
inline |
Construct a particle consistently.
pposition | The particle position at construction |
pmomentum | The particle momentum at construction |
pm | The particle mass |
pq | The partilce charge |
pbarcode | The particle barcode |
Definition at line 45 of file Particle.hpp.
View newest version in sPHENIX GitHub at line 45 of file Particle.hpp
|
inline |
Access methods: barcode.
Definition at line 165 of file Particle.hpp.
View newest version in sPHENIX GitHub at line 165 of file Particle.hpp
References m_barcode.
|
inline |
Access methods: beta.
Definition at line 153 of file Particle.hpp.
View newest version in sPHENIX GitHub at line 153 of file Particle.hpp
References m_beta.
Referenced by airy2(), airy2d(), dokinematics(), genevent(), getqvec(), py4jet(), py6frm(), pyadsh(), pyapps(), pycjdc(), pygaga(), pygbeh(), pyhext(), pyinom(), pymihk(), pymsin(), pynjdc(), pyprep(), pysfdc(), pythrg(), and pywidt().
|
inline |
Access methods: E.
Definition at line 147 of file Particle.hpp.
View newest version in sPHENIX GitHub at line 147 of file Particle.hpp
References m_E.
Referenced by Fatras::Test::BOOST_DATA_TEST_CASE().
|
inline |
Update the particle with applying energy loss.
deltaE | is the energy loss to be applied |
Definition at line 79 of file Particle.hpp.
View newest version in sPHENIX GitHub at line 79 of file Particle.hpp
References m_alive, m_beta, m_E, m_gamma, m_m, m_momentum, m_p, m_pT, and Acts::VectorHelpers::perp().
|
inline |
Access methods: gamma.
Definition at line 156 of file Particle.hpp.
View newest version in sPHENIX GitHub at line 156 of file Particle.hpp
References m_gamma.
Referenced by pyveto().
|
inline |
Access methods: barcode.
Definition at line 177 of file Particle.hpp.
View newest version in sPHENIX GitHub at line 177 of file Particle.hpp
References m_limitInL0.
|
inline |
Access methods: limit/X0.
Definition at line 171 of file Particle.hpp.
View newest version in sPHENIX GitHub at line 171 of file Particle.hpp
References m_limitInX0.
|
inline |
Access methods: m.
Definition at line 150 of file Particle.hpp.
View newest version in sPHENIX GitHub at line 150 of file Particle.hpp
References m_m.
Referenced by Fatras::Test::BOOST_DATA_TEST_CASE().
|
inline |
Access methods: momentum.
Definition at line 138 of file Particle.hpp.
View newest version in sPHENIX GitHub at line 138 of file Particle.hpp
References m_momentum.
Referenced by Fatras::Test::BOOST_DATA_TEST_CASE(), and update().
|
inline |
boolean operator indicating the particle to be alive
Definition at line 180 of file Particle.hpp.
View newest version in sPHENIX GitHub at line 180 of file Particle.hpp
References m_alive.
|
inline |
Access methods: p.
Definition at line 141 of file Particle.hpp.
View newest version in sPHENIX GitHub at line 141 of file Particle.hpp
References m_p.
Referenced by Fatras::Test::BOOST_DATA_TEST_CASE().
|
inline |
Access methods: pdg code.
Definition at line 174 of file Particle.hpp.
View newest version in sPHENIX GitHub at line 174 of file Particle.hpp
References m_limitInX0.
|
inline |
Access methods: path/X0.
Definition at line 168 of file Particle.hpp.
View newest version in sPHENIX GitHub at line 168 of file Particle.hpp
References m_pathInX0.
|
inline |
Access methods: pdg code.
Definition at line 162 of file Particle.hpp.
View newest version in sPHENIX GitHub at line 162 of file Particle.hpp
References m_pdg.
Referenced by Fatras::Test::BOOST_DATA_TEST_CASE().
|
inline |
Access methods: position.
Definition at line 135 of file Particle.hpp.
View newest version in sPHENIX GitHub at line 135 of file Particle.hpp
References m_position.
Referenced by update().
|
inline |
Access methods: pT.
Definition at line 144 of file Particle.hpp.
View newest version in sPHENIX GitHub at line 144 of file Particle.hpp
References m_pT.
|
inline |
Access methods: charge.
Definition at line 159 of file Particle.hpp.
View newest version in sPHENIX GitHub at line 159 of file Particle.hpp
References m_q.
Referenced by doinstatescat(), fg(), fgp(), getinsudared(), getpdf(), getpdfxint(), getpdfxintexact(), insudaint(), intpgghigh(), intpgglow(), intpqghigh(), intpqglow(), intpqq(), makebranch(), pyct5l(), pyct5m(), pycteq(), pyfeyn(), pyhistfe(), pymirm(), pyreco(), pyslha(), and splitfncint().
|
inline |
Update the particle with applying energy loss.
deltaE | is the energy loss to be applied |
Definition at line 71 of file Particle.hpp.
View newest version in sPHENIX GitHub at line 71 of file Particle.hpp
References m_momentum, m_pT, testing::internal::move(), and Acts::VectorHelpers::perp().
|
inline |
Set the limits.
x0Limit | the limit in X0 to be passed |
l0Limit | the limit in L0 to be passed |
timeLimit | the readout time limit to be passed |
Definition at line 61 of file Particle.hpp.
View newest version in sPHENIX GitHub at line 61 of file Particle.hpp
References m_limitInL0, m_limitInX0, and m_timeLimit.
|
inline |
Update the particle with a new position and momentum, this corresponds to a step update.
position | New position after update |
momentum | New momentum after update |
deltaPathX0 | passed since last step |
deltaPathL0 | passed since last step |
deltaTime | The time elapsed |
Definition at line 109 of file Particle.hpp.
View newest version in sPHENIX GitHub at line 109 of file Particle.hpp
References m_alive, m_beta, m_E, m_gamma, m_limitInL0, m_limitInX0, m_m, m_momentum, m_p, m_pathInL0, m_pathInX0, m_position, m_pT, m_timeLimit, m_timeStamp, momentum(), Acts::VectorHelpers::perp(), and position().
|
private |
the particle is alive
Definition at line 205 of file Particle.hpp.
View newest version in sPHENIX GitHub at line 205 of file Particle.hpp
Referenced by energyLoss(), operator bool(), and update().
|
private |
barcode of the particle
Definition at line 194 of file Particle.hpp.
View newest version in sPHENIX GitHub at line 194 of file Particle.hpp
Referenced by barcode().
|
private |
relativistic beta factor
Definition at line 189 of file Particle.hpp.
View newest version in sPHENIX GitHub at line 189 of file Particle.hpp
Referenced by beta(), energyLoss(), Particle(), and update().
|
private |
total energy
Definition at line 187 of file Particle.hpp.
View newest version in sPHENIX GitHub at line 187 of file Particle.hpp
Referenced by E(), energyLoss(), Particle(), and update().
|
private |
relativistic gamma factor
Definition at line 190 of file Particle.hpp.
View newest version in sPHENIX GitHub at line 190 of file Particle.hpp
Referenced by energyLoss(), gamma(), Particle(), and update().
path limit in X0
Definition at line 200 of file Particle.hpp.
View newest version in sPHENIX GitHub at line 200 of file Particle.hpp
Referenced by limitInL0(), setLimits(), and update().
path limit in X0
Definition at line 197 of file Particle.hpp.
View newest version in sPHENIX GitHub at line 197 of file Particle.hpp
Referenced by limitInX0(), pathInL0(), setLimits(), and update().
|
private |
particle mass
Definition at line 186 of file Particle.hpp.
View newest version in sPHENIX GitHub at line 186 of file Particle.hpp
Referenced by energyLoss(), m(), Particle(), and update().
|
private |
kinematic info
Definition at line 184 of file Particle.hpp.
View newest version in sPHENIX GitHub at line 184 of file Particle.hpp
Referenced by energyLoss(), momentum(), scatter(), and update().
|
private |
momentum magnitude
Definition at line 191 of file Particle.hpp.
View newest version in sPHENIX GitHub at line 191 of file Particle.hpp
Referenced by energyLoss(), p(), Particle(), and update().
|
private |
passed path in L0
Definition at line 199 of file Particle.hpp.
View newest version in sPHENIX GitHub at line 199 of file Particle.hpp
Referenced by update().
|
private |
passed path in X0
Definition at line 196 of file Particle.hpp.
View newest version in sPHENIX GitHub at line 196 of file Particle.hpp
Referenced by pathInX0(), and update().
|
private |
pdg code of the particle
Definition at line 193 of file Particle.hpp.
View newest version in sPHENIX GitHub at line 193 of file Particle.hpp
Referenced by pdg().
|
private |
kinematic info
Definition at line 183 of file Particle.hpp.
View newest version in sPHENIX GitHub at line 183 of file Particle.hpp
Referenced by position(), and update().
|
private |
transverse momentum magnitude
Definition at line 192 of file Particle.hpp.
View newest version in sPHENIX GitHub at line 192 of file Particle.hpp
Referenced by energyLoss(), pT(), scatter(), and update().
|
private |
the charge
Definition at line 188 of file Particle.hpp.
View newest version in sPHENIX GitHub at line 188 of file Particle.hpp
Referenced by q().
Definition at line 203 of file Particle.hpp.
View newest version in sPHENIX GitHub at line 203 of file Particle.hpp
Referenced by setLimits(), and update().
|
private |
passed time elapsed
Definition at line 202 of file Particle.hpp.
View newest version in sPHENIX GitHub at line 202 of file Particle.hpp
Referenced by update().