主要内容gydF4y2Ba

双摆运动的动画和解决方案gydF4y2Ba

这个例子展示了如何建模双摆的运动通过使用MATLAB®和符号数学工具箱™。gydF4y2Ba

解决双摆的运动方程和创建一个动画模型双摆运动。gydF4y2Ba

步骤1:定义位移、速度和加速度的双摆的质量gydF4y2Ba

下面的图显示了一个双摆模型。双摆包含两个摆短发和两个刚性棒。gydF4y2Ba

描述双摆的运动通过定义状态变量:gydF4y2Ba

  • 第一个鲍勃的角位置gydF4y2Ba θgydF4y2Ba 1gydF4y2Ba (gydF4y2Ba tgydF4y2Ba )gydF4y2Ba

  • 第二个鲍勃的角位置gydF4y2Ba θgydF4y2Ba 2gydF4y2Ba (gydF4y2Ba tgydF4y2Ba )gydF4y2Ba

描述双摆通过定义变量的属性:gydF4y2Ba

  • 第一杆的长度gydF4y2Ba lgydF4y2Ba 1gydF4y2Ba

  • 第二杆的长度gydF4y2Ba lgydF4y2Ba 2gydF4y2Ba

  • 第一个鲍勃的质量gydF4y2Ba 米gydF4y2Ba 1gydF4y2Ba

  • 第二个鲍勃的质量gydF4y2Ba 米gydF4y2Ba 2gydF4y2Ba

  • 引力常数gydF4y2Ba ggydF4y2Ba

为简单起见,忽略两个刚性杆的质量。通过使用指定所有变量gydF4y2Ba信谊gydF4y2Ba。gydF4y2Ba

信谊gydF4y2Batheta_1 (t)gydF4y2Batheta_2 (t)gydF4y2Bal1gydF4y2Bal2gydF4y2Ba1gydF4y2Bam_2gydF4y2BaggydF4y2Ba

在笛卡尔坐标定义双摆的位移。gydF4y2Ba

x_1 = l1 * sin (theta_1);y_1 = l1 * cos (theta_1);x_2 = x_1 + l2 * sin (theta_2);y_2 = y_1 - l2 * cos (theta_2);gydF4y2Ba

找到差异化的速度位移对时间使用gydF4y2BadiffgydF4y2Ba函数。gydF4y2Ba

vx_1 = diff (x_1);vy_1 = diff (y_1);vx_2 = diff (x_2);vy_2 = diff (y_2);gydF4y2Ba

找到区分速度对时间的加速度。gydF4y2Ba

ax_1 = diff (vx_1);ay_1 = diff (vy_1);ax_2 = diff (vx_2);ay_2 = diff (vy_2);gydF4y2Ba

第二步:定义运动方程gydF4y2Ba

定义了基于牛顿定律的运动方程。gydF4y2Ba

首先,指定第一杆的张力gydF4y2Ba TgydF4y2Ba 1gydF4y2Ba ,第二杆的张力gydF4y2Ba TgydF4y2Ba 2gydF4y2Ba 。gydF4y2Ba

信谊gydF4y2BaT_1gydF4y2BaT_2gydF4y2Ba

接下来,构建隔离体质量图上的作用力。gydF4y2Ba

评估力gydF4y2Ba 米gydF4y2Ba 1gydF4y2Ba 。定义第一个鲍勃的运动方程平衡水平和垂直力分量。指定这两个方程作为象征性的方程gydF4y2Baeqx_1gydF4y2Ba和gydF4y2Baeqy_1gydF4y2Ba。gydF4y2Ba

eqx_1 = 1 * ax_1 (t) = = t_1 * sin (theta_1 (t)) + T_2 *罪(theta_2 (t))gydF4y2Ba
eqx_1 =gydF4y2Ba

- - - - - -gydF4y2Ba 米gydF4y2Ba 1gydF4y2Ba lgydF4y2Ba 1gydF4y2Ba 罪gydF4y2Ba (gydF4y2Ba θgydF4y2Ba 1gydF4y2Ba (gydF4y2Ba tgydF4y2Ba )gydF4y2Ba )gydF4y2Ba ∂gydF4y2Ba ∂gydF4y2Ba tgydF4y2Ba θgydF4y2Ba 1gydF4y2Ba (gydF4y2Ba tgydF4y2Ba )gydF4y2Ba 2gydF4y2Ba - - - - - -gydF4y2Ba lgydF4y2Ba 1gydF4y2Ba 因为gydF4y2Ba (gydF4y2Ba θgydF4y2Ba 1gydF4y2Ba (gydF4y2Ba tgydF4y2Ba )gydF4y2Ba )gydF4y2Ba ∂gydF4y2Ba 2gydF4y2Ba ∂gydF4y2Ba tgydF4y2Ba 2gydF4y2Ba θgydF4y2Ba 1gydF4y2Ba (gydF4y2Ba tgydF4y2Ba )gydF4y2Ba =gydF4y2Ba TgydF4y2Ba 2gydF4y2Ba 罪gydF4y2Ba (gydF4y2Ba θgydF4y2Ba 2gydF4y2Ba (gydF4y2Ba tgydF4y2Ba )gydF4y2Ba )gydF4y2Ba - - - - - -gydF4y2Ba TgydF4y2Ba 1gydF4y2Ba 罪gydF4y2Ba (gydF4y2Ba θgydF4y2Ba 1gydF4y2Ba (gydF4y2Ba tgydF4y2Ba )gydF4y2Ba )gydF4y2Ba

