主要内容GydF4y2Ba

选择一种隐式求解器的雅各布方法GydF4y2Ba

对于隐式求解器,Simulink金宝appGydF4y2Ba®GydF4y2Ba必须计算GydF4y2Ba求解器雅各比GydF4y2Ba,这是与Simulink模型连续表示相关的Jacobian矩阵的子序列。金宝app通常,这种连续的表示形式是:GydF4y2Ba

XGydF4y2Ba -GydF4y2Ba =GydF4y2Ba FGydF4y2Ba ((GydF4y2Ba XGydF4y2Ba 那GydF4y2Ba tGydF4y2Ba 那GydF4y2Ba 你GydF4y2Ba 的)GydF4y2Ba yGydF4y2Ba =GydF4y2Ba GGydF4y2Ba ((GydF4y2Ba XGydF4y2Ba 那GydF4y2Ba tGydF4y2Ba 那GydF4y2Ba 你GydF4y2Ba 的)GydF4y2Ba 。GydF4y2Ba

雅各布,GydF4y2BajGydF4y2Ba,由这个方程组形成的是:GydF4y2Ba

jGydF4y2Ba =GydF4y2Ba ((GydF4y2Ba ∂GydF4y2Ba FGydF4y2Ba ∂GydF4y2Ba XGydF4y2Ba ∂GydF4y2Ba FGydF4y2Ba ∂GydF4y2Ba 你GydF4y2Ba ∂GydF4y2Ba GGydF4y2Ba ∂GydF4y2Ba XGydF4y2Ba ∂GydF4y2Ba GGydF4y2Ba ∂GydF4y2Ba 你GydF4y2Ba 的)GydF4y2Ba =GydF4y2Ba ((GydF4y2Ba 一种GydF4y2Ba bGydF4y2Ba CGydF4y2Ba dGydF4y2Ba 的)GydF4y2Ba 。GydF4y2Ba

反过来,求解器Jacobian是subsatrix,GydF4y2Ba jGydF4y2Ba XGydF4y2Ba 。GydF4y2Ba

jGydF4y2Ba XGydF4y2Ba =GydF4y2Ba 一种GydF4y2Ba =GydF4y2Ba ∂GydF4y2Ba FGydF4y2Ba ∂GydF4y2Ba XGydF4y2Ba 。GydF4y2Ba

雅各布的稀疏性GydF4y2Ba

对于许多物理系统,求解器JacobianGydF4y2BajGydF4y2BaXGydF4y2Ba是GydF4y2Ba疏GydF4y2Ba,这意味着许多要素GydF4y2BajGydF4y2BaXGydF4y2Ba为零。GydF4y2Ba

考虑以下方程系统:GydF4y2Ba

XGydF4y2Ba -GydF4y2Ba 1GydF4y2Ba =GydF4y2Ba FGydF4y2Ba 1GydF4y2Ba ((GydF4y2Ba XGydF4y2Ba 1GydF4y2Ba 那GydF4y2Ba XGydF4y2Ba 3.GydF4y2Ba 的)GydF4y2Ba XGydF4y2Ba -GydF4y2Ba 2GydF4y2Ba =GydF4y2Ba FGydF4y2Ba 2GydF4y2Ba ((GydF4y2Ba XGydF4y2Ba 2GydF4y2Ba 的)GydF4y2Ba XGydF4y2Ba -GydF4y2Ba 3.GydF4y2Ba =GydF4y2Ba FGydF4y2Ba 3.GydF4y2Ba ((GydF4y2Ba XGydF4y2Ba 2GydF4y2Ba 的)GydF4y2Ba 。GydF4y2Ba

从该系统中,您可以得出反映方程结构的稀疏模式。图案是布尔矩阵,每个图案都有1个GydF4y2Ba XGydF4y2Ba 一世GydF4y2Ba 这明确出现在方程式的右侧。因此,您获得:GydF4y2Ba

jGydF4y2Ba XGydF4y2Ba 那GydF4y2Ba pGydF4y2Ba 一种GydF4y2Ba tGydF4y2Ba tGydF4y2Ba eGydF4y2Ba rGydF4y2Ba nGydF4y2Ba =GydF4y2Ba ((GydF4y2Ba 1GydF4y2Ba 0GydF4y2Ba 1GydF4y2Ba 0GydF4y2Ba 1GydF4y2Ba 0GydF4y2Ba 0GydF4y2Ba 1GydF4y2Ba 0GydF4y2Ba 的)GydF4y2Ba

稀疏的扰动和稀疏分析方法可能能够利用这种稀疏模式,以减少必要的计算数量并提高性能。GydF4y2Ba

求解器雅各布方法GydF4y2Ba

当您从GydF4y2Ba求解器GydF4y2Ba配置参数对话框的窗格,一个称为的参数GydF4y2Ba求解器雅各布法GydF4y2Ba并出现下拉菜单。此菜单有五个用于计算求解器Jacobian的选项。GydF4y2Ba

笔记GydF4y2Ba

如果您设置GydF4y2Ba自动求解器参数选择GydF4y2Ba到GydF4y2Ba错误GydF4y2Ba在Solver Diagnostics Pane中,您选择了与Simulink建议的求解器不同的求解器,您可能会收到错误。金宝appGydF4y2Ba

限制GydF4y2Ba

求解器雅各布方法具有与之相关的这些局限性。GydF4y2Ba

  • 如果您选择一种分析性雅各布方法,但是模型中的一个或多个块没有分析性的雅各布,则Simulink应用了扰动方法。金宝appGydF4y2Ba

  • 如果选择稀疏扰动,并且模型包含数据存储块,则Simulink应用了完整的扰动方法。金宝appGydF4y2Ba

启发式“自动”方法GydF4y2Ba

默认设置的设置GydF4y2Ba求解器雅各布法GydF4y2Ba是GydF4y2Ba汽车GydF4y2Ba。选择此选择会导致Simulink确定其余四种方法最适合您的金宝app模型。该流程图描述了算法。GydF4y2Ba

稀疏方法对具有大量状态的模型有益。如果您的模型中存在50个或更多状态,GydF4y2Ba汽车GydF4y2Ba选择稀疏方法。与其他隐性求解器不同,GydF4y2BaODE23SGydF4y2Ba是一种稀疏的方法,因为它在每个时间步骤都会生成新的雅各布。因此,稀疏的分析或稀疏扰动方法是有利的。选择GydF4y2Ba汽车GydF4y2Ba还可以确保仅当模型中的每个块都能生成分析性雅各布时,才能使用分析方法。GydF4y2Ba

全部稀疏的扰动方法GydF4y2Ba

完整的扰动方法求解了完整的扰动方程,并将Lapack用于线性代数操作。从计算的角度来看,该方法是昂贵的,但仍然是建立基线结果的推荐方法。GydF4y2Ba

稀疏的扰动方法试图通过获得稀疏的雅各布模式的数学优势来改善运行时性能。返回三个方程和三个状态的样本系统,GydF4y2Ba

XGydF4y2Ba -GydF4y2Ba 1GydF4y2Ba =GydF4y2Ba FGydF4y2Ba 1GydF4y2Ba ((GydF4y2Ba XGydF4y2Ba 1GydF4y2Ba 那GydF4y2Ba XGydF4y2Ba 3.GydF4y2Ba 的)GydF4y2Ba XGydF4y2Ba -GydF4y2Ba 2GydF4y2Ba =GydF4y2Ba FGydF4y2Ba 2GydF4y2Ba ((GydF4y2Ba XGydF4y2Ba 2GydF4y2Ba 的)GydF4y2Ba XGydF4y2Ba -GydF4y2Ba 3.GydF4y2Ba =GydF4y2Ba FGydF4y2Ba 3.GydF4y2Ba ((GydF4y2Ba XGydF4y2Ba 2GydF4y2Ba 的)GydF4y2Ba 。GydF4y2Ba

求解器雅各布是:GydF4y2Ba

jGydF4y2Ba XGydF4y2Ba =GydF4y2Ba ((GydF4y2Ba ∂GydF4y2Ba FGydF4y2Ba 1GydF4y2Ba ∂GydF4y2Ba XGydF4y2Ba 1GydF4y2Ba ∂GydF4y2Ba FGydF4y2Ba 1GydF4y2Ba ∂GydF4y2Ba XGydF4y2Ba 2GydF4y2Ba ∂GydF4y2Ba FGydF4y2Ba 1GydF4y2Ba ∂GydF4y2Ba XGydF4y2Ba 3.GydF4y2Ba ∂GydF4y2Ba FGydF4y2Ba 2GydF4y2Ba ∂GydF4y2Ba XGydF4y2Ba 1GydF4y2Ba ∂GydF4y2Ba FGydF4y2Ba 2GydF4y2Ba ∂GydF4y2Ba XGydF4y2Ba 2GydF4y2Ba ∂GydF4y2Ba FGydF4y2Ba 2GydF4y2Ba ∂GydF4y2Ba XGydF4y2Ba 3.GydF4y2Ba ∂GydF4y2Ba FGydF4y2Ba 3.GydF4y2Ba ∂GydF4y2Ba XGydF4y2Ba 1GydF4y2Ba ∂GydF4y2Ba FGydF4y2Ba 3.GydF4y2Ba ∂GydF4y2Ba XGydF4y2Ba 2GydF4y2Ba ∂GydF4y2Ba FGydF4y2Ba 3.GydF4y2Ba ∂GydF4y2Ba XGydF4y2Ba 3.GydF4y2Ba 的)GydF4y2Ba =GydF4y2Ba ((GydF4y2Ba FGydF4y2Ba 1GydF4y2Ba ((GydF4y2Ba XGydF4y2Ba 1GydF4y2Ba +GydF4y2Ba δ.GydF4y2Ba XGydF4y2Ba 1GydF4y2Ba 那GydF4y2Ba XGydF4y2Ba 2GydF4y2Ba 那GydF4y2Ba XGydF4y2Ba 3.GydF4y2Ba 的)GydF4y2Ba -GydF4y2Ba FGydF4y2Ba 1GydF4y2Ba δ.GydF4y2Ba XGydF4y2Ba 1GydF4y2Ba FGydF4y2Ba 1GydF4y2Ba ((GydF4y2Ba XGydF4y2Ba 1GydF4y2Ba 那GydF4y2Ba XGydF4y2Ba 2GydF4y2Ba +GydF4y2Ba δ.GydF4y2Ba XGydF4y2Ba 2GydF4y2Ba 那GydF4y2Ba XGydF4y2Ba 3.GydF4y2Ba 的)GydF4y2Ba -GydF4y2Ba FGydF4y2Ba 1GydF4y2Ba δ.GydF4y2Ba XGydF4y2Ba 2GydF4y2Ba FGydF4y2Ba 1GydF4y2Ba ((GydF4y2Ba XGydF4y2Ba 1GydF4y2Ba 那GydF4y2Ba XGydF4y2Ba 2GydF4y2Ba 那GydF4y2Ba XGydF4y2Ba 3.GydF4y2Ba +GydF4y2Ba δ.GydF4y2Ba XGydF4y2Ba 3.GydF4y2Ba 的)GydF4y2Ba -GydF4y2Ba FGydF4y2Ba 1GydF4y2Ba δ.GydF4y2Ba XGydF4y2Ba 3.GydF4y2Ba FGydF4y2Ba 2GydF4y2Ba ((GydF4y2Ba XGydF4y2Ba 1GydF4y2Ba +GydF4y2Ba δ.GydF4y2Ba XGydF4y2Ba 1GydF4y2Ba 那GydF4y2Ba XGydF4y2Ba 2GydF4y2Ba 那GydF4y2Ba XGydF4y2Ba 3.GydF4y2Ba 的)GydF4y2Ba -GydF4y2Ba FGydF4y2Ba 2GydF4y2Ba δ.GydF4y2Ba XGydF4y2Ba 1GydF4y2Ba FGydF4y2Ba 2GydF4y2Ba ((GydF4y2Ba XGydF4y2Ba 1GydF4y2Ba 那GydF4y2Ba XGydF4y2Ba 2GydF4y2Ba +GydF4y2Ba δ.GydF4y2Ba XGydF4y2Ba 2GydF4y2Ba 那GydF4y2Ba XGydF4y2Ba 3.GydF4y2Ba 的)GydF4y2Ba -GydF4y2Ba FGydF4y2Ba 2GydF4y2Ba δ.GydF4y2Ba XGydF4y2Ba 2GydF4y2Ba FGydF4y2Ba 2GydF4y2Ba ((GydF4y2Ba XGydF4y2Ba 1GydF4y2Ba 那GydF4y2Ba XGydF4y2Ba 2GydF4y2Ba 那GydF4y2Ba XGydF4y2Ba 3.GydF4y2Ba +GydF4y2Ba δ.GydF4y2Ba XGydF4y2Ba 3.GydF4y2Ba 的)GydF4y2Ba -GydF4y2Ba FGydF4y2Ba 2GydF4y2Ba δ.GydF4y2Ba XGydF4y2Ba 3.GydF4y2Ba FGydF4y2Ba 3.GydF4y2Ba ((GydF4y2Ba XGydF4y2Ba 1GydF4y2Ba +GydF4y2Ba δ.GydF4y2Ba XGydF4y2Ba 1GydF4y2Ba 那GydF4y2Ba XGydF4y2Ba 2GydF4y2Ba 那GydF4y2Ba XGydF4y2Ba 3.GydF4y2Ba 的)GydF4y2Ba -GydF4y2Ba FGydF4y2Ba 3.GydF4y2Ba δ.GydF4y2Ba XGydF4y2Ba 1GydF4y2Ba FGydF4y2Ba 3.GydF4y2Ba ((GydF4y2Ba XGydF4y2Ba 1GydF4y2Ba 那GydF4y2Ba XGydF4y2Ba 2GydF4y2Ba +GydF4y2Ba δ.GydF4y2Ba XGydF4y2Ba 2GydF4y2Ba 那GydF4y2Ba XGydF4y2Ba 3.GydF4y2Ba 的)GydF4y2Ba -GydF4y2Ba FGydF4y2Ba 3.GydF4y2Ba δ.GydF4y2Ba XGydF4y2Ba 2GydF4y2Ba FGydF4y2Ba 3.GydF4y2Ba ((GydF4y2Ba XGydF4y2Ba 1GydF4y2Ba 那GydF4y2Ba XGydF4y2Ba 2GydF4y2Ba 那GydF4y2Ba XGydF4y2Ba 3.GydF4y2Ba +GydF4y2Ba δ.GydF4y2Ba XGydF4y2Ba 3.GydF4y2Ba 的)GydF4y2Ba -GydF4y2Ba FGydF4y2Ba 3.GydF4y2Ba δ.GydF4y2Ba XGydF4y2Ba 3.GydF4y2Ba 的)GydF4y2Ba

因此,有必要三个状态中的每个状态中的每一个,并评估衍生函数三次。对于具有GydF4y2BanGydF4y2Ba指出,这种方法伴随着状态GydF4y2BanGydF4y2Ba时代。GydF4y2Ba

通过应用稀疏模式和扰动状态GydF4y2BaXGydF4y2Ba1GydF4y2Ba和GydF4y2BaXGydF4y2Ba2GydF4y2Ba一起,此矩阵将减少到:GydF4y2Ba

jGydF4y2Ba XGydF4y2Ba =GydF4y2Ba ((GydF4y2Ba FGydF4y2Ba 1GydF4y2Ba ((GydF4y2Ba XGydF4y2Ba 1GydF4y2Ba +GydF4y2Ba δ.GydF4y2Ba XGydF4y2Ba 1GydF4y2Ba 那GydF4y2Ba XGydF4y2Ba 2GydF4y2Ba +GydF4y2Ba δ.GydF4y2Ba XGydF4y2Ba 2GydF4y2Ba 那GydF4y2Ba XGydF4y2Ba 3.GydF4y2Ba 的)GydF4y2Ba -GydF4y2Ba FGydF4y2Ba 1GydF4y2Ba δ.GydF4y2Ba XGydF4y2Ba 1GydF4y2Ba 0GydF4y2Ba FGydF4y2Ba 1GydF4y2Ba ((GydF4y2Ba XGydF4y2Ba 1GydF4y2Ba 那GydF4y2Ba XGydF4y2Ba 2GydF4y2Ba 那GydF4y2Ba XGydF4y2Ba 3.GydF4y2Ba +GydF4y2Ba δ.GydF4y2Ba XGydF4y2Ba 3.GydF4y2Ba 的)GydF4y2Ba -GydF4y2Ba FGydF4y2Ba 1GydF4y2Ba δ.GydF4y2Ba XGydF4y2Ba 3.GydF4y2Ba 0GydF4y2Ba FGydF4y2Ba 2GydF4y2Ba ((GydF4y2Ba XGydF4y2Ba 1GydF4y2Ba +GydF4y2Ba δ.GydF4y2Ba XGydF4y2Ba 1GydF4y2Ba 那GydF4y2Ba XGydF4y2Ba 2GydF4y2Ba +GydF4y2Ba δ.GydF4y2Ba XGydF4y2Ba 2GydF4y2Ba 那GydF4y2Ba XGydF4y2Ba 3.GydF4y2Ba 的)GydF4y2Ba -GydF4y2Ba FGydF4y2Ba 2GydF4y2Ba δ.GydF4y2Ba XGydF4y2Ba 2GydF4y2Ba 0GydF4y2Ba 0GydF4y2Ba FGydF4y2Ba 3.GydF4y2Ba ((GydF4y2Ba XGydF4y2Ba 1GydF4y2Ba +GydF4y2Ba δ.GydF4y2Ba XGydF4y2Ba 1GydF4y2Ba 那GydF4y2Ba XGydF4y2Ba 2GydF4y2Ba +GydF4y2Ba δ.GydF4y2Ba XGydF4y2Ba 2GydF4y2Ba 那GydF4y2Ba XGydF4y2Ba 3.GydF4y2Ba 的)GydF4y2Ba -GydF4y2Ba FGydF4y2Ba 3.GydF4y2Ba δ.GydF4y2Ba XGydF4y2Ba 2GydF4y2Ba 0GydF4y2Ba 的)GydF4y2Ba

现在,求解器可以一口气解决第1和2列。虽然稀疏的扰动方法可以节省大量的计算,但它也为编译增加了开销。如果系统没有大量连续状态,它甚至可能会减慢模拟的速度。存在一个临界点,您可以通过应用此方法获得提高性能。通常,具有大量连续状态的系统通常是稀疏的,并且受益于稀疏方法。GydF4y2Ba

稀疏的扰动方法(例如稀疏分析方法)使用UMFPACK执行线性代数操作。同样,稀疏的扰动方法也支持RSIM和快速加速器模式。金宝appGydF4y2Ba

完整而稀疏的分析方法GydF4y2Ba

完整而稀疏的分析方法试图通过使用分析方程而不是扰动方程来计算雅各布来提高性能。稀疏分析方法还使用稀疏信息来加速求解普通微分方程所需的线性代数操作。GydF4y2Ba

有关如何访问和解释MATLAB中的稀疏模式的详细信息GydF4y2Ba®GydF4y2Ba, 看GydF4y2Ba探索模型的求解器Jacobian结构GydF4y2Ba。GydF4y2Ba

代码生成支持金宝appGydF4y2Ba

虽然稀疏的扰动方法支持RSIM,但稀疏的分析方法却不得。金宝app因此,无论您选择哪种稀疏方法,任何生成的代码都使用稀疏的扰动方法。此限制也适用于快速加速器模式。GydF4y2Ba