c++ - 如何使用boost分布函数?二分法呢?

标签 c++ boost

我很难理解如何在 boost 中使用二项分布和正态(高斯)分布。我需要从这些函数中获取单个值。我确定我现在可能正在尝试错误地使用这些功能,但这是我目前所拥有的:

#include <boost/math/distributions.hpp>
#include <boost/math/tools/roots.hpp>
#include <boost/random/variate_generator.hpp>
#include <boost/random.hpp>

//valueH is assigned before
int value;
/* Should this assign value to "value" ?*/
value = boost::math::binomial_distribution<> value(1,valueH);

正态分布为

normal norm;

double someValue = boost::math::pdf(norm, (value1*value2+value3)/(value1*sqrt(value2)));

或者我应该在这里使用 boost::math::normal_distribution<> 或者它是如何工作的?我已经阅读了 boost 文档,但仍然不知道如何从分布中分配值。我也读过 C++ TR1: how to use the normal_distribution?那么我是否需要使用一些随机数生成器并生成链接所示的数字,这是否允许我为变量分配单个值?

如果消息有点乱,我很抱歉,但无论如何谢谢!

好的,到目前为止我已经理解了二项式并使其正常工作,现在我需要让正态分布正常工作......引用上面的链接,我的情况不同于我只需要一个值但我想调用正态分布有值的分布。就像“给我 N(0.1) 和 2 左右。

好吧,我认为这变得越来越容易,但似乎不是我想使用 boost 二分函数 Bisection但问题是有时我只有函数 min 和 max,而二分函数至少需要 4 个参数第 4 个参数是 Tol tol ..这是某种容差,但如果我想找到它,我可以将它分配给 0一个绝对值还是我需要用 3 个参数编写自己的二分法?

最佳答案

关于c++ - 如何使用boost分布函数?二分法呢?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8232058/

相关文章:

c++ - 如何在编译时检查结构的大小?

c++ - 返回 ARM NEON 下的 Z 标志

c++ - Boost::Asio HTTP 服务器极慢

c++ - 哪些 Boost 库利用了 Move Semantics

multithreading - 我如何使用 boost thread futures 的向量?

c++ - friend LinkedQueue<T>;期待一个声明

c++ - 如何将 Rcpp::List 转换为 std::vector<double>

C++ 如何在 vector 中存储两种数据类型

c++ - 将 Mysql 阻塞 API 与 Boost::asio 结合使用

c++ - 在运行时管理共享库之间的 Boost::any