namespace mrpt::bayes

The namespace for Bayesian filtering algorithm: different particle filters and Kalman filter algorithms.

namespace bayes {

// namespaces

namespace mrpt::bayes::detail;

// enums

enum TKFMethod;
enum particle_storage_mode;

// structs

template <class Derived, class particle_list_t>
struct CParticleFilterDataImpl;

template <class T>
struct CProbabilityParticle<T, particle_storage_mode::VALUE>;

template <class T>
struct CProbabilityParticle<T, particle_storage_mode::POINTER>;

template <class T, particle_storage_mode STORAGE>
struct CProbabilityParticle;

struct CProbabilityParticleBase;
struct TKF_options;

// classes

template <
    size_t VEH_SIZE,
    size_t OBS_SIZE,
    size_t FEAT_SIZE,
    size_t ACT_SIZE,
    typename KFTYPE = double
    >
class CKalmanFilterCapable;

class CParticleFilter;
class CParticleFilterCapable;

template <
    class T,
    particle_storage_mode STORAGE = particle_storage_mode::POINTER
    >
class CParticleFilterData;

template <
    class TStateSpace,
    mrpt::bayes::particle_storage_mode STORAGE = mrpt::bayes::particle_storage_mode::POINTER
    >
class CRejectionSamplingCapable;

// global variables

static constexpr double INVALID_LIKELIHOOD_VALUE =  std::numeric_limits<double>::quiet_NaN();

} // namespace bayes

Global Variables

static constexpr double INVALID_LIKELIHOOD_VALUE =  std::numeric_limits<double>::quiet_NaN()

invalid log-likelihood value, used to signal non-initialized likelihood variables.