Bayes++ Library入门学习之熟悉namespace
阅读原文时间:2023年07月12日阅读:1

  Bayes++是一个开源的C++类库。这些类表示并实现了用于离散系统的贝叶斯滤波的各种数值算法。该库中的类提供测试和一致的数值方法,并且用层次明确的结构表明了各种滤波算法和系统模型类型。

  接下来,我们就从namespace入手说明库中各个模块的作用。Bayes++库下面最重要也是包含类最多一个名称空间是Bayesian_filter,包含了各类模型和滤波器的相关类。从类的继承关系入手,先对Bayesian_filter::Bayes_base进行说明,继承自该基类的类主要有以下几部分:

  1. 第一部分Bayesian_filter::Bayes_filter_base主要是主要包含Functional_filter等6个子类

2. 第二部Bayesian_filter::Importance_resamper子类主要是重要性重采用的相关类

3. 第三部分是Bayesian_filter::Iterated_terminator是迭代终止相关类

4. 第四部分Bayesian_filter::Observe_function是关于量测的相关类

5. 第五部分是Bayesian_filter::Observe_model_base

6. Bayesian_filter::Predict_model_base

  Bayesian_filter::Bayes_base对应的实现函数为bayesFlt.hpp,此类是一个抽象的多态基本表示,主要提供接口有:类型,内部错误处理和销毁。

我们第二个要介绍的namespace是Bayesian_filter_matrix,此类是要是矩阵运算相关的模板类。

第三个名称空间Bayesian_filter_matix::detail,其下主要包含了一些运算符重载函数和一些模板类。

第四个名称空间Bayesian_filter_matrix::LAPACK.

第五个名称空间Bayesian_filter_matrix::LAPACK::rawLAPACK.

手机扫一扫

移动阅读更方便

阿里云服务器
腾讯云服务器
七牛云服务器

你可能感兴趣的文章