I am writing a program where I would need to program the following.
A point is moving in the 3d space with velocity (DX, DY, DZ) towards an arbitrary plane.
The "plane" represents an "obstacle" that cannot move (say of infinite mass). I only have the normal vector to the plane, say (N1, N2, N3).
Assuming the point to have a rest mass m constant, and the collision to happen and be elastic, I would like to compute the updated (DX, DY, DZ) of the point bouncing after the collision.
Can you put me in the right direction to compute these updated velocities in the simplest way?
Since the wall has infinite mass, the point particle will reflect off the wall with the same speed and a direction that follows the reflection laws. The reflection matrix given the unit normal vector to the plane $\mathbf{n} = (n_x, n_y, n_z) $ is given by
$ \mathbf{ R = (I - 2 n n^T ) }$
Therefore, the final velocity of the point mass is
$ \mathbf{v_2 = R v_1} $