Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我正在寻找一种算法来计算 ln(1-x)。x 通常很小 (<0.01),但有时它可能会更大。算法需要准确,而且不能太慢。我宁愿不使用 ln(x) 的库,因为我可能会失去准确性。
根据您想要的精度,-x它是 small 的一个很好的近似值ln(1-x)。从这里。
-x
ln(1-x)
编辑:如果需要该算法的原因是获得最佳准确性,那么有许多专门用于log(1+x). 例如,在 Python 中使用log1p。在C和C++中也是如此。
log(1+x)
如果您使用的是 MATLAB,则 log1p() 函数是专门为计算 x 的小值的 ln(1+x) 而设计的。