2013-07-03 4 views
2

Я использую команду sim в скрипте Matlab для запуска модели Simulink. Эта модель simulink отображает некоторые вещи в окне команд. Какая опция для команды sim удалить любой экран, который будет отображаться в окне команд? Так что есть что-то похожее на это, что существуют:Команда Sim без вывода командного окна

sim('model', 'CommandWindowDisplayVisible', 'off'); 

Update:

Из того, что я нашел, кажется, что нет такого понятия можно с помощью команды sim. Вот что я сделал в качестве альтернативы:

s = sprintf('sim(''%s'')', ModelName); 
try 
    evalc(s); 
catch err 
    msgString = getReport(err, 'extended'); 
    disp(msgString) 
end 
+0

Какой «вещи» получает отображается в окне командной строки? – am304

+0

@ am304 Результаты и некоторая информация о шагах моделирования. –

+0

Это тот же вид информации, который отображается при запуске модели Simulink в интерактивном режиме, а не через команду 'sim'? – am304

ответ

4

Вы можете попробовать использовать evalc захватить вывод в переменную. Таким образом, он не отображается в окне команд.

, например

sim('model') 

производит выход, в то время как:

myCommandWindowOutput = evalc('sim(''model'')'); 

не делает.

В самом деле, вам даже не нужно назначить выход, вы могли бы просто написать:

evalc('sim(''model'')'); 

http://www.mathworks.co.uk/help/matlab/ref/evalc.html

+0

Это именно то, что я сделал. Таким образом, нет других способов с командой «sim» в одиночку? –

+0

Не знаю, что я знаю, я боюсь, но это не значит, что они не существуют – Huguenot

Смежные вопросы