-
Notifications
You must be signed in to change notification settings - Fork 38
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Cushion bounce physics by Mathaven #158
Comments
Hey @tailuge it's great to hear from you. Congrats on implementing Mathavan's cushion bounce! I remember you doing considerable validation/invalidation of the Han model. Your typescript solution looks really clean. Perhaps I should ask ChatGPT/Claude to simply convert your solution to Python :D That's awesome you recreated the figures in the paper. Did you find any discrepancies? By the way, someone (@derek-mcblane) just recently tagged you in the #general channel of the Discord. |
I can highly recommend using the LLMs - not because they get it right but they have a stab at it and its easy to correct things from there. Its quite a bit of fun trying to get them on the right tracks - right now I'm hoping to get this throw effect https://billiards.colostate.edu/technical_proofs/new/TP_A-14.pdf by prompting with this markdown (I think you have this modelled with Mathaven ball-ball https://github.com/jzitelli ) . |
https://github.com/tailuge/billiards?tab=readme-ov-file#collisions Ball-Ball model based on Alciatore. Not as much help from the LLMs on this one but the thrill of trying kept me going. It is quite a nice model as it is non iterative and feels good when playing. I am tempted to convert the python code from your project for ball-ball mathaven into typescript and see how those graphs look. |
@tailuge, check out the model I implemented here based on Alciatore: https://github.com/ekiefl/pooltool/blob/8d973a0450ed03a64505f2fdbc9828bec5483227/pooltool/physics/resolve/ball_ball/frictional_inelastic/__init__.py |
Very interesting, I already see some constant factors that I didnt use (5/9!) - I'll have to perfect the LLM trick of translating python to typescript then I can try plotting graphs and comparing. Thanks. Here is a dead straight shot with maximum left hand side - you can see the paths of the balls thrown off (feels about right, but it could be a bit much) |
@tailuge, okay looking at your example shot and the math in your README, I think you ignored the change in angular velocities for the balls. That's like what Dr. Dave does in TP A-5, but it's not really very realistic. I keep putting off writing up the full solution in a presentable way because there is more interesting pool simulator work to do haha, but I'm happy to share with you when I have something. |
I updated the readme to cover the angular velocity change I apply - but since it is not covered in the Alciatore paper I referenced it is just common sense guess. I'll look into the other paper you mentioned. My top tip get the LLMs to write the latex markdown... ha. How would you rate the realism of your model Alciatore vs the Mathaven one in pool tool? |
Hi Evan,
I work on another pool project (you previously helped me with spin physics) and I recently improved the cushion bounce based on the paper by Mathaven.
https://github.com/tailuge/billiards?tab=readme-ov-file#cushion-bounce
I just thought I'd let you know in case you want to try to port it into this project - the paper is tough but I found that LLMs are pretty good at filling in the gaps it had and I really enjoyed recreating the figures from the paper to convince myself it was working. The feeling in game of how spin works on cushions is definitely better than the previous model by Han.
Wishing you all the best
Luke
The text was updated successfully, but these errors were encountered: