Trebuchet Range Simulation and Optimization

版本 1.0.0.0 (239.8 KB) 作者: James Allison
Model of a simple trebuchet that predicts projectile range based on fulcrum position & launch angle.
1.1K 次下载
更新时间 2012/4/6

查看许可证

This submission provides two main files: treb.m and plot_treb.m.

treb.m predicts the projectile range of a simple trebuchet given its fulcrum position and release angle. Other parameters are held fixed (but can be adjusted by the user). ode45 is used to simulate the dynamic system, including event detection for projectile release and landing.

plot_treb.m samples treb.m to gather range data and then plots it to visualize range as a function of fulcrum position and release angle.

treb.m is intended to be used with an optimization algorithm (e.g., fmincon - bound constraints should be used). The range plot is useful for visualizing the nonsmoothness in objective function that results from discrete elements of the system (such as limits on how high the trebuchet mass can be raised). This nonsmoothness can cause difficulty with gradient-based optimization. Choosing a good starting point that avoids this nonsmoothness helps, but it is also possible to impose the geometric limits as optimization constraints instead of satisfying them implicitly in the simulation, eliminating nonsmoothness from the objective function.

A handwritten derivation of the model is also provided (TrebuchetDerivation.pdf) that includes both the trebuchet model and a projectile model using parameters appropriate for a golf ball.

This model corresponds to an example video created for ME 149 (Engineering System Design Optimization), a graduate course taught in the Mechanical Engineering department at Tufts University. The video can be viewed at:

http://www.youtube.com/watch?v=3QUJNEzloDo

引用格式

James Allison (2024). Trebuchet Range Simulation and Optimization (https://www.mathworks.com/matlabcentral/fileexchange/36065-trebuchet-range-simulation-and-optimization), MATLAB Central File Exchange. 检索来源 .

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

Community Treasure Hunt

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

Start Hunting!

Trebuchet/

版本 已发布 发行说明
1.0.0.0