Really cool problem! And great animations. I was disappointed to find that the associated notebook ( http://math.bard.edu/belk/code/BilliardsHertz.nb ) doesn't work correctly in either Mathematica 9 or 10 -- I think the author used 8. It seems like NDSolve falls down: NDSolve::smpf: Failure to project onto the discontinuity surface when computing Filippov continuation at time 0.`. >> and the solution shows the cue bo…
There's a Mathematica 10 now, already? Interesting. I'm still a happy 8 user, myself. Is there much reason to upgrade? It'd probably be good for them to pay more attention to backwards compatibility...
Perfectly centered break of a perfectly aligned pool ball rack
31–40 of 69 posts
Re: Perfectly centered break of a perfectly aligned pool ball rack
#32What does the pattern of motion look like once they start bouncing off walls? What about if the table is frictionless?
I'm no physics expert, but I can account for the second one -- if there's no friction, the balls just keep rolling
Re: Perfectly centered break of a perfectly aligned pool ball rack
#33Really cool problem! And great animations. I was disappointed to find that the associated notebook ( http://math.bard.edu/belk/code/BilliardsHertz.nb ) doesn't work correctly in either Mathematica 9 or 10 -- I think the author used 8. It seems like NDSolve falls down: NDSolve::smpf: Failure to project onto the discontinuity surface when computing Filippov continuation at time 0.`. >> and the solution shows the cue bo…
Apparently Mathematica added some new features in version 9 that are intended to better handle differential equations with discontinuities (see http://reference.wolfram.com/mathematica/tutorial/NDSolveWhe...). Apparently this is getting tripped up at the boundary between the two behaviors.
One simple thing that might work is to change the force law to either
force[disp1_, disp2_, dir_] := -k Abs[(disp1 - disp2).dir ]^(3/2) dir* If[(disp1 - disp2).dir > 0, 1, 0]
or force[disp1_, disp2_, dir_] := -k Abs[(disp1 - disp2).dir ]^(3/2) dir* Piecewise[{{1, (disp1 - disp2).dir > 0}}, 0]
If these don't fix it, then you would need to play around with the options for NDSolve.Re: Perfectly centered break of a perfectly aligned pool ball rack
#34Really cool problem! And great animations. I was disappointed to find that the associated notebook ( http://math.bard.edu/belk/code/BilliardsHertz.nb ) doesn't work correctly in either Mathematica 9 or 10 -- I think the author used 8. It seems like NDSolve falls down: NDSolve::smpf: Failure to project onto the discontinuity surface when computing Filippov continuation at time 0.`. >> and the solution shows the cue bo…
That is odd. Mathematica is usually good about backwards compatibility. That sounds like a change in the under lying numerical solver.
Seriously: I think they will make breaking changes if the existing code turns out to be mathematically incorrect. That may or may not have been the case here.
Re: Perfectly centered break of a perfectly aligned pool ball rack
#35Jim Belk was my math professor in college -- we always knew he was a much better programmer than he let on!
Re: Perfectly centered break of a perfectly aligned pool ball rack
#36Re: Perfectly centered break of a perfectly aligned pool ball rack
#37Really cool problem! And great animations. I was disappointed to find that the associated notebook ( http://math.bard.edu/belk/code/BilliardsHertz.nb ) doesn't work correctly in either Mathematica 9 or 10 -- I think the author used 8. It seems like NDSolve falls down: NDSolve::smpf: Failure to project onto the discontinuity surface when computing Filippov continuation at time 0.`. >> and the solution shows the cue bo…
There's a Mathematica 10 now, already? Interesting. I'm still a happy 8 user, myself. Is there much reason to upgrade? It'd probably be good for them to pay more attention to backwards compatibility...
The features I'm most excited about in 10 (disclosure: my team is working on some of these):
[2] String, XML, file templating
[3] Hands-free machine learning
[4] Entity and EntityValue: semantic "hooks" to represent real world entities
[5] Dataset, a general data modelling and query framework.
Also, DateObject, TimeObject, interaction with external processes, multiple undo, a large number of updated data sources, the ExternalService "meta-api", device connections, time series stuff, GeoGraphics, and a long list of no less worthy features.
[1] http://reference.wolfram.com/language/guide/Associations.htm...
[2] http://reference.wolfram.com/language/guide/WorkingWithTempl...
[3] http://reference.wolfram.com/language/guide/MachineLearning....
Re: Perfectly centered break of a perfectly aligned pool ball rack
#38Somewhat meta, but at what point does Stack Overflow transition from being a useful, time-saving tool and become a waste of everyone's time? The top answer author clearly put a ton of time on the answer. We are all now reading this. Is anyone able to apply any of the knowledge they gained from this Q&A to anything productive?
First of all, there's the fact that I did this on a Friday evening, after I came home from work. (I spent about six hours on it, and maybe another hour or two on Saturday morning). There are probably more productive uses of my time, but it was fun, and the most likely alternative was probably something like "read reddit" as opposed to "do something productive". It's nice to have leisure-time activities that are at least marginally related to my career.
Speaking of which, here's a few reasons that this was helpful for me:
1. I got a little better at programming in Mathematica. I use Mathematica a lot for both my teaching and research, so it always helps to practice.
2. I learned about a whole field of physics called contact mechanics, which I otherwise wouldn't have been aware of. It's part of my job as a math professor to know about random things like this.
3. I got some experience with modeling in applied mechanics problems. This may be helpful for me in the future -- as a professor at Bard, I regularly have to supervise senior math majors who want to work on research-level problems. The next time a senior who's interested in applied mechanics wants a research problem, I'll have one available.
That's how it's helpful for me, but I suppose it's less clear that this was helpful for the rest of the world. I guess, at the very least, it certainly seems to have entertained a bunch of people, and maybe someone learned something about modeling or differential equations or physics.
Re: Perfectly centered break of a perfectly aligned pool ball rack
#39Re: Perfectly centered break of a perfectly aligned pool ball rack
#40Weird, wasn't expecting to find that it was by my brother in law!