Analysis Software
Documentation for sPHENIX simulation software
|
#include <acts/blob/sPHENIX/Fatras/include/ActsFatras/Physics/ElectroMagnetic/BetheHeitler.hpp>
Public Types | |
using | Scalar = Particle::Scalar |
using | Vector3 = Particle::Vector3 |
Public Member Functions | |
Particle | bremPhoton (const Particle &particle, Scalar gammaE, Scalar rndPsi, Scalar rndTheta1, Scalar rndTheta2, Scalar rndTheta3) const |
template<typename generator_t > | |
std::array< Particle, 1 > | operator() (generator_t &generator, const Acts::MaterialSlab &slab, Particle &particle) const |
Public Attributes | |
double | scaleFactor = 1. |
A scaling factor to. | |
bool | uniformHertzDipoleAngle = false |
Simulate electron energy loss using the Bethe-Heitler description.
Bethe-Heitler for electron bremsstrahlung description as described here: "A Gaussian-mixture approximation of the Bethe–Heitler model of electron energy loss by bremsstrahlung" R. Frühwirth
Definition at line 26 of file BetheHeitler.hpp.
View newest version in sPHENIX GitHub at line 26 of file BetheHeitler.hpp
Definition at line 27 of file BetheHeitler.hpp.
View newest version in sPHENIX GitHub at line 27 of file BetheHeitler.hpp
Definition at line 28 of file BetheHeitler.hpp.
View newest version in sPHENIX GitHub at line 28 of file BetheHeitler.hpp
ActsFatras::Particle ActsFatras::BetheHeitler::bremPhoton | ( | const Particle & | particle, |
Scalar | gammaE, | ||
Scalar | rndPsi, | ||
Scalar | rndTheta1, | ||
Scalar | rndTheta2, | ||
Scalar | rndTheta3 | ||
) | const |
Simulate the photon emission
[in] | particle | The unmodified electron |
[in] | gammaE | Energy of the photon |
[in] | rndPsi | Random number for the azimuthal angle |
[in] | rndTheta1 | Random number for the polar angle |
[in] | rndTheta2 | Random number for the polar angle |
[in] | rndTheta3 | Random number for the polar angle |
Definition at line 21 of file BetheHeitler.cpp.
View newest version in sPHENIX GitHub at line 21 of file BetheHeitler.cpp
References KFPMath::a, ActsFatras::Particle::direction(), Acts::eGamma, ActsFatras::Particle::energy(), ActsFatras::Particle::fourPosition(), Acts::makeCurvilinearUnitU(), ActsFatras::Barcode::makeDescendant(), ActsFatras::Particle::mass(), ActsFatras::Particle::particleId(), ActsFatras::Particle::referenceSurface(), ActsFatras::Particle::setAbsoluteMomentum(), ActsFatras::Particle::setPosition4(), ActsFatras::Particle::setProcess(), ActsFatras::Particle::setReferenceSurface(), ActsTests::PropagationDatasets::theta, physmon_ckf_tracking::u, and uniformHertzDipoleAngle.
Referenced by operator()().
|
inline |
Simulate energy loss and update the particle parameters.
[in] | generator | is the random number generator |
[in] | slab | defines the passed material |
[in,out] | particle | is the particle being updated |
generator_t | is a RandomNumberEngine |
Definition at line 57 of file BetheHeitler.hpp.
View newest version in sPHENIX GitHub at line 57 of file BetheHeitler.hpp
References ActsFatras::Particle::absoluteMomentum(), bremPhoton(), ActsFatras::Particle::correctEnergy(), ActsFatras::Particle::direction(), ActsFatras::Particle::energy(), scaleFactor, ActsFatras::Particle::setDirection(), Acts::MaterialSlab::thicknessInX0(), physmon_ckf_tracking::u, and physmon_track_finding_ttbar::z.
double ActsFatras::BetheHeitler::scaleFactor = 1. |
A scaling factor to.
Definition at line 31 of file BetheHeitler.hpp.
View newest version in sPHENIX GitHub at line 31 of file BetheHeitler.hpp
Referenced by operator()().
bool ActsFatras::BetheHeitler::uniformHertzDipoleAngle = false |
Definition at line 34 of file BetheHeitler.hpp.
View newest version in sPHENIX GitHub at line 34 of file BetheHeitler.hpp
Referenced by bremPhoton().