I'm trying to find a value x that satisfies an equation of the form $y=\int_0^xf(x')dx'$.
As far as I can tell, there's no closed-form solution for $y$, or $dy/dx$, so when I plug this into Solve, NSolve, FindRoot, etc. Mathematica churns for a very long time.
However, I can get an answer to the rough precision I require much quicker if I just plot $\int_0^xf(x')dx'-y$ and read off the value of the root from the plot.
This isn't accurate or precise, but it's quick, and it's good enough for my purposes. The question then is how can I wrangle Mathematica so it does something similar instead of trying to get me the most exact answer?
Playing around with precisiongoal and accuracygoal isn't cutting it, because really what I need is a less sophisticated algorithm. The function is monotonically increasing, so it really should be sufficient just to step up in x by some small amount until the sign changes. Unfortunately I don't know how to code this in Mathematica.
NDSolve[]
+WhenEvent[]
. $\endgroup$ – J. M.'s ennui♦ May 23 '17 at 21:33