setPostSimFcn

Укажите, что функция MATLAB, чтобы выполняться после каждой симуляции завершена через SimulationInput объект, в

Описание

пример

in = in.setPostSimFcn(@(y) myfunction(arg1, arg2 ...)) выполняется после каждой симуляции, завершено. Simulink.SimulationOutput объект передается в качестве аргумента y к этой функции. myfunction любая функция MATLAB® и может использоваться, чтобы сделать обработку сообщения на выходе. Возвратить сообщение обработало данные, необходимо возвратить его как значения в struct. Эти значения затем упаковываются в Simulink.SimulationOutput выведите, чтобы заменить обычные записанные данные или добавить новые данные в Simulink.SimulationOutput объект.

Примеры

свернуть все

Этот пример задает функцию MATLAB через SimulationInput объект выполняться после каждой симуляции завершен.

Создайте PostSimFcn получить среднее значение выхода.

function newout = postsim(out);
newout.mean = mean(out.yout);
end

Создайте SimulationInput объект для модели.

in = Simulink.SimulationInput('vdp');
in = in.setPostSimFcn(@(x) postsim(x));
in = in.setModelParameter('SaveOutput','on');

Симулируйте модель.

out = sim(in)

Просмотрите свой результат

out.mean

Это - лучшая практика избегать использования 'ErrorMessage' и 'SimulationMetadata' как имена полей в функции.

Входные параметры

свернуть все

Это - Simulink.SimulationOutput объект, который является входом к myfunction.

Аргументы, заданные, чтобы передать setPostSimFcn.

Введенный в R2017a