Tennis

版本 1.1 (11.2 KB) 作者: Giampiero Campa
Fairly detailed simulation of a tennis ball flight and bounce.
3.9K 次下载
更新时间 2023/4/29

tennis

Fairly detailed simulation of a tennis ball flight and bounce.

View Tennis on File Exchange

This is a collection of 4 matlab functions that have been inspired by the excellent Howard Brody's book : "Tennis science for tennis players", University of Pennsilvania press, 1987.

The function "tnsstroke" simulates and plot the trajectory of a tennis ball given its initial position and velocity, The function is able to reproduce exactly the trajectories shown in chapters 5 and 6 of the book.

The function "vangle" computes the vertical acceptance angle (chapter 5) of a particular shot given the ball initial position and the magnitude and azimut of its initial velocity. Beware that this function works but it's currently very slow.

The function "tnsbounce" computes the linear and angular velocity of a ball after it has bounced with a moving or static surface. The surface could represent the court or a racket and the input and output trajectories could also be plotted by the function. Most of the bouncings described in chapters 4 and 7 are fairly reproduced by this function.

The function "sstrat" computes the best service strategy, given the probabilities of the strong and weak services being good and the probabilities of winning a point if the weak and strong services are good (chapter 8).

The file tennis.mdl implements the underlying simulation of a flying tennis ball, including spin and aerodynamics, that it's used by the function tnsstroke and vangle. By changing the ball mass, radius and aerodynamics coefficients it can represent any flying spherical ball (i.e. a basketball). It is not meant ot be used directly but it could after defining appropriate initial variables in the workspace.

Each function has its help with some ready to go examples that you are encouraged to try. Everything runs in Matlab 5.3 as well as in 6.5 (and i suppose in each version between the two).

In the (not immediate) future, it may be interesting to refine the rotational model of the ball by including inertia moments and rotational aerodynamic effects, as well as a more detailed model of the bounce.

Giampy, Jan 2004

引用格式

Giampiero Campa (2024). Tennis (https://github.com/giampy1969/tennis/releases/tag/v1.1), GitHub. 检索来源 .

MATLAB 版本兼容性
创建方式 R11.1
兼容任何版本
平台兼容性
Windows macOS Linux
类别
Help CenterMATLAB Answers 中查找有关 Physics 的更多信息

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!
版本 已发布 发行说明
1.1

See release notes for this release on GitHub: https://github.com/giampy1969/tennis/releases/tag/v1.1

1.0.0.0

The spin modeling during the bounce has been greatly improved.

要查看或报告此来自 GitHub 的附加功能中的问题,请访问其 GitHub 仓库
要查看或报告此来自 GitHub 的附加功能中的问题,请访问其 GitHub 仓库