Community Tip - You can Bookmark boards, posts or articles that you'd like to access again easily! X
Hmm, with your range variable you demand a precision of 20000 points, but odesolve by default has only a resolution of 1000 points!
So what you get to see is mostly the effect of (nonlinear) interpolation.
If you need a precision that high, you must also tell the solve block so by adding the last optional argument in "odesolve".
The difference is quite significant as you can see here:
I also prefer using "CreateSpace" instead of defining a range variable, but this may be a matter of personal preference.