Looking for a method of solution/inversion for x*Tanh[x]

  • Context: Graduate 
  • Thread starter Thread starter Hepth
  • Start date Start date
  • Tags Tags
    Method
Join the discussion
Registration is free. Ask a follow-up in this thread, or start your own.
4 replies · 2K views
Science Advisor
Gold Member
Messages
458
Reaction score
40
$$ y == x*Tanh[x]$$

Solve for "x".

Does this exist? Even in terms of more complicated functions like Lambert W, or possibly recursive solutions/geometric series/etc.

Thanks, if anyone can point me in the right direction!
 
Mathematics news on Phys.org
Hepth said:
$$ y == x*Tanh[x]$$

Solve for "x".

Does this exist? Even in terms of more complicated functions like Lambert W, or possibly recursive solutions/geometric series/etc.

Thanks, if anyone can point me in the right direction!

First of all. This function is not injective on its maximal real domain, so there is no possibility that an inverse can exist. This can be solved by restricting the domain, however, I believe there is no closed form:

http://www.wolframalpha.com/input/?i=what+is+the+inverse+function+of+y+=+x+tanh(x)+?
 
That's what I was finding, even if I'm restricted to 0 to 1 for example, there numerically will exist a a single real
positive solution; but analytically I don't think there's a solution.
 
Hepth said:
$$ y == x*Tanh[x]$$

Solve for "x".

Does this exist? Even in terms of more complicated functions like Lambert W, or possibly recursive solutions/geometric series/etc.

Thanks, if anyone can point me in the right direction!

For me, the inverse "does" exists and depends what you mean by solve:
In Mathematica:
Code:
myData = Array[{# Tanh[#], #} &, {100}, {0, 20}];
myTanhInverse = Interpolation[myData]

myTanhInverse is pretty close to the inverse (domain-restricted). I leave it to the reader to modify my code so that the inverse is accurate to 20 digits in the interval (0,20).
 
Last edited: