Bayes Filters Library
Public Member Functions | Public Attributes | Protected Attributes | List of all members
bfl::Gaussian Class Reference

#include <Gaussian.h>

Inheritance diagram for bfl::Gaussian:
[legend]

Public Member Functions

 Gaussian () noexcept
 
 Gaussian (const std::size_t dim_linear) noexcept
 
 Gaussian (const std::size_t dim_linear, const std::size_t dim_circular, const bool use_quaternion=false) noexcept
 
virtual ~Gaussian () noexcept=default
 
void resize (const std::size_t dim_linear, const std::size_t dim_circular=0)
 
Eigen::Ref< Eigen::VectorXd > mean ()
 Non-virtual methods of GaussianMixture are overriden here since a Gaussian is a 1-component GaussianMixture. More...
 
const Eigen::Ref< const Eigen::VectorXd > mean () const
 
double & mean (const std::size_t i)
 
const double & mean (const std::size_t i) const
 
Eigen::Ref< Eigen::MatrixXd > covariance ()
 
const Eigen::Ref< const Eigen::MatrixXd > covariance () const
 
double & covariance (const std::size_t i, const std::size_t j)
 
const double & covariance (const std::size_t i, const std::size_t j) const
 
double & weight ()
 
const double & weight () const
 
virtual void resize (const std::size_t components, const std::size_t dim_linear, const std::size_t dim_circular=0)
 
double & mean (const std::size_t i, const std::size_t j)
 
const double & mean (const std::size_t i, const std::size_t j) const
 
Eigen::Ref< Eigen::MatrixXd > covariance (const std::size_t i)
 
double & covariance (const std::size_t i, const std::size_t j, const std::size_t k)
 
const Eigen::Ref< const Eigen::MatrixXd > covariance (const std::size_t i) const
 
const double & covariance (const std::size_t i, const std::size_t j, const std::size_t k) const
 
double & weight (const std::size_t i)
 
const double & weight (const std::size_t i) const
 
bool augmentWithNoise (const Eigen::Ref< const Eigen::MatrixXd > &noise_covariance_matrix)
 

Public Attributes

std::size_t components
 
bool use_quaternion
 
std::size_t dim_circular_component
 
std::size_t dim
 
std::size_t dim_linear
 
std::size_t dim_circular
 
std::size_t dim_noise
 
std::size_t dim_covariance
 

Protected Attributes

Eigen::MatrixXd mean_
 
Eigen::MatrixXd covariance_
 
Eigen::VectorXd weight_
 

Detailed Description

Definition at line 22 of file Gaussian.h.

Constructor & Destructor Documentation

◆ Gaussian() [1/3]

Gaussian::Gaussian ( )
noexcept

Definition at line 15 of file Gaussian.cpp.

◆ Gaussian() [2/3]

Gaussian::Gaussian ( const std::size_t  dim_linear)
noexcept

Definition at line 20 of file Gaussian.cpp.

◆ Gaussian() [3/3]

Gaussian::Gaussian ( const std::size_t  dim_linear,
const std::size_t  dim_circular,
const bool  use_quaternion = false 
)
noexcept

Definition at line 26 of file Gaussian.cpp.

◆ ~Gaussian()

virtual bfl::Gaussian::~Gaussian ( )
virtualdefaultnoexcept

Member Function Documentation

◆ augmentWithNoise()

bool GaussianMixture::augmentWithNoise ( const Eigen::Ref< const Eigen::MatrixXd > &  noise_covariance_matrix)
inherited

◆ covariance() [1/8]

const Ref< const MatrixXd > Gaussian::covariance ( )

Definition at line 65 of file Gaussian.cpp.

◆ covariance() [2/8]

const Eigen::Ref<const Eigen::MatrixXd> bfl::Gaussian::covariance ( ) const

◆ covariance() [3/8]

Ref< MatrixXd > GaussianMixture::covariance ( const std::size_t  i)
inherited

Definition at line 136 of file GaussianMixture.cpp.

◆ covariance() [4/8]

const Ref< const MatrixXd > GaussianMixture::covariance ( const std::size_t  i) const
inherited

Definition at line 154 of file GaussianMixture.cpp.

◆ covariance() [5/8]

double & Gaussian::covariance ( const std::size_t  i,
const std::size_t  j 
)

Definition at line 77 of file Gaussian.cpp.

◆ covariance() [6/8]

