##MATLAB之模型仿真(一)
##简单自由落体运动
在众多的建模仿真软件中,MATLAB是公认的最优秀的数学建模工具,它几乎包含绝大多数的数学知识,数学函数十分完善,而且具有相当高的自主性,便于自主开发。所以,学会用MATLAB进行建模仿真是十分重要的。
今天我们就从最简单的自由落体运动开始,来对MATLAB仿真作一个初步的认识。
我们这次要分析的自由落体运动情景为:
一个可视为质点的小球从离地面45米高度处自由下落,空气阻力忽略,重力加速度为10m/s^2.
以上就是全部条件,接下来我们利用MATLAB来画出其高度、速度以及加速度的曲线,并分析小球多长时间刚好落地。
1.首先我们先设置一个最大时间作为图中时间的最大值,这里定为5秒。
tm = 5;
2.接下来我们定义一些记号点,以0.1秒为时间间隔。
dt = 0.1;
t = 0:dt:tm;
这里表示从0到tm,每0.1取一个值,建立一个以0.1秒为间隔的时间变量。
3.接下来写出高度、速度以及加速度的表达式:
x = 45 - 5 * t. ^ 2;
v = 10 * t;
a = 10;
这里有一点要注意,在变量后加点,也就是这里的 t. 表示为向量中的每一个值都进行运算,这里表示为t2中的每个数值都进行平方运算,组成一个新的变量。
4.最后就开始画图了,先看代码:
/***********小球高度图像***********/
figure(1);
plot(t,x,'-o');
grid on;
title('小球的高度','FontSize',16);
xlabel('\itt\rm/s','Fontsize',16);
ylabel('\itx\rm/m','FontSize',16);
/***********小球速度图像***********/
figure(2);
plot(t,v,'-o');
grid on;
title('小球的速度','FontSize',16);
xlabel('\itt\rm/s','FontSize',16);
ylabel('\itv\rm/m\cdots^-^1','FontSize',16);
/***********小球加速度图像***********/
figure(3);
plot(t,a,'-o');
grid on;
title('小球的加速度','FontSize',16);
xlabel('\itt\rm/s','FontSize',16);
ylabel('\ita\rm/m\cdots^-^2','FontSize',16);
这里有几点需要注意:
plot函数中最后一个参数’o’表示在每个t的值对应的点上标一个o,这样就可以明显的表示出记号点来;
在定义标题、X和Y轴名称中,加上后面两个参数’FontSize’,'16’就可以自定义字体大小。
接下来我们运行脚本,就可以看到小球的高度、速度和加速度三幅图像。
在高度图像中,我们可以发现高度为0时对应的时间为3s,所以小球下落的时间为3秒。
从另外两幅图像中也可以看出速度和加速度的情况。
可以看出,使matlab进行建模仿真是非常方便的,但这只是一个很简单的例子,以后将会继续分享更多的例子来进行学习。
##以上就是本节的全部内容,后续内容会逐渐上传,相关源码也会统一上传。
##不足之处请及时指出,相互学习
##不懂得小伙伴可以到我的公众"歌者X"私信我,看到后会回复的,欢迎交流学习!
下面是我的公众号