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