EIC Software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
ActsFatras Namespace Reference

Namespaces

namespace  Casts
 
namespace  detail
 

Classes

struct  SmearInput
 
struct  BoundParametersSmearer
 
struct  FreeParametersSmearer
 
class  Barcode
 
class  Hit
 
class  Particle
 Simulation particle information and kinematic state. More...
 
class  PhysicsList
 
struct  EveryParticle
 No-op particle selector that selects all particles. More...
 
struct  EveryInput
 
struct  AsInputSelector
 Enable usage of a particle selector as an input selector. More...
 
struct  Process
 
struct  SimulationResult
 
struct  ParticleSimulator
 
struct  Simulator
 
struct  BetheBloch
 
struct  BetheHeitler
 
struct  NeutralSelector
 Select neutral particles. More...
 
struct  ChargedSelector
 Select all charged particles. More...
 
struct  PositiveSelector
 Select positively charged particles. More...
 
struct  NegativeSelector
 Select negatively charged particles. More...
 
struct  PathLimitX0
 Select particles whose X0 limit would be reached after material passage. More...
 
struct  PathLimitL0
 Select particles whose L0 limit would be reached after material passage. More...
 
struct  PdgSelector
 
struct  AbsPdgSelector
 Select particles and antiparticles of one specific type. More...
 
struct  PdgExcluder
 
struct  AbsPdgExcluder
 Select all particles except for (anti-)particles of one specific type. More...
 
struct  Min
 Select all objects with an extracted value equal or larger than the cut. More...
 
struct  Max
 Select all objects with an extracted value below the cut. More...
 
struct  Range
 
struct  NoSurface
 Do not select any surface, ever. More...
 
struct  EverySurface
 Select every surface. More...
 
class  LandauDistribution
 

Typedefs

using SmearFunction = std::function< Acts::Result< std::pair< double, double >>(double)>
 
using GaussianMixtureScattering = detail::Scattering< detail::GaussianMixture >
 
using GeneralMixtureScattering = detail::Scattering< detail::GeneralMixture >
 
using HighlandScattering = detail::Scattering< detail::Highland >
 
using ChargedElectroMagneticPhysicsList = PhysicsList< detail::StandardScattering, detail::StandardBetheBloch, detail::StandardBetheHeitler >
 
template<typename... selectors_t>
using CombineAnd = detail::CombineSelectors< true, std::logical_and< bool >, selectors_t...>
 Select objects that fullfil all selectors.
 
template<typename... selectors_t>
using CombineOr = detail::CombineSelectors< false, std::logical_or< bool >, selectors_t...>
 Select objects that fullfil at least one selector.
 

Enumerations

enum  DigitizationError
 
enum  ProcessType : uint32_t
 

Functions

const
detail::DigitizationErrorCategory
DigitizationErrorCategory ()
 Declare a global function returning a static instance of the custom category.
 
std::error_code make_error_code (DigitizationError e)
 
std::ostream & operator<< (std::ostream &os, const Particle &particle)
 
std::ostream & operator<< (std::ostream &os, ProcessType processType)
 
ChargedElectroMagneticPhysicsList makeChargedElectroMagneticPhysicsList (double minimumAbsMomentum)
 
float findCharge (Acts::PdgParticle pdg)
 
float findMass (Acts::PdgParticle pdg)
 
std::string_view findName (Acts::PdgParticle pdg)
 
 BOOST_AUTO_TEST_CASE (BoundParameterSmeering)
 
 BOOST_AUTO_TEST_CASE (FreeParameterSmeering)
 

Typedef Documentation

Electro-magnetic interactions for charged particles.

Scattering must come first so it is computed with the unmodified initial energy before energy loss is applied.

Warning
The list has no cuts on input particle charge or kinematics, i.e. it relies on the simulator to preselect relevant charged particles before application.

Definition at line 58 of file StandardPhysicsLists.hpp.

View newest version in sPHENIX GitHub at line 58 of file StandardPhysicsLists.hpp

template<typename... selectors_t>
using ActsFatras::CombineAnd = typedef detail::CombineSelectors<true, std::logical_and<bool>, selectors_t...>

Select objects that fullfil all selectors.

Definition at line 59 of file SelectorHelpers.hpp.

View newest version in sPHENIX GitHub at line 59 of file SelectorHelpers.hpp

template<typename... selectors_t>
using ActsFatras::CombineOr = typedef detail::CombineSelectors<false, std::logical_or<bool>, selectors_t...>

Select objects that fullfil at least one selector.

Definition at line 64 of file SelectorHelpers.hpp.

View newest version in sPHENIX GitHub at line 64 of file SelectorHelpers.hpp

Definition at line 95 of file GaussianMixture.hpp.

View newest version in sPHENIX GitHub at line 95 of file GaussianMixture.hpp

Definition at line 204 of file GeneralMixture.hpp.

View newest version in sPHENIX GitHub at line 204 of file GeneralMixture.hpp

Definition at line 46 of file Highland.hpp.

View newest version in sPHENIX GitHub at line 46 of file Highland.hpp

