I am trying to simulate a ball bouncing on an inclined surface. And I am thinking about how friction play during the collision.

When there is no friction, at collision, we can exclude the force to find the velocity afterwards by using the momentum. velocity along the normal direction of surface is $e* v * \cos(\alpha)$, where $e$ is the restitution coefficient and the $\alpha$ is the angle between the incident vector and normal.

and the velocity along the surface is $v * \sin(\alpha)$.

The collision is an instant stage, where the contact happens in a very short time ($\delta t$). I assume the friction would cause some loss of energy but by how much? The friction force can be calculated by using the impulse formula. But I need to know if the friction would affect the momentum(in this case, the velocity) The reason I want to do it is that the friction could make the ball spin during bouncing.

Thanks for the help.


3 Answers 3


The free-body diagram at exact collision time should look like:

![enter image description here

If I assume there is no mass loss the first equation cannot be used, otherwise, J would always be zero.

I will define some parameters:

e: coefficient of restitution

u: coefficient of friction

t_c : time collapse during collision

vi: initial velocity before collision

vf: final velocity after collision

Fs is the friction force and N_impact is the impact force

$N_{impact} = m*(vf-vi)/t_c$

$|Fs| = |u*N_impact|$(this donates only magnitude is calculated)

the direction of Fs is calculated by the instant velocity of the contact point P. The system translation velocity is separate from the self-spinning angular velocity. So the contact point would be simultaneously experiencing system velocity v_t, going downwards along the surface, and the backward velocity $v_a$ caused by angular velocity. The friction force is at the opposite direction of $v_a + v_t$.

I don't really understand the calculation of angular velocity $\Delta \omega$. Sadly, I don't have enough reputation to ask in the original post.

\begin{aligned} \Delta\vec{\omega}_{1}&=-I_{1}^{-1}\left(-\vec{c}_{1}\times\hat{n}\right)J&\Delta\vec{\omega}_{2}&=+I_{2}^{-1}\left(-\vec{c}_{2}\times\hat{n}\right)J \end{aligned}

Why is he using the cross product between centre of mass and the contact normal? what does the

  • 2
    $\begingroup$ As it’s currently written, your answer is unclear. Please edit to add additional details that will help others understand how this addresses the question asked. You can find more information on how to write good answers in the help center. $\endgroup$
    – Community Bot
    Jan 21, 2022 at 11:30

Friction is a rather general word, which can mean several things here.

  • The dissipation processes that reduce the energy of the ball when it heats the surface, by transforming a part of this energy into heat.
  • Friction of the ball against the air, which slows it down.
  • Sliding friction when it touches the surface: it may actually force the ball to start rolling instead of bouncing back - and interesting physics problem to think about.
  • Finally, rolling resistance is probably also involved, as the ball does not necessarily stay at the same place while it is in the contact with the surface.
  • $\begingroup$ Thank you, apologies for the unclear question, the friction I mean was the 3rd bullet -- the sliding friction which causes the rolling. What I imagined is the ball start both bouncing and rolling. $\endgroup$
    – BruceZ
    Jan 14, 2022 at 16:06
  • $\begingroup$ To solve this problem, I made a few assumptions, I am not sure if they sound reasonable to you. 1. To calculate the friction force, I need to know the impact force, so the collision time(t) would be a small rational number rather zero. 2. But during this time(t), I don't want the ball slide...(maybe it should). Also, since the energy = Force * distance, and distance = 0... the friction is ignored in the bouncing speed(no energy loss), but it would be used as a torque to make the ball spin. $\endgroup$
    – BruceZ
    Jan 14, 2022 at 16:11

So during a typical collision calculation with no friction, there is a single impulse $J$ along the contact normal that is applied in equal and opposite measure on the colliding bodies. This impulse is calculated by

$$ J = (1+\epsilon)\, m^\star\, v_{\rm imp} $$

where $\epsilon$ is the coefficient of restitution, $m^\star$ is the reduced mass of the system and $v_{\rm imp}$ is the impact speed.

For your situation where friction (and rotation) are important you have two impulses acting, $J_n$ for normal impulse (as above) and $J_t$ for frictional impulse.


The reduced mass calculation is different for both impulses because they act on different directions. Use the link above to get the equation for calculating each of the reduced massed based on the directions $\boldsymbol{\hat{n}}$ and $\boldsymbol{\hat{t}}$.

$$m_{\rm reduced} = \left[\tfrac{1}{m_{1}}+\tfrac{1}{m_{2}}+\left(\hat{n}\times\vec{c}_{1}\right)\cdot I_{1}^{-1}\left(\hat{n}\times\vec{c}_{1}\right)+\left(\hat{n}\times\vec{c}_{2}\right)\cdot I_{2}^{-1}\left(\hat{n}\times\vec{c}_{2}\right)\right]^{-1}$$

Here you can assume the object is hitting the ground and so $\tfrac{1}{m_2} = 0$ and $I_2^{-1} = 0$ to simplify the above a bit. Further simplifications exists for 2D problems (also in the link above).

Also the impact speed is different for the directions, and again the link above has the equation needed to calculate those.

$$v_{{\rm imp}}=\hat{n}\cdot\left(\vec{v}_{1}+\vec{c}_{1}\times\vec{\omega}_{1}-\vec{v}_{2}-\vec{c}_{2}\times\vec{\omega}_{2}\right)$$

The third part is a bit debatable. What coefficient of restitution to use for frictional impulse? Is it the same as the value to be used for bounce? Is it 0, or is it 1. I remember a discussion in this forum about this and it was stated to use $\epsilon_t = 1$ which is counter intuitive at first but might match data takes from supper bouncy balls.

I recommend you play around with this and find something that produces reasonable results.

Once the impulses are calculated, then again the link above has the equations of how an impulse will change the motion of the body. I am modifying the above to include both impulses

$$\begin{aligned} \Delta\vec{v}_{1} & =-\tfrac{J_n \hat{n} + J_t \hat{t}}{m_{1}}&\Delta\vec{v}_{2} & =+\tfrac{J_n \hat{n} + J_t \hat{t}}{m_{2}}\\ \Delta\vec{\omega}_{1} & =-I_{1}^{-1}\left(-\vec{c}_{1}\times(J_n \hat{n} + J_t \hat{t})\right)&\Delta\vec{\omega}_{2} & =+I_{2}^{-1}\left(-\vec{c}_{2}\times(J_n \hat{n} + J_t \hat{t})\right) \end{aligned}$$


  • $\begingroup$ Thank you for the detailed explanation. Apologise I am neither physics nor mechanics background, that I might be bad at terminologies. I just learned the basics of mechanics in 2 days. So, I guess the first question I need to answer is the trade-off between perfect physics and approximation. $\endgroup$
    – BruceZ
    Jan 21, 2022 at 11:01
  • $\begingroup$ So, instead of using the mass loss formula you gave, I assume there is no mass loss(it is hard to demonstrate in simulation). I have J_impact which has the opposite direction as the contact normal. The magnitude is calculated using the _impulse = impact force * change of time =change in momentum(-(e+1)*v) _. I predefined a reasonable change of time. I will explain a bit in detail of how I calculate friction below, cause I need a graph $\endgroup$
    – BruceZ
    Jan 21, 2022 at 11:08
  • $\begingroup$ @BruceZ I needed to clarify that for a spherical object where the contact normal intersects the center of mass hitting a massive object like the earth then the reduced mass equals the actual mass $m^\star = m$. But the frictional impulse action line does go through the CM, and for solid spherical object $m^\star = (2/7) m$. $\endgroup$
    – JAlex
    Jan 21, 2022 at 15:25

Your Answer

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

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