Log in

Indian teenager finds closed-form equations for projectile motion *with* air resistance. - Adventures in Engineering
The wanderings of a modern ronin.

Ben Cantrick
  Date: 2012-05-27 22:33
  Subject:   Indian teenager finds closed-form equations for projectile motion *with* air resistance.
  Music:Type O Negative - Gravitational Constant: G = 6.67300 × 10-11 m3 kg-1 s-2

300 years ago, Newton posed the problem of finding a closed form equation to model the motion of a projectile acting under the influence of both gravity and air friction. He couldn't solve it, and until recently nobody knew if there was an equation that did describe it.

Turns out some Indian kid who recently moved to Germany found said closed-form equation.

The problem he solved is as follows:

Let (x(t),y(t)) be the position of a particle at time t. Let g be the acceleration due to gravity and c the constant of friction. Solve the differential equation:

(x''(t)2 + (y''(t)+g)2 )1/2 = c*(x'(t)2 + y'(t)2 )

subject to the constraint that (x''(t),y''(t)+g) is always opposite in direction to (x'(t),y'(t)).

Finding the general solution to this differential equation will find the general solution for the path of a particle which has drag proportional to the square of the velocity (and opposite in direction).


Basically, given the coefficient of air friction and the force of gravity, and a particle's initial velocity vector, this allows you to calculate its velocity vector at any later time.

This should be a good thing for video games. Making objects move through the air realistically just got a whole lot easier. The immediately obvious applications are sports games - tennis, golf, baseball - which use relatively small round objects with easily defined coefficients of friction. In the long run, all game physics should get more accurate and faster as a result of this.
Post A Comment | 1 Comment | Share | Link

Alex Belits
  User: abelits
  Date: 2012-05-28 21:20 (UTC)
  Subject:   (no subject)
The solution doesn't solve x(t) and y(t) with given x(t0), y(t0), x'(t0), y'(t0), it only establishes relationship between components of velocity vector. Or, as our friends from /b/ would say, differential equation is differential, if our friends from /b/ were talking about differential equations. It might be helpful to reduce the number of operations while performing approximate calculations by iterations (calculate one component the usual way, get another with this, plug the result into the next iteration) but then there is a question of precision and how errors will accumulate compared to both components being calculated with the same procedure.
Reply | Thread | Link

May 2015