using ActsFatras::SmearFunction = typedef std::function<Acts::Result<std::pair<double, double>>(double)>

Smearing functions definition:

  • it takes the unsmeared parameter
  • it returns the smeared parameter and a covariance

Definition at line 28 of file UncorrelatedHitSmearer.hpp.

View newest version in sPHENIX GitHub at line 28 of file UncorrelatedHitSmearer.hpp

Enumeration Type Documentation

Definition at line 16 of file DigitizationError.hpp.

View newest version in sPHENIX GitHub at line 16 of file DigitizationError.hpp

Process type identifier.

Encodes the type of process that generated a particle.

Definition at line 19 of file ProcessType.hpp.

View newest version in sPHENIX GitHub at line 19 of file ProcessType.hpp

Function Documentation

ActsFatras::BOOST_AUTO_TEST_CASE ( BoundParameterSmeering  )

Definition at line 65 of file UncorrelatedHitSmearerTests.cpp.

View newest version in sPHENIX GitHub at line 65 of file UncorrelatedHitSmearerTests.cpp

References CHECK_CLOSE_ABS, Acts::eBoundLoc0, Acts::eBoundLoc1, Acts::eBoundPhi, Acts::eBoundTheta, Acts::eBoundTime, Acts::Test::geoCtx, Acts::VectorHelpers::phi(), pid, Acts::s_epsilon, Acts::VectorHelpers::theta(), Acts::UnitConstants::u, and value.

+ Here is the call graph for this function:

ActsFatras::BOOST_AUTO_TEST_CASE ( FreeParameterSmeering  )
const ActsFatras::detail::DigitizationErrorCategory & ActsFatras::DigitizationErrorCategory ( )

Declare a global function returning a static instance of the custom category.

Definition at line 31 of file DigitizationError.cpp.

View newest version in sPHENIX GitHub at line 31 of file DigitizationError.cpp

References c.

Referenced by make_error_code().

+ Here is the caller graph for this function:

float ActsFatras::findCharge ( Acts::PdgParticle  pdg)

Find the charge for a given PDG particle number.

Returns
Charge in native units or NaN if not available.

Definition at line 43 of file ParticleData.cpp.

View newest version in sPHENIX GitHub at line 43 of file ParticleData.cpp

References Acts::UnitConstants::e, findByPdg(), and kParticlesThreeCharge.

Referenced by BOOST_AUTO_TEST_CASE(), BOOST_DATA_TEST_CASE(), and main().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

float ActsFatras::findMass ( Acts::PdgParticle  pdg)

Find the mass for a given PDG particle number.

Returns
Mass in native units or zero if not available.

Definition at line 54 of file ParticleData.cpp.

View newest version in sPHENIX GitHub at line 54 of file ParticleData.cpp

References findByPdg(), kParticlesMassMeV, mass, and Acts::UnitConstants::MeV.

Referenced by BOOST_AUTO_TEST_CASE(), and main().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

std::string_view ActsFatras::findName ( Acts::PdgParticle  pdg)

Find a descriptive particle name for a given PDG particle number.

Returns
Particle name or empty if not available.

Definition at line 60 of file ParticleData.cpp.

View newest version in sPHENIX GitHub at line 60 of file ParticleData.cpp

References findByPdg(), and kParticlesName.

Referenced by BOOST_AUTO_TEST_CASE(), and Acts::operator<<().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

std::error_code ActsFatras::make_error_code ( ActsFatras::DigitizationError  e)

Definition at line 36 of file DigitizationError.cpp.

View newest version in sPHENIX GitHub at line 36 of file DigitizationError.cpp

References DigitizationErrorCategory(), and Acts::UnitConstants::e.

+ Here is the call graph for this function:

ActsFatras::ChargedElectroMagneticPhysicsList ActsFatras::makeChargedElectroMagneticPhysicsList ( double  minimumAbsMomentum)

Construct the standard electro-magnetic physics list for charged particles.

Parameters
minimumAbsMomentumlower p cut on output particles

Definition at line 12 of file StandardPhysicsLists.cpp.

View newest version in sPHENIX GitHub at line 12 of file StandardPhysicsLists.cpp

References ActsFatras::PhysicsList< processes_t >::get(), and ActsFatras::Process< physics_t, input_selector_t, output_particle_selector_t, child_particle_selector_t >::selectOutputParticle.

Referenced by ActsExamples::Options::readFatrasConfig().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

std::ostream & ActsFatras::operator<< ( std::ostream &  os,
ProcessType  processType 
)

Definition at line 15 of file ProcessType.cpp.

View newest version in sPHENIX GitHub at line 15 of file ProcessType.cpp

std::ostream & ActsFatras::operator<< ( std::ostream &  os,
const Particle particle 
)

Definition at line 16 of file Particle.cpp.

View newest version in sPHENIX GitHub at line 16 of file Particle.cpp

References ActsFatras::Particle::charge(), ActsFatras::Particle::mass(), ActsFatras::Particle::particleId(), ActsFatras::Particle::pdg(), and ActsFatras::Particle::process().

+ Here is the call graph for this function: