SimStruct函数
关于SimStruct函数
的仿真软金宝app件®软件提供了一组函数,用于访问s函数模拟数据结构的字段(SimStruct
).s函数回调方法使用这些函数来存储和检索关于s函数的信息。
语言支持金宝app
一些SimStruct
函数仅在Simulink软件支持的部分语言中可用。金宝app金宝app每个的参考页SimStruct
宏或函数列出了可用的语言,并给出了这些语言的语法。
请注意
大多数SimStruct
C中可用的函数被实现为C宏。个别参考页指示任何SimStruct
当您在调试模式下编译s函数时,宏将成为一个函数(墨西哥人- g
).
的SimStruct
该文件simstruc.h
是一个C语言头文件,该文件定义Simulink数据结构和金宝appSimStruct
访问宏。它封装了与模型或s函数相关的所有数据,包括块参数和输出。
有一个SimStruct
为Simulink模型分配数据结构。金宝app模型中的每个s函数都有自己的s函数SimStruct
与之相关。这些组织SimStruct
S很像目录树。的SimStruct
与模型相关联的是根SimStruct
.的SimStruct
与s函数相关的s是孩子SimStruct
年代。
SimStruct宏和函数按用法列出
公共汽车
宏 | 描述 |
---|---|
ssGetBusElementComplexSignal |
获取总线元素的信号复杂度。 |
ssGetBusElementDataType |
获取总线元素的数据类型标识符。 |
ssGetBusElementDimensions |
获取总线元素的尺寸。 |
ssGetBusElementName |
获取总线元素的名称。 |
ssGetBusElementNumDimensions |
获取总线元素的维度数。 |
ssGetBusElementOffset |
获取从总线数据类型开始到总线元素的偏移量。 |
ssGetNumBusElements |
获取总线信号中的元素数。 |
ssGetSFcnParamName |
获取s函数块的块参数值。 |
ssIsDataTypeABus |
确定数据类型标识符是否代表总线信号。 |
ssRegisterTypeFromParameter |
注册Simulink数据类型表中参数指定的数据类型。金宝app |
ssSetBusInputAsStruct |
指定是否将s函数的输入总线信号从虚信号转换为非虚信号。 |
ssSetBusOutputAsStruct |
指定s函数的输出总线信号必须是虚信号还是非虚信号。 |
ssSetBusOutputObjectName |
指定定义输出总线信号的结构和类型的总线对象的名称。 |
数据类型
宏 | 描述 |
---|---|
ssGetDataTypeId |
获取数据类型的ID。 |
ssGetDataTypeIdAliasedThruTo |
获取与数据类型别名关联的内置数据类型的ID。 |
ssGetDataTypeName |
获取数据类型的名称。 |
ssGetDataTypeSize |
获取数据类型的大小。 |
ssGetDataTypeZero |
获取数据类型的零表示形式。 |
ssGetInputPortDataType |
获取输入端口的数据类型。 |
ssGetNumDataTypes |
获取s函数或模型定义的数据类型的数量。 |
ssGetOutputPortDataType |
获取输出端口的数据类型。 |
ssGetOutputPortSignal |
获取任何类型的输出信号双 . |
ssGetSFcnParamDataType |
获取参数的数据类型。 |
ssRegisterDataType |
注册一个数据类型。 |
ssSetDataTypeSize |
指定数据类型的大小。 |
ssSetDataTypeZero |
指定数据类型的零表示形式。 |
ssSetInputPortDataType |
指定输入端口接受的信号的数据类型。 |
ssSetOutputPortDataType |
指定输出端口的数据类型。 |
对话框参数
宏 | 描述 |
---|---|
ssGetDTypeIdFromMxArray |
获取对话框参数的金宝appSimulink数据类型。 |
ssGetNumSFcnParams |
获取s函数期望的参数数量。 |
ssGetSFcnParam |
获取用户在S-Function块对话框中输入的参数。 |
ssGetSFcnParamsCount |
获取用户指定的参数的实际数量。 |
ssSetNumSFcnParams |
设置s函数期望的参数数量。 |
ssSetSFcnParamTunable |
指定对话框参数的可调性。 |
错误处理和状态
宏 | 描述 |
---|---|
ssGetErrorStatus |
获取标识最后一个错误的字符向量。 |
ssGetLocalErrorStatus |
获取以线程安全的方式标识最后一个错误的字符向量。 |
ssPrintf |
打印一个变量内容味精 . |
ssSetErrorStatus |
报告错误。 |
ssSetLocalErrorStatus |
以线程安全的方式报告错误。 |
ssWarning |
显示警告信息。 |
函数调用
宏 | 描述 |
---|---|
ssCallSystemWithTid |
执行一个连接到s函数的函数调用子系统。 |
ssDisableSystemWithTid |
禁用连接到这个S-function块的函数调用子系统。 |
ssEnableSystemWithTid |
启用连接到这个s函数的函数调用子系统。 |
ssGetCallSystemNumFcnCall - |
获取函数调用目的地的数量。 |
ssGetExplicitFCSSCtrl |
确定这个s函数是否显式启用和禁用它调用的函数调用子系统。 |
ssSetCallSystemOutput |
指定输出端口元素发出函数调用。 |
ssSetExplicitFCSSCtrl |
指定s -函数是否显式启用和禁用它调用的函数调用子系统。 |
输入输出接口
I/O端口-信号规范
I/O端口-信号尺寸
I/O端口-信号访问
宏 | 描述 |
---|---|
ssGetInputPortBufferDstPort |
确定覆盖输入端口内存缓冲区的输出端口。 |
ssGetInputPortConnected |
判断S-Function块端口是否连接了非虚块。 |
ssGetInputPortOptimOpts |
确定分配给s函数输入端口的内存的可重用性设置。 |
ssGetInputPortOverWritable |
判断输入端口是否可以被覆盖。 |
ssGetInputPortRealSignal |
获取进入输入端口的真实连续信号的地址。 |
ssGetInputPortRealSignalPtrs |
访问连接到输入端口的信号元件。 |
ssGetInputPortSignal |
获取进入输入端口的连续信号的地址。 |
ssGetInputPortSignalPtrs |
获取指向类型为other的输入信号元素的指针双 . |
ssGetNumInputPorts |
可以用于任何例程(除了mdlInitializeSizes )来确定一个块有多少输入端口。 |
ssGetNumOutputPorts |
可以用于任何例程(除了mdlInitializeSizes )来确定一个块有多少个输出端口。 |
ssGetOutputPortConnected |
判断输出端口是否连接到非虚拟块。 |
ssGetOutputPortBeingMerged |
确定此块的输出是否连接到合并块。 |
ssGetOutputPortOptimOpts |
确定分配给s函数输出端口的内存的可重用性。 |
ssGetOutputPortRealSignal |
访问连接到输出端口的信号元件。 |
ssGetOutputPortSignal |
获取由输出端口发出的信号元素的向量。 |
ssSetInputPortOptimOpts |
指定分配给s函数输入端口的内存的可重用性。 |
ssSetInputPortOverWritable |
指定输入端口是否可被输出端口覆盖。 |
ssSetOutputPortOptimOpts |
指定分配给s函数输出端口的内存的可重用性。 |
ssSetOutputPortOverwritesInputPort |
指定输出端口是否可以与输入端口共享其内存缓冲区。 |
模型参考
宏 | 描述 |
---|---|
ssRTWGenIsModelReferenceRTWTarget |
确定模型是否引用金宝app仿真软件编码器™目标正在生成。 |
ssRTWGenIsModelReferenceSIMTarget |
确定模型参考仿真目标是否正在生成。 |
ssSetModelReferenceNormalMode金宝appSupport |
指定s函数是否可用于正常模式下的参考模型模拟。 |
ssSetModelReferenceSampleTimeDefaultInheritance |
指定包含此s函数的引用模型可以从其父模型继承其采样时间。 |
ssSetModelReferenceSampleTimeDisallowInheritance |
指定在引用模型中使用此s函数可以防止引用模型从其父模型继承其采样时间。 |
ssSetModelReferenceSampleTimeInheritanceRule |
指定在引用模型中使用s函数是否会阻止引用模型从父模型继承其采样时间。 |
运行时参数
这些宏允许您创建、更新和访问与块的对话框参数对应的运行时参数。
宏 | 描述 |
---|---|
ssGetNumRunTimeParams |
获取由这个s函数创建的运行时参数的数量。 |
ssGetRunTimeParamInfo |
获取指定运行时参数的属性。 |
ssRegAllTunableParamsAsRunTimeParams |
将所有可调对话框参数注册为运行时参数。 |
ssRegDlgParamAsRunTimeParam |
注册一个运行时参数。 |
ssSetNumRunTimeParams |
指定由这个s函数创建的运行时参数的数量。 |
ssSetRunTimeParamInfo |
指定指定运行时参数的属性。 |
ssUpdateAllTunableParamsAsRunTimeParams |
更新与可调对话框参数对应的所有运行时参数。 |
ssUpdateDlgParamAsRunTimeParam |
更新运行时参数。 |
ssUpdateRunTimeParamData |
更新指定的运行时参数的值。 |
ssUpdateRunTimeParamInfo |
从相应对话框参数的属性更新指定运行时参数的属性。 |
样品时间
宏 | 描述 |
---|---|
ssGetInputPortSampleTime |
确定输入端口的采样时间。 |
ssGetInputPortSampleTimeIndex |
获取输入端口的采样时间索引。 |
ssGetNumSampleTimes |
得到s函数的采样次数。 |
ssGetOffsetTime |
确定一个s函数的采样时间偏移量。 |
ssGetOutputPortSampleTime |
确定输出端口的采样时间。 |
ssGetPortBasedSampleTimeBlockIsTriggered |
确定使用基于端口的采样时间的块是否位于触发的子系统中。 |
ssGetSampleTime |
确定一个s函数的采样次数。 |
ssGetTNext |
用可变采样时间的离散s函数获得下一次采样命中的时间。 |
ssIsContinuousTask |
确定指定的速率是否为连续速率。 |
ssIsSampleHit |
确定s函数运行时的抽样率。 |
ssIsSpecialSampleHit |
确定当前采样时间是否达到两个指定速率。 |
ssSampleAndOffsetAreTriggered |
确定采样时间和偏移值对是否表示触发采样时间。 |
ssSetInputPortSampleTime |
设置输入端口采样时间。 |
ssSetModelReferenceSampleTimeDefaultInheritance |
指定包含此s函数的引用模型可以从其父模型继承其采样时间。 |
ssSetModelReferenceSampleTimeDisallowInheritance |
指定在引用模型中使用此s函数可以防止引用模型从其父模型继承其采样时间。 |
ssSetModelReferenceSampleTimeInheritanceRule |
指定在引用模型中使用s函数是否会阻止引用模型从父模型继承其采样时间。 |
ssSetNumSampleTimes |
设置s函数的采样次数。 |
ssSetOffsetTime |
指定采样时间的偏移量。 |
ssSetSampleTime |
为s函数指定采样时间。 |
ssSetTNext |
在s函数中指定下一次采样命中的时间。 |
模拟信息
宏 | 描述 |
---|---|
ssGetBlockReduction |
确定一个块是否在模拟开始之前请求减少块,以及在模拟循环开始之后是否实际减少了块。 |
ssGetErrorStatus |
获取标识最后一个错误的字符向量。 |
ssGetFixedStepSize |
得到包含s函数的模型的固定步长。 |
ssGetMaxStepSize |
得到包含s函数的模型的最大步长。 |
ssGetMinStepSize |
求包含s函数的模型的最小步长。 |
ssGetSimMode |
确定调用s函数的上下文:普通模拟、外部模式模拟、模型编辑器等。 |
ssGetSimStatus |
确定当前模拟状态。 |
ssGetSolverMode |
获取用于求解s函数的求解器模式。 |
ssGetSolverName |
获取用于模拟的求解器的名称。 |
ssGetStateAbsTol |
获得模型的变步长求解器对于指定状态所使用的绝对公差。 |
ssGetStopRequested |
获取模拟停止请求标志的值。 |
ssGetT |
获取当前基本模拟时间。 |
ssGetTaskTime |
获取任务的当前时间。 |
ssGetTFinal |
获取当前模拟的结束时间。 |
ssGetTNext |
获取下一个样本命中的时间。 |
ssGetTStart |
获取当前模拟的开始时间。 |
ssIsExternalSim |
确定模型是否在外部模式下运行。 |
ssIsFirstInitCond |
判断当前仿真时间是否等于仿真开始时间。 |
ssIsMajorTimeStep |
判断当前时间步长是否为重要时间步长。 |
ssIsMinorTimeStep |
判断当前时间步长是否为小时间步长。 |
ssIsVariableStepSolver |
确定当前求解器是否为变步长求解器。 |
ssRTWGenIsAccelerator |
确定模型是否在加速模式下运行。 |
ssSetStateAbsTol |
设置可变步长求解器应用于s函数状态的绝对公差值。 |
ssSetBlockReduction |
请求Simulink尝试减金宝app少一个块。 |
ssSetOperatingPointCompliance |
指定在保存和恢复包含s函金宝app数的模型的仿真状态时,Simulink如何处理s函数。 |
ssSetOperatingPointVisibility |
指定s -函数的仿真状态在模型的仿真状态中是否可见(可访问)。 |
ssSetSolverNeedsReset |
请Sim金宝appulink重置求解器。 |
ssSetStopRequested |
要求Si金宝appmulink在当前时间步长结束时终止模拟。 |
状态和功向量
宏 | 描述 |
---|---|
ssGetContStates |
得到s函数的连续状态。 |
ssGetDiscStates |
得到s函数的离散状态。 |
ssGetDWork |
得到一个DWork向量。 |
ssGetDWorkComplexSignal |
确定DWork向量的元素是实数还是复数。 |
ssGetDWorkDataType |
获取DWork向量的数据类型。 |
ssGetDWorkName |
获取DWork向量的名称。 |
ssGetDWorkUsageType |
确定如何在s函数中使用DWork向量。 |
ssGetDWorkUsedAsDState |
确定是否使用DWork向量作为离散状态向量。 |
ssGetDWorkWidth |
获取DWork向量的大小。 |
ssGetdX |
求s函数连续状态的导数。 |
ssGetIWork |
得到s函数的整数值(int_T )功向量。 |
ssGetIWorkValue |
从块的整型工作向量中获取一个值。 |
ssGetModeVector |
得到一个s函数的模态功向量。 |
ssGetModeVectorValue |
获取一个块的模式向量的元素。 |
ssGetNonsampledZCs |
得到一个s函数的过零信号向量。 |
ssGetNumContStates |
确定一个s函数的连续状态数。 |
ssGetNumDiscStates |
确定s函数的离散状态数。 |
ssGetNumDWork |
获取一个块使用的Dwork向量的数量。 |
ssGetNumIWork |
求s函数整型功向量的大小。 |
ssGetNumModes |
确定s函数的模态向量的大小。 |
ssGetNumNonsampledZCs |
确定s函数检测到的非采样过零次数。 |
ssGetNumPWork |
确定s函数指针工作向量的大小。 |
ssGetNumRWork |
确定s函数的实值(real_T )功向量。 |
ssGetPWork |
获取s函数的指针(void * )功向量。 |
ssGetPWorkValue |
从指针工作向量中获取指针。 |
ssGetRealDiscStates |
面对现实(real_T ) s函数的离散状态向量的值。 |
ssGetRWork |
得到s函数的实值(real_T )功向量。 |
ssGetRWorkValue |
得到s函数的实值功向量的一个元素。 |
ssSetDWorkComplexSignal |
指定Dwork向量的元素是实数还是复数。 |
ssSetDWorkDataType |
指定Dwork向量的数据类型。 |
ssSetDWorkName |
指定Dwork向量的名称。 |
ssSetDWorkUsageType |
指定如何在s函数中使用DWork向量。 |
ssSetDWorkUsedAsDState |
指定Dwork向量用作离散状态向量。 |
ssSetDWorkWidth |
指定Dwork向量的宽度。 |
ssSetIWorkValue |
设置块的整数工作向量的一个元素。 |
ssSetModeVectorValue |
设置块的模式向量的一个元素。 |
ssSetNumContStates |
指定s函数的连续状态数。 |
ssSetNumDiscStates |
指定一个s函数具有的离散状态的数目。 |
ssSetNumDWork |
指定一个块使用的Dwork向量的数量。 |
ssSetNumIWork |
指定s函数的整数(int_T )功向量。 |
ssSetNumModes |
指定s函数具有的操作模式的数量。 |
ssSetNumNonsampledZCs |
指定s函数检测到的过零次数。 |
ssSetNumPWork |
指定s函数指针的大小(void * )功向量。 |
ssSetNumRWork |
指定s函数的实(real_T )功向量。 |
ssSetPWorkValue |
设置块指针工作向量的一个元素。 |
ssSetRWorkValue |
设置块的浮点工作向量的一个元素。 |
代码生成
宏 | 描述 |
---|---|
ssGetDWorkRTWIdentifier |
获取用于在相关s函数生成的代码中声明DWork向量的标识符。 |
ssGetDWorkRTWIdentifierMustResolveToSignalObject |
获取一个标志,指示DWork向量是否解析为a金宝app仿真软件。信号 对象。 |
ssGetDWorkRTWStorageClass |
从相关的s函数生成的代码中获取DWork向量的存储类。 |
ssGetDWorkRTWTypeQualifier |
获取C类型限定符(例如,常量 )用于在相关s函数生成的代码中声明DWork向量。 |
ssGetNumInputPorts |
获取一个块的输入端口数 |
ssGetNumOutputPorts |
获取一个块的输出端口数 |
ssGetPlacementGroup |
获取块的放置组的名称。 |
ssRTWGenIsCodeGen |
识别加速器未使用的任何代码生成。 |
ssSetArrayLayoutForCodeGen |
指定s函数的数组布局。 |
ssSetDWorkRTWIdentifier |
设置用于在相关s函数生成的代码中声明DWork向量的标识符。 |
ssSetDWorkRTWIdentifierMustResolveToSignalObject |
指定DWork向量是否解析为a金宝app仿真软件。信号 对象。 |
ssSetDWorkRTWStorageClass |
在相关s函数生成的代码中设置DWork向量的存储类。 |
ssSetDWorkRTWTypeQualifier |
设置C类型限定符(例如,常量 )用于在相关s函数生成的代码中声明DWork向量。 |
ssSetPlacementGroup |
指定块的放置组的名称。 |
ssWriteRTW2dMatParam |
写一个Simul金宝appink矩阵参数到s函数model.rtw 文件。 |
ssWriteRTWMx2dMatParam |
编写MATLAB®s函数的矩阵参数model.rtw 文件。 |
ssWriteRTWMxVectParam |
写一个MATLAB矢量参数到s函数model.rtw 文件。 |
ssWriteRTWParameters |
将可调参数写入s函数model.rtw 文件。 |
ssWriteRTWParamSettings |
将s函数参数的设置写入model.rtw 文件。 |
ssWriteRTWScalarParam |
将标量参数写入s函数model.rtw 文件。 |
ssWriteRTWStr |
写一个s函数的字符向量model.rtw 文件。 |
ssWriteRTWStrParam |
写一个字符向量参数到s函数model.rtw 文件。 |
ssWriteRTWStrVectParam |
写一个字符向量向量参数到s函数model.rtw 文件。 |
ssWriteRTWVectParam |
写一个Simul金宝appink矢量参数到s函数model.rtw 文件。 |
ssWriteRTWWorkVect |
把s函数的功向量写在model.rtw 文件。 |
杂项
宏 | 描述 |
---|---|
ssCallExternalModeFcn |
为s函数调用外部模式函数。 |
ssGetModelName |
获取包含s函数的S-Function块或模型的名称。 |
ssGetParentSS |
求s函数的父函数。 |
ssGetPath |
获取s函数的路径或包含s函数的模型。 |
ssGetRootSS |
返回根(模型)SimStruct . |
ssGetUserData |
访问用户数据。 |
ssSetExternalModeFcn |
为s函数指定外部模式函数。 |
ssSetOptions |
设置各种模拟选项。 |
ssSetPlacementGroup |
指定接收器或源s函数的执行顺序。 |
ssSetUserData |
指定用户数据。 |
ss金宝appSupportsMultipleExecInstances |
允许s函数在For Each子系统中操作。 |