主要内容gydF4y2Ba

模拟的运动周期性摆动的钟摆gydF4y2Ba

这个例子展示了如何模拟单摆的运动使用的符号数学工具箱™。推导出摆的运动方程,然后对小角度解决方程分析,为任何角度数值。gydF4y2Ba

步骤1:推导出运动方程gydF4y2Ba

钟摆是一个简单的机械系统,它遵循一个微分方程。钟摆最初静止在一个垂直的位置。当钟摆流离失所的一个角度gydF4y2Ba θgydF4y2Ba 和释放,重力把它拉回到其休息的位置。它的动量会过头,来到一个角度gydF4y2Ba - - - - - -gydF4y2Ba θgydF4y2Ba (如果没有摩擦力),等等。恢复力以及重力摆的运动gydF4y2Ba - - - - - -gydF4y2Ba 米gydF4y2Ba ggydF4y2Ba 罪gydF4y2Ba θgydF4y2Ba 。因此,根据牛顿第二定律,质量乘以加速度必须相等gydF4y2Ba - - - - - -gydF4y2Ba 米gydF4y2Ba ggydF4y2Ba 罪gydF4y2Ba θgydF4y2Ba 。gydF4y2Ba

信谊gydF4y2Ba米gydF4y2Ba一个gydF4y2BaggydF4y2Baθ(t)gydF4y2Baeqn = m * = = g - m * *罪(θ)gydF4y2Ba
eqn (t) =gydF4y2Ba
                 
                  
                   
                    
                     
                      
                       
                        一个gydF4y2Ba
                       
                       
                       
                        米gydF4y2Ba
                      
                     
                     
                      =gydF4y2Ba
                     
                      
                       
                        - - - - - -gydF4y2Ba
                       
                        
                         
                          ggydF4y2Ba
                         
                         
                         
                          米gydF4y2Ba
                         
                         
                         
                          
                           
                            罪gydF4y2Ba
                          
                          
                           
                            (gydF4y2Ba
                           
                            
                             
                              
                               
                                θgydF4y2Ba
                              
                              
                               
                                (gydF4y2Ba
                               
                                
                                 
                                  tgydF4y2Ba
                                
                               
                               
                                )gydF4y2Ba
                              
                             
                            
                           
                           
                            )gydF4y2Ba
                          
                         
                        
                       
                      
                     
                    
                   
                   
                    a * m = = - g * m * sin(θ(t))gydF4y2Ba
                  
                 

摆的长度gydF4y2Ba rgydF4y2Ba 摆锤的加速度等于角加速度gydF4y2Ba rgydF4y2Ba 。gydF4y2Ba

一个gydF4y2Ba =gydF4y2Ba rgydF4y2Ba dgydF4y2Ba 2gydF4y2Ba θgydF4y2Ba dgydF4y2Ba tgydF4y2Ba 2gydF4y2Ba 。gydF4y2Ba

代替gydF4y2Ba 一个gydF4y2Ba 通过使用gydF4y2Ba潜艇gydF4y2Ba。gydF4y2Ba

信谊gydF4y2BargydF4y2Baeqn =潜艇(eqn r * diff(θ,2))gydF4y2Ba
eqn (t) =gydF4y2Ba

米gydF4y2Ba rgydF4y2Ba ∂gydF4y2Ba 2gydF4y2Ba ∂gydF4y2Ba tgydF4y2Ba 2gydF4y2Ba θgydF4y2Ba (gydF4y2Ba tgydF4y2Ba )gydF4y2Ba =gydF4y2Ba - - - - - -gydF4y2Ba ggydF4y2Ba 米gydF4y2Ba 罪gydF4y2Ba (gydF4y2Ba θgydF4y2Ba (gydF4y2Ba tgydF4y2Ba )gydF4y2Ba )gydF4y2Ba m * r * diff(θ(t), t, 2) = = - g * m * sin(θ(t))gydF4y2Ba

孤立的角加速度gydF4y2BaeqngydF4y2Ba通过使用gydF4y2Ba隔离gydF4y2Ba。gydF4y2Ba

eqn =隔离(eqn diff(θ,2))gydF4y2Ba
eqn =gydF4y2Ba

∂gydF4y2Ba 2gydF4y2Ba ∂gydF4y2Ba tgydF4y2Ba 2gydF4y2Ba θgydF4y2Ba (gydF4y2Ba tgydF4y2Ba )gydF4y2Ba =gydF4y2Ba - - - - - -gydF4y2Ba ggydF4y2Ba 罪gydF4y2Ba (gydF4y2Ba θgydF4y2Ba (gydF4y2Ba tgydF4y2Ba )gydF4y2Ba )gydF4y2Ba rgydF4y2Ba diff(θ(t), t, 2) = = - - - - - - (g * sin(θ(t))) / rgydF4y2Ba

收集常量gydF4y2Ba ggydF4y2Ba 和gydF4y2Ba rgydF4y2Ba 成一个单一的参数,也被称为gydF4y2Ba固有频率gydF4y2Ba。gydF4y2Ba

ωgydF4y2Ba 0gydF4y2Ba =gydF4y2Ba ggydF4y2Ba rgydF4y2Ba 。gydF4y2Ba

信谊gydF4y2Baomega_0gydF4y2Baeqn =潜艇(eqn, g / r, omega_0 ^ 2)gydF4y2Ba
eqn =gydF4y2Ba

∂gydF4y2Ba 2gydF4y2Ba ∂gydF4y2Ba tgydF4y2Ba 2gydF4y2Ba θgydF4y2Ba (gydF4y2Ba tgydF4y2Ba )gydF4y2Ba =gydF4y2Ba - - - - - -gydF4y2Ba ωgydF4y2Ba 0gydF4y2Ba 2gydF4y2Ba 罪gydF4y2Ba (gydF4y2Ba θgydF4y2Ba (gydF4y2Ba tgydF4y2Ba )gydF4y2Ba )gydF4y2Ba diff(θ(t), t, 2) = = -omega_0 ^ 2 *罪(θ(t))gydF4y2Ba

步骤2:运动方程线性化gydF4y2Ba

运动方程是非线性的,所以很难解决分析。假设角度小,利用泰勒展开式的线性化方程gydF4y2Ba 罪gydF4y2Ba θgydF4y2Ba 。gydF4y2Ba

信谊gydF4y2BaxgydF4y2Ba约=泰勒(sin (x), x,gydF4y2Ba“秩序”gydF4y2Ba2);约=潜艇(大约x,θ(t))gydF4y2Ba
约=gydF4y2Ba
                 
                  
                   
                    
                     
                      θgydF4y2Ba
                    
                    
                     
                      (gydF4y2Ba
                     
                      
                       
                        tgydF4y2Ba
                      
                     
                     
                      )gydF4y2Ba
                    
                   
                   
                    θ(t)gydF4y2Ba
                  
                 

运动方程是一个线性方程。gydF4y2Ba

eqnLinear =潜艇(eqn,罪(θ(t)),约)gydF4y2Ba
eqnLinear =gydF4y2Ba

∂gydF4y2Ba 2gydF4y2Ba ∂gydF4y2Ba tgydF4y2Ba 2gydF4y2Ba θgydF4y2Ba (gydF4y2Ba tgydF4y2Ba )gydF4y2Ba =gydF4y2Ba - - - - - -gydF4y2Ba ωgydF4y2Ba 0gydF4y2Ba 2gydF4y2Ba θgydF4y2Ba (gydF4y2Ba tgydF4y2Ba )gydF4y2Ba diff(θ(t), t, 2) = = -omega_0 ^ 2 *θ(t)gydF4y2Ba

步骤3:解决运动方程分析gydF4y2Ba

解方程gydF4y2BaeqnLineargydF4y2Ba通过使用gydF4y2BadsolvegydF4y2Ba。指定初始条件作为第二个参数。简化假设的解决方案gydF4y2Ba ωgydF4y2Ba 0gydF4y2Ba 是真实的使用gydF4y2Ba假设gydF4y2Ba。gydF4y2Ba

信谊gydF4y2Batheta_0gydF4y2Batheta_t0gydF4y2Batheta_t = diff(θ);气孔导度=[θ(0)= = theta_0 theta_t (0) = = theta_t0];假设(omega_0gydF4y2Ba“真实”的gydF4y2Ba)thetaSol (t) = dsolve (eqnLinear,气孔导度)gydF4y2Ba
thetaSol (t) =gydF4y2Ba

