List of all members | Public Member Functions | Static Public Member Functions | Public Attributes | Private Member Functions | Private Attributes | Friends
utl::Probability Class Reference

Utility class to provide often used probability distributions in radio reconstruction. In addition this singleton class can return random variables. Currently only Fisher is implemented. More...

#include <Probability.h>

Inheritance diagram for utl::Probability:
Inheritance graph
[legend]

Public Member Functions

utl::Vector GetFisher (const utl::Vector &meanDirection, const double alpha)
 returns a random vector that has an angle alpha wrt the given vector More...
 
double GetRandomFisher (const double k)
 returns a Fisher distributed random variable More...
 
utl::Vector GetRandomFisher (const utl::Vector &meanDirection, const double k)
 
double GetRandomRayleigh (const double sigma)
 returns a Rayleigh distributed random variable More...
 
void SetSeed (const unsigned int seed)
 

Static Public Member Functions

static double GetFisherCDF (const double x, const double kappa)
 
static double GetFisherPDF (const double x, const double kappa)
 
static double GetNormalPDF (const double x, const double mu, const double sigma)
 
static double GetRayleighCDF (const double x, const double sigma)
 evaluates the Rayleigh CDF of sigma at position x More...
 
static double GetRayleighPDF (const double x, const double sigma)
 evaluates the Rayleigh PDF of sigma at position x More...
 
static long double GetVonMisesPDF (const double x, const double mu, const double kappa)
 

Public Attributes

static Probability &return instance
 

Private Member Functions

TVector3 GetRandomVectorOnSphere ()
 
 Probability ()
 

Private Attributes

TRandom3 fRand
 

Friends

class Singleton< Probability >
 

Detailed Description

Utility class to provide often used probability distributions in radio reconstruction. In addition this singleton class can return random variables. Currently only Fisher is implemented.

Author
Christian Glaser

Definition at line 32 of file Probability.h.

Constructor & Destructor Documentation

utl::Probability::Probability ( )
private

Definition at line 17 of file Probability.cc.

Member Function Documentation

Vector utl::Probability::GetFisher ( const utl::Vector meanDirection,
const double  alpha 
)

returns a random vector that has an angle alpha wrt the given vector

Definition at line 104 of file Probability.cc.

References GetRandomVectorOnSphere(), utl::BasicVector< HepVector >::GetX(), utl::BasicVector< HepVector >::GetY(), and utl::BasicVector< HepVector >::GetZ().

Referenced by GetRandomFisher().

double utl::Probability::GetFisherCDF ( const double  x,
const double  kappa 
)
static
double utl::Probability::GetFisherPDF ( const double  x,
const double  kappa 
)
static

Definition at line 67 of file Probability.cc.

Referenced by RdLDFFitter::RdLDFFitter::PlotScan().

double utl::Probability::GetNormalPDF ( const double  x,
const double  mu,
const double  sigma 
)
static

Definition at line 50 of file Probability.cc.

References sqrt().

Referenced by GetVonMisesPDF().

double utl::Probability::GetRandomFisher ( const double  k)

returns a Fisher distributed random variable

Definition at line 89 of file Probability.cc.

References fRand.

Referenced by GetRandomFisher().

Vector utl::Probability::GetRandomFisher ( const utl::Vector meanDirection,
const double  k 
)

returns a Fisher distributed vector, this is the angle between returned and given vector is Fisher distributed

Definition at line 96 of file Probability.cc.

References GetFisher(), and GetRandomFisher().

double utl::Probability::GetRandomRayleigh ( const double  sigma)

returns a Rayleigh distributed random variable

Definition at line 82 of file Probability.cc.

References fRand, and sqrt().

TVector3 utl::Probability::GetRandomVectorOnSphere ( )
private

Definition at line 122 of file Probability.cc.

References fRand, and sqrt().

Referenced by GetFisher().

double utl::Probability::GetRayleighCDF ( const double  x,
const double  sigma 
)
static

evaluates the Rayleigh CDF of sigma at position x

Definition at line 41 of file Probability.cc.

double utl::Probability::GetRayleighPDF ( const double  x,
const double  sigma 
)
static

evaluates the Rayleigh PDF of sigma at position x

Definition at line 31 of file Probability.cc.

long double utl::Probability::GetVonMisesPDF ( const double  x,
const double  mu,
const double  kappa 
)
static

Definition at line 58 of file Probability.cc.

References GetNormalPDF(), and sqrt().

Referenced by RdLDFFitter::LDFLikelihoodFunction::GetLikelihoodPolarisation().

void utl::Probability::SetSeed ( const unsigned int  seed)

Definition at line 23 of file Probability.cc.

References fRand.

Friends And Related Function Documentation

friend class Singleton< Probability >
friend

Definition at line 83 of file Probability.h.

Member Data Documentation

TRandom3 utl::Probability::fRand
private

Definition at line 81 of file Probability.h.

Referenced by GetRandomFisher(), GetRandomRayleigh(), GetRandomVectorOnSphere(), and SetSeed().

Probability & return utl::Singleton< Probability >::instance
inherited

Definition at line 44 of file Singleton.h.


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

, generated on Tue Sep 26 2023.