The Banana Shot

Categories // Simulation

SOLIDWORKS Flow & Motion

Created byShaun Bentley, Application Engineer 

Aerodynamic drag and lift are two physical phenomena that are ubiquitous among sports. A baseball pitcher uses lift to impart a curve on a pitch. In badminton, huge amounts of drag are created by the parachute-like design of the birdie which makes rallies last longer.

I decided it might be interesting to try to simulate drag and lift phenomena in tennis by using SOLIDWORKS Flow Simulation to calculate the amount of drag and lift on the ball and then use the results for a SOLIDWORKS Motion study. One shot I tried to mimic is Rafael Nadal’s “banana shot”.


I began this exploration by running a Flow Simulation. Some of the results of this simulation are presented below.

Lift and Drag - Flow Simulation

Since my test cannot include the felt on the ball (it is difficult to model this physically, even with a wall roughness), I decided to look up some data from physical tests that had been performed and noticed that the felt seems to add approximately an extra 20% to the drag when compared to the smooth sphere that I modeled (see Figure 1 below).

Since I needed the drag and lift at a variety of speeds and spins, I setup a table of simulations to test (see Figure 2).

Table of Simulations to Test
Figure 2 - 25 combinations of simulations

The results are summarized for these design points in Figure 3.

Simulation Results
Figure 3 - Summary of results

My next step was to take these results and plug them into a motion study.


SOLIDWORKS Motion allows me to apply forces to objects.  These forces can be constant, they can vary with time, or they can even vary with other results such as velocities and rotation.


I setup three drag forces (X, Y, and Z) on the tennis ball with an expression like the following.

Drag Forces

From these three drag forces, SOLIDWORKS Motion will apply a force to the ball in the opposite direction of its velocity and proportional to the square of its speed. I derived this drag force indirectly from the Flow Simulations that I ran earlier.


The expression for lift was a bit more complicated and required a cross product of the spin and velocity results. Here is what the X-component of lift looked like in my model:

Lift Forces

With some tweaking and fine-tuning, I could get the ball to curve, dive, and drag. Now to mimic Nadal’s banana shot. I placed the ball in a court and here is what I got:

Simulated Tennis Shot

Now with my tennis ball model, I should be able to test out all sorts of possible shots and angles and even consider redesigning the game of tennis!

OK… maybe I’m getting a little carried away.