Sorry I don't have maxima.
Equations are solved with FindRoot().
I also had to make some alterations.
Original y(x) function has unit mismatch.
Solvers don't like direct usage of if() or cases().
You can detect it with Unknowns().
If it doesn't produce a result, there is a problem.
Here is your file solved.
Regards
Problem with solvers_solved.sm (95.81 KiB) downloaded 268 time(s).