Получите вектор режима
int_T *ssGetModeVector(SimStruct *S)
S
SimStruct, представляющий Блок s-function.
Указатель (int_T *
) к вектору режима.
Используйте, чтобы получить указатель на вектор режима. Этот вектор имеет длину ssGetNumModes(S)
. Как правило, этот вектор инициализируется в mdlInitializeConditions
, если значение по умолчанию 0 не приемлемо. Это затем используется в mdlOutputs
, в сочетании с невыбранными нулевыми пересечениями, чтобы определить, когда выходная функция должна изменить режим. Например, рассмотрите функцию абсолютного значения. Когда входной параметр будет отрицателен, инвертируйте его, чтобы создать положительную стоимость; в противном случае не примите меры. Эта функция имеет два режима. Выходная функция должна быть разработана, чтобы не изменить режимы во время незначительных временных шагов. Можно также использовать вектор режима в стандартной программе mdlZeroCrossings
, чтобы определить текущий режим.
C, C++
Смотрите S-функцию sfun_zc.c
, используемый в sfcndemo_sfun_zc
.