Can Fixed Point Iteration Solve Exponential Sum Equations?

  • Thread starter Thread starter scientist04
  • Start date Start date
  • Tags Tags
    Exponential Sum
scientist04
Messages
1
Reaction score
0
Hi,

I currently need to solve a problem which leads to an equation of the form a*exp(a*x)+b*exp(b*x)-c=0. The difference between a and b can often become very big, like a=1000 and b=1. Therefore numerical algorithms I tried so far, fail to solve this equation. Has anyone got any clues on a stable method to solve this equation?

Thanks in advance
 
Physics news on Phys.org
I assume you mean a and b are given real constants and you want to solve for a real value of x.

If all else fails, interval bisection is guaranteed to converge if you start with an interval that contains a root.

The derivative of the function is a^2 exp(ax) + b^2 exp(bx) which is positive for any values of a and b, so the function is always monotonic. If you don't know a better guess, you can find an interval that brackets the root by taking wider and wider intervals like
-1<x<1 , -2<x<2, -4<x<4, -8<x<8, -16<x<16, etc.

That is not quick and elegant, but it should work. Once you have got some solutions, you may understand the problem better and be able to invent a better algorithm.

If the equation is in complex arithmetic, things may get much more complicated!
 
You might write the equation in the form

x = f(x)
where
f(x) = \frac{1}{a} \ln \left( \frac{c - b \exp(bx)}{a} \right)

and apply fixed-point iteration. I.e.,

Let x_0 = \text {initial guess}
and x_{n+1} = f(x_n)

It worked like a charm with me for a = 1000, b = 1, c = 3422.23 (chosen to have a root x = 0.00123), starting with x_0 = 0.0000001.
 
Last edited:
awkward said:
You might write the equation in the form

x = f(x)
where
f(x) = \frac{1}{a} \ln \left( \frac{c - b \exp(bx)}{a} \right)

and apply fixed-point iteration. I.e.,

Let x_0 = \text {initial guess}
and x_{n+1} = f(x_n)

It worked like a charm with me for a = 1000, b = 1, c = 3422.23 (chosen to have a root x = 0.00123), starting with x_0 = 0.0000001.
How did you do this!
Is it Newton's method?
 
RandomMystery said:
How did you do this!
Is it Newton's method?
No. He just solved ae^ay+be^bx=c for y.
 
RandomMystery said:
How did you do this!
Is it Newton's method?

As I said, it's fixed point iteration:

http://en.wikipedia.org/wiki/Fixed_point_iteration

You can find many applications of this method in two books on numerical analysis by Acton, "Numerical Methods That Work" and "Real Computing Made Real".
 
Last edited:
Back
Top