ECCE @ EIC Software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
ActsFatras::LandauDistribution Class Reference

#include <acts/blob/master/Fatras/include/ActsFatras/Utilities/LandauDistribution.hpp>

+ Collaboration diagram for ActsFatras::LandauDistribution:

Classes

struct  param_type
 Parameter struct that contains all distribution parameters. More...
 

Public Types

using result_type = double
 The type of the generated values.
 

Public Member Functions

 LandauDistribution (double location, double scale)
 Construct directly from the distribution parameters.
 
 LandauDistribution (const param_type &cfg)
 Construct from a parameter object.
 
 LandauDistribution ()=default
 
 LandauDistribution (const LandauDistribution &)=default
 
 LandauDistribution (LandauDistribution &&)=default
 
LandauDistributionoperator= (const LandauDistribution &)=default
 
LandauDistributionoperator= (LandauDistribution &&)=default
 
void reset ()
 Reset any possible internal state. Noop, since there is no internal state.
 
param_type param () const
 Return the currently configured distribution parameters.
 
void param (const param_type &cfg)
 Set the distribution parameters.
 
result_type min () const
 The minimum value the distribution generates.
 
result_type max () const
 The maximum value the distribution generates.
 
template<typename Generator >
result_type operator() (Generator &generator)
 Generate a random number from the configured Landau distribution.
 
template<typename Generator >
result_type operator() (Generator &generator, const param_type &params)
 Generate a random number from the given Landau distribution.
 

Static Private Member Functions

static double quantile (double z)
 

Private Attributes

param_type m_cfg
 

Friends

bool operator== (const LandauDistribution &lhs, const LandauDistribution &rhs)
 Provide standard comparison operators.
 
bool operator!= (const LandauDistribution &lhs, const LandauDistribution &rhs)
 

Detailed Description

Draw random numbers from a Landau distribution.

Implements the same interface as the standard library distributions.

Definition at line 18 of file LandauDistribution.hpp.

View newest version in sPHENIX GitHub at line 18 of file LandauDistribution.hpp

Member Typedef Documentation

The type of the generated values.

Definition at line 51 of file LandauDistribution.hpp.

View newest version in sPHENIX GitHub at line 51 of file LandauDistribution.hpp

Constructor & Destructor Documentation

ActsFatras::LandauDistribution::LandauDistribution ( double  location,
double  scale 
)
inline

Construct directly from the distribution parameters.

Definition at line 54 of file LandauDistribution.hpp.

View newest version in sPHENIX GitHub at line 54 of file LandauDistribution.hpp

ActsFatras::LandauDistribution::LandauDistribution ( const param_type cfg)
inline

Construct from a parameter object.

Definition at line 56 of file LandauDistribution.hpp.

View newest version in sPHENIX GitHub at line 56 of file LandauDistribution.hpp

ActsFatras::LandauDistribution::LandauDistribution ( )
default
ActsFatras::LandauDistribution::LandauDistribution ( const LandauDistribution )
default
ActsFatras::LandauDistribution::LandauDistribution ( LandauDistribution &&  )
default

Member Function Documentation

result_type ActsFatras::LandauDistribution::max ( ) const
inline

The maximum value the distribution generates.

Definition at line 74 of file LandauDistribution.hpp.

View newest version in sPHENIX GitHub at line 74 of file LandauDistribution.hpp

result_type ActsFatras::LandauDistribution::min ( ) const
inline

The minimum value the distribution generates.

Definition at line 72 of file LandauDistribution.hpp.

View newest version in sPHENIX GitHub at line 72 of file LandauDistribution.hpp

template<typename Generator >
result_type ActsFatras::LandauDistribution::operator() ( Generator generator)
inline

Generate a random number from the configured Landau distribution.

Definition at line 78 of file LandauDistribution.hpp.

View newest version in sPHENIX GitHub at line 78 of file LandauDistribution.hpp

References Acts::Test::generator(), and m_cfg.

+ Here is the call graph for this function:

template<typename Generator >
result_type ActsFatras::LandauDistribution::operator() ( Generator generator,
const param_type params 
)
inline

Generate a random number from the given Landau distribution.

Definition at line 83 of file LandauDistribution.hpp.

View newest version in sPHENIX GitHub at line 83 of file LandauDistribution.hpp

References ActsFatras::LandauDistribution::param_type::location, quantile(), ActsFatras::LandauDistribution::param_type::scale, and z.

+ Here is the call graph for this function:

LandauDistribution& ActsFatras::LandauDistribution::operator= ( const LandauDistribution )
default
LandauDistribution& ActsFatras::LandauDistribution::operator= ( LandauDistribution &&  )
default
param_type ActsFatras::LandauDistribution::param ( ) const
inline

Return the currently configured distribution parameters.

Definition at line 67 of file LandauDistribution.hpp.

View newest version in sPHENIX GitHub at line 67 of file LandauDistribution.hpp

References m_cfg.

Referenced by alphas(), converttohepmc(), deriv(), dofistatescat(), doinstatescat(), dokinematics(), generatez(), genevent(), getdeltat(), getinspliti(), getinsudafast(), getinsudakov(), getinsudared(), getmass(), getnewmass(), getpdf(), getpdfxintexact(), getpnorad1(), getqvec(), getspliti(), getsscat(), getsudakov(), gett(), getxsecint(), init(), initpythia(), insudaint(), intpgghigh(), intpgglow(), intpqghigh(), intpqglow(), intpqq(), makebranch(), makecascade(), makeinsplit(), makesplitting(), makestrings_minl(), makestrings_vac(), pdfint(), scatprimfunc(), splitfncint(), and xsecint().

+ Here is the caller graph for this function:

void ActsFatras::LandauDistribution::param ( const param_type cfg)
inline

Set the distribution parameters.

Definition at line 69 of file LandauDistribution.hpp.

View newest version in sPHENIX GitHub at line 69 of file LandauDistribution.hpp

References m_cfg.

double ActsFatras::LandauDistribution::quantile ( double  z)
staticprivate

Definition at line 11 of file LandauDistribution.cpp.

View newest version in sPHENIX GitHub at line 11 of file LandauDistribution.cpp

References f, int(), Acts::UnitConstants::u, v, and z.

Referenced by operator()().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void ActsFatras::LandauDistribution::reset ( )
inline

Reset any possible internal state. Noop, since there is no internal state.

Definition at line 65 of file LandauDistribution.hpp.

View newest version in sPHENIX GitHub at line 65 of file LandauDistribution.hpp

Friends And Related Function Documentation

bool operator!= ( const LandauDistribution lhs,
const LandauDistribution rhs 
)
friend

Definition at line 93 of file LandauDistribution.hpp.

View newest version in sPHENIX GitHub at line 93 of file LandauDistribution.hpp

bool operator== ( const LandauDistribution lhs,
const LandauDistribution rhs 
)
friend

Provide standard comparison operators.

Definition at line 89 of file LandauDistribution.hpp.

View newest version in sPHENIX GitHub at line 89 of file LandauDistribution.hpp

Member Data Documentation

param_type ActsFatras::LandauDistribution::m_cfg
private

Definition at line 99 of file LandauDistribution.hpp.

View newest version in sPHENIX GitHub at line 99 of file LandauDistribution.hpp

Referenced by operator()(), and param().


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