I am solving a physical problem, where I try to solve analytically a transcendental equation of type:

$$ \log (y)-a y=b, $$

here $a$ and $b$ are constants.

The problem is that I get a solution but with an error message who indicate that some solutions may not be found:

Solve[Log[y] - a y == b, y]

(* {{y -> -(ProductLog[-a E^b]/a)}} *)
(* Solve::ifun: Inverse functions are being used by Solve, so some solutions may not be found; use Reduce for complete solution information. *) 

Is this the right solution? Please how to found it?

  • $\begingroup$ Note that in Mathematica Log[y] is a natural logarithm of y. A logarithm with base 10 is Log10[y] or Log[10,y] $\endgroup$ – roman465 Jul 7 '18 at 0:07
  • $\begingroup$ yes, I know it @roman465. Thank you. $\endgroup$ – Gallagher Jul 7 '18 at 0:12
  • 1
    $\begingroup$ If you look at the result of Simplify[Reduce[Log[y] - a y == b, y]] then you might learn a little more about this. If you know that your constants are Real then you can let Reduce and Simplify know that and they might do an even better job of helping you understand the results. $\endgroup$ – Bill Jul 7 '18 at 1:05
  • $\begingroup$ If you plot Log[y] and a+b y you can see that, depanding on a,b, there exist no, one or two intersections (roots of the equation). $\endgroup$ – Ulrich Neumann Jul 7 '18 at 12:53

You can use it, but you need to know that


gives the principal solution for w in z==we^w. After all use

Solve[Log[y] - a y == b, y] // Quiet
  • $\begingroup$ Thank you @Alex Trounev, so this solution is sufficient. But how to get all solutions please? $\endgroup$ – Gallagher Jul 7 '18 at 11:39
  • $\begingroup$ @Gallagher, to get all solutions, you need to use the other branches of ProductLog[]; look up the documentation for this. $\endgroup$ – J. M.'s ennui Apr 17 '20 at 13:40

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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