Dismiss Notice
Join Physics Forums Today!
The friendliest, high quality science and math community on the planet! Everyone who loves science is here!

Projectile motion, WITH ari resistance

  1. May 24, 2004 #1
    Projectile motion, WITH air resistance...

    I know you can get range without air resistance with this equation:


    I am wondering (also I need it for a trebuchet project) what the equation would look like with air resistance added into it. I don't need to plot the points all I need is the range. Thanks!
    Last edited by a moderator: May 24, 2004
  2. jcsd
  3. May 24, 2004 #2


    User Avatar
    Science Advisor
    Homework Helper
    Gold Member
    Dearly Missed

    If you model the air resistance by [tex]-k\vec{v}[/tex]
    there exist no simple, exact expression for the range..
  4. May 24, 2004 #3
    Edit: Alright, now I think I have it, after some slight glitches.

    I will try to show a range expression when considering drag in the horizontal direction. I will ignore the effect of air resistance in the vertical direction, because I think its effect should be small on the result of the problem.

    The drag force is given by

    [tex]\mathcal{D}=-\frac{1}{2}\rho v_x^2 A_r C_D[/tex]

    where [itex]\rho[/itex] is the density of the air, [itex]v_x[/itex] is the horizontal velocity of the projectile, and [itex]A_r[/itex] is the reference area upon which the coefficient of drag, [itex]C_D[/itex], is based. The negative sign indicates opposition to positive (forward) velocity. [itex]A_r[/itex] and [itex]C_D[/itex] depend on the shape of the projectile. If you reply with more information about your projectile, I can help you find appropriate values.

    If that is the horizontal force opposing the velocity, then the horizontal acceleration is, dividing the force by the projectile mass:

    [tex]a_x=-\frac{1}{2m}\rho {v_x}^2 A_r C_D[/tex]

    To clean up the work, lump the all the coefficients into one constant:

    [tex]k=\frac{1}{2m}\rho A_r C_D[/tex]

    I now have:


    I also recognize


    where x = x(t), the projectile's horizontal displacement as a function of time, and the dots are time derivatives. With that notation, I can write the acceleration expression as a single second order differential equation


    with initial conditions:


    [itex]v_{x0}[/itex] represents the initial horizontal velocity, which is the horizontal component of the projectile's total initial velocity, v .

    The solution of this differential equation is:

    [tex]x(t)=\frac{1}{k}\ln(kvt\cos\theta +1)[/tex]

    To find the range, you need to insert an appropriate value of t as well as k. The landing time is given from the following steps:

    \therefore t&=\frac{2v\sin\theta}{g}\quad(y=0)

    So use the following to find the range:

    x(t)&=\frac{1}{k}\ln(kvt\cos\theta +1)\\
    k&=\frac{1}{2m}\rho A_r C_D\\

    Reply back with the shape and size of your projectile and I can try to find an appropriate coefficient of drag and reference area for you.
    Last edited: May 24, 2004
  5. May 24, 2004 #4


    User Avatar
    Science Advisor

    Wow, I'm impressed!
  6. May 24, 2004 #5


    User Avatar
    Science Advisor
    Homework Helper
    Gold Member
    Dearly Missed

    Excellent, TALewis!
    I was inspired to take the analysis a step further..

    A typical choice of frictional modeling is:

    Since this yields a coupled system of non-linear diff eqs., it must probably be solved by numerical means.

    However,somewhat surprisingly, by assuming a slightly different frictional law, we can solve for the range exactly!


    That is, we use an uncoupled system in the component velocities.

    1. First phase: Going up
    We have [tex]v_{y}\geq{0}[/tex] so:

    We make the substitution:

    Rearranging, integrating and utilizing the initial condition [tex]v_{y}(0)=v_{y,0}[/tex]
    we gain:

    The maximum height is therefore gained at [tex]t=t_{1}[/tex]

    By integration, and using the relation [tex]y(0)=0[/tex] we gain:

    We may then find the maximum height:

    2. Phase 2: Going down
    Clearly the vertical equation of motion may be written as:

    In this case, we arrive at the following expression for the velocity (we have chosen t=0 to represent the time at [tex]y_{max}[/tex]) :


    This yields the expression for the height in the downward phase:
    [tex]y(t)=\frac{m}{k_{y}}ln\gamma(t), \gamma(t)=\frac{\sqrt{1+\frac{k_{y}}{mg}v_{y,0}^{2}}}{Cosh(\sqrt{\frac{k_{y}g}{m}}t)}[/tex]

    Hence, the total time passed when the ground is reached again,T, is:

    It's worthless, though, since the expression for the frictional force is probably dependent on the choice of coordinates.. :smile:
    Last edited: May 24, 2004
  7. May 24, 2004 #6
    Thanks, arildno. Now it's my turn to be impressed. :) It looks like considering the vertical air resistance is much messier than the horizontal. I can see from your work that I was not attentive enough in my own treatment I did on the side. For one, I didn't take into account that the sense of the drag changes direction after the peak of the flight.

    I still think that it should be a safe approximation to neglect the vertical drag and only use the horizontal in order to recieve a decent estimate of the range. For one thing, the range values will depend on the choice of drag coefficients, which themselves aren't very precise at all.
  8. May 25, 2004 #7


    User Avatar
    Science Advisor
    Homework Helper
    Gold Member
    Dearly Missed

    I agree perfectly with you, TALewis.
    In addition, the formula I derived is really only applicable for a purely vertical throw, since the frictional law for the general case is just bogus :yuck:
  9. May 28, 2004 #8
    Thanks a lot for your help guys. I read through the post and understand what you are saying. I just have one question. I think the vertical would be somewhat significant to the range. As the projectile is moving up the air resistance would add into the gravity and effect the vertical height, therefore limiting the range. What do you think?
  10. May 28, 2004 #9


    User Avatar
    Science Advisor
    Homework Helper
    Gold Member
    Dearly Missed

    The actual, vertical velocity certainly affects the range.
    However, as should be evident from the posts, taking this into account necessitates a numerical solution of the problem.

    If you read TALewis' reply closely, you should see that his argument is excellent, under the condition of a dominantly horizontal initial velocity ([tex]V_{y,0}<<V_{x,0}[/tex]).
    The approximation (i.e, disregarding vertical velocity) will be less accurate if the initial vertical velocity is comparable to the initial horizontal velocity, or dominates the picture (i.e, almost vertical throw).
  11. May 28, 2004 #10


    User Avatar
    Science Advisor
    Homework Helper
    Gold Member
    Dearly Missed

    I'd just add that I believe TALewis' analysis might be "surprisingly" good, because, due to the work against gravity, the vertical velocity component ought to decrease at a much higher rate than the horizontal component (which only slows down due to air resistance).

    Hence, the region in which the approximation is valid might be quite large.
  12. May 28, 2004 #11
    I am making a spreadsheet now and I want to plot the points the object takes on a graph. Can you add in what it would be like if I wanted to find points also?
  13. May 28, 2004 #12
    he already put it there I suppose:

    x(t) = ...
    y(t) = ...

    just take different values for t and fill in :)

    or isn't this what you mean?
  14. May 28, 2004 #13
    Yeah, thanks. I am making a spreadsheet now. I have it done without air resistance, now I am adding in air resistance. Thanks alot everyone!
  15. May 28, 2004 #14
    I don't think the equation he gives will give the point of the object on the x axis...
  16. May 28, 2004 #15
    In summary, I believe you should use

    x(t)&=\frac{1}{k}\ln(kv_0t\cos\theta +1)\\
    y(t)&=-\frac{1}{2}gt^2 + v_0t\sin\theta

    where g is the gravitational acceleration, theta ([itex]\theta[/itex]) is the launch angle above the horizontal, [itex]v_0[/itex] is the total launch speed, and k is a constant defined by

    k=\frac{1}{2m}\rho A_r C_D\\

    where m is the projectile's mass, rho ([itex]\rho[/itex]) is the air density, [itex]A_r[/itex] is the reference area of the projectile, and [itex]C_D[/itex] is an appropriate coefficient of drag.

    If you reply back with details about your projectile, I can try to help you find an appropriate drag coefficient and reference area.

    You could use your spreadsheet to evaluate x(t) and y(t) at incremental times starting from launch (t=0, .1, .2, .3, .4, ...). You would then have two columns, one with x values and one with y values. You would plot these columns as ordered pairs of (x,y).

    Additionally, I spent some time in MATLAB this afternoon seeing how the complete numerical solution to the problem, including all drag, would look compared to the approximation I've given above. Here is a link to a plot of three sample trajectories:

    http://omega.uta.edu/~tal0701/pfdrag.gif [Broken]

    Distances are in meters.

    The blue line is the trajectory without any air resistance (vacuum). The green line is the solution I have shown. The red line is the solution to the system of coupled differential equations that should give the result of considering the total drag.

    This was done for a spherical projectile with a mass of 30 kg and a diameter of 20 cm launched at 150 m/s at 45 degrees. The density of air was taken to be 1.23 kg/m^3. A coefficient of drag of 0.5 was chosen. I have the MATLAB code if anyone is interested.

    I think this plot shows that while what I have shown above is not the complete solution to the drag problem, it's better than neglecting drag entirely. Additionally, the accuracy of any of these predictions will be controlled primarily by the choice of the drag coefficient, which I have taken to be constant when in fact it is a much more complicated variable. Also, at lower speeds, all three of these trajectories will be closer together, so depending on the capabilities of your trebuchet, your mileage may vary.

    A prediction should get you in the ballpark, but in practice, you will "calibrate" your trebuchet anyway to desired effect.
    Last edited by a moderator: May 1, 2017
  17. May 29, 2004 #16
    Thanks alot guys, I just got done with my spreadsheet and it works great. I compared its results to your chart TAlewis and java apps around the internet and it is spot on. Thanks again!
  18. May 29, 2004 #17
    Nice work you three. :smile:
  19. May 30, 2004 #18
    i dont see how the vertical component of air resistance would affect the distance travelled...

    wouldnt the effect be equal and opposite in the first half of the throw and the second half

    ie - when the ball is travelling upward, there is a resistance force downward and when its coming down, theres a resistance force upward
  20. May 30, 2004 #19
    Before I consider that, let me make sure I've gotten the couple system of differential equations down correctly:

    Considering the drag force modeled as

    \vec{\mathcal{D}} = -mk||\vec{v}||\vec{v}

    the components of the acceleration should become:

    \ddot{x} &= -k\dot{x}\sqrt{\dot{x}^2+\dot{y}^2}\\
    \ddot{y} &= -g -k\dot{y}\sqrt{\dot{x}^2+\dot{y}^2}

    In order to use ode45 in MATLAB, I reduce the above second order system of two equations to a first order system of four equations by making the following assignments:

    \mbox{let } z_1 &= x\\
    z_2 &= \dot{x}\\
    z_3 &= y\\
    z_4 &= \dot{y}

    With that, the system becomes:

    \dot{z}_1 &= z_2\\
    \dot{z}_2 &= -kz_2\sqrt{z_2^2+z_4^2}\\
    \dot{z}_3 &= z_4\\
    \dot{z}_4 &= -g -kz_4\sqrt{z_2^2+z_4^2}

    If any of the above looks wrong, let me know.

    I present all of that because I want to make sure I have the complete drag problem programmed into MATLAB correctly before I proceed.

    That being said, I had the same thought as you, raymes_k. I thought that there should be a "symmetry" argument: that as much as the air shortens the ascent time, it should lengthen the descent time so that the total flight time is the same as vacuum. However, that is not the case for an ordinary throw at an angle, because the vertical acceleration also depends on the horizontal velocity, which does not behave "symmetrically" across time.

    However, I still believed that in the case of a purely vertical throw, the "symmetry" argument could still be valid. However, investigating such a throw in MATLAB, I do not find that to be the case: a purely vertical throw with air resistance has a shorter total flight time than one in vacuum. Unless there's something wrong with my program, I can't put a finger on why exactly this is so. I do accept the result, however, since the "symmetry" argument seems too simple to be accurate.

    I will keep looking around to see if I can come up with a better explanation.
  21. Nov 15, 2011 #20
    Max range always 45 degrees?

    Doesn't this say that the angle at which the range is a maximum will always be 45 degrees? I'm just eyeballing but after plugging in t, the function cos(x)sin(x) reaches a maximum at 45 degrees -- which shouldn't be true regardless for different parameters of air resistance. Am I missing something obvious?
Share this great discussion with others via Reddit, Google+, Twitter, or Facebook