pops-core  0.9
PoPS (Pest or Pathogen Spread) Model Core C++ library
Public Member Functions | Protected Attributes | List of all members
pops::PowerLawKernel Class Reference

Dispersal kernel for power law distribution class utilized by RadialKernel and DeterministicKernel. More...

#include <power_law_kernel.hpp>

Public Member Functions

 PowerLawKernel (double a, double xm)
 
template<class Generator >
double random (Generator &generator)
 Returns random value from power law distribution Used by RadialKernel to determine location of spread. More...
 
double pdf (double x)
 Power law probability density function Used by DeterministicKernel to determine location of spread. More...
 
double icdf (double x)
 Power law inverse cumulative distribution (quantile) function Used by DeterministicKernel to determine maximum distance of spread. More...
 

Protected Attributes

double alpha
 
double xmin
 
std::uniform_real_distribution< double > distribution
 

Detailed Description

Dispersal kernel for power law distribution class utilized by RadialKernel and DeterministicKernel.

Definition at line 31 of file power_law_kernel.hpp.

Constructor & Destructor Documentation

◆ PowerLawKernel()

pops::PowerLawKernel::PowerLawKernel ( double  a,
double  xm 
)
inline

Definition at line 39 of file power_law_kernel.hpp.

Member Function Documentation

◆ icdf()

double pops::PowerLawKernel::icdf ( double  x)
inline

Power law inverse cumulative distribution (quantile) function Used by DeterministicKernel to determine maximum distance of spread.

Parameters
xproportion of the distribution
Returns
value in distribution that is less than or equal to probability (x)

Definition at line 90 of file power_law_kernel.hpp.

Here is the caller graph for this function:

◆ pdf()

double pops::PowerLawKernel::pdf ( double  x)
inline

Power law probability density function Used by DeterministicKernel to determine location of spread.

Parameters
xpoint within same space of distribution
Returns
relative likelihood that a random variable would equal x
Note
only works with alpha < 1 so center square in matrix is always zero

Definition at line 70 of file power_law_kernel.hpp.

Here is the caller graph for this function:

◆ random()

template<class Generator >
double pops::PowerLawKernel::random ( Generator &  generator)
inline

Returns random value from power law distribution Used by RadialKernel to determine location of spread.

Parameters
generatoruniform random number generator
Returns
value from power law distribution

Definition at line 57 of file power_law_kernel.hpp.

Here is the call graph for this function:
Here is the caller graph for this function:

Member Data Documentation

◆ alpha

double pops::PowerLawKernel::alpha
protected

Definition at line 34 of file power_law_kernel.hpp.

◆ distribution

std::uniform_real_distribution<double> pops::PowerLawKernel::distribution
protected

Definition at line 36 of file power_law_kernel.hpp.

◆ xmin

double pops::PowerLawKernel::xmin
protected

Definition at line 35 of file power_law_kernel.hpp.


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