Проверка достоверности параметров S-функции MATLAB
Нет
MATLAB
CheckParameters(s)
s Экземпляр Simulink.MSFcnRunTimeBlock класс, представляющий Уровень 2 MATLAB S-Function block.
Проверка новых параметров при каждом изменении или переоценке параметров во время моделирования.
При выполнении моделирования изменения параметров S-функции могут произойти в любое время во время цикла моделирования, то есть либо в начале этапа моделирования, либо во время этапа моделирования. Когда изменение происходит во время этапа моделирования, модуль Simulink ® дважды вызывает эту подпрограмму для обработки изменения параметра. Первый вызов на этапе моделирования используется для проверки правильности параметров. После проверки новых параметров моделирование продолжается с использованием исходных значений параметров до следующего этапа моделирования, на котором используются новые значения параметров. Для обеспечения согласованности моделирования необходимы избыточные вызовы.
Примечание
В этой подпрограмме невозможно получить доступ к работе, состоянию, входу, выходу и другим векторам. Эта процедура используется только для проверки параметров. Дополнительная обработка параметров должна быть выполнена в ProcessParameters.
В функции Level-2 MATLAB ® S setup метод регистрирует CheckParameters способ следующим образом
s.RegBlockMethod('CheckParameters', @CheckParam);Локальная функция CheckParam затем проверяет параметры S-функции. В этом примере функция проверяет, что второй параметр, верхнее предельное значение, больше, чем первый параметр S-функции, нижнее предельное значение.
function CheckParam(s)
% Check that upper limit is greater than lower limit
lowerLim = s.DialogPrm(1).Data;
upperLim = s.DialogPrm(2).Data;
if upperLim <= lowerLim,
error('The upper limit must be greater than the lower limit.');
end