Calculating impulse of a collision

  • Thread starter Thread starter alterecho
  • Start date Start date
  • Tags Tags
    Collision Impulse
AI Thread Summary
To calculate the impulse of a collision, it's essential to determine the surface normal vector, which is derived from the point of collision and the object's geometry. The discussion emphasizes the importance of correctly applying the impulse formula, noting that the sign of the impulse can significantly affect the final velocity calculations. A common error identified is the misapplication of the normal vector's direction, which should point away from the colliding object. Participants also highlight the need to accurately compute the cross product in the impulse equation, ensuring that the correct values are used for mass and moment of inertia. Adjustments to the calculations are necessary to achieve realistic results in collision simulations.
alterecho
Messages
19
Reaction score
0
I'm trying to apply the equation from Wikipedia (http://en.wikipedia.org/wiki/Collision_response) to find the impulse of a collision. How do i find/calculate the surface normal n, which is a unit vector?
 
Physics news on Phys.org
It depends on the implementation of your objects. Find the point of collision, and the part of the object which describes this, calculate the vector normal to the surface.
 
How do i calculate the vector normal?
 
How do you know how your objects looks like?
Two vectors are orthogonal if their scalar product is 0.

Your question is similar to "how do I calculate the speed of a car". You have to say what you know about the car (for example: "traveled x km in y minutes").
 
Here's an example of the situation I'm working with.

The distance vector for point of intersection would be (0, -20) in this case for the ball.
I assume the ball as the 1st object and the ground as the second object. I'm also considering the mass of the ground to be infinite and mass of the ball to be 1 and its moment of inertia as 400.
 

Attachments

  • exmp.png
    exmp.png
    1 KB · Views: 513
The ground has a horizontal surface in the x-direction and you have a two-dimensional problem? In this case, the orthogonal vector goes in the y-direction. It is simply (0,1).
 
I did use that. Suppose i have,
V_{i} = (20, -10),
Vp_{i} = (20, -10),
ω_{i} = 0,
n = (0, 1),
M_{a} = 1,
I_{a} = 400,
r_{a} = (0, -20),
I get the V_{f} as (20, -30).

This is the procedure i follow,
-Calculate the impulse j,
-Apply the formula V_{f} = V_{i} - \frac{j}{M} * n (as given in Wikipedia).

The result is obviously wrong since with this final velocity, the ball will fall through the floor.
Am i missing some step?
 
Last edited:
I think you have a sign error for j. Using your sign convention, it should be negative.
 
You mean V_{f} = V_{i} - \frac{-j}{M} * n ?
But we are taking into consideration the normal of the impulse so how is that?
 
  • #10
In the wikipedia diagram, the normal vector points away from object 1. This leads to the minus sign in the web page equation. You should have Vf = Vi + (positive factor)n.
 
  • #11
You're right. But when i apply the initial values as:
e = 1
V_{i} = (10, -20)
W_{i} = 0
r = (0, -20)
V_{p} = (10, -20)
n = (-1, 1)
m = 1
I = 200

For Collision with a Wall/ground, I'm using equation from this site (modified version of the Wikipedia equation): http://www.myphysicslab.com/collision.html

j = \frac{−(1 + e) V_{p1} · n}{\frac{1}{m} + \frac{(r × n)^{2}}{I}}

I get
j = 59.4,
V_{f} = (-49.4, 39.4)
W_{f} = -5.9

This obviously seems wrong. What should i do?
 
  • #12
alterecho said:
You're right. But when i apply the initial values as:
e = 1
V_{i} = (10, -20)
W_{i} = 0
r = (0, -20)
V_{p} = (10, -20)
n = (-1, 1)
m = 1
I = 200

For Collision with a Wall/ground, I'm using equation from this site (modified version of the Wikipedia equation): http://www.myphysicslab.com/collision.html

j = \frac{−(1 + e) V_{p1} · n}{\frac{1}{m} + \frac{(r × n)^{2}}{I}}

I get j = 59.4,
|r x n| = 20, agreed? This gives me j = (2*30)/(1/1+400/200) = 20.
 
  • #13
Sorry for the late reply. I just identified an error in my application of the equation. I was taking the square AFTER dividing (r x n) by I in the denominator.

I'll have to see how this turns out in my application. Will do some tests.

You say |r x n| = 20. Do we need to take the absolute of the result of the cross product?
 
Back
Top