Dymola отмечает равноудаленную сетку времени и сохраняет переменные на событиях

Есть ли способ указания флага / сценария для моделирования:

  • Сохранять переменную в событиях, так же, как Simulation Setup \ Output \ Store переменные в событиях
  • Эквидистантная временная сетка, такая же, как Simulation Setup \ Output \ Equidistant time grid

Я знаю, что это можно добавить как аннотацию в модель:

annotation experiment(__Dymola_NumberOfIntervals=501), __Dymola_experimentSetupOutput(equdistant=true, events=true));

С уважением, Жиль


person GillesP    schedule 08.03.2013    source источник
comment
Что именно вы имеете в виду под флагом / скриптингом? Вы можете настроить сетку моделирования через графический интерфейс Dymola, с помощью команд сценария Dymola или с помощью аннотаций модели (как вы показали). Что вы ищете?   -  person Florian Brucker    schedule 08.03.2013
comment
Привет, я вообще-то не хочу настраивать симуляцию через графический интерфейс Dymola или аннотации модели. Я хочу установить его с помощью сценария и выполнить сценарий в файле .bat.   -  person GillesP    schedule 11.03.2013
comment
Claytex.com/tech-blog/simulation-settings-class-annotation   -  person Priyanka    schedule 31.03.2021


Ответы (1)


Я нашел ответ в службе поддержки Dymola. См. Руководство пользователя Dymola V1 p 501 по API симулятора:

experimentSetupOutput(...)
  input Boolean textual := false "Textual storage";
  input Boolean doublePrecision := false "Double precision";
  input Boolean states := true "Store state variables";
  input Boolean derivatives := true "Store derivative variables";
  input Boolean inputs := true "Store input variables";
  input Boolean outputs := true "Store outputs variables";
  input Boolean auxiliaries := true "Store auxiliary variables";
  input Boolean equdistant := true "Store equidistantly";
  input Boolean events := true "Store variables at events";
  input Boolean debug := false "Write log messages";
  output Boolean ok;

Поэтому перед командой simulateModel нужно было установить следующие флаги:

experimentSetupOutput(events=false,equdistant=true);
person GillesP    schedule 11.03.2013
comment
Рад, что ты нашел ответ! Пожалуйста, отметьте свой ответ как принятый. - person Florian Brucker; 11.03.2013