Analysis Software
Documentation for sPHENIX simulation software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
ActsFatras::BetheHeitler Struct Reference

#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
 

Detailed Description

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

Member Typedef Documentation

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

Member Function Documentation

ActsFatras::Particle ActsFatras::BetheHeitler::bremPhoton ( const Particle particle,
Scalar  gammaE,
Scalar  rndPsi,
Scalar  rndTheta1,
Scalar  rndTheta2,
Scalar  rndTheta3 
) const

Simulate the photon emission

Parameters
[in]particleThe unmodified electron
[in]gammaEEnergy of the photon
[in]rndPsiRandom number for the azimuthal angle
[in]rndTheta1Random number for the polar angle
[in]rndTheta2Random number for the polar angle
[in]rndTheta3Random 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()().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

template<typename generator_t >
std::array<Particle, 1> ActsFatras::BetheHeitler::operator() ( generator_t &  generator,
const Acts::MaterialSlab slab,
Particle particle 
) const
inline

Simulate energy loss and update the particle parameters.

Parameters
[in]generatoris the random number generator
[in]slabdefines the passed material
[in,out]particleis the particle being updated
Returns
Produced photon.
Template Parameters
generator_tis 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.

+ Here is the call graph for this function:

Member Data Documentation

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().


The documentation for this struct was generated from the following files: