Задайте шаг расчета выходного порта
real_T ssSetOutputPortSampleTime(SimStruct *S, int_T outputPortIdx, time_T period)
SSimStruct, представляющий Блок s-function.
outputPortIdxИндекс выходного порта, шаг расчета которого устанавливается.
periodШаг расчета выходного порта.
Значение real_T шага расчета передается в макрос.
Используйте в mdlInitializeSizes (после ssSetNumOutputPorts), чтобы задать период шага расчета как непрерывный или как дискретное значение для каждого индекса выходного порта. Индексы выходного порта запускаются в 0 и конец в общем количестве входных портов минус 1. В течение времени непрерывной выборки задайте period как CONTINUOUS_SAMPLE_TIME. Чтобы наследовать шаг расчета, задайте период как INHERITED_SAMPLE_TIME. Необходимо использовать этот макрос, только если вы задали основанные на порте шаги расчета.
Если S-функция задает INHERITED_SAMPLE_TIME для какого-либо из его портов, S-функция должна включать метод коллбэка . Метод коллбэка должен установить шаг расчета и смещение портов, которые наследовали их шаг расчета к состоянию, которое механизм Simulink® присваивает им использующий его правила распространения шага расчета. Метод коллбэка может также присвоить шаги расчета и смещения других портов на блоке, шаги расчета которого наследованы.mdlSetOutputPortSampleTime
C, C++
Смотрите S-функцию sfun_multirate.c, используемый в sfcndemo_sfun_multirate.