不定积分的积分:matlab精度问题

计算科学 matlab 数值分析
2021-12-25 02:35:07

我需要评估的积分是:

xtnet1dt

经过一番研究,我发现一篇论文说,

两个积分的数值 [...] 很容易直接或通过级数展开计算。

这很容易评估,对吧?所以我尝试将它插入我的 32 位 7.7.0.471 (R2008b) MATLAB 程序,但它无法集成它。幸运的是,他们实际上引用了这一点,我被带到了一张数学表,上面写着,

xtndtet1=k=1expkx(xnk+nxn1k2+(n)(n1)xn2k3++n!kn+1)

我正在使用n=2所以我的实际表达是

xt2dtet1=k=1exp(kx)(x2k+2x1k2+(2)(1)x0k3)

然而,问题是我的x对环境来说非常大,例如1019, 和精度为exp导致它被评估为 0。如果我尝试在log在基础上,即使经过数千次求和,我似乎也无法收敛。我的软件也太旧了,无法与更新的贡献兼容,这将通过允许我任意提高精度来解决我的问题。

这篇论文是 90 年代中期的,为什么他们说这很容易?有没有更好的数学方法来解决像我这样的新手可以理解和实施的问题?一个人是怎么找到这个系列的?看起来很疯狂。

我确实找到了一篇似乎正在做我想做的事情的论文,尽管我不确定如何实现它。

1个回答

为了n>0,x=0, 这计算为Γ(n+1) Lin+1(1),并且对于n=2这是2 ζ(3).

对于上半年,也许有助于更多的参考。这里, 是另一半的表达式,甚至是 forn=2.