用C求解方程

时间:2012-10-11 05:32:06

标签: c equation-solving

我需要在C中解决以下等式:

a + ln(a) = x

我知道x的值,我需要找到满足这个等式的'a'的值。任何人都可以提出一种解决这个方程的有效方法。可能是Newton Raphson,还是更高效的?

1 个答案:

答案 0 :(得分:2)

Newton Raphson Method会做得很好,但我建议你试试Lambert W function W(x)=函数f(x)= xex的倒数 所以,在你的情况下ln(a)+ a = x,然后,取每边的指数,eln(a)+ a = aea = ex。 这样就可以a=W(ex) 现在,您可以应用近似值来解决此问题。但首先,我建议你仔细阅读兰伯特方法。