boost::math::pdf() 与C++概率密度函数
来源:互联网 发布:外贸书籍推荐 知乎 编辑:程序博客网 时间:2024/06/05 19:11
转载请注明出处:http://my.csdn.NET/ye_shen_wei_mian
最近在一份开源代码中接触到概率密度函数,该概率密度函数是正态(高斯)分布,是基于boost库实现的,非常方便易用。
官网对该函数的解释是:
pdf(my_dist, x); // Returns PDF (density) at point x of distribution my_dist.至于用法也很简单:
boost::math::normal_distribution<float> nd(seed->mu, norm_scale);float result = boost::math::pdf(nd, x);对于 pdf 和 cdf 函数的详情,可以参考http://www.boost.org/doc/libs/1_63_0/libs/math/doc/html/math_toolkit/stat_tut/overview/generic.html 这个网址
寻思着boost作为C++的准标准库组成部分,在C++标准库中是否有同样的实现呢?
很遗憾,经过搜集资料发现,好像是没有的,在stackoverflow中参详这个问题下的被接收的回答
Probability Density Function using the standard library?(网址:http://stackoverflow.com/questions/19387222/probability-density-function-using-the-standard-library)
其实要自己写出常用的概率分布密度函数也并不难,完全可以自己去写。在stackoverflow找到一个正态(高斯)分布的别人的实现,供大家参考下:
Using the gaussian probability density function in C++
(网址:http://stackoverflow.com/questions/10847007/using-the-gaussian-probability-density-function-in-c#)
作者给出了两种实现:
float normal_pdf(float x, float m, float s){ static const float inv_sqrt_2pi = 0.3989422804014327; float a = (x - m) / s; return inv_sqrt_2pi / s * std::exp(-0.5f * a * a);}或者做成模板函数也行:
template <typename T>T normal_pdf(T x, T m, T s){ static const T inv_sqrt_2pi = 0.3989422804014327; T a = (x - m) / s; return inv_sqrt_2pi / s * std::exp(-T(0.5) * a * a);}
至于如何使用std自带的概率分布来产生正态分布或者其他分布的随机数,可以参考正态分布下的随机数产生方法:
http://www.cplusplus.com/reference/random/normal_distribution/?kw=normal_distribution
0 0
- boost::math::pdf() 与C++概率密度函数
- 正态分布 概率密度函数PDF
- matlab之pdf 概率密度函数
- 概率密度函数与概率密度函数的估计
- 概率分布函数, 概率密度函数与概率质量函数
- 概率基础-概率密度函数
- 概率密度函数
- Matlab--概率密度函数
- 概率密度函数估计
- 概率密度函数 ××××× ××
- 什么是概率密度函数?
- 概率密度函数与分布函数的几何含义
- 似然函数与概率密度函数的区别
- R语言︱分布函数与概率密度+随机数产生
- 高斯分布(Gaussian distribution)及其概率密度函数PDF和累积分布函数CDF
- 高斯分布概率密度函数(PDF)和累积分布函数(CDF)
- 概率密度函数估计简介
- 概率密度函数估计简介
- set 集合 uva10815
- Flux --> Redux --> Redux React 入门 基础实例使用
- [HTML] Meta标签用法整理
- Cmake3.6.3+VS2012下编译OpenCV-2.4.10静态库
- 第五届蓝桥杯软件类国赛真题-C-C-1_国王的遗产
- boost::math::pdf() 与C++概率密度函数
- 使用PHPMail发送邮箱(163邮箱为例)
- 正则表达式的使用(邮箱验证)
- 第五届蓝桥杯软件类国赛真题-C-C-2_神奇6位数
- 线性微分方程组的公式解法
- 洛谷P1403 AHOI2005 约数研究
- FP Tree算法原理总结
- 初识Java虚拟机(2)初探内存
- Nginx配置