ssSetSkipContStatesConsistencyCheck
问金宝app引擎跳过连续状态一致性检验
语法
空白ssSetSkipContStatesConsistencyCheck (SimStruct * S, boolean_T v)
参数
-
年代
-
SimStruct代表一个功能块。
-
v
-
布尔值(
boolean_T
)告诉仿真软件金宝app®跳过连续状态一致性检验。
描述
使用这个宏要求仿真软件跳过连续状态一致性检查金宝app正确写功能。正确地编写功能使用ssSetSolverNeedsReset
宏观主要期间当它改变自己的连续状态的步骤。
默认情况下,仿真软件监控金宝appS-functions连续状态变化。它发出警告,当你不使用变化ssSetSolverNeedsReset
宏。如果你使用ssSetSolverNeedsReset
宏观正确,您不需要仿真软件监控S-functions连续状态更改,因此可以加速功能金宝app,提高模拟性能。告诉仿真软件停止金宝app监控连续状态改变,使用ssSetSkipContStatesConsistencyCheck
宏。使用这个宏,如果s函数:
永远不会改变。
改变了状态,但是使用
ssSetSolverNeedsReset
宏重置解算器。
跳过检查,使用ssSetSkipContStatesConsistencyCheck(年代,1)
在mdlInitializeSizes
方法。
请注意
由于性能原因,连续状态一致性检验执行只有在正常和加速器模式模拟。特别是,仿真软件不执行连续状态金宝app一致性检查:
S-functions内模型块的加速器模式
任何功能如果模型在快速加速器运行模式
语言
C, c++
例子
下面的示例使用这个宏问仿真软件引擎跳过一致性检验,因为功能状态改变正确的实现金宝appmdlOutputs
方法。
静态孔隙mdlInitializeSizes (SimStruct * S){:: <剪>:ssSetSkipContStatesConsistencyCheck (SimStruct年代,1);::<剪>:静态孔隙mdlOutputs (SimStruct *年代,int_T tid)} / * mdlInitializeSizes结束* /静态孔隙mdlOutputs (SimStruct *年代,int_T tid){/ *改变州主要时间步只有* / (ssIsMajorTimeStep (S) & & YourConditionsForStateChange){双* x = ssGetContStates(年代);/ *重置状态* / (i = 0;我< nContStates;我+ +){x[我]= 0.0;}/ *要求发动机仿真软件金宝app重置解算器。* / ssSetSolverNeedsReset(年代);}}
版本历史
介绍了R2016a