Mathematica Stack Exchange is a question and answer site for users of Mathematica. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I want to solve the following equation

2 x == Sinh[x]

Mathematica is unable to do so

In[1]:= Solve[2 x == Sinh[x], x]
During evaluation of In[20]:= Solve::nsmet: This system cannot be solved with the methods available to Solve. >>
Out[1]= Solve[2 x == Sinh[x], x]

However, Wolfram|Alpha can successfully solve the equation

Wolfram|Alpha query

How can I achieve the same in Mathematica?

share|improve this question
Try Solve[2 x == Sinh[x], x, Reals]. This is a common question - here's a similar example. – Mark McClure Jul 21 '14 at 23:46
You didn't ask Mathematica for a numerical solution, you asked for a symbolic one. – m_goldberg Jul 21 '14 at 23:53
If I ask Mathematica for a numerical solution, using NSolve, it gives me the same error, though. – Gregger Jul 21 '14 at 23:55
@Sven86, Use NSolve[2 x == Sinh[x], x, Reals]. NSolve has a default domain of Complexes just like Solve. – Chip Hurst Jul 22 '14 at 0:43
up vote 3 down vote accepted
Plot[2 x - Sinh[x], {x, -Pi, Pi}]

enter image description here

FindRoot[2 x == Sinh[x], {x, #}] & /@ {-2, 0, 2}

{{x -> -2.17732}, {x -> 0.}, {x -> 2.17732}}
share|improve this answer
Thank you very much for this. – Gregger Jul 21 '14 at 23:54
@Sven86 This syntax also works, though I believe it is undocumented: FindRoot[2 x == Sinh[x], {x, {-2, 0, 2}}]. Note that the output form is different: {x -> {-2.17732, 0., 2.17732}}. – Mr.Wizard Jul 22 '14 at 17:33

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.