用于计算小(偶尔大)x的ln(1-x)的良好算法

时间:2010-09-23 09:06:52

标签: language-agnostic numerical-stability

我正在寻找计算ln(1-x)的算法。 x通常很小(<0.01),但偶尔可能更大。算法需要准确,而不是太慢。我宁愿不将库用于ln(x),因为我可能会失去准确性。

2 个答案:

答案 0 :(得分:3)

根据您想要的准确度,-x是小ln(1-x)的良好近似值。来自here

编辑:如果需要算法的原因是获得最佳准确度,那么有许多专门用于log(1+x)的库。例如,在Python中使用log1p。同上[{3}}和C

答案 1 :(得分:0)

如果您使用MATLAB,则log1p()函数专门用于计算x的小值的ln(1 + x)。