Solver Configuration
物理网络的求解器和环境配置。
类型: SolverConfiguration
图书馆中的路径:
|
说明
在 Engee 模型中,每个物理网络都需要有关仿真求解器设置的信息。 Solver Configuration 块指定了应用于物理网络的求解器设置。
每个拓扑结构不同的网络只需要一个块 Solver Configuration 。
端口
非定向
#
端口_1
—
连接端口
非类型端口
Details
该端口没有类型。您可以通过在任意类型端口之间的链路上创建分支点,将其连接到物理网络的任意位置。无论连接类型如何,该模块都能为整个物理网络提供解算器配置。
程序使用名称 |
|
参数
当启用*实验设置*参数时,程序块的行为将无法保证,文档中也没有说明。 |
当画布上只有离散定向图块时(没有来自图库Physical Modeling 的图块),全局求解器会自动切换到离散模式(参数 同步类型 设为 "离散"),即使在设置中指定了 "可变步长"。 如果图块 Solver Configuration 中的*求解器类型*参数设置为 "继承全局",且模型包含来自Physical Modeling 库的图块(需要连续求解器),则会出现运行错误:离散求解器不支持此类图块的计算。 为避免出错,如果模型同时包含离散有向块和来自库Physical Modeling 的块,不建议使用*求解器类型*参数的`继承全局`值。 |
主
#
Synchronization type —
物理网络与体积模型的同步类型
Continuous
| Discrete
Details
物理网络与体积模型的同步类型。定义为
-
连续
-
离散
更多信息,请参见物理网络的本地求解器 。
值 |
|
默认值 |
|
程序使用名称 |
|
可计算 |
无 |
#
Solver type —
用于求解物理网络方程的求解器类型
Inherit global
| Fixed-step
| Variable-step
Details
指定用于求解物理网络方程的求解器类型。
依赖关系
要使用此参数,请将*同步类型*参数设置为 "连续"。
值 |
|
默认值 |
|
程序使用名称 |
|
可计算 |
无 |
#
Subsystem solver —
解算器名称,用于连续同步
FBDF
| ImplicitEuler
| QNDF
| QBDF
| RadauIIA5
| Rodas3
| Rodas4
| Rodas5
| Rodas5P
| Trapezoid
Details
用于物理网络连续同步的求解器名称。定义为
-
FBDF`。
-
隐式求解器`.
-
QNDF`。
-
QBDF
. -
`RadauIIA5
-
Rodas3
. -
`Rodas4
-
`Rodas5
-
`Rodas5P
-
`梯形
依赖关系
要使用此参数,请将*同步类型*参数设置为 "连续"。
值 |
|
默认值 |
|
程序使用名称 |
|
可计算 |
无 |
#
Subsystem solver —
用于离散同步的求解器名称
ImplicitEuler (Fast)
| ImplicitEuler (Robust)
| Trapezoid (Fast)
| Trapezoid (Robust)
Details
物理网络离散同步时使用的求解器名称。定义为
-
快速)"。
-
简易求解器(稳健)"。
-
梯形(快速)
-
梯形 (稳健)`。
依赖关系
要使用该参数,请将*同步类型*参数设置为 "离散"。
值 |
|
默认值 |
|
程序使用名称 |
|
可计算 |
无 |
#
Fixed step size —
积分步长
String
Details
连续同步模式下物理网络本地求解器的积分步长。
依赖关系
要使用此参数,请将*同步类型*设为 "连续",*求解器类型*设为 "固定步长"。
默认值 |
|
程序使用名称 |
|
可计算 |
是 |
#
Initial step size —
初始积分步长
String
Details
连续同步模式下物理网络本地求解器的初始积分步长。
依赖关系
要使用此参数,请将*同步类型*设为 "连续",*求解器类型*设为 "变量步长"。
默认值 |
|
程序使用名称 |
|
可计算 |
是 |
#
Minimum step size —
最小积分步长
String
Details
连续同步模式下物理网络本地求解器的最小积分步长。
依赖关系
要使用此参数,请将*同步类型*设为 "连续",*求解器类型*设为 "可变步长"。
默认值 |
|
程序使用名称 |
|
可计算 |
是 |
#
Maximum step size —
最大积分步长
String
Details
连续同步模式下物理网络本地求解器的最大积分步长。
依赖关系
要使用此参数,请将*同步类型*设为 "连续",*求解器类型*设为 "可变步长"。
默认值 |
|
程序使用名称 |
|
可计算 |
是 |
#
Number of consecutive min steps —
连续最小积分步数限制
String
Details
小于或等于最小允许步长的连续积分步数,导致计算强制终止并显示错误信息。
依赖关系
要使用此参数,请将*同步类型*设为 "连续",*求解器类型*设为 "变步长"。
默认值 |
|
程序使用名称 |
|
可计算 |
是 |
#
Absolute tolerance —
绝对精确
String
Details
与相对精度一起影响数值解与精确解的接近程度。如果物理网络中某个变量的模数小于该设定值,则该变量的局部误差估计值视为零。
依赖关系
要使用此参数,请将*同步类型*设为 "连续",*求解器类型*设为 "变量步长"。
默认值 |
|
程序使用名称 |
|
可计算 |
是 |
#
Relative tolerance —
相对精度
String
Details
相对精度与绝对精度共同影响数值解与精确解的接近程度。相对精度定义了物理网络中变量值本身的允许局部误差。
依赖关系
要使用此参数,请将*同步类型*设为 "连续",*求解器类型*设为 "变量步长"。
默认值 |
|
程序使用名称 |
|
可计算 |
是 |
#
Nonlinear iterations —
非线性求解器的最大迭代次数
String
Details
因初始问题离散化而产生的非线性代数方程求解器的迭代次数。可以限制离散同步模式下每个积分步的计算成本。通常用于实时计算。
依赖关系
要使用此参数,请将*同步类型*设为 "离散",*子系统求解器*设为 "ImplicitEuler(快速)"或 "Trapezoid(快速)"。
默认值 |
|
程序使用名称 |
|
可计算 |
是 |
#
Start simulation from steady state —
以瞬态或稳态模式运行模拟
Logical
Details
默认情况下,如果未选中该复选框,模拟将以某种模式启动,一般为瞬态模式,该模式由初始化任务决定。
选中该复选框后,Engee 会尝试找到物理网络在输入信号保持恒定足够长的时间(可单独配置)后会达到的稳态。然后从找到的稳定状态开始仿真。
默认值 |
|
程序使用名称 |
|
可计算 |
无 |
#
Maximum settling time —
限制稳态搜索的建模时间
String
Details
限制稳态搜索的建模时间。
依赖关系
要使用该参数,请选择*从稳态开始模拟*复选框。
默认值 |
|
程序使用名称 |
|
可计算 |
是 |
#
Use automatic differentiation (ForwardDiff.jl) —
在计算雅可比矩阵时使用自动微分法或有限差分法
Logical
Details
选择此复选框可在计算雅可比矩阵时使用自动微分。否则将使用有限差分。
默认值 |
|
程序使用名称 |
|
可计算 |
无 |
#
Use analytical Jacobian —
在计算中使用分析得到的雅可比矩阵
Logical
Details
选择该复选框可在计算中使用分析得到的雅可比矩阵。否则将采用数值计算。
默认值 |
|
程序使用名称 |
|
可计算 |
无 |
#
Sparse Jacobian —
以稀疏形式存储雅可比矩阵
Logical
Details
选择该复选框可在处理雅可比矩阵时使用稀疏代数。否则计算时将不考虑其稀疏性。
默认值 |
|
程序使用名称 |
|
可计算 |
无 |
#
Fixed Sparse Jacobian —
描述缺失
Logical
Details
描述缺失
默认值 |
|
程序使用名称 |
|
可计算 |
无 |
#
Event detection —
物理网络事件检测模式
Enable
| Expose discontinuities to solver
| Disable
Details
物理网络的事件检测模式。定义为
-
启用"(推荐)--通过特殊算法定位事件的模式。
-
Expose discontinuities to solver`(向求解器显示不连续性)--求解右边不连续的问题的模式。
-
禁用"(Disable)--在该模式下,事件不会被本地化,但不连续性仍会被连续求解器屏蔽。
依赖关系
要使用此参数,请将*同步类型*参数设置为 "连续"。
值 |
|
默认值 |
|
程序使用名称 |
|
可计算 |
无 |
#
Run-time assertions —
在模拟过程中检查物理不变性
Logical
Details
选择此复选框可在仿真过程中启用物理不变式检查。
默认值 |
|
程序使用名称 |
|
可计算 |
无 |
#
Sample time —
物理网络的采样间隔
SampleTime (real number / vector of two real numbers)
Details
定义对物理网络的输入和输出进行采样的时间间隔。
依赖关系
要使用此参数,请将*同步类型*参数设置为 "离散"。
默认值 |
|
程序使用名称 |
|
可计算 |
是 |
#
Synchronization Interval —
物理网络本地求解器与体积模型求解器的同步时间间隔
SampleTime (real number / vector of two real numbers)
Details
物理网络局部求解器与体积模型求解器的同步时间间隔,以正标量形式指定。 增大时间间隔会加快计算速度,但会降低计算质量。
有关求解器设置的更多信息,请参见物理网络的本地求解器 。
依赖关系
要使用此参数,请将*同步类型*参数设置为 "连续"。
默认值 |
|
程序使用名称 |
|
可计算 |
是 |
初始化
#
Enable experimental DAE initialization algorithm —
使用实验算法初始化微分代数方程系统
Logical
Details
选择此复选框(推荐)可使用实验算法初始化微分代数方程组。 禁用该算法会导致变量优先级被忽略。
默认值 |
|
程序使用名称 |
|
可计算 |
无 |