c - 以无穷大为极限之一的 fortran 数值积分
问题描述
我被要求通过找到 A 的值来将 0内的概率分布P=A(x^2)(e^-x)归一化到无穷大。我知道计算积分数值的算法,但是我该如何处理限制之一是无限。
解决方案
我能够以一定的准确度解决这个问题的唯一方法(我确实得到了完全的准确度)是先做一些数学运算,以获得代表第一个积分的泰勒级数。
我一直在这里寻找我的示例代码,但没有找到。如果我得到一个可行的解决方案,我会编辑我的帖子。
基本思想是计算函数的所有导数exp(-(x*x))
并使用系数推导出积分形式(通过将这些系数除以x
上述函数的指数以上)得到积分的泰勒级数(我推荐你使用上面描述的非标准化版本来获得简单的数字系数,然后通过乘以适当的常数来调整结果)你会得到一个具有良好收敛性的泰勒级数,为你提供全精度的精确值(积分需要很多细分,并且您不能将无界区间划分为有限数量的区间,所有区间都是有限的)
如果我得到我写的代码,我会编辑这个问题(所以保持在线,不要'改变频道:))
推荐阅读
- c++ - 使用 Windows API 获取黑色屏幕截图
- floating-point - 1 如何在 C/C++ 中编码为浮点数(假设 IEEE 754 单精度表示)?
- python - 如何在python中的某些分隔符之间获取所有子字符串
- python - 如何用numpy数组中的相应值替换每行中特定索引中的值
- php - 表上没有结果
- php - 如何访问 base_path() 文件中的 env() 方法?
- android - 如何检测何时按住按钮?
- azure - 未经授权:你的机器人未配置为与 LUIS 应用交互
- python - 我有一个按钮,我试图用 selenium 点击但是有比按钮更多的 css 选择器
- post - Attempting to make a POST call from a Google App Script