θgydF4y2Ba 0gydF4y2Ba 因为gydF4y2Ba (gydF4y2Ba ωgydF4y2Ba 0gydF4y2Ba tgydF4y2Ba )gydF4y2Ba +gydF4y2Ba θgydF4y2Ba t0gydF4y2Ba 罪gydF4y2Ba (gydF4y2Ba ωgydF4y2Ba 0gydF4y2Ba tgydF4y2Ba )gydF4y2Ba ωgydF4y2Ba 0gydF4y2Ba theta_0 * cos (omega_0 * t) + (theta_t0 * sin (omega_0 * t)) / omega_0gydF4y2Ba

步骤4:物理意义的gydF4y2Ba ωgydF4y2Ba 0gydF4y2Ba

这个词gydF4y2Ba ωgydF4y2Ba 0gydF4y2Ba tgydF4y2Ba 被称为gydF4y2Ba阶段gydF4y2Ba。余弦和正弦函数重复每一个gydF4y2Ba 2gydF4y2Ba πgydF4y2Ba 。需要改变的时候了gydF4y2Ba ωgydF4y2Ba 0gydF4y2Ba tgydF4y2Ba 通过gydF4y2Ba 2gydF4y2Ba πgydF4y2Ba 叫做时间。gydF4y2Ba

TgydF4y2Ba =gydF4y2Ba 2gydF4y2Ba πgydF4y2Ba ωgydF4y2Ba 0gydF4y2Ba =gydF4y2Ba 2gydF4y2Ba πgydF4y2Ba rgydF4y2Ba ggydF4y2Ba 。gydF4y2Ba

的时间段gydF4y2Ba TgydF4y2Ba 的平方根成正比摆的长度,它不依赖于质量。对于线性运动方程,时间不依赖于初始条件。gydF4y2Ba

第五步:情节摆运动gydF4y2Ba

情节摆的运动为小角度的近似值。gydF4y2Ba

定义物理参数:gydF4y2Ba

  • 重力加速度gydF4y2Ba ggydF4y2Ba =gydF4y2Ba 9gydF4y2Ba 。gydF4y2Ba 8gydF4y2Ba 1gydF4y2Ba 米/秒gydF4y2Ba 2gydF4y2Ba

  • 摆的长度gydF4y2Ba rgydF4y2Ba =gydF4y2Ba 1gydF4y2Ba 米gydF4y2Ba

gValue = 9.81;右值= 1;omega_0Value =√gValue /右值);T = 2 *π/ omega_0Value;gydF4y2Ba

设置初始条件。gydF4y2Ba

theta_0Value = 0.1 *π;gydF4y2Ba%的解决方案只适用于小角度。gydF4y2Batheta_t0Value = 0;gydF4y2Ba%最初在休息的时候。gydF4y2Ba

物理参数和初始条件代入通解。gydF4y2Ba

var = [omega_0 theta_0 theta_t0];值= [omega_0Value theta_0Value theta_t0Value];thetaSolPlot =潜艇(thetaSol、var值);gydF4y2Ba

绘制谐波摆运动。gydF4y2Ba

