How Do Elastic Collisions in 2D Affect Velocity and Rotation?

Click For Summary

Discussion Overview

The discussion revolves around the mechanics of elastic collisions in two dimensions, focusing on the effects on velocity and rotation. Participants explore the mathematical formulations involved, the application of normal vectors, and the incorporation of friction in collision calculations.

Discussion Character

  • Technical explanation
  • Mathematical reasoning
  • Debate/contested

Main Points Raised

  • One participant seeks clarification on the use of positive and negative signs in the equations for post-collision velocities and the conditions under which they apply.
  • There is a question about whether to calculate the components of velocity (vx, vy) separately or to use the magnitude of the normal vector in two-dimensional collisions.
  • Another participant requests a demonstration of the transition between different equations for final velocities in elastic collisions.
  • Concerns are raised about how to incorporate friction into the collision calculations, specifically regarding its direction and effect on velocity.
  • One participant shares a code snippet for calculating post-collision velocities but notes that it produces incorrect results, prompting inquiries about the normal vectors used.
  • Another participant expresses confusion about the rotation calculations and the role of the normal vector's magnitude in those equations.
  • There are requests for better explanations of the variables and conditions involved in the calculations, indicating a need for clearer communication of ideas.
  • Discussion includes a mention of inertia and its conversion to pixel units, with a participant noting issues with the direction of rotation.

Areas of Agreement / Disagreement

Participants do not reach a consensus on the best approach to calculate elastic collisions and rotations, with multiple competing views and unresolved questions remaining throughout the discussion.

Contextual Notes

Participants express uncertainty regarding the definitions of variables, the conditions for applying certain equations, and the integration of friction into the calculations. There are also unresolved mathematical steps and dependencies on specific assumptions that are not fully articulated.

Isawyou0
Messages
13
Reaction score
0
Hi all!
I'm developping a program, I wish if somebody helps me since I'm not good in physics, we know that:
v'1=v1-(j / m1)*n
v'1=v2+(j / m2)*n
1) when we use negative and positive sign? if we change them, there is error sometimes.
2)In 2d, do I have to calculate vx, and vy separately, what about n normal vector? should I do the same or use the magnitude?
And here we talk about relative velocity of j=-(1+e)*rV/1/m1+1/m2,calculate just magnitude or vx and vy, but doe'snt going to work in rotation:
w'=w+j/i*r*n;
j=j=-(1+e)*rV/(1/m1+1/m2)*n^2*r^2/I*n^2*r^2/I;there will be no wx and wy for vx and vy, I guess magnitude here?
3) Can somebody demonstrate to me how the heck do we passed from:
Vf = Vi+ 2m(vi-Vi)/(m+M);to:
vf=vi-(j / m1)*n;also for rotation;
4) how to add friction:(it's should be negative to the velocity, and f'=uf, with ucoeficient of friction), a dot product with perpendicular to n normalised + j ?
I'm lost here please help; I will appreciate :)
 
Physics news on Phys.org
If you use variables, it would be useful to define and explain them.
 
Better explain the conditions.
 
okay! it will be more complicated, just want to know how to clculate ellastic colision, and rotation
 
Isawyou0 said:
okay! it will be more complicated, just want to know how to clculate ellastic colision, and rotation
You will need to make the effort to explain what you want in better detail or no one can answer you.
Did you try a textbook?
 
vx = vx + ((-1 * (1 + 1) * ((vx + teta *r) * nx+ (vy + teta * r) * ny)) / ((1 / m1+ 1 / m2) * ((ny* ny) + (nx* nx)))) * nx;
vy = vy + ((-1 * (1 + 1) * ((ix + teta * r) * nx+ vy + teta * r) * ny)) / ((1 / m1+ 1 / m2) * ((ny* ny) + (nx* nx)))) * ny;

nx &&ny: are normal of collison.
this code work wrong, why?
 
it works finally! just want to know about rotation last n,
w'=w+j/i*r*n;
n magnitude?
 
it's ok for rotation,
teta = teta + (-1 * (1 + 1) * ((ix + teta * (centx - ja) - ibx) * xx1 + (iy + teta * (centy - jb) - iby) * yy1)) / (1 / 1.0f + 1 / 2.0f + ((float)Math.Pow((centx - ja) * xx1 + (centy - jb) * yy1, 2) / In) + ((float)Math.Pow((centbx - ja) * xx1 + (centby - jb) * yy1, 2) / Ina));
tetab = tetab + (-1 * (1 + 1) * ((ibx + tetab * (centx - ja) - ix) * xx1 + (iby + tetab * (centy - jb) - iy) * yy1)) / (1 / 1.0f + 1 / 2.0f + ((float)Math.Pow((centx - ja) * xx1 + (centy - jb) * yy1, 2) / In) + ((float)Math.Pow((centbx - ja) * xx1 + (centby - jb) * yy1, 2) / Ina));

ja and jb point of collision coordinate;
xx1 and yy1 are conatct normal;
and finally In for inertia

just maybe an error here?
 
Last edited:
See above: without much more explanation what you are doing, how all those variables are defined, what you expect as result and what you get it is impossible to follow.
 
  • #10
Since that inertia is in kg.m^2, how to convert it to pixel(best way)? my rotation still going on the wrong sens
 
  • #11
Like this, the thread is completely pointless. Feel free to open a new thread if you need help, but then explain what you are doing.
 

Similar threads

  • · Replies 4 ·
Replies
4
Views
2K
  • · Replies 30 ·
2
Replies
30
Views
3K
  • · Replies 17 ·
Replies
17
Views
8K
  • · Replies 5 ·
Replies
5
Views
2K
Replies
20
Views
2K
  • · Replies 2 ·
Replies
2
Views
2K
  • · Replies 9 ·
Replies
9
Views
2K
  • · Replies 23 ·
Replies
23
Views
3K
  • · Replies 8 ·
Replies
8
Views
5K
  • · Replies 2 ·
Replies
2
Views
1K