Matlab是一种直观、高效的计算机语言和科学计算平台,它为数据分析和数据可视化、算法和应用程序开发提供了最核心的数学和高级图形工具,工程技术人员和科学工作者可以利用其编程实现需要的计算和仿真[1,2]。
Matlab中图像处理工具包的函数,按功能可以分为以下几类:图像显示、图像文件输入与输出、几何操作、象素值和统计、图像分析与增强、图像滤波、线性二维滤波器设计、图像变换、领域和块操作、二值图像操作、颜色映射和颜色空间转换、图像类型和类型转换、工具包参数获取和设置等[3]。
基于Matlab编程环境,本文实现了小球自由落体的仿真可视化。首先,利用Matlab函数绘制小球自由落体的每一帧的图片;然后根据物理中自由落体运动知识设置小球下落时的高度、初速度、加速度等参数;最后,绘制每一帧图片上小球的位置、颜色等,从而获得连续的小球自由落体仿真视频。单个小球与多个小球的自由落体仿真实验结果验证了小球自由落体仿真运动与物理自由落体原理的一致性。
1 小球自由落体仿真方法实现
本文实现的小球自由落体仿真算法如图1所示。算法的基本步骤:
V Theory of toothpaste raw material (To be continued) 2 58
第一步,绘制小球自由落体的每一帧的图片。该步骤主要是绘制小球的位置、速度、加速度等参数[2]。设小球初始最高位置在h0=30 m,当球开始下落的时候,小球的位置是随着时间的变化而变化的,变化的速度又与加速度有关,它具体指向自由落体小球的高度,其计算式:
第二步,小球触地后反弹:(1)小球下落时,当高度current_h<0,说明小球已经触地,需要将作用于小球的加速度反向:a=