Nov 30
  • log1p(x)=log(1+x):看似是一个丝毫没有用的函数,但是如果x非常之小,问题就会出现。计算机会把1+x的结果计算为1,然后返回了0,这和实际结果的相对误差实在太大。
  • expm1(x)=exp(x)-1:存在的理由和上面一样。
  • erfc(x)=1-erf(x):erf()是一个计算误差的函数,当x很大的时候,erf(x)约为1,此时1-erf(x)就会被计算为0,但它的值应该是一个正数。

转自:HACKER MONTHLY Issue 3 August by John D. Cook