pops-core
0.9
PoPS (Pest or Pathogen Spread) Model Core C++ library
|
Dispersal kernel providing all the radial kernels. More...
#include <radial_kernel.hpp>
Public Member Functions | |
RadialDispersalKernel (double ew_res, double ns_res, DispersalKernelType dispersal_kernel, double distance_scale, Direction dispersal_direction=Direction::None, double dispersal_direction_kappa=0, double shape=1) | |
template<typename Generator > | |
std::tuple< int, int > | operator() (Generator &generator, int row, int col) |
Generates a new position for the spread. More... | |
Static Public Member Functions | |
static bool | supports_kernel (const DispersalKernelType type) |
Returns true if the kernel class support a given kernel type. More... | |
Dispersal kernel providing all the radial kernels.
We understand a radial kernel to be a kernel which has parameters which translate into a distance and direction.
To add new kernel which fits with the other kernels supported by this class, add new member, its initialization from parameters, its implementation in the function call operator, and extend the supports_kernel() function.
Definition at line 94 of file radial_kernel.hpp.
|
inline |
Definition at line 115 of file radial_kernel.hpp.
|
inline |
Generates a new position for the spread.
The randomness is based on the generator. The result may depend on previous calls of this operator (see e.g. std::cauchy_distribution<RealType>::reset()
). Parameters row and col are row and column position of the current disperser. The generated position will be relative to it.
Definition at line 157 of file radial_kernel.hpp.
|
inlinestatic |
Returns true if the kernel class support a given kernel type.
Definition at line 212 of file radial_kernel.hpp.
|
protected |
Definition at line 102 of file radial_kernel.hpp.
|
protected |
Definition at line 101 of file radial_kernel.hpp.
|
protected |
Definition at line 98 of file radial_kernel.hpp.
|
protected |
Definition at line 103 of file radial_kernel.hpp.
|
protected |
Definition at line 110 of file radial_kernel.hpp.
|
protected |
Definition at line 109 of file radial_kernel.hpp.
|
protected |
Definition at line 108 of file radial_kernel.hpp.
|
protected |
Definition at line 111 of file radial_kernel.hpp.
|
protected |
Definition at line 106 of file radial_kernel.hpp.
|
protected |
Definition at line 105 of file radial_kernel.hpp.
|
protected |
Definition at line 100 of file radial_kernel.hpp.
|
protected |
Definition at line 107 of file radial_kernel.hpp.
|
protected |
Definition at line 112 of file radial_kernel.hpp.
|
protected |
Definition at line 104 of file radial_kernel.hpp.