const double & Gaussian::covariance ( const std::size_t  i,
const std::size_t  j 
) const

Definition at line 84 of file Gaussian.cpp.

◆ covariance() [7/8]

double & GaussianMixture::covariance ( const std::size_t  i,
const std::size_t  j,
const std::size_t  k 
)
inherited

Definition at line 142 of file GaussianMixture.cpp.

◆ covariance() [8/8]

const double & GaussianMixture::covariance ( const std::size_t  i,
const std::size_t  j,
const std::size_t  k 
) const
inherited

Definition at line 160 of file GaussianMixture.cpp.

◆ mean() [1/6]

const Ref< const VectorXd > Gaussian::mean ( )

Non-virtual methods of GaussianMixture are overriden here since a Gaussian is a 1-component GaussianMixture.

Hence it is better to return a Ref<VectorXd> as the mean, rather than a Ref<MatrixXd>, and a double& as the weight, rather than a Ref<VectorXd>&.

Definition at line 41 of file Gaussian.cpp.

◆ mean() [2/6]

const Eigen::Ref<const Eigen::VectorXd> bfl::Gaussian::mean ( ) const

◆ mean() [3/6]

double & Gaussian::mean ( const std::size_t  i)

Definition at line 53 of file Gaussian.cpp.

◆ mean() [4/6]

const double & Gaussian::mean ( const std::size_t  i) const

Definition at line 59 of file Gaussian.cpp.

◆ mean() [5/6]

double & GaussianMixture::mean ( const std::size_t  i,
const std::size_t  j 
)
inherited

Definition at line 106 of file GaussianMixture.cpp.

◆ mean() [6/6]

const double & GaussianMixture::mean ( const std::size_t  i,
const std::size_t  j 
) const
inherited

Definition at line 124 of file GaussianMixture.cpp.

◆ resize() [1/2]

void GaussianMixture::resize ( const std::size_t  components,
const std::size_t  dim_linear,
const std::size_t  dim_circular = 0 
)
virtualinherited

Reimplemented in bfl::ParticleSet.

Definition at line 64 of file GaussianMixture.cpp.

Referenced by bfl::ParticleSet::resize(), and resize().

◆ resize() [2/2]

void Gaussian::resize ( const std::size_t  dim_linear,
const std::size_t  dim_circular = 0 
)

Definition at line 35 of file Gaussian.cpp.

References bfl::GaussianMixture::resize().

Here is the call graph for this function:

◆ weight() [1/4]

const double & Gaussian::weight ( )

Definition at line 90 of file Gaussian.cpp.

◆ weight() [2/4]

const double& bfl::Gaussian::weight ( ) const

◆ weight() [3/4]

double & GaussianMixture::weight ( const std::size_t  i)
inherited

Definition at line 172 of file GaussianMixture.cpp.

◆ weight() [4/4]

const double & GaussianMixture::weight ( const std::size_t  i) const
inherited

Definition at line 184 of file GaussianMixture.cpp.

Member Data Documentation

◆ components

std::size_t bfl::GaussianMixture::components
inherited

◆ covariance_

Eigen::MatrixXd bfl::GaussianMixture::covariance_
protectedinherited

Definition at line 86 of file GaussianMixture.h.

Referenced by bfl::ParticleSet::operator+=().

◆ dim

std::size_t bfl::GaussianMixture::dim
inherited

◆ dim_circular

std::size_t bfl::GaussianMixture::dim_circular
inherited

◆ dim_circular_component

std::size_t bfl::GaussianMixture::dim_circular_component
inherited

Definition at line 71 of file GaussianMixture.h.

◆ dim_covariance

std::size_t bfl::GaussianMixture::dim_covariance
inherited

◆ dim_linear

std::size_t bfl::GaussianMixture::dim_linear
inherited

◆ dim_noise

std::size_t bfl::GaussianMixture::dim_noise
inherited

◆ mean_

Eigen::MatrixXd bfl::GaussianMixture::mean_
protectedinherited

Definition at line 84 of file GaussianMixture.h.

Referenced by bfl::ParticleSet::operator+=().

◆ use_quaternion

bool bfl::GaussianMixture::use_quaternion
inherited

◆ weight_

Eigen::VectorXd bfl::GaussianMixture::weight_
protectedinherited

Definition at line 88 of file GaussianMixture.h.

Referenced by bfl::ParticleSet::operator+=().


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