-1
$\begingroup$

I'm a programmer working on a game and I'm struggling with the physics engine. What I've gotten from my research is that there are elastic and inelastic collisions. Neither works for my purpose.

Let's say ball A is at a standstill and ball B is moving.

B-> A

In an elastic collision, ball A and B would switch momentums.

BA

B A->

In an inelastic collision, they would stick together.

B-> A

BA->

BA->

What I want is for them to bounce away. B bounces to the left a bit, and A gets most of the momentum and moves right.

What kind of collision is that?

And if possible, please explain it to me like I'm a high schooler; I don't know much physics/math.

Thanks!

$\endgroup$
2
  • 1
    $\begingroup$ A and B only switch momenta in an elastic collision if they have equal masses. $\endgroup$ May 22, 2018 at 15:58
  • $\begingroup$ "elastic" vs. "inelastic" is not an either-or choice. In both kinds, momentum must be conserved. In a perfectly elastic collision, the kinetic energy must also be conserved. In a perfectly inelastic collision, some of the KE is "lost." Let's call that amount $k$. How big is $k$? It is completely determined by the need to conserve momentum and, by the need for the particles to stick together after the collision. But you can also have collisions where the amount of KE lost is greater than zero, but less than $k$. Those collisions are neither perfectly elastic, nor perfectly inelastic. $\endgroup$ May 22, 2018 at 17:05

2 Answers 2

0
$\begingroup$

You have a false statement in the above problem description the type of collision where masses "stick together" is called totally inelastic. In general there will be some percentage of energy lost in the collision. To model this you need to either (a) understand the material properties of the balls and the physics of the energy absorption etc, etc, or (b) just define a random variable for "energy loss" and solve the equations with this parameter in there. The solution should be in most basic physics texts either as an example or as a H.W. problem. I think you can just look at the Collisions chapter of Halliday and Resnik, or Tipler and copy the equations.

$\endgroup$
0
-1
$\begingroup$

Well this type of collision cannot occur naturally. The best example of this type of collision will be that A has a bomb planted on it which will detonate only when B strikes it. If you can program something like that.

Or if your physics engine has a quantity that has the name Coefficient of Restitution(e) then set it > 1 for the two balls and that should do the trick.

If you want to learn more:

Wikipedia:

e > 1: This would represent a collision in which energy is released, for example, nitrocellulose billiard balls can literally explode at the point of impact. Also, some recent articles have described superelastic collisions in which it is argued that the COR can take a value greater than one in a special case of oblique collisions.These phenomena are due to the change of rebound trajectory caused by friction. In such collision kinetic energy is increased in a manner energy is released in some sort of explosion. It is possible that for a perfect explosion of a rigid system.

$\endgroup$
4
  • $\begingroup$ Also this type of collision will definitely fall somewhere between inelastic and elastic. $\endgroup$ May 22, 2018 at 17:07
  • $\begingroup$ What I was asking before was how to make the balls bounce off each other in the program. What I'm referencing now though is your statement that "this type of collision cannot occur naturally". Nothing to do with the original question - just curious. $\endgroup$ May 22, 2018 at 17:20
  • $\begingroup$ The original question was about a super elastic collision. Your comment example is about a collision which is between inelastic and elastic. They are different. $\endgroup$ May 22, 2018 at 17:27
  • $\begingroup$ By not occurring naturally i meant that some form of energy has to be created from an external source. $\endgroup$ May 22, 2018 at 17:27

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.