步骤1:定义双摆质量的位移、速度和加速度GÿdF4y2Ba
下图显示了一个双摆模型。双摆锤由两个钟摆鲍勃和两个刚性杆。GÿdF4y2Ba
通过定义状态变量来描述双摆的运动:GÿdF4y2Ba
通过定义变量描述双摆的属性:GÿdF4y2Ba
第一根棒的长度GÿdF4y2Ba
所述第二杆的长度GÿdF4y2Ba
第一锤的质量GÿdF4y2Ba
第二个鲍勃的质量GÿdF4y2Ba
万有引力常数GÿdF4y2Ba
为了简单,忽略两个刚性棒的质量。通过使用指定所有变量GÿdF4y2BaSYMSGÿdF4y2Ba
。GÿdF4y2Ba
定义笛卡儿坐标中的双摆的位移。GÿdF4y2Ba
通过使用相对位移分化为及时发现速度GÿdF4y2BaDIFFGÿdF4y2Ba
函数。GÿdF4y2Ba
通过对速度关于时间的微分求出加速度。GÿdF4y2Ba
第二步:定义运动方程GÿdF4y2Ba
定义运动的基于牛顿定律的公式。GÿdF4y2Ba
首先,指定第一个杆的张力为GÿdF4y2Ba
和第二杆的张力GÿdF4y2Ba
。GÿdF4y2Ba
接下来,部队建设自由体图上两个群众的行为。GÿdF4y2Ba
评估作用于力GÿdF4y2Ba
。通过平衡水平和垂直的力分量来定义第一个力的运动方程。将这两个方程指定为符号方程GÿdF4y2Baeqx_1GÿdF4y2Ba
和GÿdF4y2Baeqy_1GÿdF4y2Ba
。GÿdF4y2Ba
eqx_1 =GÿdF4y2Ba
eqy_1 =GÿdF4y2Ba
评估作用于力GÿdF4y2Ba
。通过平衡水平和垂直的力分量来定义第二个鲍勃的运动方程。将这两个方程指定为符号方程GÿdF4y2Baeqx_2GÿdF4y2Ba
和GÿdF4y2Baeqy_2GÿdF4y2Ba
。GÿdF4y2Ba
eqx_2 =GÿdF4y2Ba
eqy_2 =GÿdF4y2Ba
第3步:评估部队,并降低系统方程GÿdF4y2Ba
运动的四个方程描述了双摆的运动。评估作用于杆的力和降低设定四个方程的两个方程。GÿdF4y2Ba
运动方程具有四个未知数:GÿdF4y2Ba
,GÿdF4y2Ba
,GÿdF4y2Ba
,GÿdF4y2Ba
。评估两个未知数GÿdF4y2Ba
和GÿdF4y2Ba
从GÿdF4y2Baeqx_1GÿdF4y2Ba
和GÿdF4y2Baeqy_1GÿdF4y2Ba
。利用GÿdF4y2Ba解决GÿdF4y2Ba
函数来找到GÿdF4y2Ba
和GÿdF4y2Ba
。GÿdF4y2Ba
替代解决方案金宝搏官方网站GÿdF4y2Ba
和GÿdF4y2Ba
成GÿdF4y2Baeqx_2GÿdF4y2Ba
和GÿdF4y2Baeqy_2GÿdF4y2Ba
。GÿdF4y2Ba
这两个简化方程完整地描述了摆锤的运动。GÿdF4y2Ba
第四步:解系统方程GÿdF4y2Ba
解决系统方程来描述摆动运动。GÿdF4y2Ba
首先,定义为群众中的值GÿdF4y2Ba
时,杆长度在GÿdF4y2Ba
和重力在GÿdF4y2Ba
(SI单位)。这些值替换成两个减小方程。GÿdF4y2Ba
eqn_1 =GÿdF4y2Ba
eqn_2 =GÿdF4y2Ba
这两个方程是非线性二阶微分方程。要解这些方程,可以将它们转换成一阶微分方程GÿdF4y2BaodeToVectorFieldGÿdF4y2Ba
函数。GÿdF4y2Ba
向量的元素GÿdF4y2BaVGÿdF4y2Ba
表示等于各元素的时间导数的一阶微分方程GÿdF4y2Ba小号GÿdF4y2Ba
。的元素GÿdF4y2Ba小号GÿdF4y2Ba
是状态变量GÿdF4y2Ba
,GÿdF4y2Ba
,GÿdF4y2Ba
,GÿdF4y2Ba
。状态变量描述了双摆的角位移和速度。GÿdF4y2Ba
S =GÿdF4y2Ba
接下来,将第一个阶微分方程转换成一个有手柄的MATLAB函数GÿdF4y2Ba中号GÿdF4y2Ba
。GÿdF4y2Ba
定义状态变量的初始条件为GÿdF4y2Ba[pi/4 0 pi/6 0]GÿdF4y2Ba
。使用GÿdF4y2BaODE45GÿdF4y2Ba
函数求解状态变量。该解决方金宝搏官方网站案是间隔内的时间的函数GÿdF4y2Ba10 [0]GÿdF4y2Ba
。GÿdF4y2Ba
画出状态变量的解决金宝搏官方网站方案。GÿdF4y2Ba
第5步:创建振动式双摆动画GÿdF4y2Ba
创建摆动的双摆的动画。GÿdF4y2Ba
首先,创建四个函数使用GÿdF4y2Ba德瓦尔GÿdF4y2Ba
同时评估摆的从解决方案的坐标金宝搏官方网站GÿdF4y2Ba溶胶GÿdF4y2Ba
。GÿdF4y2Ba
接着,通过使用创建的第一个摆锤的停止 - 运动动画对象GÿdF4y2BafanimatorGÿdF4y2Ba
函数。默认情况下,GÿdF4y2BafanimatorGÿdF4y2Ba
在的范围内创建一个动画对象,该对象在单位时间内生成10帧GÿdF4y2BaŤGÿdF4y2Ba
通过使用从0到10绘制的坐标GÿdF4y2Ba情节GÿdF4y2Ba
函数。设置GÿdF4y2BaXGÿdF4y2Ba设在和GÿdF4y2BaÿGÿdF4y2Ba- 轴以相等的长度。GÿdF4y2Ba
接下来,添加在第一刚性杆,第二摆锤,并且所述第二刚性杆的动画对象。GÿdF4y2Ba
添加一段文字的使用计数经过时间GÿdF4y2Ba文本GÿdF4y2Ba
函数。利用GÿdF4y2Banum2strGÿdF4y2Ba
时间参数转换为字符串。GÿdF4y2Ba
使用命令GÿdF4y2Ba那里GÿdF4y2Ba
玩双摆的动画。GÿdF4y2Ba