文档

一个模型的求解雅可比结构

该示例展示了如何使用Simulink®来探索求解雅可比矩阵金宝app稀疏模式,以及求解雅可比矩阵稀疏模式与物理系统各组成部分之间的依赖关系。使用金宝appSimulink模型模拟放置在自由移动基座上的三个节拍器的同步。

求解雅可比矩阵模式

一般来说,Simulink模型的连续部分可以写成:金宝app

在哪里是连续状态和吗是输入。是输出。

矩阵:

称为系统求解雅可比矩阵。当隐式ODE求解器用于求解系统方程时,需要时需要计算。例如,一阶ode的雅可比矩阵

您可以将求解器雅可比矩阵转换为布尔稀疏矩阵,方法是将每个非零元素表示为1,并将始终为零(硬零)的每个元素表示为0。例如,对应于上面雅可比矩阵的布尔矩阵是:

在哪里称为求解雅可比模式矩阵。

求解雅可比模式矩阵可由原系统方程直接生成,规则如下:

正如你所看到的,求解雅可比矩阵实际上代表了状态变量和它们的导数之间的依赖性。如果计算需要的价值,则存在依赖关系.这些依赖关系是由系统的物理性质决定的,因此通过研究求解器雅可比矩阵,可以探索模型所代表的物理系统的物理结构。金宝appSimulink为用户提供了获取求解雅可比矩阵的api。下面展示了如何访问求解雅可比模式,并使用它来研究模型。

模式和依赖:节拍器的同步

同步被定义为由于振荡对象的弱相互作用而调整其节奏[1]。第一个有科学文献记载的同步观测是由荷兰科学家克里斯蒂安·惠更斯报告的,他是摆钟[2]的发明者。惠更斯发现,两个钟摆连接在由椅子支撑的同一根梁上,一段时间后会朝着完全相反的方向摆动。金宝app图1显示了本示例中使用的类似设置。

图1:本例中使用的设置:三个节拍器在一个移动的基座上

建模系统

该物理系统的模型可分为两部分:

  • 节拍器机制

  • 移动基地

节拍器机制

参照图1,可推导出运动基座上单个节拍器的动力学方程为[3]:

前两项描述了一个没有摩擦的单摆。第三项用来近似擒纵*和节拍器的任何阻尼。这一项增加了角速度减少它[3].最后一项是移动基座的耦合效应,用惯性力表示。

移动基地

假设基座的运动是无摩擦的,那么系统的重心不会改变,你可以推导出下面的式子

在哪里底的质量是多少是钟摆的质量。

则eq.1可以改为:

下面是用Simulink实现的系统。金宝app该模型包含三个节拍器子系统和移动基座。

图2:节拍器系金宝app统的Simulink模型

对这个系统的仿真显示了一个有趣的现象:同步。结果表明,三个不同初始相位角的节拍器最终都实现了同步。图3显示了仿真结果。同步的主要原因是连接所有节拍器的移动基座。这种物理联系可以从每个节拍器的动力学方程中观察到。

此外,这种物理联系也可以从该模型的求解雅可比矩阵模式中观察到。下面的MATLAB®代码展示了如何得到求解雅可比矩阵模式。

图3:同步的节拍器

得到求解雅可比矩阵模式的步骤

% 1。将求解器设置为任意隐式求解器
set_param (mdl‘解决’,‘ode15s’);
% 2。设求解雅可比方法为稀疏摄动*
set_param (mdl ' SolverJacobianMethodControl ', ' SparsePerturbation ');
% 3。得到求解雅可比矩阵对象。
J = 金宝appSimulink.Solver.getSlvrJacobianPattern (mdl);disp (J = ');disp (J);
% 4。用图形显示模式。使用J.show的方法
J.show;
% 5。使用给定的状态名和其他信息探索模式
stateNames = J.stateNames;disp(“stateNames = ');disp (stateNames);

你将看到的结果是:

J = SlvrJacobianPattern with properties: Jpattern: [8x8 double] numColGroup: 6 colGroup: [8x1 double] stateNames: {8x1 cell} blockHandles:x1双[8]stateNames = ' sldemo_metro /移动基地/ Integrator1’”(sldemo_metro / Metronome1 / Integrator2)。(θ₁)”“(sldemo_metro / Metronome2 / Integrator2)。(θ)”“(sldemo_metro / Metronome3 / Integrator2)。(1)”“(sldemo_metro / Metronome3 / Integrator1)。(Thetadot_3)”“(sldemo_metro / Metronome2 / Integrator1)。(Thetadot_2) '”(sldemo_metro / Metronome1 Integrator1)。(Thetadot_1)”“sldemo_metro /移动基地/集成商”

图4:求解雅可比矩阵模式

求解雅可比模式对象的性质

求解雅可比矩阵模式J是一个对象。它包含以下属性:

Jpattern:一个稀疏的mxArray,它是雅可比矩阵模式。
numColGroup:列组数。
colgroup:稀疏模式矩阵的列划分。
stateNames:包含每个状态的状态名的单元格数组。
blockHandles:块处理老板每一个状态。

求解雅可比模式的研究

参见图4。首先,该模型的求解雅可比矩阵是稀疏的,非零元素个数为28。第二,列组数为6;小于状态数8。

行1-4表示以下依赖项:

这些关系很清楚,因为速度是位置的导数。第5-8行显示如下关系:

这些关系表明,要计算节拍器的角加速度或移动基座的加速度,需要节拍器的角位置和角速度,而不需要基座的位置和速度。这些关系可以通过直接研究eq.(1)和eq.(2)来发现。

结论

求解雅可比模式是研究状态变量导数与状态变量之间的数据依赖关系的工具。这些关系通常反映了物理系统中的某些物理耦合。通过使用所提供的工具,您可以发现与Simulink模型相关的这些关系,即使没有物理模型的原始动力学方程。金宝app

参考文献

Arkady Pikosvky, Michael Rosenblum, Jurgen Kurths。同步。剑桥大学出版社,2001年。

[2] Ward T. Oud,同步节拍器的设计和实验结果,灵感来自Christiaan Huygens,硕士论文,埃因霍温理工大学,2006。

《美国物理学杂志》第70卷第10期第992-1000页,2002年。

  • 擒纵机构是一套驱动节拍器的机构。更多细节请参见[2]。