fplot (thetaSolPlot (t * t) /π,[0 5);网格gydF4y2Ba在gydF4y2Ba;标题(gydF4y2Ba“谐摆运动”gydF4y2Ba);包含(gydF4y2Ba“电汇”gydF4y2Ba);ylabel (gydF4y2Ba“θ/ \ \π”gydF4y2Ba);gydF4y2Ba

图包含一个轴。标题的轴谐波钟摆运动包含一个functionline类型的对象。gydF4y2Ba

后找到的解决方案gydF4y2Ba θgydF4y2Ba (gydF4y2Ba tgydF4y2Ba )gydF4y2Ba 、可视化钟摆的运动。gydF4y2Ba

x_pos =罪(thetaSolPlot);y_pos = cos (thetaSolPlot);fanimator (@fplot x_pos y_pos,gydF4y2Ba“柯”gydF4y2Ba,gydF4y2Ba“MarkerFaceColor”gydF4y2Ba,gydF4y2Ba“k”gydF4y2Ba,gydF4y2Ba“AnimationRange”gydF4y2Ba[0 5 * T]);持有gydF4y2Ba在gydF4y2Ba;fanimator (@ (t)情节([0 x_pos (t)], [0 y_pos (t)),gydF4y2Ba“k -”gydF4y2Ba),gydF4y2Ba“AnimationRange”gydF4y2Ba[0 5 * T]);fanimator (@ (t)文本(-0.3,0.3,gydF4y2Ba计时器:“gydF4y2Ba+ num2str (t, 2) +gydF4y2Ba“s”gydF4y2Ba),gydF4y2Ba“AnimationRange”gydF4y2Ba[0 5 * T]);gydF4y2Ba

图包含一个轴。轴包含3 parameterizedfunctionline类型的对象,线,文本。gydF4y2Ba

输入的命令gydF4y2Ba那里gydF4y2Ba钟摆运动的动画。gydF4y2Ba

步骤6:确定非线性摆运动使用恒定的能量路径gydF4y2Ba

了解非线性摆的运动、可视化摆路径通过使用总能量方程。的总能量是守恒的。gydF4y2Ba

EgydF4y2Ba =gydF4y2Ba 1gydF4y2Ba 2gydF4y2Ba 米gydF4y2Ba rgydF4y2Ba 2gydF4y2Ba (gydF4y2Ba dgydF4y2Ba θgydF4y2Ba dtgydF4y2Ba )gydF4y2Ba 2gydF4y2Ba +gydF4y2Ba 米gydF4y2Ba ggydF4y2Ba rgydF4y2Ba (gydF4y2Ba 1gydF4y2Ba - - - - - -gydF4y2Ba 因为gydF4y2Ba θgydF4y2Ba )gydF4y2Ba

使用三角恒等式gydF4y2Ba 1gydF4y2Ba - - - - - -gydF4y2Ba 因为gydF4y2Ba θgydF4y2Ba =gydF4y2Ba 2gydF4y2Ba 罪gydF4y2Ba 2gydF4y2Ba (gydF4y2Ba θgydF4y2Ba /gydF4y2Ba 2gydF4y2Ba )gydF4y2Ba 和的关系gydF4y2Ba ωgydF4y2Ba 0gydF4y2Ba =gydF4y2Ba ggydF4y2Ba /gydF4y2Ba rgydF4y2Ba 重写了能量。gydF4y2Ba

EgydF4y2Ba 米gydF4y2Ba rgydF4y2Ba 2gydF4y2Ba =gydF4y2Ba 1gydF4y2Ba 2gydF4y2Ba (gydF4y2Ba (gydF4y2Ba dgydF4y2Ba θgydF4y2Ba dtgydF4y2Ba )gydF4y2Ba 2gydF4y2Ba +gydF4y2Ba (gydF4y2Ba 2gydF4y2Ba ωgydF4y2Ba 0gydF4y2Ba 罪gydF4y2Ba θgydF4y2Ba 2gydF4y2Ba )gydF4y2Ba 2gydF4y2Ba ]gydF4y2Ba

从能量是守恒的,摆的运动可以被描述为常数相空间中的能量路径。的相空间是一个抽象的空间坐标gydF4y2Ba θgydF4y2Ba 和gydF4y2Ba dgydF4y2Ba θgydF4y2Ba /gydF4y2Ba dgydF4y2Ba tgydF4y2Ba 。想象这些路径使用gydF4y2BafcontourgydF4y2Ba。gydF4y2Ba

信谊gydF4y2BaθgydF4y2Batheta_tgydF4y2Baomega_0gydF4y2BaE(θ,theta_t omega_0) = (1/2) * (theta_t ^ 2 + (2 * omega_0 * sin(θ/ 2))^ 2);Eplot(θ,theta_t) =潜艇(E, omega_0 omega_0Value);图;fc = fcontour (Eplot(π*θ,2 * omega_0Value * theta_t), 2 * (1 1 1),gydF4y2Ba…gydF4y2Ba“线宽”gydF4y2Ba2,gydF4y2Ba“LevelList”gydF4y2Ba0:5:50,gydF4y2Ba“MeshDensity”gydF4y2Ba1 + 2 ^ 8);网格gydF4y2Ba在gydF4y2Ba;标题(gydF4y2Ba“恒能源轮廓相空间(\θ与\ theta_t) 'gydF4y2Ba);包含(gydF4y2Ba“θ/ \ \π”gydF4y2Ba);ylabel (gydF4y2Ba“\ theta_t / 2 \ omega_0”gydF4y2Ba);gydF4y2Ba

图包含一个轴。坐标轴标题能量恒定的轮廓在相空间(\θ与\ theta_t)包含一个functioncontour类型的对象。gydF4y2Ba

恒能源的轮廓是对称的gydF4y2Ba θgydF4y2Ba 轴和gydF4y2Ba dgydF4y2Ba θgydF4y2Ba /gydF4y2Ba dgydF4y2Ba tgydF4y2Ba 轴,是周期性的gydF4y2Ba θgydF4y2Ba 轴。该图显示了两个地区不同的行为。gydF4y2Ba

低能量的等高线图接近自己。钟摆来回摆动两个最大的角度和速度。钟摆的动能不足以克服重力能量并使摆一个完整的循环。gydF4y2Ba

更高能量的等高线图不接近自己。钟摆总是在一个角方向移动。钟摆的动能是能量足以克服重力,使摆一个完整的循环。gydF4y2Ba

第七步:解决非线性运动方程gydF4y2Ba

非线性运动方程是二阶微分方程。通过使用数值解决这些方程gydF4y2Ba数值gydF4y2Ba解算器。因为gydF4y2Ba数值gydF4y2Ba只接受一阶系统,减少系统一阶系统。然后,生成函数的输入处理gydF4y2Ba数值gydF4y2Ba。gydF4y2Ba

重写一阶常微分方程的二阶颂歌视为一个系统。gydF4y2Ba

信谊gydF4y2Baθ(t)gydF4y2Batheta_t (t)gydF4y2Baomega_0gydF4y2Ba方程式= [diff(θ)= = theta_t;diff (theta_t) = = -omega_0 ^ 2 *罪(θ)]gydF4y2Ba
方程式(t) =gydF4y2Ba

(gydF4y2Ba ∂gydF4y2Ba ∂gydF4y2Ba tgydF4y2Ba θgydF4y2Ba (gydF4y2Ba tgydF4y2Ba )gydF4y2Ba =gydF4y2Ba θgydF4y2Ba tgydF4y2Ba (gydF4y2Ba tgydF4y2Ba )gydF4y2Ba ∂gydF4y2Ba ∂gydF4y2Ba tgydF4y2Ba θgydF4y2Ba tgydF4y2Ba (gydF4y2Ba tgydF4y2Ba )gydF4y2Ba =gydF4y2Ba - - - - - -gydF4y2Ba ωgydF4y2Ba 0gydF4y2Ba 2gydF4y2Ba 罪gydF4y2Ba (gydF4y2Ba θgydF4y2Ba (gydF4y2Ba tgydF4y2Ba )gydF4y2Ba )gydF4y2Ba )gydF4y2Ba [diff(θ(t), t) = = theta_t (t);diff (theta_t (t), t) = = -omega_0 ^ 2 *罪(θ(t)))gydF4y2Ba

方程式=潜艇(方程式,omega_0 omega_0Value);var =[θ,theta_t];gydF4y2Ba

找到质量矩阵gydF4y2Ba米gydF4y2Ba系统和两侧的方程gydF4y2BaFgydF4y2Ba。gydF4y2Ba

[M F] = massMatrixForm(方程式一样,var)gydF4y2Ba
M =gydF4y2Ba

(gydF4y2Ba 1gydF4y2Ba 0gydF4y2Ba 0gydF4y2Ba 1gydF4y2Ba )gydF4y2Ba (信谊(1),信谊(0);信谊(0),信谊(1)]gydF4y2Ba

F =gydF4y2Ba

(gydF4y2Ba θgydF4y2Ba tgydF4y2Ba (gydF4y2Ba tgydF4y2Ba )gydF4y2Ba - - - - - -gydF4y2Ba 981年gydF4y2Ba 罪gydF4y2Ba (gydF4y2Ba θgydF4y2Ba (gydF4y2Ba tgydF4y2Ba )gydF4y2Ba )gydF4y2Ba One hundred.gydF4y2Ba )gydF4y2Ba [theta_t (t);(981 * sin(θ(t))) / 100)gydF4y2Ba

米gydF4y2Ba和gydF4y2BaFgydF4y2Ba指的是这种形式。gydF4y2Ba

米gydF4y2Ba (gydF4y2Ba tgydF4y2Ba ,gydF4y2Ba xgydF4y2Ba (gydF4y2Ba tgydF4y2Ba )gydF4y2Ba )gydF4y2Ba dxgydF4y2Ba dtgydF4y2Ba =gydF4y2Ba FgydF4y2Ba (gydF4y2Ba tgydF4y2Ba ,gydF4y2Ba xgydF4y2Ba (gydF4y2Ba tgydF4y2Ba )gydF4y2Ba )gydF4y2Ba 。gydF4y2Ba

进一步简化计算,重写系统的形式gydF4y2Ba dgydF4y2Ba xgydF4y2Ba /gydF4y2Ba dgydF4y2Ba tgydF4y2Ba =gydF4y2Ba fgydF4y2Ba (gydF4y2Ba tgydF4y2Ba ,gydF4y2Ba xgydF4y2Ba (gydF4y2Ba tgydF4y2Ba )gydF4y2Ba )gydF4y2Ba 。gydF4y2Ba

f = M \ fgydF4y2Ba
f =gydF4y2Ba

(gydF4y2Ba θgydF4y2Ba tgydF4y2Ba (gydF4y2Ba tgydF4y2Ba )gydF4y2Ba - - - - - -gydF4y2Ba 981年gydF4y2Ba 罪gydF4y2Ba (gydF4y2Ba θgydF4y2Ba (gydF4y2Ba tgydF4y2Ba )gydF4y2Ba )gydF4y2Ba One hundred.gydF4y2Ba )gydF4y2Ba [theta_t (t);(981 * sin(θ(t))) / 100)gydF4y2Ba

转换gydF4y2BafgydF4y2Ba通过使用MATLAB函数处理gydF4y2BaodeFunctiongydF4y2Ba。生成的函数处理的输入MATLAB ODE求解器进行求解gydF4y2Ba数值gydF4y2Ba。gydF4y2Ba

f = odeFunction (f, var)gydF4y2Ba
f =gydF4y2Bafunction_handle与价值:gydF4y2Ba@ (t, in2) [in2(2:);罪(in2 (1:))。* 2./1.0 (-9.81 e + e + 2))gydF4y2Ba

第八步:求解运动方程封闭轮廓gydF4y2Ba

解决ODE封闭轮廓的能源使用gydF4y2Ba数值gydF4y2Ba。gydF4y2Ba

从能源等高线图,封闭轮廓满足条件gydF4y2Ba θgydF4y2Ba 0gydF4y2Ba =gydF4y2Ba 0gydF4y2Ba ,gydF4y2Ba θgydF4y2Ba tgydF4y2Ba 0gydF4y2Ba /gydF4y2Ba 2gydF4y2Ba ωgydF4y2Ba 0gydF4y2Ba ≤gydF4y2Ba 1gydF4y2Ba 。存储的初始条件gydF4y2Ba θgydF4y2Ba 和gydF4y2Ba dgydF4y2Ba θgydF4y2Ba /gydF4y2Ba dgydF4y2Ba tgydF4y2Ba 在变量gydF4y2Bax0gydF4y2Ba。gydF4y2Ba

x0 = [0;1.99 * omega_0Value];gydF4y2Ba

指定一个时间间隔从0到10年代寻找解决方案。这个间隔允许钟摆经过两个完整的时期。gydF4y2Ba

tInit = 0;tFinal = 10;gydF4y2Ba

解决ODE。gydF4y2Ba

溶胶=数值(f, [tInit tFinal], x0)gydF4y2Ba
溶胶=gydF4y2Ba结构体字段:gydF4y2Ba解决:“数值”extdata: [1 x1 struct] x: [1 x45双]y: [2 x45双]统计:[1 x1 struct] idata: [1 x1 struct]gydF4y2Ba

:sols.y (1)gydF4y2Ba代表了角位移gydF4y2Ba θgydF4y2Ba 和gydF4y2Ba:sols.y (2)gydF4y2Ba代表了角速度gydF4y2Ba dgydF4y2Ba θgydF4y2Ba /gydF4y2Ba dgydF4y2Ba tgydF4y2Ba 。gydF4y2Ba

情节封闭路径解决方案。gydF4y2Ba

图;yyaxisgydF4y2Ba左gydF4y2Ba;情节(溶胶。x,:sols.y (1),gydF4y2Ba“o”gydF4y2Ba);ylabel (gydF4y2Ba“\θ(rad)”gydF4y2Ba);yyaxisgydF4y2Ba正确的gydF4y2Ba;情节(溶胶。x,:sols.y (2),gydF4y2Ba“o”gydF4y2Ba);ylabel (gydF4y2Ba' \ theta_t (rad / s) 'gydF4y2Ba);网格gydF4y2Ba在gydF4y2Ba;标题(gydF4y2Ba“相空间封闭路径”gydF4y2Ba);包含(gydF4y2Ba“t (s)”gydF4y2Ba);gydF4y2Ba

图包含一个轴。相空间中的坐标轴标题关闭路径包含2线类型的对象。gydF4y2Ba

可视化钟摆的运动。gydF4y2Ba

x_pos = @ (t)罪(德瓦尔(溶胶t 1));y_pos = @ (t) cos(德瓦尔(溶胶t 1));图;fanimator (@ (t)情节(x_pos (t) y_pos (t)gydF4y2Ba“柯”gydF4y2Ba,gydF4y2Ba“MarkerFaceColor”gydF4y2Ba,gydF4y2Ba“k”gydF4y2Ba));持有gydF4y2Ba在gydF4y2Ba;fanimator (@ (t)情节([0 x_pos (t)], [0 y_pos (t)),gydF4y2Ba“k -”gydF4y2Ba));fanimator (@ (t)文本(-0.3,1.5,gydF4y2Ba计时器:“gydF4y2Ba+ num2str (t, 2) +gydF4y2Ba“s”gydF4y2Ba));gydF4y2Ba

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

输入的命令gydF4y2Ba那里gydF4y2Ba钟摆运动的动画。gydF4y2Ba

步骤9:解决方案金宝搏官方网站在开放能源轮廓gydF4y2Ba

解决ODE轮廓通过使用开放的能量gydF4y2Ba数值gydF4y2Ba。从能源等高线图,开放轮廓满足条件gydF4y2Ba θgydF4y2Ba 0gydF4y2Ba =gydF4y2Ba 0gydF4y2Ba ,gydF4y2Ba θgydF4y2Ba tgydF4y2Ba 0gydF4y2Ba /gydF4y2Ba 2gydF4y2Ba ωgydF4y2Ba 0gydF4y2Ba >gydF4y2Ba 1gydF4y2Ba 。gydF4y2Ba

x0 = [0;2.01 * omega_0Value];溶胶=数值(f, [tInit tFinal], x0);gydF4y2Ba

情节的解决方案开放能源轮廓。gydF4y2Ba

图;yyaxisgydF4y2Ba左gydF4y2Ba;情节(溶胶。x,:sols.y (1),gydF4y2Ba“o”gydF4y2Ba);ylabel (gydF4y2Ba“\θ(rad)”gydF4y2Ba);yyaxisgydF4y2Ba正确的gydF4y2Ba;情节(溶胶。x,:sols.y (2),gydF4y2Ba“o”gydF4y2Ba);ylabel (gydF4y2Ba' \ theta_t (rad / s) 'gydF4y2Ba);网格gydF4y2Ba在gydF4y2Ba;标题(gydF4y2Ba“开放路径相空间的gydF4y2Ba);包含(gydF4y2Ba“t (s)”gydF4y2Ba);gydF4y2Ba

图包含一个轴。相空间中的坐标轴标题开放路径包含2线类型的对象。gydF4y2Ba

可视化钟摆的运动。gydF4y2Ba

x_pos = @ (t)罪(德瓦尔(溶胶t 1));y_pos = @ (t) cos(德瓦尔(溶胶t 1));图;fanimator (@ (t)情节(x_pos (t) y_pos (t)gydF4y2Ba“柯”gydF4y2Ba,gydF4y2Ba“MarkerFaceColor”gydF4y2Ba,gydF4y2Ba“k”gydF4y2Ba));持有gydF4y2Ba在gydF4y2Ba;fanimator (@ (t)情节([0 x_pos (t)], [0 y_pos (t)),gydF4y2Ba“k -”gydF4y2Ba));fanimator (@ (t)文本(-0.3,1.5,gydF4y2Ba计时器:“gydF4y2Ba+ num2str (t, 2) +gydF4y2Ba“s”gydF4y2Ba));gydF4y2Ba

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

输入的命令gydF4y2Ba那里gydF4y2Ba钟摆运动的动画。gydF4y2Ba