当前位置: 首页 > news >正文

路由器 东莞网站建设/建站流程主要有哪些

路由器 东莞网站建设,建站流程主要有哪些,装修设计专业,前端开发入门视频教程以下帖子解决,问题是因为http://www.cplusplus.com/reference/random/piecewise_constant_distribution/错过了公式的解释,强烈建议读者考虑页面:http://en.cppreference.com/w/cpp/numeric/random/piecewise_constant_distribution我有以下奇怪的现象让我感到困惑&…

以下帖子解决,问题是因为

http://www.cplusplus.com/reference/random/piecewise_constant_distribution/错过了公式的解释,强烈建议读者考虑页面:

http://en.cppreference.com/w/cpp/numeric/random/piecewise_constant_distribution

我有以下奇怪的现象让我感到困惑!:

我有一个分段常数概率密度

using RandomGenType = std::mt19937_64;

RandomGenType gen(51651651651);

using PREC = long double;

std::array intervals {0.59, 0.7, 0.85, 1, 1.18};

std::array weights {1.36814, 1.99139, 0.29116, 0.039562};

// integral over the pdf to normalize:

PREC normalization =0;

for(unsigned int i=0;i<4;i++){

normalization += weights[i]*(intervals[i+1]-intervals[i]);

}

std::cout << std::setprecision(30) << "Normalization: " << normalization << std::endl;

// normalize all weights (such that the integral gives 1)!

for(auto & w : weights){

w /= normalization;

}

std::piecewise_constant_distribution

distribution (intervals.begin(),intervals.end(),weights.begin());

当我从这个分布中绘制n个随机数(以毫米为单位的球体半径)并计算球体的质量并将它们总结为:

unsigned int n = 1000000;

double density = 2400;

double mass = 0;

for(int i=0;i

auto d = 2* distribution(gen) * 1e-3;

mass += d*d*d/3.0*M_PI_2*density;

}

我得到质量= 4.3283千克(见LIVE here)

在Mathematica中做完全相同的事情,如:

提供4.5287千克的正确值. (见mathematica)

哪个不一样,也有不同的种子,C和Mathematica从不匹配! ?是数字不准确,我怀疑它是什么……?

问题:C中的采样有什么问题?

简单Mathematica代码:

pdf[r_] = 2*Piecewise[{{0, r < 0.59}, {1.36814, 0.59 <= r <= 0.7},

{1.99139, Inequality[0.7, Less, r, LessEqual, 0.85]},

{0.29116, Inequality[0.85, Less, r, LessEqual, 1]},

{0.039562, Inequality[1, Less, r, LessEqual, 1.18]},

{0, r > 1.18}}];

pdfr[r_] = pdf[r] / Integrate[pdf[r], {r, 0, 3}];(*normalize*)

Plot[pdf[r], {r, 0.4, 1.3}, Filling -> Axis]

PDFr = ProbabilityDistribution[pdfr[r], {r, 0, 1.18}];

(*if you put 1.18=2 then we dont get 4.52??*)

SeedRandom[100, Method -> "MersenneTwister"]

dataR = RandomVariate[PDFr, 1000000, WorkingPrecision -> MachinePrecision];

Fold[#1 + (2*#2*10^-3)^3 Pi/6 2400 &, 0, dataR]

(*Analytical Solution*)

PDFr = ProbabilityDistribution[pdfr[r], {r, 0, 3}];

1000000 Integrate[ 2400 (2 InverseCDF[PDFr, p] 10^-3)^3 Pi/6, {p, 0, 1}]

更新:

我做了一些分析:

>读入Mathematica生成的数字(64位双打)

C – >计算总和,它与Mathematica相同

通过还原计算的质量:4.52528010260687096888432279229

>将从C(64位双倍)生成的数字读入Mathematica – >计算总和,它给出相同的4.32402

>我几乎得出结论,使用std :: piecewise_constant_distribution的采样是不准确的(或者像64bit浮点数那样准确)或者有一个错误……或者我的权重有问题?

>在http://coliru.stacked-crooked.com/a/ca171bf600b5148f中错误地计算密度std :: piecewise_constant_distribution ===>这似乎是一个错误!

CPP的直方图生成值与所需分布相比较:

file = NotebookDirectory[] <> "numbersCpp.bin";

dataCPP = BinaryReadList[file, "Real64"];

Hpdf = HistogramDistribution[dataCPP];

h = DiscretePlot[ PDF[ Hpdf, x], {x, 0.4, 1.2, 0.001},

PlotStyle -> Red];

Show[h, p, PlotRange -> All]

http://www.lbrq.cn/news/1561879.html

相关文章:

  • 免费网站模板下载大全下载/百度快照是干嘛的
  • 网站开发有限公司/青岛seo外包公司
  • 企业网站主页设计图片/最热门的短期培训课程
  • 网站制作的基本流程/长沙优化网站推广
  • 2018爱情动做网站/2345浏览器主页网址
  • 做网站的前端是做什么/广州线下培训机构停课
  • 沈阳网站建设制作公司/安徽百度关键词优化
  • 网站建设二级分销/百度指数有哪些功能
  • 做ui要上那些网站/高端网站建设公司哪家好
  • 服装电子商务网站设计/怎么进行seo
  • 佛山广告设计公司排名/seo搜索引擎优化薪酬
  • 个人做网站流程图/百度pc端首页
  • 网站建设犭金手指C排名15/自己做网站设计制作
  • 手机在线设计/郑州百度seo排名公司
  • 北京 工业网站建设公司价格/代做seo关键词排名
  • 织梦网站怎样做防护/产品推广软件有哪些
  • 网站开发在线教程/友链是什么
  • 网站怎么做播放器/提高工作效率的软件
  • 设计师素材网站e/google推广公司哪家好
  • 珠海网络网站建设/百度秒收录神器
  • 个人网站可以做导购吗/广东公共广告20120708
  • wordpress+订单号位数/北京优化网站方法
  • 动漫版/uc浏览器关键词排名优化
  • mvc做门户网站/整站快速排名优化
  • 用织梦做的网站ftp怎么登陆/沪指重上3000点
  • 温州网站建设价格/软文营销网站
  • 传奇页游开服/百度网站排名seo
  • 设计网络网站建设/台州百度关键词排名
  • 网站制作怎样快速/百度超级链数字藏品
  • 群晖wordpress目录/白云百度seo公司
  • 41 C++ STL模板库10-容器3-list
  • Golang分布式事务处理方案
  • 深入理解Transformer:从训练机制到长文本处理的核心问题
  • 解锁AI大模型:Prompt工程全面解析
  • iceberg 底层存储HDFS与juiceFS的区别
  • 最新去水印小程序系统 前端+后端全套源码 多套模版 免授权(源码下载)