解算器配置
物理网络环境和求解器配置
- 库:
Simscape /公用事业
描述
由连接的Simscape™框图表示的每个物理网络都需要求解器设置信息进行模拟。的解算器配置块指定您的模型在开始模拟之前需要的求解器参数。
每个拓扑上不同的Simscape框图恰好需要一个解算器配置块要连接到它。
港口
保护
Port_1
——连接端口
无类型保护港口
保护连接端口。该端口是无类型的。通过在任何类型的保存端口之间的连接线上创建分支点,可以将其连接到物理网络电路的任何位置。该块为整个物理网络提供求解器设置,而不管连接类型是什么。
参数
方程公式
-指定求解器如何处理正弦变量
时间
(默认)|频率和时间
指定求解器如何处理正弦变量。
使用频率和时间
值,以加速具有单一标称频率的系统的模拟。有关更多信息,请参见频率和时间模拟模式.
指数还原法
—求解非线性高指数dae时,选择指数约简方法
导数替代
(默认)|投影
|没有一个
选择最适合于网络连接的非线性指标约简方法解算器配置布洛克:
导数替代
-在这种方法中,DAE的各个部分被解析地区分开来,并附加到原始系统中。对于每一个附加的方程,选择一个导数用一个叫做a的新代数变量代替假的导数.有关更多信息,请参见https://epubs.siam.org/doi/abs/10.1137/0914043?journalCode=sjoce3.此选项对应于以前版本中使用的非线性索引缩减方法。建议您从这种方法开始。投影
—如果导数替代
由于动态状态选择的问题,方法失败。没有一个
-如果您的模型不包含非线性的高索引dae,使用此选项可以完全绕过非线性索引缩减并消除分析开销。
公差一致性
-基于状态的公差模式用于初始条件和瞬时初始化计算
AbsTol和reltoll模型
(默认)|本地宽容设置
该参数影响用于计算初始条件和瞬态初始化的非线性求解器。选择基于状态的公差源:
AbsTol和reltoll模型
-使用模型公差设置,指定为绝对的宽容而且相对宽容参数对解算器“配置参数”对话框中的“配置参数”。本地宽容设置
—将模型公差设置替换为本地值。当您选择此选项时,绝对的宽容而且相对宽容参数出现在解算器配置块对话框。
无论您使用的是模型公差还是本地公差设置宽容的因素参数为这些值提供一个缩放因子。结果值决定了在模拟开始和每个离散事件(例如,阀门打开、硬停止等导致的不连续)之后满足代数约束的精确程度。
绝对的宽容
-局部绝对公差
0.001
(默认)|阳性标量
方法指定要用于计算初始条件和瞬时初始化的本地值,而不是使用绝对的宽容的参数解算器“配置参数”对话框中的“配置参数”。
依赖关系
若要启用此参数,请设置公差一致性来本地宽容设置
.
相对宽容
-局部相对公差
0.001
(默认)|阳性标量
方法指定要用于计算初始条件和瞬时初始化的本地值,而不是使用相对宽容的参数解算器“配置参数”对话框中的“配置参数”。
依赖关系
若要启用此参数,请设置公差一致性来本地宽容设置
.
宽容的因素
-比例因子用于绝对和相对公差
0.001
(默认)|标量范围(0,1)
此参数为基于状态的绝对公差和相对公差提供比例因子,与您使用的是模型公差还是本地公差设置无关。减小参数值(即拧紧公差),以获得更可靠的时间模拟。如果求解初始条件不能收敛,则增加参数值(即放宽公差),或减少计算时间。
使用本地解算器
-对模型中的物理网络使用基于样本的本地求解器
关闭(默认)|打开
方法指定的采样时间,使您可以使用基于采样的本地求解器样品时间参数。在基于样本的仿真中,所有的物理网络状态(否则是连续的)都在Simulink中表示出来®作为离散状态。求解器每个时间步更新一次状态。这个选项对于生成的代码或硬件在环(HIL)模拟特别有用。
请注意
如果使用本地求解器,则同时使用Simulink或仿真软件控制设计™不建议使用线性化工具。
解算器类型
-本地求解器用于更新状态的求解器类型
向后欧拉
(默认)|梯形法则
|分区
选择用于更新状态的求解器类型:
向后欧拉
-倾向于抑制振荡,但更稳定,特别是如果你增加时间步长。梯形法则
-捕捉振荡比向后欧拉
,但不太稳定。分区
-通过将与Simscape网络相对应的整个方程系统划分为一个更小的方程系统级联,可以提高实时仿真速度。不是所有的网络都可以分区。然而,当一个系统可以分区时,该求解器提供了实时仿真速度的显著提高。有关更多信息,请参见理解分区求解器是如何工作的而且使用分区求解器提高模拟速度.
无论你选择哪一个局部求解器,向后欧拉方法总是被应用:
在模拟开始的时候。
在瞬时变化之后,当相应的块经历内部离散变化时。这些变化包括离合器的锁定和解锁,阀门执行机构的开启和关闭,以及开关PS异步采样和保持块。
依赖关系
若要启用此参数,请选择使用本地解算器复选框。
样品时间
-本地求解器的采样时间
0.001
(默认)|阳性标量
指定本地求解器采样时间,以秒为单位。求解器每个时间步更新一次状态。
依赖关系
若要启用此参数,请选择使用本地解算器复选框。
分区方法
-选择在使用分区本地求解器时优先考虑速度还是健壮性
健壮的模拟
(默认)|快速模拟
当使用分区本地求解器时,选择是优先考虑速度还是健壮性:
快速模拟
-通过使用正向欧拉格式求解大多数微分方程,提高仿真性能。健壮的模拟
-使用后向欧拉格式求解更多方程,增加仿真鲁棒性。
依赖关系
若要启用此参数,请选择使用本地解算器复选框并设置解算器类型来分区
.
分区存储方法
—使用分区本地求解器时,选择分区数据的存储方法
根据需要
(默认)|详尽的
当你使用分区求解器时,它连续求解小的开关线性方程。您可以选择存储矩阵的逆,以提高模拟性能。然后,如果在后续的时间步骤中检测到相同的配置,分区求解器使用存储的矩阵逆,而不是重新计算它们。选择分区数据的存储方法:
根据需要
-在模拟过程中计算矩阵逆,根据需要。这种方法不需要那么多内存,但可能会导致性能峰值。详尽的
-模拟前计算并存储矩阵逆。该方法提高了仿真性能,但需要更多的内存。使用分区内存预算[kB]参数指定用于存储数据的最大允许内存预算。
依赖关系
若要启用此参数,请选择使用本地解算器复选框并设置解算器类型来分区
.
分区内存预算[kB]
—穷举法存储分区数据的内存预算
1024
(默认)|阳性标量
指定允许存储缓存分区数据的最大内存预算(以kB为单位)。如果超出这个预算,模拟就会出错。您可以根据您的可用内存资源和总内存估计统计信息查看器中的数据。有关更多信息,请参见使用分区求解器时可用的模型统计信息.
依赖关系
若要启用此参数,请选择使用本地解算器复选框。集解算器类型来分区
而且分区存储方法来详尽的
.
使用固定成本的运行时一致性迭代
-允许您以固定的计算成本执行瞬时初始化
关闭(默认)|打开
如果选中此复选框,则可以为瞬时初始化指定非线性迭代和模式迭代的次数。如果系统在执行指定次数的迭代后没有收敛,则忽略失败并进入下一步。
如果清除该复选框,系统将使用一种更健壮、更耗时的算法,执行尽可能多的迭代以达到收敛,如果在暂态初始化时未能达到收敛,则会出错。
选择和清算使用本地解算器自动选择并清除使用固定成本的运行时一致性迭代复选框,因为这些是实时和HIL模拟的推荐设置。但是,您可以分别选择和清除这两个复选框。有关更多信息,请参见固定成本模拟,.
非线性迭代
-瞬态初始化的牛顿迭代次数
3.
(默认)|正整数
指定瞬态初始化时要执行的牛顿迭代次数。
依赖关系
若要启用此参数,请选择使用固定成本的运行时一致性迭代复选框。
迭代模式
-瞬态初始化的模式迭代次数
2
(默认)|正整数
指定瞬态初始化时要执行的模式迭代次数。
依赖关系
若要启用此参数,请选择使用固定成本的运行时一致性迭代复选框并清除使用本地解算器复选框。在使用本地求解器时,每一步只执行一次主模式更新,因此,如果使用本地解算器复选框。
计算的冲动
-让您管理瞬时初始化期间脉冲检测的计算成本
关闭(默认)|打开
让您管理瞬时初始化期间脉冲检测的计算成本,包括全局求解器和局部求解器。
基于事件的状态重新初始化和脉冲处理方法允许您建模物理现象,如碰撞和弹跳球,并为此类模型提供了显著的仿真速度提高。然而,脉冲检测会增加瞬态初始化的成本。这个代价与达到收敛所执行的脉冲迭代的次数成正比。
如果您选择计算的冲动复选框,则可以指定在瞬时初始化期间要执行的脉冲迭代次数。如果系统在达到这些数字时没有收敛,则忽略失败并进入下一步。
如果您取消该复选框,系统将根据需要计算脉冲的次数来达到收敛。
依赖关系
若要启用此复选框,请选择使用固定成本的运行时一致性迭代复选框。
冲动的迭代
-瞬态初始化的脉冲迭代次数
2
(默认)|正整数
指定在瞬态初始化时要执行的脉冲迭代次数。如果系统在达到这些数字时没有收敛,则忽略失败并进入下一步。
依赖关系
若要启用此参数,请选择计算的冲动复选框。
解决不定方程
-应用运行时正则化来解决静态不确定系统
On(默认)| off
某些模型配置,如并联离合器锁定,或并联电流传感器,允许无限数量的解决方案,这使他们的静态不确定。正则化是将具有不确定Through变量的模型转换为可解系统的一种转换。默认情况下,如果求解器遇到一个静态不确定系统,它将应用运行时正则化来求解它。
清除解决不定方程复选框可通过使用函数求值的最大线程数参数。然而,具有静不定方程的模型可能在运行时失败。
依赖关系
若要启用此复选框,请选择使用固定成本的运行时一致性迭代复选框。
函数求值的最大线程数
-使用多线程加速牛顿迭代后欧拉求解
1
(默认)|正整数
在使用反向欧拉求解器进行实时模拟时,指定函数计算的最大线程数。实际使用的线程数是不超过参数值的最接近的2次幂。例如,如果您指定5
作为参数值,求解器使用4个线程。默认的,1
,对应单线程函数求值。
若要使用多线程函数求值,必须清除解决不定方程复选框。其他不支持的模拟模式包括频率和时间模拟、延迟、可伸缩编译、加速模式和快速加速模式。您可以使用仿真软件实时™,但不支持其他类型的代码生成。
依赖关系
若要启用此参数,请选择使用本地解算器复选框,设置当地的解算器参数向后欧拉
,并选择使用固定成本的运行时一致性迭代复选框。
线性代数
-指定求解器如何处理矩阵
汽车
(默认)|稀疏的
|完整的
指定求解器如何处理矩阵:
汽车
-解算器自动选择适当的选项,稀疏或满,处理矩阵。稀疏的
-求解器将矩阵视为稀疏的。完整的
-求解器将矩阵视为满矩阵。
线程数(为2^n指定n)
-使用多线程线性代数在多核机器上加速桌面模拟
0
(默认)|正整数
通过为2提供整数指数来指定多线程线性代数的线程数。线程数等于2的参数值的幂。默认的,0
,对应单线程线性代数。
对于小型模型,使用大于0的数字的多线程算法可能比单线程算法要慢。
依赖关系
若要启用此参数,请选择使用本地解算器复选框,并设置线性代数参数稀疏的
.对于全局求解器,Simulink求解方程时不使用Simscape线性代数算法。
延迟内存预算[kB]
-处理延迟的内存预算
1024
(默认)|阳性标量
方法模拟包含来自延迟库的块或自定义块的模型时,指定允许处理延迟的最大内存预算(以kB为单位)延迟
Simscape语言构造。此参数的目的是防止过度的内存交换。如果超出这个预算,模拟就会出错。您可以根据可用的内存资源调整此值。
必要时在1-D/3-D连接处应用滤波
-自动提供额外的导数所需的Simscape多体™块
On(默认)| off
此选项仅适用于连接块的模型Simscape多体库到Simscape块,或其他外接产品的块。2022世界杯八强谁会赢?使用Statistics Viewer来确定您的模型是否具有1-D/3-D连接。有关更多信息,请参见一维/三维接口统计信息.
当一个Simscape多体块直接连接到Simscape网络,则可能需要一个额外的导数来求解网络。选择此复选框时,求解器自动对输入的信号应用输入滤波Simulink-PS转换器块来获得这个额外的导数。的滤波时间常数参数为延迟提供时间常数。
请注意
默认情况下选中此复选框。如果您清除它,并且1-D/3-D连接需要额外的导数,求解器就会发出错误消息。
滤波时间常数
-延迟的时间常数,单位为秒
0.001
(默认)|阳性标量
该参数指定过滤时间常数,单位为秒,用于1-D/3-D连接的自动输入过滤。该参数值全局应用于属于包含该参数的网络的所有连接解算器配置块。
依赖关系
若要启用此参数,请选择必要时在1-D/3-D连接处应用滤波复选框。
扩展功能
C / c++代码生成
使用Simulink®Coder™生成C和c++代码。
版本历史
介绍了R2007aR2022b:指定一致性公差的新方法
该块使用基于状态的绝对和相对一致性公差,乘以一个缩放因子,来计算初始条件和瞬时初始化。的公差一致性参数允许您在模型公差或本地公差设置之间进行选择。新宽容的因素参数为这些值提供一个缩放因子。这种基于状态的方法提供了更好的鲁棒性和效率,特别是当与按标称值缩放模型结合使用时。
在以前的版本中,公差一致性参数具有数值,块使用基于方程残差的非线性求解器对模型进行初始化。
如果您打开一个现有的模型,其中公差一致性参数有一个数值,模型继续使用它在以前的版本中使用的相同的基于残差的计算方法。模拟结果不会改变。
要升级现有模型以使用基于状态的方法,请使用检查Simscape使用基于状态的一致性公差签入升级顾问。
R2022b:用于固定成本模拟的多线程函数评估
如果您的模型使用向后欧拉局部求解器,计算牛顿迭代是耗时的,并且可能会在固定成本的模拟中出现问题。您可以使用多线程函数求值来加速多核机器上的模拟函数求值的最大线程数参数并清除新解决不定方程复选框。
在以前的版本中,该求解器使用单线程函数求值并始终应用运行时正则化。的默认值函数求值的最大线程数参数和解决不定方程复选框等价于以前版本中使用的算法。
MATLAB命令
你点击了一个对应于这个MATLAB命令的链接:
在MATLAB命令窗口中输入命令来运行该命令。Web浏览器不支持MATLAB命令。
您也可以从以下列表中选择网站:
如何获得最佳的网站性能
选择中国网站(中文或英文)以获得最佳的网站表现。其他MathWorks国家网站没有针对从您的位置访问进行优化。