eqy_1 = 1 * ay_1 (t) = = T_1 * cos (theta_1 (t) - T_2 * cos (theta_2 (t) - 1 * ggydF4y2Ba
eqy_1 =gydF4y2Ba

米gydF4y2Ba 1gydF4y2Ba lgydF4y2Ba 1gydF4y2Ba 罪gydF4y2Ba (gydF4y2Ba θgydF4y2Ba 1gydF4y2Ba (gydF4y2Ba tgydF4y2Ba )gydF4y2Ba )gydF4y2Ba ∂gydF4y2Ba 2gydF4y2Ba ∂gydF4y2Ba tgydF4y2Ba 2gydF4y2Ba θgydF4y2Ba 1gydF4y2Ba (gydF4y2Ba tgydF4y2Ba )gydF4y2Ba +gydF4y2Ba lgydF4y2Ba 1gydF4y2Ba 因为gydF4y2Ba (gydF4y2Ba θgydF4y2Ba 1gydF4y2Ba (gydF4y2Ba tgydF4y2Ba )gydF4y2Ba )gydF4y2Ba ∂gydF4y2Ba ∂gydF4y2Ba tgydF4y2Ba θgydF4y2Ba 1gydF4y2Ba (gydF4y2Ba tgydF4y2Ba )gydF4y2Ba 2gydF4y2Ba =gydF4y2Ba TgydF4y2Ba 1gydF4y2Ba 因为gydF4y2Ba (gydF4y2Ba θgydF4y2Ba 1gydF4y2Ba (gydF4y2Ba tgydF4y2Ba )gydF4y2Ba )gydF4y2Ba - - - - - -gydF4y2Ba ggydF4y2Ba 米gydF4y2Ba 1gydF4y2Ba - - - - - -gydF4y2Ba TgydF4y2Ba 2gydF4y2Ba 因为gydF4y2Ba (gydF4y2Ba θgydF4y2Ba 2gydF4y2Ba (gydF4y2Ba tgydF4y2Ba )gydF4y2Ba )gydF4y2Ba

评估力gydF4y2Ba 米gydF4y2Ba 2gydF4y2Ba 。定义第二个鲍勃的运动方程平衡水平和垂直力分量。指定这两个方程作为象征性的方程gydF4y2Baeqx_2gydF4y2Ba和gydF4y2Baeqy_2gydF4y2Ba。gydF4y2Ba

eqx_2 = m_2 * ax_2 (t) = = t_2 * sin (theta_2 (t))gydF4y2Ba
eqx_2 =gydF4y2Ba

- - - - - -gydF4y2Ba 米gydF4y2Ba 2gydF4y2Ba lgydF4y2Ba 1gydF4y2Ba 罪gydF4y2Ba (gydF4y2Ba θgydF4y2Ba 1gydF4y2Ba (gydF4y2Ba tgydF4y2Ba )gydF4y2Ba )gydF4y2Ba ∂gydF4y2Ba ∂gydF4y2Ba tgydF4y2Ba θgydF4y2Ba 1gydF4y2Ba (gydF4y2Ba tgydF4y2Ba )gydF4y2Ba 2gydF4y2Ba +gydF4y2Ba lgydF4y2Ba 2gydF4y2Ba 罪gydF4y2Ba (gydF4y2Ba θgydF4y2Ba 2gydF4y2Ba (gydF4y2Ba tgydF4y2Ba )gydF4y2Ba )gydF4y2Ba ∂gydF4y2Ba ∂gydF4y2Ba tgydF4y2Ba θgydF4y2Ba 2gydF4y2Ba (gydF4y2Ba tgydF4y2Ba )gydF4y2Ba 2gydF4y2Ba - - - - - -gydF4y2Ba lgydF4y2Ba 1gydF4y2Ba 因为gydF4y2Ba (gydF4y2Ba θgydF4y2Ba 1gydF4y2Ba (gydF4y2Ba tgydF4y2Ba )gydF4y2Ba )gydF4y2Ba ∂gydF4y2Ba 2gydF4y2Ba ∂gydF4y2Ba tgydF4y2Ba 2gydF4y2Ba θgydF4y2Ba 1gydF4y2Ba (gydF4y2Ba tgydF4y2Ba )gydF4y2Ba - - - - - -gydF4y2Ba lgydF4y2Ba 2gydF4y2Ba 因为gydF4y2Ba (gydF4y2Ba θgydF4y2Ba 2gydF4y2Ba (gydF4y2Ba tgydF4y2Ba )gydF4y2Ba )gydF4y2Ba ∂gydF4y2Ba 2gydF4y2Ba ∂gydF4y2Ba tgydF4y2Ba 2gydF4y2Ba θgydF4y2Ba 2gydF4y2Ba (gydF4y2Ba tgydF4y2Ba )gydF4y2Ba =gydF4y2Ba - - - - - -gydF4y2Ba TgydF4y2Ba 2gydF4y2Ba 罪gydF4y2Ba (gydF4y2Ba θgydF4y2Ba 2gydF4y2Ba (gydF4y2Ba tgydF4y2Ba )gydF4y2Ba )gydF4y2Ba

eqy_2 = m_2 * ay_2 (t) = = T_2 * cos (theta_2 (t) - m_2 * ggydF4y2Ba
eqy_2 =gydF4y2Ba

米gydF4y2Ba 2gydF4y2Ba lgydF4y2Ba 1gydF4y2Ba 因为gydF4y2Ba (gydF4y2Ba θgydF4y2Ba 1gydF4y2Ba (gydF4y2Ba tgydF4y2Ba )gydF4y2Ba )gydF4y2Ba ∂gydF4y2Ba ∂gydF4y2Ba tgydF4y2Ba θgydF4y2Ba 1gydF4y2Ba (gydF4y2Ba tgydF4y2Ba )gydF4y2Ba 2gydF4y2Ba +gydF4y2Ba lgydF4y2Ba 2gydF4y2Ba 因为gydF4y2Ba (gydF4y2Ba θgydF4y2Ba 2gydF4y2Ba (gydF4y2Ba tgydF4y2Ba )gydF4y2Ba )gydF4y2Ba ∂gydF4y2Ba ∂gydF4y2Ba tgydF4y2Ba θgydF4y2Ba 2gydF4y2Ba (gydF4y2Ba tgydF4y2Ba )gydF4y2Ba 2gydF4y2Ba +gydF4y2Ba lgydF4y2Ba 1gydF4y2Ba 罪gydF4y2Ba (gydF4y2Ba θgydF4y2Ba 1gydF4y2Ba (gydF4y2Ba tgydF4y2Ba )gydF4y2Ba )gydF4y2Ba ∂gydF4y2Ba 2gydF4y2Ba ∂gydF4y2Ba tgydF4y2Ba 2gydF4y2Ba θgydF4y2Ba 1gydF4y2Ba (gydF4y2Ba tgydF4y2Ba )gydF4y2Ba +gydF4y2Ba lgydF4y2Ba 2gydF4y2Ba 罪gydF4y2Ba (gydF4y2Ba θgydF4y2Ba 2gydF4y2Ba (gydF4y2Ba tgydF4y2Ba )gydF4y2Ba )gydF4y2Ba ∂gydF4y2Ba 2gydF4y2Ba ∂gydF4y2Ba tgydF4y2Ba 2gydF4y2Ba θgydF4y2Ba 2gydF4y2Ba (gydF4y2Ba tgydF4y2Ba )gydF4y2Ba =gydF4y2Ba TgydF4y2Ba 2gydF4y2Ba 因为gydF4y2Ba (gydF4y2Ba θgydF4y2Ba 2gydF4y2Ba (gydF4y2Ba tgydF4y2Ba )gydF4y2Ba )gydF4y2Ba - - - - - -gydF4y2Ba ggydF4y2Ba 米gydF4y2Ba 2gydF4y2Ba

第三步:评估部队和减少系统方程gydF4y2Ba

四双摆的运动方程描述运动学。评估棒上的力和减少两个方程的四个方程。gydF4y2Ba

运动有四个未知数的方程:gydF4y2Ba θgydF4y2Ba 1gydF4y2Ba ,gydF4y2Ba θgydF4y2Ba 2gydF4y2Ba ,gydF4y2Ba TgydF4y2Ba 1gydF4y2Ba ,gydF4y2Ba TgydF4y2Ba 2gydF4y2Ba 。评估两个未知数gydF4y2Ba TgydF4y2Ba 1gydF4y2Ba 和gydF4y2Ba TgydF4y2Ba 2gydF4y2Ba 从gydF4y2Baeqx_1gydF4y2Ba和gydF4y2Baeqy_1gydF4y2Ba。使用gydF4y2Ba解决gydF4y2Ba函数来找到gydF4y2Ba TgydF4y2Ba 1gydF4y2Ba 和gydF4y2Ba TgydF4y2Ba 2gydF4y2Ba 。gydF4y2Ba

张力=解决([eqx_1 eqy_1], [T_1 T_2]);gydF4y2Ba

替代解决方案金宝搏官方网站gydF4y2Ba TgydF4y2Ba 1gydF4y2Ba 和gydF4y2Ba TgydF4y2Ba 2gydF4y2Ba 成gydF4y2Baeqx_2gydF4y2Ba和gydF4y2Baeqy_2gydF4y2Ba。gydF4y2Ba

eqRed_1 =潜艇(eqx_2 [T_1 T_2],[紧张。T_1 Tension.T_2]);eqRed_2 =潜艇(eqy_2 [T_1 T_2],[紧张。T_1 Tension.T_2]);gydF4y2Ba

两个减少方程完全描述摆运动。gydF4y2Ba

步骤4:解决系统方程gydF4y2Ba

解决系统描述摆运动方程。gydF4y2Ba

首先,为群众中定义的值gydF4y2Ba 公斤gydF4y2Ba 杆的长度gydF4y2Ba 米gydF4y2Ba ,重力gydF4y2Ba 米gydF4y2Ba /gydF4y2Ba 年代gydF4y2Ba 2gydF4y2Ba (国际标准单位)。把这些值代入两个减少方程。gydF4y2Ba

l1 = 1;l2 = 1.5;1 = 2;m_2 = 1;g = 9.8;eqn_1 =潜艇(eqRed_1)gydF4y2Ba
eqn_1 =gydF4y2Ba

因为gydF4y2Ba (gydF4y2Ba θgydF4y2Ba 1gydF4y2Ba (gydF4y2Ba tgydF4y2Ba )gydF4y2Ba )gydF4y2Ba σgydF4y2Ba 1gydF4y2Ba - - - - - -gydF4y2Ba 3gydF4y2Ba 罪gydF4y2Ba (gydF4y2Ba θgydF4y2Ba 2gydF4y2Ba (gydF4y2Ba tgydF4y2Ba )gydF4y2Ba )gydF4y2Ba ∂gydF4y2Ba ∂gydF4y2Ba tgydF4y2Ba θgydF4y2Ba 2gydF4y2Ba (gydF4y2Ba tgydF4y2Ba )gydF4y2Ba 2gydF4y2Ba 2gydF4y2Ba - - - - - -gydF4y2Ba 罪gydF4y2Ba (gydF4y2Ba θgydF4y2Ba 1gydF4y2Ba (gydF4y2Ba tgydF4y2Ba )gydF4y2Ba )gydF4y2Ba ∂gydF4y2Ba ∂gydF4y2Ba tgydF4y2Ba θgydF4y2Ba 1gydF4y2Ba (gydF4y2Ba tgydF4y2Ba )gydF4y2Ba 2gydF4y2Ba +gydF4y2Ba 3gydF4y2Ba 因为gydF4y2Ba (gydF4y2Ba θgydF4y2Ba 2gydF4y2Ba (gydF4y2Ba tgydF4y2Ba )gydF4y2Ba )gydF4y2Ba ∂gydF4y2Ba 2gydF4y2Ba ∂gydF4y2Ba tgydF4y2Ba 2gydF4y2Ba θgydF4y2Ba 2gydF4y2Ba (gydF4y2Ba tgydF4y2Ba )gydF4y2Ba 2gydF4y2Ba =gydF4y2Ba - - - - - -gydF4y2Ba 2gydF4y2Ba 罪gydF4y2Ba (gydF4y2Ba θgydF4y2Ba 2gydF4y2Ba (gydF4y2Ba tgydF4y2Ba )gydF4y2Ba )gydF4y2Ba 因为gydF4y2Ba (gydF4y2Ba θgydF4y2Ba 1gydF4y2Ba (gydF4y2Ba tgydF4y2Ba )gydF4y2Ba )gydF4y2Ba 2gydF4y2Ba σgydF4y2Ba 1gydF4y2Ba +gydF4y2Ba 罪gydF4y2Ba (gydF4y2Ba θgydF4y2Ba 1gydF4y2Ba (gydF4y2Ba tgydF4y2Ba )gydF4y2Ba )gydF4y2Ba 2gydF4y2Ba σgydF4y2Ba 1gydF4y2Ba +gydF4y2Ba 49gydF4y2Ba 罪gydF4y2Ba (gydF4y2Ba θgydF4y2Ba 1gydF4y2Ba (gydF4y2Ba tgydF4y2Ba )gydF4y2Ba )gydF4y2Ba 5gydF4y2Ba 因为gydF4y2Ba (gydF4y2Ba θgydF4y2Ba 1gydF4y2Ba (gydF4y2Ba tgydF4y2Ba )gydF4y2Ba )gydF4y2Ba 罪gydF4y2Ba (gydF4y2Ba θgydF4y2Ba 2gydF4y2Ba (gydF4y2Ba tgydF4y2Ba )gydF4y2Ba )gydF4y2Ba - - - - - -gydF4y2Ba 因为gydF4y2Ba (gydF4y2Ba θgydF4y2Ba 2gydF4y2Ba (gydF4y2Ba tgydF4y2Ba )gydF4y2Ba )gydF4y2Ba 罪gydF4y2Ba (gydF4y2Ba θgydF4y2Ba 1gydF4y2Ba (gydF4y2Ba tgydF4y2Ba )gydF4y2Ba )gydF4y2Ba 在哪里gydF4y2Ba σgydF4y2Ba 1gydF4y2Ba =gydF4y2Ba ∂gydF4y2Ba 2gydF4y2Ba ∂gydF4y2Ba tgydF4y2Ba 2gydF4y2Ba θgydF4y2Ba 1gydF4y2Ba (gydF4y2Ba tgydF4y2Ba )gydF4y2Ba

eqn_2 =潜艇(eqRed_2)gydF4y2Ba
eqn_2 =gydF4y2Ba

因为gydF4y2Ba (gydF4y2Ba θgydF4y2Ba 1gydF4y2Ba (gydF4y2Ba tgydF4y2Ba )gydF4y2Ba )gydF4y2Ba ∂gydF4y2Ba ∂gydF4y2Ba tgydF4y2Ba θgydF4y2Ba 1gydF4y2Ba (gydF4y2Ba tgydF4y2Ba )gydF4y2Ba 2gydF4y2Ba +gydF4y2Ba 3gydF4y2Ba 因为gydF4y2Ba (gydF4y2Ba θgydF4y2Ba 2gydF4y2Ba (gydF4y2Ba tgydF4y2Ba )gydF4y2Ba )gydF4y2Ba ∂gydF4y2Ba ∂gydF4y2Ba tgydF4y2Ba θgydF4y2Ba 2gydF4y2Ba (gydF4y2Ba tgydF4y2Ba )gydF4y2Ba 2gydF4y2Ba 2gydF4y2Ba +gydF4y2Ba 罪gydF4y2Ba (gydF4y2Ba θgydF4y2Ba 1gydF4y2Ba (gydF4y2Ba tgydF4y2Ba )gydF4y2Ba )gydF4y2Ba σgydF4y2Ba 1gydF4y2Ba +gydF4y2Ba 3gydF4y2Ba 罪gydF4y2Ba (gydF4y2Ba θgydF4y2Ba 2gydF4y2Ba (gydF4y2Ba tgydF4y2Ba )gydF4y2Ba )gydF4y2Ba ∂gydF4y2Ba 2gydF4y2Ba ∂gydF4y2Ba tgydF4y2Ba 2gydF4y2Ba θgydF4y2Ba 2gydF4y2Ba (gydF4y2Ba tgydF4y2Ba )gydF4y2Ba 2gydF4y2Ba =gydF4y2Ba 2gydF4y2Ba 因为gydF4y2Ba (gydF4y2Ba θgydF4y2Ba 2gydF4y2Ba (gydF4y2Ba tgydF4y2Ba )gydF4y2Ba )gydF4y2Ba 因为gydF4y2Ba (gydF4y2Ba θgydF4y2Ba 1gydF4y2Ba (gydF4y2Ba tgydF4y2Ba )gydF4y2Ba )gydF4y2Ba 2gydF4y2Ba σgydF4y2Ba 1gydF4y2Ba +gydF4y2Ba 罪gydF4y2Ba (gydF4y2Ba θgydF4y2Ba 1gydF4y2Ba (gydF4y2Ba tgydF4y2Ba )gydF4y2Ba )gydF4y2Ba 2gydF4y2Ba σgydF4y2Ba 1gydF4y2Ba +gydF4y2Ba 49gydF4y2Ba 罪gydF4y2Ba (gydF4y2Ba θgydF4y2Ba 1gydF4y2Ba (gydF4y2Ba tgydF4y2Ba )gydF4y2Ba )gydF4y2Ba 5gydF4y2Ba 因为gydF4y2Ba (gydF4y2Ba θgydF4y2Ba 1gydF4y2Ba (gydF4y2Ba tgydF4y2Ba )gydF4y2Ba )gydF4y2Ba 罪gydF4y2Ba (gydF4y2Ba θgydF4y2Ba 2gydF4y2Ba (gydF4y2Ba tgydF4y2Ba )gydF4y2Ba )gydF4y2Ba - - - - - -gydF4y2Ba 因为gydF4y2Ba (gydF4y2Ba θgydF4y2Ba 2gydF4y2Ba (gydF4y2Ba tgydF4y2Ba )gydF4y2Ba )gydF4y2Ba 罪gydF4y2Ba (gydF4y2Ba θgydF4y2Ba 1gydF4y2Ba (gydF4y2Ba tgydF4y2Ba )gydF4y2Ba )gydF4y2Ba - - - - - -gydF4y2Ba 49gydF4y2Ba 5gydF4y2Ba 在哪里gydF4y2Ba σgydF4y2Ba 1gydF4y2Ba =gydF4y2Ba ∂gydF4y2Ba 2gydF4y2Ba ∂gydF4y2Ba tgydF4y2Ba 2gydF4y2Ba θgydF4y2Ba 1gydF4y2Ba (gydF4y2Ba tgydF4y2Ba )gydF4y2Ba

两个方程是非线性二阶微分方程。为了解决这些方程,将它们转换为一阶微分方程通过使用gydF4y2BaodeToVectorFieldgydF4y2Ba函数。gydF4y2Ba

[V S] = odeToVectorField (eqn_1 eqn_2);gydF4y2Ba

向量的元素gydF4y2BaVgydF4y2Ba代表的一阶微分方程的时间导数相等的元素gydF4y2Ba年代gydF4y2Ba。的元素gydF4y2Ba年代gydF4y2Ba是状态变量gydF4y2Ba θgydF4y2Ba 2gydF4y2Ba ,gydF4y2Ba dgydF4y2Ba θgydF4y2Ba 2gydF4y2Ba /gydF4y2Ba dtgydF4y2Ba ,gydF4y2Ba θgydF4y2Ba 1gydF4y2Ba ,gydF4y2Ba dgydF4y2Ba θgydF4y2Ba 1gydF4y2Ba /gydF4y2Ba dtgydF4y2Ba 。状态变量描述角双摆的位移和速度。gydF4y2Ba

年代gydF4y2Ba
S =gydF4y2Ba

(gydF4y2Ba θgydF4y2Ba 2gydF4y2Ba DthetagydF4y2Ba 2gydF4y2Ba θgydF4y2Ba 1gydF4y2Ba DthetagydF4y2Ba 1gydF4y2Ba )gydF4y2Ba

接下来,将一阶微分方程转换为一个MATLAB函数处理gydF4y2Ba米gydF4y2Ba。gydF4y2Ba

M = matlabFunction (V,gydF4y2Ba“var”gydF4y2Ba,{gydF4y2Ba“t”gydF4y2Ba,gydF4y2Ba“Y”gydF4y2Ba});gydF4y2Ba

定义状态变量的初始条件gydF4y2Ba(π/ 4 0π/ 6 0)gydF4y2Ba。使用gydF4y2Ba数值gydF4y2Ba状态变量函数来解决。解决方案金宝搏官方网站是一个时间的函数在区间内gydF4y2Ba10 [0]gydF4y2Ba。gydF4y2Ba

initCond =(π/ 4 0π/ 6 0);溶胶=数值(M, [0 10], initCond);gydF4y2Ba

状态变量的解决方案金宝搏官方网站。gydF4y2Ba

情节(sols.x sols.y)传说(gydF4y2Ba“\ theta_2”gydF4y2Ba,gydF4y2Ba“d \ theta_2 / dt”gydF4y2Ba,gydF4y2Ba“\ theta_1”gydF4y2Ba,gydF4y2Ba“d \ theta_1 / dt”gydF4y2Ba)标题(gydF4y2Ba状金宝搏官方网站态变量的解决方案gydF4y2Ba)包含(gydF4y2Ba“时间(s)”gydF4y2Ba)ylabel (gydF4y2Ba“金宝搏官方网站解决方案(rad或rad / s)”gydF4y2Ba)gydF4y2Ba

图包含一个坐标轴对象。状态变量的坐标轴对象标题解决方案包含4线类型的对象。金宝搏官方网站这些对象代表\ theta_2 d \ theta_2 / dt, \ theta_1 d \ theta_1 / dt。gydF4y2Ba

第五步:创建动画摆动双摆的gydF4y2Ba

创建动画的摆动双摆。gydF4y2Ba

首先,创建四个函数使用gydF4y2Ba德瓦尔gydF4y2Ba评估的坐标都摆的解决方案金宝搏官方网站gydF4y2Ba溶胶gydF4y2Ba。gydF4y2Ba

x_1 = @ (t) l1 * sin(德瓦尔(溶胶,t, 3));y_1 = @ (t) l1 * cos(德瓦尔(溶胶,t, 3));x_2 = @ (t) l1 * sin(德瓦尔(溶胶,t, 3)) + l2 *罪(德瓦尔(溶胶t 1));y_2 = @ (t) l1 * cos(德瓦尔(溶胶,t, 3) l2 * cos(德瓦尔(溶胶t 1));gydF4y2Ba

接下来,创建一个定格动画第一摆锤使用的对象gydF4y2BafanimatorgydF4y2Ba函数。默认情况下,gydF4y2BafanimatorgydF4y2Ba创建一个动画对象10单位时间内生成的框架的范围之内gydF4y2BatgydF4y2Ba从0到10。通过绘制坐标gydF4y2Ba情节gydF4y2Ba函数。设置gydF4y2BaxgydF4y2Ba设在和gydF4y2BaygydF4y2Ba设在长度相等。gydF4y2Ba

fanimator (@ (t)情节(x_1 (t) y_1 (t)gydF4y2Ba“罗”gydF4y2Ba,gydF4y2Ba“MarkerSize”gydF4y2Ba1 * 10,gydF4y2Ba“MarkerFaceColor”gydF4y2Ba,gydF4y2Ba“r”gydF4y2Ba));轴gydF4y2Ba平等的gydF4y2Ba;gydF4y2Ba

接下来,添加第一个刚性杆的动画对象,第二个摆锤,第二个刚性杆。gydF4y2Ba

持有gydF4y2Ba在gydF4y2Ba;fanimator (@ (t)情节([0 x_1 (t)], [0 y_1 (t)),gydF4y2Ba的r -gydF4y2Ba));fanimator (@ (t)情节(x_2 (t) y_2 (t)gydF4y2Ba“去”gydF4y2Ba,gydF4y2Ba“MarkerSize”gydF4y2Bam_2 * 10,gydF4y2Ba“MarkerFaceColor”gydF4y2Ba,gydF4y2Ba‘g’gydF4y2Ba));fanimator (@ (t)情节(x_1 (t) x_2 (t)], [y_1 (t) y_2 (t)),gydF4y2Ba“g -”gydF4y2Ba));gydF4y2Ba

添加一块文本使用的计算时间gydF4y2Ba文本gydF4y2Ba函数。使用gydF4y2Banum2strgydF4y2Ba将时间参数转换成一个字符串。gydF4y2Ba

fanimator (@ (t)文本(-0.3,0.3,gydF4y2Ba计时器:“gydF4y2Ba+ num2str (t, 2)));持有gydF4y2Ba从gydF4y2Ba;gydF4y2Ba

图包含一个坐标轴对象。坐标轴对象包含5线类型的对象,文本。gydF4y2Ba

使用命令gydF4y2Ba那里gydF4y2Ba双摆的动画。gydF4y2Ba