There is a high probability, I think, that this question is a duplicate of some other question ... but to may knowledge, it hasn't been posed in this exact manner:

Assume we have 2 points, $P_1$ and $P_2$, of mass $m_1$ and $m_2$ in a world coordinate system $(O, \vec{i}_0, \vec{j}_0, \vec{k}_0)$. The point $P_1$ is moving with the constant velocity $\begin{bmatrix} v_{x1i}\\ v_{y1i}\\ v_{z1i}\end{bmatrix}$ while the point $P_2$ is stationary. The point $P_1$ undergoes a perfectly elastic collision with $P_2$. How will these two points move after the collision?

My attempt

This problem is about the conservation of linear momentum: therefore the momentum of the system formed by these two points remains constant. Before the collision the momentum of the system is: $$\vec{P}_{init} = m_1\cdot \begin{bmatrix} v_{x1i}\\ v_{y1i}\\ v_{z1i}\end{bmatrix} + m_2 \cdot \begin{bmatrix} 0\\0\\0\end{bmatrix}$$

After the collision, the linear momentum of the system is: $$ \vec{P}_{fin} = m_1\cdot \begin{bmatrix} v_{x1f}\\ v_{y1f}\\ v_{z1f}\end{bmatrix} + m_2 \cdot \begin{bmatrix} v_{x2f}\\v_{y2f}\\v_{z2f}\end{bmatrix}$$ The unknows are $v_{x1f}, v_{y1f}, v_{z1f}, v_{x2f}, v_{y2f}, v_{z2f}$. But we have only three equations $\vec{P}_{init} = \vec{P}_{fin}$ and six unknowns ... One can also use the law of conservation of energy to obtain another equation: $$ \frac{m_1}{2} \cdot \left(v_{x1i}^2 + v_{y1i}^2 + v_{z1i}^2\right) = \frac{m_1}{2}\cdot \left( v_{x1f}^2+v_{y1f}^2+v_{z1f}^2\right) + \frac{m_2}{2}\cdot \left( v_{x2f}^2+v_{y2f}^2+v_{z2f}^2\right)$$ but there are still only four equations and six variables ...

  • 1
    $\begingroup$ Largely a duplicate of this: physics.stackexchange.com/q/453393 I think $\endgroup$
    – jacob1729
    Commented Jan 21, 2019 at 13:45
  • $\begingroup$ If you know the exact direction in which the balls will move after the collision, assume that to be the x-axis. $\endgroup$ Commented Jan 21, 2019 at 15:31
  • $\begingroup$ Your problem will then be reduced to solving two variables with two equations. You can then write it using the original coordinate system. $\endgroup$ Commented Jan 21, 2019 at 15:41
  • $\begingroup$ However if you really want to solve using this method, you can get some equations by using the fact that the velocities of both the bodies will be along the line of contact. All the components perpendicular to this will be zero. $\endgroup$ Commented Jan 21, 2019 at 15:45
  • $\begingroup$ Do you really mean "points"? What is the point to use 3D for this case? Why would they go off the initial line of collision? $\endgroup$
    – nasu
    Commented Mar 11, 2022 at 19:16

3 Answers 3


This is an indeterminate problem, there is infinity of solutions. To make it determinate, one has to add more assumptions to the model.

For example, one can add the assumption that the particles are not points, but perfectly solid spheres. Then we get two more equations (due to the fact that change of momentum of both spheres must be along the line joining the spheres in the instant of collision), so we have 6 unknowns and 6 equations, so collision of two spheres is a determinate problem. Adding a third sphere to the collision would make the problem indeterminate again, though.

Or one can assume that one of the particle is constrained to move along some prescribed axis. Then we have only 4 unknowns and 4 equations should be enough to determine them.


Because there is an infinite number of solutions. Even if you assume conservation of the energy, a given collision that results in final components of the momentum outside the line of initial motion, will be degenerated by a rotation around that axis. The degeneracy is double (six variables, four equations), because you have degeneracies across each of the two axes perpendicular to the orignal trajectory of motion.


You must know the direction for at least one of the masses after the collision. Then, for an elastic collision, you can use the fact that the speeds relative to the center of mass are reversed during the collision.


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.